SMPP 客户端在消息末尾添加一个 ¿
SMPP client is adding an ¿ to the end of the message
我正在尝试制作一个 Windows 桌面 smpp 客户端,它的连接和发送都很好,除了一个错误,我在消息内容的末尾添加了一个额外的字符 (¿)在我的 phone.
上收到
所以我发送 "test" 但我的 phone 收到 "test¿"。这是 pdu 对象的内容,就在它被发送之前:
size :58
sequence :2
cmd id :0x4
cmd status:0x0 : No Error
00000000 00 00 00 3a 00 00 00 04 00 00 00 00 00 00 00 02 |...:............|
00000010 00 05 00 74 65 73 74 66 72 6f 6d 00 01 01 34 34 |...testfrom...44|
00000020 37 37 37 37 37 37 37 37 37 37 00 00 00 00 00 00 |7777777777......|
00000030 00 00 00 00 05 74 65 73 74 00 |.....test.|
0000003a
我正在使用这个 c++ smpp 库作为基础:
https://github.com/onlinecity/cpp-smpp
我必须进行一些细微的更改才能使其在 windows 上运行,但我认为没有任何可能影响此功能的更改。
其他人 运行 在 smpp 服务器上使用不同的帐户进行测试,他们的测试添加了一个 @ 符号。
知道是什么原因造成的吗?谢谢!
最后发现问题,是因为smpp库中有个选项默认为true,叫nullTerminateOctetStrings
它在消息末尾添加了 00,听起来这是 SMPP 3.4 标准所要求的,但我们的 smsc 不喜欢它。我想理想情况下我会修复 smsc,但这是由第 3 方提供的,所以我只是关闭了空终止。
有类似问题的人和更多信息在这里:https://www.mail-archive.com/devel@kannel.3glab.org/msg06765.html
我正在尝试制作一个 Windows 桌面 smpp 客户端,它的连接和发送都很好,除了一个错误,我在消息内容的末尾添加了一个额外的字符 (¿)在我的 phone.
上收到所以我发送 "test" 但我的 phone 收到 "test¿"。这是 pdu 对象的内容,就在它被发送之前:
size :58
sequence :2
cmd id :0x4
cmd status:0x0 : No Error
00000000 00 00 00 3a 00 00 00 04 00 00 00 00 00 00 00 02 |...:............|
00000010 00 05 00 74 65 73 74 66 72 6f 6d 00 01 01 34 34 |...testfrom...44|
00000020 37 37 37 37 37 37 37 37 37 37 00 00 00 00 00 00 |7777777777......|
00000030 00 00 00 00 05 74 65 73 74 00 |.....test.|
0000003a
我正在使用这个 c++ smpp 库作为基础:
https://github.com/onlinecity/cpp-smpp
我必须进行一些细微的更改才能使其在 windows 上运行,但我认为没有任何可能影响此功能的更改。
其他人 运行 在 smpp 服务器上使用不同的帐户进行测试,他们的测试添加了一个 @ 符号。
知道是什么原因造成的吗?谢谢!
最后发现问题,是因为smpp库中有个选项默认为true,叫nullTerminateOctetStrings
它在消息末尾添加了 00,听起来这是 SMPP 3.4 标准所要求的,但我们的 smsc 不喜欢它。我想理想情况下我会修复 smsc,但这是由第 3 方提供的,所以我只是关闭了空终止。
有类似问题的人和更多信息在这里:https://www.mail-archive.com/devel@kannel.3glab.org/msg06765.html