1

我正在通过 iOS 开发一个 sip 电话,在客户端使用 PJSIP,在服务器端使用 opensips。我可以注册到服务器,并在不同用户之间进行通话,但我需要从 opensips 服务器获取注册的联系人列表。

我只使用“pjsip”、“pjlib”和“pjlib-util”框架,因为我使用其他框架处理媒体。

根据opensips指南,我需要使用“管理界面(MI)”来触发一些命令并获取注册用户列表。

我的问题是我不知道如何使用管理界面、触发这些触发器并检索列表。或者也许还有另一种方法可以从 opensips 服务器获取已注册的联系人列表。

我将不胜感激任何有关如何从 PJSIP 或目标 c 代码中使用 opensips 管理接口的示例。

非常感谢!

4

1 回答 1

1

您可以在此处找到有关 opensips 管理界面的文档:

概述

核心 API

一种选择是在您的代码中实现 XML-RPC 客户端。这将在 PJSIP 之外,因为它是一个专有接口。上面的 Overview 链接显示了 python 中的示例代码,我在此处显示,稍作修改:

#!/usr/bin/python
import xmlrpclib
opensips = xmlrpclib.ServerProxy('http://127.0.0.1:8080/RPC2')
print opensips.subscribers_list()

您将需要为 Objective C 找到一个 XML-RPC 库,我想这并不难。

于 2014-01-23T13:10:59.260 回答