2

我用 JSMPP 创建 SMPP Server Simulatorn。接受消息时没问题,但是当我想发送传递报告或消息时,我得到了这个异常。

InvalidResponseException
org.jsmpp.GenericNackResponseException: Receive generic_nack with command_status 00000003
        at org.jsmpp.session.state.AbstractGenericSMPPSessionBound.processGenericNack(AbstractGenericSMPPSessionBound.java:97)
        at org.jsmpp.session.PDUProcessServerTask.run(PDUProcessServerTask.java:59)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

当我发送消息时,我设置了注册的 Delivery 0,但是当我将它设置为 0xf 时,我没有收到此异常,但接收者没有接受任何消息

4

2 回答 2

2

GENERIC_NACK响应可能由多种原因发送。

但是,这部分输出可能会有所帮助:

使用command_status 00000003接收 generic_nack

在 SMPP v3.4 规范的第 5.1.3 部分中,这被称为ESME_RINVCMDID (Invalid Command ID)。因此,您发送的 SMPP PDU 可能带有不正确的 command_id(或您连接的系统不支持)。

提供部分代码抛出异常和测试过程描述可能是合理的。

于 2012-01-27T14:55:39.707 回答
0

您可以使用 tcpdump 并在 WireShark 中调查此问题。

或者在这里发布你的转储。我们可以调查一下。

在 linux 上,您可以在控制台中使用此命令进行转储:

tcpdump -i eth0 -nnvvS -s 65535 -w smpp.cap host your_host_name

关于 analize smpp 问题的非常有用的信息 它为我节省了调试代码的时间

关于使用 tcpdump 分析 smpp 问题的文章

于 2012-10-25T18:46:23.040 回答