我想在C#中解码从GSM调制解调器检索到的PDU文本,如何使用 GSMComm 或 PduBitPacker 对其进行解码?
请用代码回答我
TY
(P.S。我已编码文本,我不需要从调制解调器获取它)
答案 0 :(得分:2)
确保在项目中包含PDUConverter.dll。
IncomingSmsPdu sms = IncomingSmsPdu.Decode("0791893905004100640C9189398978168400003160915151238110050003110202C26735B94D87DF41", true);
Console.WriteLine(sms.UserDataText);
Decode的第一个参数是你的RAW PDU字符串,包括末尾的标题,第二个参数是一个告诉解码器标题存在的标志。
在UserDataText内部,您将找到SMS文本。
如果您在开头看到了异形字符,那是因为您有一个“智能消息”,即多部分短信应该连接成一条大型消息,这是诺基亚发明的一种技巧。
如果你想处理这个智能消息传递,那么 GsmComm.PduConverter.SmartMessaging.SmartMessageDecoder 这个类可能会有所帮助。