node.js - 如何使用非 websockets 传输的 JS SIP 库?

标签 node.js sip jssip

Quora 上有人问了这个问题 here但没有人回答。除了更改 jsSip 的源代码之外,是否有解决此问题的解决方案?

问题是大多数与 webRTC 一起工作的 JS SIP 库都是通过 websockets (RFC 7118) 来实现的。此外,Chrome 现在需要 getUserMedia 接口(interface)在 https 上运行,这对 SIP 服务器端提出了额外的要求。 SIP服务器还必须支持websockets、SRTP、DTLS等。

如果 SIP 调用是通过浏览器进行的,则所有这些都是有意义的,无论是作为 webRTC 的信号机制还是通过网页的非 webRTC 电话调用。

但是,当SIP服务器在本地网络中,并且必须从应用服务器发起SIP调用时,所有这些要求都不再适用。应该可以通过纯 UDP 进行 JS SIP 调用,而无需使用 SIP 服务器运行 http 服务器,因为在我的例子中,http 服务器与应用程序服务器本身集成在一起。

Scenario 1 as supported bymost JS SIP libraries:
JSSIP (in HTML page <------>websockets<---->[http-builtin with SIP server]<---->PSTN

Scenario 2 which applies to the question:
JSSIP (in HTML page <--https---->app-server with https-server<----local net--->[SIP server] <-----> PSTN  

最佳答案

看起来你已经建立了自己的,但我正在寻找类似的东西并找到了这个: https://github.com/davehorton/drachtio

我还没有尝试过,但它被设计为 nodejs 服务器上的中间件,看起来它支持旧的非 websockets 模型。

关于node.js - 如何使用非 websockets 传输的 JS SIP 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36703919/

相关文章:

node.js - 如何为 pm2 指定端口号

android - 使用不同类的方法时应用程序崩溃

android - SIP 与直接 TCP 套接字

javascript - 如何在 JsSIP 中处理音频流?

javascript - 尝试使用 jsip 库向 FreeSwitch 发送邀请请求时出现 "488 Incompatible SDP "

node.js - 部署的 node.js 应用程序未显示在默认 IP 地址上,而 nginx 默认页面工作正常

javascript - 在 MONGODB 上使用 $in 和 $and 在我的情况下不起作用

node.js - 在 heroku 上更新 Node js 包

javascript - 尝试使用 SipML5 api 和代码连接到 Freeswitch 时出现传输错误

javascript - JSSIP WebRTC 手机 30 秒后自动断开连接