Работает весьма просто, например так:
# cat /opt/freeswitch/conf/autoload_configs/xml_curl.conf.xml
<configuration name="xml_curl.conf" description="cURL XML Gateway">
<bindings>
<binding name="fs2web_user_fetcher">
<param name="gateway-url" value="http://localhost:8000/get/user/" bindings="directory">
</binding>
</bindings>
</configuration>
# cat /opt/freeswitch/conf/autoload_configs/modules.conf.xml
...
<load module="mod_xml_curl"/>
...
Теперь FS будет слать тонну информации методом POST на web сервер по указаному адресу и ждать в ответ описание пользователя в стандартном xml:
~$ wget http://127.0.0.1:8000/get/user/?sip_auth_username=3000 -O -
--23:36:28-- http://127.0.0.1:8000/get/user/?sip_auth_username=3000
=> `-'
Устанавливается соединение с 127.0.0.1:8000... соединились.
Запрос HTTP послан, ожидание ответа... 200 OK
Длина: нет информации [text/html]
[<=> ] 0 --.--K/s
<document type="freeswitch/xml">
<section name="directory">
<domain name="">
<user id="3000" mailbox="3000">
<params>
<param name="password" value="1234"/>
<param name="vm-password" value="3000"/>
</params>
<variables>
<variable name="accountcode" value="3000"/>
<variable name="user_context" value="public"/>
<variable name="effective_caller_id_name" value="Mihail Krivushin"/>
<variable name="effective_caller_id_number" value="3000"/>
</variables>
</user>
</domain>
</section>
</document>
[ <=> ] 608 --.--K/s
23:36:29 (1.91 MB/s) - `-' сохранён [608]
Ну и напоследок, мне кажется не совсем бесполезная ссылка на пример готового сервера на Django. Клонируйте, и затем поправьте settings.py. Пользователей можно заводить через стандартный административный интерфейс Django. Администратор - "admin", пароль - "kuku".
6 комментариев:
Нифига не работает... запрос осуществляется не по-пользовательно, а 1 раз при старте... и хочет получить, видимо, общий лист юзеров...
запрос делается такого плана:
"POST /get/user/ HTTP/1.1" 404 1703
ответ сервера приведен тут же
За "Нифига" дам только ссылку без объяснений - http://wiki.freeswitch.org/wiki/Xml_curl : ))
Проект слегка устарел уже, на днях будет обновление.
В общем пока стартовый запрос не обрабатывается, но ничего страшного в этом собственно нет.
Прошу прощения за "нифига" :-)
на самом деле работает, но там нету проекта диалпалан - пришлось его комментировать... ну и работает не совсем так, как нужно - это уже было отмечено :-)
Ждем новых доработок!
а можно как-то напрямую сликовать xml_curl и couchdb? Пока не получается, как минимум надо что-то записать в базу.. и фс ждёт xml а не rest.
Можно как-то пооперативнее пообщаться, через жаббер/скайп например?
Если честно я уже давно с этой темой завязал.
Отправить комментарий