Настраиваем API и отправляем SMS с помощью браузера
Метод, получивший название SMS-рассылки по API, позволяет передавать SMS-сообщения через интернет, а также создавать недорогие программы для работы с SMS-трафиком.
SMS-центр, который отправляет сообщения абонентам внутри сети, принимает данные по протоколу SMPP. Работать с этим протоколом непросто. Одна только его спецификация занимает 166 страниц убористого текста на английском языке.
Поскольку работа с протоколом SMPP отнимает много времени и сил и не позволяет быстро создавать недорогие программные решения – рационально передавать данные в SMS-центр через оборудование посредника.
Таким посредником является SMS-провайдер, который принимает данные заказчика, например, по протоколу http, преобразовывает их в PDU-запрос и передает в SMS-центр.
SMS-провайдеры предлагают упрощенные процедуры для отправки данных в SMSC – через API. API позволяет сформировать запрос, который поступает на оборудование sms-провайдера и содержит номер абонента, текст и подпись, а также ряд служебных данных.
SMPP | API |
требует специальных знаний | подстраивается под возможности заказчика |
используется для прямого подключения к SMSC | используется для подключения к оборудованию SMS-провайдера |
требует больших вложений в разработку программного обеспечения | удешевляет разработку программного обеспечения |
выгоды заметны только при большом объеме SMS-трафика | выгода падает с увеличением объема SMS-трафика |
Передавать данные посреднику можно любым способом, но чаще всего используют http протокол, поскольку он достаточно простой и его поддерживают популярные языки программирования.
Пример #1
CRM-система автоматически формирует сообщение со статусом заказа и передает его по протоколу http в SMS-центр.
Пример #2
Скрипт, установленный на сайте, отсылает по протоколу http код для подтверждения телефона, указанного пользователем при регистрации.
Get-запрос – это строка, содержащая набор параметров и их значений, которые передаются по протоколу http с одного компьютера на другой.
Пример get-запроса для передачи текста sms-сообщения на сервер sms-провайдера:
https://our.server/somescript.php?login=zajac&password=&service=342&space_force=1&space=TEST&subno=%2Btelephone_number&text=Тест API E-Vostok
Синим выделен адрес php-скрипта на сервере e-vostok.ru
Зленым выделен сам get-запрос, который начинается со знака «?». Параметры разделяются знаком &.
Расшифровка get-запроса | ||
Параметры | Значение | Комментарии |
login | zajac | логин |
password | — | пароль |
service | 342 | уникальный код сервиса sms-рассылок в |
space_force | 1 | Очень важный параметр значение, которого никогда не меняется |
space | TEST | буквенная подпись |
subno | telephone_number | телефонный номер получателя |
text | Тест API E-Vostok | текст sms-сообщения |
Это значит, что пользователь под логином zajac передает скрипту somescript.php на сервере our.server сообщение с текстом Тест API E-Vostok и подписью TEST для номера telephone_number. Параметры service и space_force выполняют служебные функции.
Как видно, строка с get-запросом очень похожа на ссылку в адресной строке браузера и имеет простой, понятный неспециалисту синтаксис, что и является главным достоинством http-протокола.
С помощью get-запросов можно также получать статусы о доставке, информацию о балансе, сообщения абонентов и т.д.
Важно! СМС-провайдер легко может доработать API, исходя из потребностей клиентов. Более того http – не единственный протокол для связи с провайдером. Существуют также SMTP, FTP, POP3, Telnet и DTN для рассылки спама в соседние звездные системы.
API упрощает работу программистам и позволяет малыми силами создавать простые, надежные и недорогие инструменты для работы с SMS-трафиком. Большинство SMS-провайдером поддерживают передачу данных через http-протокол, но не ограничиваются этим. Если Вы ищите надежное решение для межгалактических рассылок, то мы к Вашим услугам.