我已经开发了smpp客户端...但是当涉及到交付报告时...它总是自动发送generic_nack,我正在使用opensmpp logica,似乎总是从服务器获取无效的pdu,如何禁用此功能通用小节,或者是否有其他方法可以从服务器获取pdu响应,而无需自动发送tcp转储下方的通用小节



谢谢

问候

丹兹

最佳答案

您不能禁用此(ESME_RINVMSGLEN / 0x00000001)或任何常规小节;发送它的是SMSC。

您可以尝试创建方案,以使SMCS不会发送ESME_RINVMSGLEN消息。只有两种可能性:


假设SMSC的行为正常,

SMPP客户端发送了错误消息,而ESME_RINVMSGLEN是正确的响应。
您可能要调查客户端是否在command_status字段中设置了正确的值。根据command_id,可能需要一定的最小字节数。

假设SMSC的行为不正常,

这可能是SMSC特定的行为。此时您需要查阅SMSC文档。
可能有很多原因。可能是SMSC报告PDU所发现的任何其他问题的ESME_RINVMSGLEN。

09-29 19:42