OpenSIPS 管理接口的对接

1. 背景

OpenSIPS 是功能完善的开源 SIP 代理服务器,它在支持 SIP 代理的主要功能以外,也为使用者提供了一套 MI 管理接口面向不同的通信方式,OpenSIPS 还提供了对应的 MI 功能对接模块,使用者可以很方便地将这套管理接口集成到业务系统中,下文将介绍 HTTP 的对接方式

2. OpenSIPS 的 HTTP 管理接口对接

2.1 脚本配置

要使用 HTTP 协议对接 OpenSIPS 的管理接口,需要在 OpenSIPS 的启动脚本中添加以下配置,主要涉及到 2 个模块:

  1. httpd
    httpd 模块用于在 OpenSIPS 启动时开启一个 HTTP 服务器接收请求,读者有兴趣可前往 httpd 官方传送门
  2. mi_http
    mi_http 模块负责处理 HTTP 请求,主要逻辑是调用 MI 模块执行命令,读者有兴趣可前往 mi_http 官方传送门
loadmodule "httpd.so"
# 配置 HTTP 服务器的监听端口,未指定监听 IP 时会默认绑定本地所有可用 IP
modparam("httpd", "port", 8888)
loadmodule "mi_http.so"

2.2 请求方式

修改配置启动 OpenSIPS 后,直接发送 HTTP 请求即可完成交互,需注意请求体为 json-rpc 格式,以下为一个 curl 查看 支持的所有 MI 命令 的示例:

curl -X POST 'http://127.0.0.1:8888/mi' --header 'Content-Type: application/json-rpc' --data '{"id":"603095441","jsonrpc":"2.0","method":"which","params":[]}'

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45505313/article/details/132638745