【问题标题】:How to send SMS (using Twilio channel) from Microsoft Bot Framework?如何从 Microsoft Bot Framework 发送 SMS(使用 Twilio 通道)?
【发布时间】:2017-09-01 11:43:45
【问题描述】:

目前我的机器人在 Facebook Messenger 上,供员工使用。 我希望我的机器人向某人发送一条短信,以欢迎他/她加入我们的团队并提供其凭据。

我知道 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 :/');
  }
};

如何做到这一点?

编辑:Precision,欢迎员工的人是教练,只需从机器人发送带有凭据的短信,以便在用户首次使用后机器人连接的 webapp 中使用欢迎

【问题讨论】:

    标签: javascript node.js sms twilio botframework


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    您可以通过sending an ad-hoc proactive message 在机器人框架中执行此操作。看来您需要为要向其发送消息的用户创建一个地址,但我在文档中找不到地址应该是什么样的。

    由于您处于 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's 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 :/');
      }
    };
    

    让我知道这是怎么回事。

    【讨论】:

    • 我像一小时前一样解决了这个问题,几乎完全按照你在那儿写的! :) 我仍然不明白如何使用 Bot 框架中的 Twilio 频道,所以我可以让机器人工作但这次使用 SMS 也许我会为此打开一个新问题,Twilio 支持者不知道它^^非常感谢!
    • 你可以做到,我只是找不到如何构造你需要的地址对象。该示例取自以前的现有聊天。我认为大多数情况下,机器人框架都希望用户发起对话。
    • 我试图向“机器人”发送短信,它只是忽略了我。也许我有什么问题,我不知道!
    猜你喜欢
    • 2017-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-10
    • 2017-10-12
    • 1970-01-01
    • 1970-01-01
    • 2019-06-02
    相关资源
    最近更新 更多