Благодаря новому магазину дополнений Twilio разработчики могут использовать преимущества сторонних API одним нажатием кнопки. Дополнение IBM Watson Message Sentiment добавляет информацию о тональности сообщений к каждому SMS-запросу, отправляемому в ваше веб-приложение.
Давайте создадим приложение на Flask, которое будет определять тональность текстовых сообщений, отправленных на ваш номер Twilio.
Перед написанием кода убедитесь, что у вас есть:
— Установленные Python и pip.
— Аккаунт Twilio – зарегистрируйтесь бесплатно.
— Ваш Account SID и Auth Token под рукой из панели управления Twilio.
Теперь установим необходимые сторонние библиотеки.
Выполните следующие команды в терминале, чтобы установить Flask и модуль Twilio для Python, желательно в виртуальной среде:
Прежде чем вы сможете отвечать на сообщения, вам понадобится номер телефона Twilio. Вы можете приобрести номер здесь.
Теперь создадим веб-приложение, которое будет отвечать на текстовые сообщения, отправленные на этот номер. Откройте файл `app.py` и создайте приложение Flask с одним маршрутом:
Когда сообщение поступает в Twilio, Twilio отправляет HTTP-запрос в ваше веб-приложение и ожидает инструкции в виде TwiML. Единственный маршрут в этом веб-приложении использует библиотеку Twilio для Python, чтобы сгенерировать и вернуть TwiML, который отвечает на сообщение.
Ваше приложение Flask должно быть доступно из Интернета, чтобы Twilio мог отправлять ему запросы. Для этого мы будем использовать ngrok, который вам нужно установить, если он у вас еще не установлен. В терминале выполните следующую команду:
Это предоставит нам общедоступный URL для приложения Flask. Настройте свой номер телефона, как показано на этом изображении:
Теперь вы готовы отправлять текстовые сообщения на ваш новый номер Twilio.
Чтобы добавить анализ тональности ко всем вашим сообщениям, вам просто нужно активировать дополнение IBM Watson Message Sentiment, нажав кнопку «Установить» в консоли.
В POST-запросе, отправляемом в ваше приложение, появится новое поле AddOns, внутри которого вы сможете получить доступ к данным из API IBM Watson:
Этот объект `AddOns` будет в формате JSON, который вам нужно будет распарсить. Откройте `app.py` снова и добавьте следующую строку в начало вашего кода:
Чтобы получить доступ к тональности входящих сообщений, вам нужно добавить еще несколько строк кода. Откройте `app.py` снова и перепишите маршрут `/sms`:
Теперь отправьте несколько радостных и грустных сообщений на ваш номер Twilio!
С небольшой настройкой и несколькими дополнительными строками кода вы можете получить тональность всех сообщений, отправленных на ваши номера Twilio, будь то для улучшения клиентского опыта или для выбора подходящих GIF-изображений для ваших пользователей.
Не стесняйтесь обращаться, если у вас есть вопросы или комментарии, или если вы просто хотите похвастаться тем, что создали.
— Email: sagnew@twilio.com
— Twitter: @Sagnewshreds
— Github: Sagnew
— Twitch (прямые трансляции кодинга): Sagnewshreds