Используйте интерфейс управления Opensips от PJSIP

Я разрабатываю sip-телефон через iOS, используя PJSIP на стороне клиента и opensips на стороне сервера. Я могу зарегистрироваться на сервере и совершать звонки между разными пользователями, но мне нужно получить зарегистрированный список контактов с сервера opensips.

Я использую только фреймворки "pjsip", "pjlib" и "pjlib-util", потому что работаю с мультимедиа с помощью других фреймворков.

Согласно руководству opensips, мне нужно использовать «Интерфейс управления (MI)», чтобы запустить некоторые команды и получить этот список зарегистрированных пользователей.

Моя проблема в том, что я не знаю, как использовать интерфейс управления, запускать эти триггеры и получать список. Или, может быть, есть другой способ получить зарегистрированный список контактов с сервера opensips.

Я был бы признателен за любой пример использования интерфейса управления opensips из PJSIP или из объективного кода c.

Огромное спасибо!


person kemmitorz    schedule 23.01.2014    source источник


Ответы (1)


Вы можете найти документацию по интерфейсу управления opensips здесь:

Обзор

Основной API

Одним из вариантов является реализация клиента XML-RPC в вашем коде. Это будет за пределами PJSIP, так как это проприетарный интерфейс. Ссылка «Обзор» выше показывает пример кода на python, который я показываю здесь, слегка измененный:

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

Вам нужно будет найти библиотеку XML-RPC для Objective C, что, как я подозреваю, не составит труда.

person yotommy    schedule 23.01.2014