被问及他们使用Devshock LongMessage [英] Asked about their use Devshock LongMessage
问题描述
我写了ShortMessage发送成功。
Devshock.Protocol.SmppPdu.SmppSubmitSmReq.BodyPdu body = new Devshock.Protocol .SmppPdu.SmppSubmitSmReq.BodyPdu();
I wrote ShortMessage sent successfully.
Devshock.Protocol.SmppPdu.SmppSubmitSmReq.BodyPdu body = new Devshock.Protocol.SmppPdu.SmppSubmitSmReq.BodyPdu();
body.SourceAddressTon = 1; body.SourceAddressNpi = 1;
body.SourceAddressTon = 1; body.SourceAddressNpi = 1;
body.SourceAddress = srcNum; body.DestinationAddressTon = 1; body.DestinationAddressNpi = 1;
body.SourceAddress = srcNum; body.DestinationAddressTon = 1; body.DestinationAddressNpi = 1;
body.DestinationAddress = dstNum; body.EsmClass = new Devshock.Common.BitBuilder(0);
body.DestinationAddress = dstNum; body.EsmClass = new Devshock.Common.BitBuilder(0);
body.ShortMessage.SetValue(content,Devshock.Protocol.Smpp.SmppDataCoding.Default);
body.ShortMessage.SetValue(content, Devshock.Protocol.Smpp.SmppDataCoding.Default);
body.RegisteredDelivery = new Devshock.Common.BitBuilder(1);
body.RegisteredDelivery = new Devshock.Common.BitBuilder(1);
Devshock.Protocol.SmppPdu.SmppSubmitSmReq SmReq = new Devshock.Protocol.SmppPdu.SmppSubmitSmReq(body) ;
Devshock.Protocol.SmppPdu.SmppSubmitSmReq SmReq = new Devshock.Protocol.SmppPdu.SmppSubmitSmReq(body);
SmReq.Header.SequenceNumber = moSeq;
SmReq.Header.SequenceNumber = moSeq;
if((seqNum == 0)&&& IsTLV){string HexString = SMSApp .Common.HexEncoding.NumberToHexTLV(dstNum); byte [] data = SMSApp.Common.HexEncoding.GetBytes(HexString,out outDiscarded);
if ((seqNum == 0) && IsTLV) { string HexString = SMSApp.Common.HexEncoding.NumberToHexTLV(dstNum); byte[] data = SMSApp.Common.HexEncoding.GetBytes(HexString, out outDiscarded);
Devshock.Protocol.SmppPdu.SmppTlv tlv = new Devshock.Protocol.SmppPdu.SmppTlv(data) ; SmReq.Tlv = tlv;尝试{Devshock.Protocol.SmppPdu.SmppSubmitSmRes res = client.SubmitSm(SmReq); return res.Header.CommandStatus; }
Devshock.Protocol.SmppPdu.SmppTlv tlv = new Devshock.Protocol.SmppPdu.SmppTlv(data); SmReq.Tlv = tlv; } try { Devshock.Protocol.SmppPdu.SmppSubmitSmRes res = client.SubmitSm(SmReq); return res.Header.CommandStatus; }
但是他们一定不知道LongMessage在这里有多少!
既然用户想要发送LongMessage Devshock他们的表现如何!?
推荐答案
你能告诉我怎么样吗?为现有TLV添加值?
例如我必须在我的MT中使用(移动终止) 消息TLV ItsSessionInfo。但是我当然不能把这个TLV送空。
因为b $ b因此问题:如何 可以为此标记添加一个值吗?
Could you please tell me how I can add a value to a existing TLV?
For example I have to use in my MT ( mobile terminated) message the TLV ItsSessionInfo. But I can't send this TLV empty, of course.
Therefore the question: How can one add a value to this Tag?
请提供代码示例;它足够两行或三行,我可以看到TLV ItsSessionInfo用一个值初始化(例如值为12345)。
Please provide the code example; it's enough two or three lines where I cann see that the TLV ItsSessionInfo is initialized with a value (for example with the value 12345).
我的示例代码如下所示:
My example code looks like this:
SmppSubmitSmReq ReqSubmit_Sm = new SmppSubmitSmReq();
SmppSubmitSmRes ResSubmit_Sm = new SmppSubmitSmRes();
SmppQuerySmReq ReqQuerySm = new SmppQuerySmReq();
SmppQuerySmRes ResQuerySm = new SmppQuerySmRes();
ReqSubmit_Sm.Body.DestinationAddress = "4915123456xx";
ReqSubmit_Sm.Body.ShortMessage.SetValue("Test msg... € 1234567890öäüÖÄÜ!§
%& / ()=?" ,SmppDataCoding.FromValue(0));
ReqSubmit_Sm.Body.SourceAddress = "" ;
ReqSubmit_Sm.Body.EsmClass.Value = 0;
ReqSubmit_Sm.Body.RegisteredDelivery.Value = 1;
ResSubmit_Sm = mySmppClient.SubmitSm(ReqSubmit_Sm);
%&/()=?", SmppDataCoding.FromValue(0)); ReqSubmit_Sm.Body.SourceAddress = ""; ReqSubmit_Sm.Body.EsmClass.Value = 0; ReqSubmit_Sm.Body.RegisteredDelivery.Value = 1; ResSubmit_Sm = mySmppClient.SubmitSm(ReqSubmit_Sm);
这篇关于被问及他们使用Devshock LongMessage的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!