Jdiameter S13:无法处理请求。结果代码= [3007],错误消息:[null]

时间:2017-11-29 14:44:34

标签: restcomm mobicents

我正在尝试制作直径S13服务器, 我使用了mobicents依赖项如下:

<dependency>
    <groupId>org.mobicents.diameter</groupId>
    <artifactId>restcomm-diameter-mux-jar</artifactId>
    <version>1.7.0.180</version>
    <scope>compile</scope>
</dependency>
<dependency>
    <groupId>org.mobicents.diameter</groupId>
    <artifactId>jdiameter-api</artifactId>
    <version>1.7.0.180</version>
</dependency>
<dependency>
    <groupId>org.mobicents.diameter</groupId>
    <artifactId>jdiameter-impl</artifactId>
    <version>1.7.0.180</version>
</dependency>

我也创建了客户端以发送CheckIMEImessage并在服务器端接收它并将响应返回给客户端,

但我的问题是当我将消息发送到服务器时,堆栈返回此错误并且我的服务器应用程序上没有收到消息:

ResultCode.APPLICATION_UNSUPPORTED

并将具有此代码的直径响应返回给客户端(直径响应= 3007)

这是日志:

DEBUG 2017-11-29 12:06:55 org.jdiameter.server.impl.PeerImpl$LocalActionConext.receiveMessage:343 - Receiving message in server.
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:379 - In getSingleApplicationId for application id [16777252]
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:381 - Application Ids in this message are:
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:386 - [AppId [Vendor-Id:10415; Auth-Application-Id:16777252; Acct-Application-Id:0]]
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:403 - Returning [AppId [Vendor-Id:10415; Auth-Application-Id:16777252; Acct-Application-Id:0]] as the first application id because its the first vendor specific one found
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:379 - In getSingleApplicationId for application id [16777252]
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:381 - Application Ids in this message are:
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:386 - [AppId [Vendor-Id:10415; Auth-Application-Id:16777252; Acct-Application-Id:0]]
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.parser.MessageImpl.getSingleApplicationId:403 - Returning [AppId [Vendor-Id:10415; Auth-Application-Id:16777252; Acct-Application-Id:0]] as the first application id because its the first vendor specific one found
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.controller.PeerImpl.sendErrorAnswer:677 - Could not process request. Result Code = [3007], Error Message: [null]
DEBUG 2017-11-29 12:06:55 org.jdiameter.client.impl.controller.PeerImpl.sendErrorAnswer:701 - Sending response indicating we could not process request

我也尝试过使用jain-slee的相同实现,一切正常,并且能够将checkIMEIResponse发送到客户端......

请知道吗?

1 个答案:

答案 0 :(得分:2)

我已经弄明白了,我的问题是我正在创建没有供应商ID的ApplicationId,例如:

ApplicationId applicationId =ApplicationId.createByAuthAppId(16777252L);

解决了喜欢

ApplicationId applicationId =ApplicationId.createByAuthAppId(10415L, 16777252L);

并且这个问题在jain-slee上没有发生,因为它使用Multiplixer,并且multiplixer启动连接并处理所有消息......

如果有人需要jdiameter-config.xml文件,我可以在这里分享......