问题标签 [jain-sip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
181 浏览

java - JainSIP,简单的用户注册

我有一个简单的用户注册代码。当然,它不起作用,因为我是 Jain SIP 堆栈的新手,很多东西我都不懂。我试图模仿Android SIP API,但没有成功。

有人可以指导我需要改进什么才能正确连接到 SIP 服务器。

PS。如何查看用户是否已注册?我需要类似方法 isRegistered()

最好的祝福。

0 投票
1 回答
539 浏览

servlets - 为什么在发送 REGISTER 消息时删除 P-Charging-Vector 标头?

我尝试如下向 I-CSCF 发送 REGISTER 消息。如您在下面的日志中看到的,P-Charging-Vector 标头已添加到消息中。我检查了发送的数据包并删除了此标头。似乎它被 SipServletRequestImpl.send() 之后运行的代码删除了。另一个问题与其中的 orig-ioi 参数有关。它设置为 orig-ioi="Type 1cscf@homedomain.com" 但引号被删除,如下面的 REGISTER 消息所示。

你对这个问题有任何想法吗?它是已知的错误还是限制?

代码如下:

它的输出:

使用 1.2.167 版本的 jain-sip-ri 创建 PChargingVector 标头。

输出:

P-Charging-Vector:icid-value="218ace3d-12e7-4eb6-87a2-0bc7a744743d@47.168.150.25";orig-ioi=1cscf@homedomain.com

提前致谢

霍兹勒姆

0 投票
1 回答
398 浏览

rtp - 从一侧调用时在 JMF 中建立了双工 RTP 连接,但从另一侧调用时端口无法访问

我使用 JMF 为使用 JAIN-SIP 的应用程序传输和接收音频,下面是我的代码:

问题是:当我从我的应用程序(即我打电话)创建连接时没有问题,我可以发送和接收音频。但是当我接到电话时,我可以听到对方的声音,但对方听不到我的声音。在 Wireshark 中,目标端口无法访问。请提出这个问题的解决方案是什么以及为什么会这样。

0 投票
2 回答
564 浏览

java - Java JAIN SIP 存在

我目前正在使用 .java 编写一个应用程序,JAIN SIP library过去几天我一直在尝试使用SUBSCRIBENOTIFY消息来实现存在。我目前有NOTIFY内容类型为“ message/sipfrag;version=2.0”的消息,需要它是 XML 和 PIDF。

我知道我需要使用带有“ presence”的事件标头以及内容类型标头。

有没有我可以去的地方有关于这方面的信息,或者是否有任何其他特定的标题或类和/或方法来完成这项工作?我已经有一个可以拨打电话的客户,但现在需要实现存在。

0 投票
1 回答
332 浏览

java - jain sip processResponse() 没有被调用

我正在尝试使用 JAIN SIP API 发送 SIP 注册请求。我已经在课堂上实现了 javax.sip.SipListener 并且我的程序成功发送了请求,甚至我从 sip 服务器收到了 401 未经授权的响应。我已经使用wireshark验证了这一点。但是 processResponse() 没有被调用。我在 processResponse() 中使用了 System.out.Println("response received") 来验证它是否被调用。谁能帮我弄清楚为什么会这样。我已经烧了很多头,无法弄清楚。我在下面粘贴了我的代码。

公共类 CoreEngine 实现 javax.sip.SipListener{

}

0 投票
1 回答
193 浏览

java - jain sip API 无法向同一台机器上的端点发送通知

我正在尝试向 SIP 端点发送 SIP 通知,但如果 SIP 端点位于同一台机器上,则会出现错误。如果我使用两台不同的机器,它可以工作。

这个函数有:

可能是什么问题呢?

我收到此错误:

0 投票
0 回答
1040 浏览

servlets - 为什么在初始 INVITE SIP 消息中添加 Record-Route 标头后,ACK 消息会在内部路由?

Record-Route 标头添加到初始 INVITE 消息中,如下所示。在收到此请求的 200 OK 后,使用 SipServletResponse 类中的 createAck() 方法创建 ACK。ACK 消息的输出也如下所示。如您所见,47.168.150.15 被添加到路由标头中,该标头最初作为 Record-Route 添加到 INVITE。由于该 ACK 消息是在内部路由的,因此不会发送到 47.168.22.204。

下面一行来自 mobicents 调试日志。[org.mobicents.servlet.sip.message.SipServletRequestImpl] 由于 RR = Route: ;lr,请求在内部进行

我必须添加 Record-Route 标头才能接收会话的后续消息。

您知道为什么将 47.168.150.15 添加到 ACK 消息中吗?我试图从 ACK 中删除此地址并修改 Record-Route 标头,但我无法成功。

提前致谢。哈特克

0 投票
1 回答
378 浏览

java - Jain Sip processRequest 方法未被调用

我正在用 Java 编写一个应用程序来拨打电话并查看人们何时通话、他们的电话正在响铃或空闲,使用库 Jain-Sip 并且目前正在尝试使用 SUBSCRIBE 和 NOTIFY 消息正确实现存在。我能够获得要接收的存在数据,但过了一段时间,我的程序停止显示存在数据。

我相信这是因为没有调用覆盖的方法“processRequest”。这是程序中处理 NOTIFY 消息的最早点,甚至不输出打印语句。

奇怪的是,当我拨打电话时正在发送通知消息,并且存在数据在那里。我知道这一点是因为我在运行程序时已经完成了 Wireshark 跟踪。

注意:在程序执行期间没有发生异常,导致错误行为。

如果有人对为什么会发生这种情况有任何见解,我将不胜感激。

非常感谢,亚当

0 投票
2 回答
682 浏览

java - java jain sip how to minimize transaction timeout

I'm building a Jain Sip application that sends request and receives response. In case the response is not received I need to handle it in my code, but the default delay before firing the processTimeout function is too long (~32 sec), how can I minimize it?

below is a snippet of my code:

Thank you, Salim

0 投票
0 回答
610 浏览

java - jain sip注册:计算MD5挑战后如何重新发送注册请求

我正在尝试使用 JAIN-SIP 向 SIP 服务器进行身份验证。我使用以下代码:

现在我已经发送了请求,并使用processResponse(ResponseEvent responseEvent). 我还有一个类来计算 MD5 质询并重新创建请求数据包,包括我在processResponse()函数内部调用的授权标头。

如何再次将此质询请求发送到服务器?即使我发送它,我如何再次处理回复,因为已经processResponse()使用了回调?