测试 kamailio v6.0.5 的 nats 模块(预处理)

OS: debian 12

apt install -y nats-server natscli

先编辑一个版本的 kamailio.cfg

loadmodule "nats.so"

modparam("nats", "nats_url", "nats://127.0.0.1:4222")

modparamx("nats", "nats_url", $def(NATS_URL))

modparam("nats", "subject_queue_group", "MyQueue1:1234")

event_route[nats:MyQueue1]

xlog("L_INFO", "received $(natsData)\n");

}

启动 kamailio

nats pub MyQueue1 "hello, kamailio"

kamailio 日志为:

INFO: <script>: received hello, kamailio


export NATS_URL="nats://127.0.0.1:4222"

修改kamailio.cfg

#!defenv NATS_URL

modparam("nats", "nats_url", $def(NATS_URL))

其他照旧


export NATS_URL="nats://127.0.0.1:4222"

#!substdef "!NATSURL!$env(NATS_URL)!g"

modparam("nats", "nats_url", "NATSURL")

这样也行


export NATS_URL="nats://127.0.0.1:4222"

#!defenv NATS_URL ## 增加双引号

modparam("nats", "nats_url", $defv(NATS_URL)) ## 删除双引号

但 $defv 目前的 6.0.5 版本暂不支持

请看这个 commit

https://github.com/kamailio/kamailio/commit/72699b5d85bc1ca8b487749798ed8e93622d1686

估计 6.1.x 开始支持


复制代码
export NATS_URL="nats://127.0.0.1:4222"

modparamx("pv", "shvset", "nats_url=s:$env(NATS_URL)")
modparamx("nats", "nats_url", "$shv(nats_url)")

这是另外一种搞法,但这样占用比较多的内存,搞不好就容易出现下面的错误:

ERROR: <core> [core/socket_info.c:235]: new_addr_info(): could not allocate private memory from pkg pool

ERROR: <core> [core/socket_info.c:1824]: add_interfaces(): new_addr_info2list failed

ERROR: <core> [core/socket_info.c:384]: new_sock_info(): could not allocate private memory from pkg pool

ERROR: <core> [core/socket_info.c:1096]: new_sock2list(): new_sock_info failed

ERROR: <core> [core/socket_info.c:1186]: add_listen_socket_info(): new_sock2list failed

ERROR: <core> [core/socket_info.c:2449]: fix_all_socket_lists(): add_listen_iface failed

你喜欢哪一种?欢迎留言!

相关推荐
ShineWinsu19 小时前
对于Linux:进程间通信IPC(匿名管道)的解析
linux·c++·面试·进程·通信·管道·ipc
xixixi7777713 天前
跨境AI服务:多语种大模型+卫星通信+量子加密+数据脱敏+安全审计,合规·高效·安全三重保障
人工智能·安全·大模型·通信·卫星通信·审计·量子安全
搞科研的小刘选手13 天前
【高届数制造材料会议】第十二届先进制造技术与应用材料国际学术会议(ICAMMT 2026)
自动化·制造·通信·电子信息·材料·机械·先进半导体
xixixi7777714 天前
智算中心建设新范式:GPT-6/Rubin架构+1.6T光模块+量子安全网关+AI安全沙箱,算力·效率·安全·成本的最优平衡
人工智能·gpt·安全·机器学习·架构·大模型·通信
xixixi7777715 天前
AI自主挖洞 + 通信网络扩散:全域风险指数级放大,如何构建密码-沙箱-终端联动闭环?
开发语言·网络·人工智能·ai·大模型·php·通信
xixixi7777716 天前
从5G标准到6G前沿:Polar码的技术演进与未来之路
开发语言·人工智能·5g·大模型·php·通信·polar码
xixixi7777717 天前
Token 经济引爆 AI 产业加速:从百模大战到百虾大战,谁在定义 2026 的中国 AI?
大数据·人工智能·机器学习·ai·大模型·算力·通信
无名38722 天前
测试 kamailio 的 tcp_reuse_port 以及 FreeSWITCH 的 reuse-connections 等等
通信
liulilittle25 天前
WintunAdapter 设计解析:一个 VNP 数据面的无锁优雅实现
网络·c++·it·通信
liulilittle25 天前
OPENPPP2 1.0.0.26145 正式版发布:内核态 SYSNAT 性能飞跃 + Windows 平台避坑指南
开发语言·网络·c++·windows·通信·vrrp