Как отправить SMS (используя канал Twilio) из Microsoft Bot Framework?

1

В настоящее время мой бот находится на Facebook-мессенджере, который используется сотрудниками. Я хочу, чтобы мой бот отправил одно сообщение одному человеку, чтобы приветствовать его/ее в нашей команде и с ее верительными грамотами.

Я знаю, что Microsoft Bot Framework интегрирует Twilio, поэтому я интегрировал канал Twilio следующим образом: https://docs.microsoft.com/en-us/bot-framework/channel-connect-twilio, поэтому у меня есть телефон, и все хорошо настроен, потому что я могу отправить вручную SMS (с панели инструментов Twilio), он работает.

Проблема в том, что я не знаю, как ее использовать прямо сейчас, в боте.

const confirmPerson = (session, results) => {
  try {
    if (results.response && session.userData.required) {

      // Here I want to send SMS

      session.endDialog('SMS sent ! (TODO)');
    } else {
      session.endDialog('SMS cancelled !');
    }
  } catch (e) {
    console.error(e);
    session.endDialog('I had a problem while sending SMS :/');
  }
};

Как достичь этого?

EDIT: Точность, человек, приветствующий сотрудника, является тренером, просто отправляя SMS от бота с учетными данными, чтобы использовать в webapp бот подключается после первого использования пользователем приветствуется

Теги:
botframework
twilio
sms

1 ответ

2
Лучший ответ

Twilio разработчик евангелист здесь.

Вы можете сделать это в бот-структуре, отправив рекламное сообщение ad-hoc. Кажется, вам нужно будет создать адрес для пользователя, которому вы хотите отправлять сообщения, хотя я не могу найти в документации, как должен выглядеть адрес.

Поскольку вы находитесь в среде Node, вы можете использовать обертку Twilio API для этого. Просто установите twilio в свой проект с помощью:

npm install twilio

Затем соберите свои учетные данные и используйте модуль следующим образом:

const Twilio = require('twilio');

const confirmPerson = (session, results) => {
  try {
    if (results.response && session.userData.required) {

      const client = new Twilio('your_account_sid','your_auth_token');

      client.messages.create({
        to: session.userData.phoneNumber,   // or whereever it stored.
        from: 'your_twilio_number',
        body: 'Your body here'
      }).then(function() {
        session.endDialog('SMS sent ! (TODO)');
      }).catch(function() {
        session.endDialog('SMS could not be sent.');
      })

    } else {
      session.endDialog('SMS cancelled !');
    }
  } catch (e) {
    console.error(e);
    session.endDialog('I had a problem while sending SMS :/');
  }
};

Дайте мне знать, как это происходит.

  • 0
    Я решил это как час назад, делая почти точно то, что вы там написали! :) Я до сих пор не понимаю, как использовать канал Twilio из фреймворка ботов, поэтому у меня может быть бот, работающий, но с помощью SMS на этот раз. Может быть, я открою новый вопрос для этого, поддержка Twilio не знает об этом ^^ В любом случае, большое спасибо!
  • 0
    Вы можете сделать это, я просто не мог найти, как создать адресный объект, который вам нужен. Пример взят из предыдущего существующего чата. Я думаю, что по большей части бот-фреймворк ожидает, что пользователи начнут разговор.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню