1

我已经成功地使用 jainsip 注册客户。方法 processRequest 正在工作。我正在从代理向电话发送邀请并且电话正在响铃。邀请的源端口是 5060,ip 是服务器的 ip。我使用嗅探器验证 100Trying 和 180Ringing 是否从客户端发送到端口 5060 上的服务器/代理。服务器上注册了两个客户端,如前所述,processRequest 正在工作,但 100Trying 和 180Ringing 响应没有被拾取由 SIpListener 或方法 processResponse 只是不被调用。我正在使用这些罐子:

<dependency>
  <groupId>javax.sip</groupId>
  <artifactId>jain-sip-api</artifactId>
  <version>1.2.1.4</version>
</dependency>
<dependency>
  <groupId>javax.sip</groupId>
  <artifactId>jain-sip-ri</artifactId>
  <version>1.2.167</version>
</dependency>

我正在使用此代码发送邀请:

ClientTransaction clientTransaction = sipProviderStatic.getNewClientTransaction(inviteRequest);
clientTransaction.sendRequest();

注册顺利进行,所以这不是防火墙问题,我什至尝试将其关闭。

有人有想法吗?

4

1 回答 1

0

首先,如果您通过发送请求并获得如下响应在两个模拟器中进行测试,则必须重定向端口:

转到命令而不是输入“telnet localhost 5554”并为另一个模拟器输入相同的内容

而不是输入“redir add udp:5070:5070”作为服务器代码和

比为发送请求的客户端代码输入“redir add udp:5060:5060”...你可以看到这两个模拟器之间的请求和响应

于 2012-10-05T04:13:56.743 回答