Нужна ваша помощь, скрипт умеющий отправлять СМС по VOIP шлюзу, как?

Здесь выкладываем скрипты
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Ответить
vusalh
Сообщения: 4
Зарегистрирован: 01 мар 2019, 16:23

Доброе время суток коллеги,
У меня следующая задача, хочу организовать Hotspot с авторизацией по СМС на Mikrotik-e (v6.34.3).
нашел отличный вебинар и скрипт по ссылке https://www.youtube.com/watch?v=mPimLJ55kTM
Только задача состоит в том что бы отправлять СМС не по USB свистку а через VoiP gateway ( Yeastar TG 800) по IP.
VoiP gateway умеет отправлять через API интерфейс, https://support.yeastar.com/hc/en-us/ar ... TG-SMS-API
однако у меня никак не получается подружить их, не подскажите как я могу интегрировать Yeastar TG 800 в Mikrotik?
Заранее благодарен.


vusalh
Сообщения: 4
Зарегистрирован: 01 мар 2019, 16:23

Коллеги, неужели никто незнает как написать этот скрипт?


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Если Ваш этот Voip gateway поддерживает прямые HTTP-команды/запросы, то можно с помощью инструмента Роутер ОС Микротика /tool fetch.
Писать скрипт Вы должны, конечно, сами ...


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
vusalh
Сообщения: 4
Зарегистрирован: 01 мар 2019, 16:23

Sertik писал(а): 05 мар 2019, 12:18 Если Ваш этот Voip gateway поддерживает прямые HTTP-команды/запросы, то можно с помощью инструмента Роутер ОС Микротика /tool fetch.
Писать скрипт Вы должны, конечно, сами ...
Уважаемый Sertik,
Благодаря вам мне удалось продвинуться с мертвой точки )

Этот Voip gateway поддерживает прямые HTTP-команды/запросы, (только что проверил мне удалось отправить СМС с помошью прямой ссылки)
теперь остается его применить в скрипте, в CLI Mikrotik-a для теста пытаюсь отправить СМС с помощью команды,

/tool fetch url="http://IP_ADDRESS/cgi/WebCGI?1500101=account=testuser1&password=testpass1&port=2&destination=+Otpravlayemiy_nomer&content=Opravlayemoye_Soobsheniye"} on-error={};

После отправки получаю следующую ошибку:

status: failed
failure: closing connection: <400 Bad Request> IP_ADDRESS (4)

Не подскажете в чем дело?


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Надеюсь Вы пишите так:

/tool fetch url="http://IP_ADDRESS/cgi/WebCGI?1500101=account=testuser1&password=testpass1&port=2&destination=+Otpravlayemiy_nomer&content=Opravlayemoye_Soobsheniye"

где IP_ADDRESS - это реальный IP Вашего этого СМС-шлюза, доступный для пинга ?

Обратите внимание, что специальные символы в CLI нужно экранировать обратным слэшем.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Также обратите внимание, на правильный синтаксис команды Микротик Рос /tool fetch. Всё это есть на wiki.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
vusalh
Сообщения: 4
Зарегистрирован: 01 мар 2019, 16:23

Sertik писал(а): 06 мар 2019, 11:02 Надеюсь Вы пишите так:

/tool fetch url="http://IP_ADDRESS/cgi/WebCGI?1500101=account=testuser1&password=testpass1&port=2&destination=+Otpravlayemiy_nomer&content=Opravlayemoye_Soobsheniye"

где IP_ADDRESS - это реальный IP Вашего этого СМС-шлюза, доступный для пинга ?

Обратите внимание, что специальные символы в CLI нужно экранировать обратным слэшем.
Пишу так как внизу,

/tool fetch url="http://IP_ADDRESS/cgi/WebCGI?1500101=account=testuser1&password=testpass1&port=2&destination=+Otpravlayemiy_nomer&content=Opravlayemoye_Soobsheniye"

Все равно выдает следующую ошибку, (хост http://IP_ADDRESS пингуется.)

status: failed

failure: closing connection: <404 Not Found> IP_ADDRESS:80 (4)

тот же самый линк в формате
http://IP_ADDRESS/cgi/WebCGI?1500101=account=testuser1&password=testpass1&port=2&destination=+Otpravlayemiy_nomer&content=Opravlayemoye_Soobsheniye
если вбить в мозилле, сообщение отправляется.

Есть идеи?


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

У команды /tool fetch кроме указания url есть масса параметров. Я не экстрасенс и не знаю что нужно Вашему voipgateway. Может нужно указать method=post или может ему ещё что-то нужно.
Открывайте wiki Микротик /tool fetch и читайте, потом пробуйте.
А может у вас трафик c роутера режется где нибудь в output цепочке или NAT где-то не правильно настроен. Откуда я могу знать не видя что там у Вас и как ...

А скорее всего строка url у Вас не правильная, т.е. где то в ней ошибки есть.

Вот Вам в качестве примера ... Эта строка перезагружает модем устройств Нетпинг. Указан адрес и порт (если порт стандартный 8080 можно не указывать.

/tool fetch url="http://192.168.0.4:8021/gsm_restart.cgi" mode=http http-method=post user=login password="\$ertik"

Кстати, WEB-интерфейс этого шлюза Вашего открытый или требует авторизации ? Если требует, тогда нужно указывать user и password. (У Вас это вроде как прямо внутри строки url указано, бывает и так, это уже от WEB-прошивки зависит - как там сделано). Все спец. симфолы в скриптах экранируются обратным слэшем (как в пароле примера символ $).
В Вашей строке знак вопроса нужно экранировать.

Ну и так далее - читайте как работать с /tool fetch. Ваша проблема на 100% решаема.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Ответить