SIP 逻辑上的 Kamailio xhttp 模块(Websocket)标头

Posted

技术标签:

【中文标题】SIP 逻辑上的 Kamailio xhttp 模块(Websocket)标头【英文标题】:Kamailio xhttp module (Websocket) header on SIP logic 【发布时间】:2018-11-09 17:10:10 【问题描述】:

我在nginx 后面有一个Kamailio,用于确保websockets 安全。 nginx 设置一些像 X-Forwarded-For 这样的标头,我想在主路由逻辑上处理这些值。

【问题讨论】:

【参考方案1】:

标题的值应该在 xhttp 模块的 event_route 中通过 $hdr(X-Forwarded-For) 可用。 p>

【讨论】:

我在问如何将此值传递给主路由。有办法吗? 嗨@miconda,我有一对工具可以做到这一点,$shv$sht 变量类型。当升级到 WS 时,我可以从 event_route[xttp:request] 获取标头值,并通过 $conid 使其在 request_route 中可用。 在 request_route 中,您会收到通过 websocket 发送的 SIP 消息,而不是 http 请求。因此,您需要在事件路由中存储带有操作的 HTTP 标头,并且您指出,使用带有连接 ID 的哈希表是一个很好的解决方案。 $shv(...) 是一个单值变量,它的名称是静态的,如果你有多个 websocket 连接,它就不起作用。使用 $sht(...)。

以上是关于SIP 逻辑上的 Kamailio xhttp 模块(Websocket)标头的主要内容,如果未能解决你的问题,请参考以下文章

开源SIP服务器Kamailio/OpenSIPS的三种信令负载均衡算法优化详解以及测试讨论和基于SBC信令语音均衡负载功能实现

kamailio 云部署 配置NAT

VoIP 呼叫在不同的网络中不起作用(使用 PJSIP 和 Kamailio 服务器)

逻辑学 直言命题中SAP\SEP\SIP\SOP 中的A,E,I,O分别代表啥?

SIP的会话构成

有没有办法让 Android 原生 sip 堆栈支持所有 android 设备上的 voip?