Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要将 SIP 消息正文的内容传递给 C 应用程序。例如,我将有一些 SIP 服务器(Kamailio 或 Asterisk 或类似的东西)。当我收到一些 sip 消息(例如打开 PC)时,它将被传递给 C 应用程序,它将 GPIO 值设置为 1,这样 PC 就会打开。问题是将消息从 sip 服务器获取到 C 应用程序中。我不知道是否存在一些 Asterisk 或 Kamailio 的模块可以做到这一点。
有人有什么想法吗?非常感谢!
SIP 消息只是文本。
因此,您可以使用您的 c 应用程序对其进行解析,或者使用 kamailio 内部逻辑并为其编写模块(是的,kamailio 是用 C/C++ 编写的)。检查 kamailio 来源以获取更多信息。
Asterisk 不处理 sip 消息,但您可以修补 chan_sip 来做一些事情或更改拨号计划以执行外部应用程序/内部应用程序(是的,也是用 c/c++ 编写的)
asterisk 和 kamailio 在 dialplan 中都有 EXEC 调用来执行外部应用程序。