Asterisk RTP 数据到 Node.JS 应用程序
Asterisk RTP data to Node.JS app
我已经使用他们 wiki 中的 res_pjsip Hello World 配置成功地在我的服务器上设置了 Asterisk,我希望能够将 RTP 数据转发到 Node.JS 应用程序,它可以解释RTP。我听说过 directmedia
和 directrtpsetup
(参见 this Whosebug),但我不确定这是否是我想要的。所以我的问题是:
我应该使用 directmedia
/ directrtpsetup
将语音数据发送到我的 Node.JS 应用程序,还是应该使用某种 Asterisk 功能来转发 RTP 数据包?如果是后者,Asterisk如何只转发语音数据?
如果需要,我可以澄清,但希望这比我上一个问题更具体。谢谢!
更新:浏览了 Asterisk 文档并弄乱了 Wireshark,我想我有两个选择。
- 弄清楚是否有 Asterisk 的通道驱动程序只发送 RTP,没有任何信号,或者
- 使用 Wireshark 或其他工具捕获 RTP 流并将数据包发送到 Node.JS 应用程序,并将 return 数据包注入 RTP 流。
星号是 PBX。不适合"redirect rtp data"
不,没有理由使用通道驱动程序 "without signalling"。任何人都可以使用它做什么? "no signaling"如何判断通话开始?会没用的。
您可以在 c/c++ 中编写此类应用程序或使用其他设计用于流量捕获的软件:libpcap、tcpdump 等。
您还可以使用音频五线谱:libalsa, jack。
然而,最好的选择是创建或找到功能齐全的 sip 客户端并使用它。
我已经使用他们 wiki 中的 res_pjsip Hello World 配置成功地在我的服务器上设置了 Asterisk,我希望能够将 RTP 数据转发到 Node.JS 应用程序,它可以解释RTP。我听说过 directmedia
和 directrtpsetup
(参见 this Whosebug),但我不确定这是否是我想要的。所以我的问题是:
我应该使用 directmedia
/ directrtpsetup
将语音数据发送到我的 Node.JS 应用程序,还是应该使用某种 Asterisk 功能来转发 RTP 数据包?如果是后者,Asterisk如何只转发语音数据?
如果需要,我可以澄清,但希望这比我上一个问题更具体。谢谢!
更新:浏览了 Asterisk 文档并弄乱了 Wireshark,我想我有两个选择。
- 弄清楚是否有 Asterisk 的通道驱动程序只发送 RTP,没有任何信号,或者
- 使用 Wireshark 或其他工具捕获 RTP 流并将数据包发送到 Node.JS 应用程序,并将 return 数据包注入 RTP 流。
星号是 PBX。不适合"redirect rtp data"
不,没有理由使用通道驱动程序 "without signalling"。任何人都可以使用它做什么? "no signaling"如何判断通话开始?会没用的。
您可以在 c/c++ 中编写此类应用程序或使用其他设计用于流量捕获的软件:libpcap、tcpdump 等。
您还可以使用音频五线谱:libalsa, jack。
然而,最好的选择是创建或找到功能齐全的 sip 客户端并使用它。