FreeSWITCH mod_curl 和 mod_xml_rpc 测试

编辑 /usr/local/freeswitch/conf/autoload_configs/xml_rpc.conf.xml

<configuration name="xml_rpc.conf" description="XML RPC">

<settings>

<param name="http-port" value="8889"/>

<param name="commands-to-log" value=".*"/>

</settings>

</configuration>

fs_cli -x 'load mod_xml_rpc'

fs_cli -x 'load mod_curl'

fs_cli -x 'curl http://127.0.0.1:8889/xmlapi/status'

哈哈,结果不错


api 要带参数怎么弄?

fs_cli -x 'curl http://127.0.0.1:8889/xmlapi/uuid_kill?735cc8f4-758a-4efd-b110-c0840e721ce8'

-ERR No such channel!

2025-06-13 16:19:35.493126 98.43% DEBUG mod_curl.c:209 method: get, url: http://127.0.0.1:8889/xmlapi/uuid_kill?735cc8f4-758a-4efd-b110-c0840e721ce8, content-type: (null)

2025-06-13 16:19:35.513144 98.43% INFO mod_xml_rpc.c:1088 Executed HTTP request command: uuid_kill 735cc8f4-758a-4efd-b110-c0840e721ce8.


带 http 头要怎么弄?

fs_cli -x "curl http://127.0.0.1:8889/xmlapi/uuid_kill?735cc8f4-758a-4efd-b110-c0840e721ce8 append_headers 'k1:v111' append_headers 'k2:v222'"

抓包, 用 wireshark 看,如下

GET /xmlapi/uuid_kill?735cc8f4-758a-4efd-b110-c0840e721ce8 HTTP/1.1

Host: 127.0.0.1:8889

User-Agent: freeswitch-curl/1.0

Accept: */*

k1:v111

k2:v222


增加 basic 认证

<configuration name="xml_rpc.conf" description="XML RPC">

<settings>

<param name="http-port" value="8889"/>

<param name="auth-realm" value="freeswitch"/>

<param name="auth-user" value="freeswitch"/>

<param name="auth-pass" value="works"/>

<param name="commands-to-log" value=".*"/>

</settings>

</configuration>

按 mod_curl 文档

fs_cli -x 'curl http://freeswitch:work@127.0.0.1:8889/xmlapi/status'

但实际上,得到 401,不灵

下面是文档片段

If you want to pass basic authentication credentials then do this:

local auth_url = "http://username:password@mysecure_web_service.com"

local response = api:execute("curl", auth_url)

是不是我的做法有问题?

相关推荐
RayRings6 天前
OFDM, OFDMA, SC-FDMA的区别
通信
liulilittle7 天前
回归物理本质:对拥塞控制实验室依赖与公平性误置的反思
网络·tcp/ip·计算机网络·算法·tcp·通信·拥塞控制
liulilittle8 天前
KCC:在 BBR 思路上的一次探索
网络·tcp/ip·算法·bbr·通信·拥塞控制·kcc
liulilittle8 天前
KCC: An Exploration Along the Lines of BBR
网络·tcp/ip·计算机网络·bbr·通信·拥塞控制·kcc
liulilittle8 天前
甲骨文云中国大陆定向 QoS 原理及绕过解决方案
服务器·开发语言·网络·计算机网络·oracle·通信·qos
七夜zippoe10 天前
DolphinDB OPC-UA协议接入:工业标准通信
网络·通信·dolphindb·工业标准·opc-ua
liulilittle11 天前
拥塞控制:排水终止的两种决策:OR 与 AND
网络·tcp/ip·计算机网络·算法·信息与通信·tcp·通信
liulilittle12 天前
删除 Inflight Bounds:为什么 KCC 放弃了 BDP 钳位
linux·网络·tcp/ip·计算机网络·信息与通信·tcp·通信
大大杰哥13 天前
SSeEmitter的基本使用和介绍
java·sse·通信
liulilittle14 天前
TCP KCC v1.0(卡尔曼拥塞控制)
linux·服务器·网络·tcp/ip·计算机网络·tcp·通信