img

Получение СМС с dongle в FreeSWITCH на софтфон Grounwire

21 ноября
20:00
Бесплатный вебинар
Введение в Docker
Ведущий — Филипп Игнатенко.
Руководитель центра разработки
Записаться
img
img

Всем известно, что кроме GSM-шлюзов FS (FreeSWITCH) умеет работать и с dongle. Как заставить с донгла получить СМСку, расскажем в этой статье.

Предполагается, что у вас уже установлен и настроен mod_gsmopen и Lua. Если нет, то предлагаю обратиться к официальному источнику https://freeswitch.com/confluence/display/FREESWITCH/mod_gsmopen

Для работы с СМСками на нужно настроить chatplan ../freeswitch/conf/chatplan/default.xml

В котором нам нужно написать примерно следующее:

..
    <extension name="demo">
      <condition field="to" expression="^gsm(.*)$" break="on-true">
      <action application="lua" data="mail.lua"/>
      </condition>
    </extension>
..

То есть, мы указываем имена донглов, которые нужно слушать и отправляем в Lua-скрипт, который и будет пересылать СМСку в нужное нам место - Grounwire.

Пример Lua-скрипта:

mail.lua
--
-- Устанавливаем переменные выдергивая из заголовков сообщений
local from = message:getHeader("from");
local to =   message:getHeader("to");
local body = message:getBody();
local time = message:getHeader("Event-Date-Local");
local ext = "1001"; -- Указываем extension куда нужно отправлять СМСку

-- Переправляем полученные СМС в софтфон
freeswitch.consoleLog("info", "chat console***********************************************************************
") -- Выводим в CLI
local event = freeswitch.Event("CUSTOM", "SMS::SEND_MESSAGE");
event:addHeader("proto", "sip");
event:addHeader("dest_proto", "sip");
event:addHeader("from", "sip:".. from .."@voip.ru");
event:addHeader("from_full", "sip:".. from .."@voip.ru:5063"); -- Я думаю это понятно что означает :)
event:addHeader("to", "".. ext .."@voip.ru");
event:addHeader("subject", "sip:".. to .."@voip.ru:5063");
event:addHeader("type", "text/html");
event:addHeader("hint", "the hint");
event:addHeader("replying", "true");
event:addBody('Сообщение для '.. to ..' в '.. time ..',

 '.. body ..'');
event:fire();

Вот и всё. Теперь все сообщения, которые будут приходить на dongle будут перенаправляться в софтфон:

Получение СМС с dongle в FreeSWITCH на софтфон Grounwire

Так же можно писать и в базу MySQL и отправлять на почту. У меня это именно так сделано. Кроме этого можно и отправлять СМСки из веб-морды, а так же, и через смартфон, но для этого нужно дописать Lua-скрипт. А ещё можно управлять, например, своим компьютером на основе текста в СМС, то есть, перезагрузить/выключить, или ещё чем-то.

Так у меня отправляется СМСка из WEB – интерфейса:

Отправка SMS с dongle в FreeSWITCH
Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
DevOps
Скидка 25%
DevOps-инженер с нуля
Научитесь использовать инструменты и методы DevOps для автоматизации тестирования, сборки и развертывания кода, управления инфраструктурой и ускорения процесса доставки продуктов в продакшн. Станьте желанным специалистом в IT-индустрии и претендуйте на работу с высокой заработной платой.
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Привет, дорогой читатель! В повседневной работе зачастую не хватает автоматизации. Поэтому, мы решили создать калькулятор инстал
img
Мы подумали, а почему бы не консолидировать все знания по Cisco VoIP продуктам и их настройке в единый документ? Добавить в них
img
Привет! Для удобства, мы структурировали все материалы по графическому интерфейсу FreePBX в нашей базе знаний в единый файл. Сам
img
Вам, как сетевому инженеру, крайне важно разбираться в том, каким образом вызовы VoIP влияют на пропускную способность канала в
img
В этой статье расскажем как отправлять различные СМС сообщения пользователям, позвонившим в контакт-центр Октелл и запросившим т
img
Всем современным кампаниям, производящим товары и оказывающим услуги, необходимо иметь специалистов, работающих с потенциальными
21 ноября
20:00
Бесплатный вебинар
Введение в Docker