Twilio

Twilio — широко используемый глобальный провайдер связи, базирующийся в Калифорнии, известный своей надежностью и покрытием во многих странах, особенно в США, Канаде и Великобритании.

Чтобы использовать Twilio в качестве SMS-шлюза в Navixy, вам потребуется получить ваши ACCOUNT_SID и AUTH_TOKEN (или API_SID/API_SECRET пару), которые вы можете получить, зарегистрировав аккаунт в Twilio. Эти учетные данные необходимы для аутентификации и должны быть включены в JSON-конфигурацию для шлюза Twilio в 'sms_gates' таблице 'google' базы данных.

JSON-конфигурация Navixy для Twilio

JSON-конфигурация Navixy для Twilio — это набор параметров, необходимых для настройки SMS-шлюза Twilio в Navixy. Эти параметры определены в формате JSON и хранятся в 'params' поле 'sms_gates' таблицу в 'google' базы данных.

Рекомендуемая конфигурация с account_sid и auth_token:

 поле params:
 {
 "account_sid": "ACdc5f132a3c49700934481addd5ce1659",
 "auth_token": "1095175a27d2044c06e1db8577b484f3",
 "enable_status_callback": false
 }
 type: transceiver
 provider: twilio

или, альтернативно, с account_sid, api_sid, api_secret:

 поле params:
 {
 "account_sid": "ACdc5f132a3c49700934481addd5ce1659",
 "api_sid": "SK12347865ugdfjbdf7845876345",
 "api_secret": "BS12347865ugdfjbdf7845876345",
 "enable_status_callback": false
 }
 type: transceiver
 provider: twilio

Чтобы найти ваши 'account_sid' и 'auth_token' Twilio, войдите в панель управления Twilio и нажмите «Show API Credentials», чтобы получить доступ к информации об аккаунте.

SQL-запросы для выполнения

Чтобы обновить базу данных с корректными настройками для использования Twilio в качестве SMS-шлюза, выполните следующий SQL-запрос:

INSERT INTO google.sms_gates (type, provider, params, enabled, class_filter) VALUES ('transceiver', 'twilio','{"account_sid": "ACdc5f132a3c49700934481addd5ce1659","auth_token":"1095175a27d2044c06e1db8577b484f3", "enable_status_callback": true}',1,'*');

Номер телефона отправителя

Чтобы настроить номер телефона, предоставленный Twilio, выполните два дополнительных SQL-запроса:

UPDATE google.dealers SET master_phone="TWILIO_PHONE", from_sms="TWILIO_PHONE" WHERE dealer_id=1;
INSERT INTO google.sms_gates_to_dealers (dealer_id, gate_id) VALUES (0, 1);

TWILIO_PHONE обозначает номер телефона, арендованный у Twilio. Первый SQL-запрос добавляет номер телефона, который будет использоваться в поле 'from' при работе с Twilio API. Второй запрос связывает SMS-шлюз с аккаунтом дилера (PaaS).

Входящие сообщения

Чтобы получать входящие сообщения через провайдера Twilio, добавьте следующий URL в их интерфейсе настройки:

http://$IPADDR:22000/sms/$GATEID/incoming

Где

  • $IPADDR — IP-адрес сервера или его доменное имя

  • $GATEID — id SMS-шлюза, который обрабатывает входящие сообщения

  • 22000 — порт, используемый для прослушивания подключений (значение по умолчанию)

Известные проблемы с Twilio

При использовании SMS-шлюза Twilio с Navixy существует потенциальная проблема с SMS-командами, содержащими ведущие пробелы. В некоторых случаях Twilio может удалить эти пробелы при обработке сообщения, что может привести к невозможности выполнения ожидаемой команды.

Например, если вы отправите SMS-команду на устройство с ведущим пробелом, такую как " 123456"Twilio может удалить пробел и отправить команду как "123456" устройство. Если устройству необходим пробел для распознавания команды, команда не будет выполнена корректно. Это может вызвать путаницу и разочарование у пользователей и системных администраторов.

Конкретно, эта проблема была подтверждена для устройств Teltonika и Ruptela, когда пароль для защиты конфигурации не установлен на устройстве.

Чтобы избежать этой проблемы, мы рекомендуем использовать альтернативных провайдеров SMS-связи, таких как Vonage или Textlocal.

Последнее обновление

Это было полезно?