Есть чатик на вебсокетах, работающий только в браузере. (Сохранение истории, завязка на базы данных и т.д.)
На тестовом сервере, реализовал чатик в андройд приложении, на основе exten => _XXXX,1,MessageSend
Аккаунты и для телефонии и для чатика одни и те-же.
Как теперь подружить Астериск с WebSocket чатиком?
Как решал проблему:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
Я планировал воспользоваться ARI, благо собрались переползать с 8го астериска на 13ый.
Настроил астериск, поигрался с ARI "хело-ворлд", но дальше дело не пошло.
Думал, что можно будет наладить обмен между WebSocket сервером и астериском через RESTful интерфейс.
Но не нашел никакой нормальной информации по этому поводу. Как аудио проиграть или статус проверить - это пожалуйста. (работает) Но как сообщения отправлять, непонятно.
Если использовать доку через http://ari.asterisk.org/ То в разделе endpoints, есть интересный запрос "PUT /endpoints/sendMessage". Однако не уверен, что имеется ввиду нечто аналогичное MessageSend диалплана... Во всяком случае у меня не заработало.
Настроил астериск, поигрался с ARI "хело-ворлд", но дальше дело не пошло.
Думал, что можно будет наладить обмен между WebSocket сервером и астериском через RESTful интерфейс.
Но не нашел никакой нормальной информации по этому поводу. Как аудио проиграть или статус проверить - это пожалуйста. (работает) Но как сообщения отправлять, непонятно.
Если использовать доку через http://ari.asterisk.org/ То в разделе endpoints, есть интересный запрос "PUT /endpoints/sendMessage". Однако не уверен, что имеется ввиду нечто аналогичное MessageSend диалплана... Во всяком случае у меня не заработало.
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
Asterisk 13.7.2 чистый
Андройд клиент - Переделанный Linphone
Сообщения в Астериске отправляются через extensions.conf exten => _XXXX,1,MessageSend(pjsip:${EXTEN},"${CALLERID(name)}"${MESSAGE(from)})
Чат на сайте работает через WebSocket сервер (делал не я) и хорошо бы использовать его, а не делать новый.
ARI работает, проверено на простых примерах.
Пробовал "PUT /endpoints/sendMessage" из интерактивной документации по ARI.
http://localhost:8001/ari/endpoints/sen ... k:asterisk
Ругается 400 Invalid parameters for sending a message.
Response Body
{
"message": "Error parsing request body"
}
В from и to имя эндпоинта в формате pjsip:1111
В body просто строка "Hello from WS".
Андройд клиент - Переделанный Linphone
Сообщения в Астериске отправляются через extensions.conf exten => _XXXX,1,MessageSend(pjsip:${EXTEN},"${CALLERID(name)}"${MESSAGE(from)})
Чат на сайте работает через WebSocket сервер (делал не я) и хорошо бы использовать его, а не делать новый.
ARI работает, проверено на простых примерах.
Пробовал "PUT /endpoints/sendMessage" из интерактивной документации по ARI.
http://localhost:8001/ari/endpoints/sen ... k:asterisk
Ругается 400 Invalid parameters for sending a message.
Response Body
{
"message": "Error parsing request body"
}
В from и to имя эндпоинта в формате pjsip:1111
В body просто строка "Hello from WS".
PS: Могу привести конфиги тестового Астериска, но пока не ясно какие, ведь сам по себе ARI работает.