【问题标题】:Twilio send a voice message if user doesn't answer, in an outbound call如果用户在出站呼叫中未接听,Twilio 会发送语音消息
【发布时间】:2018-12-23 10:06:10
【问题描述】:

我是使用 twilio 的新手。我正在使用 twilio 从浏览器拨打电话。在浏览器端,我使用 twiml Device 连接到呼叫。

Twilio.Device.connect({ phoneNumber: phoneNumber, userId: id });

在 nodejs 服务器端,我正在使用此代码。

import twilio from 'twilio';

const VoiceResponse = twilio.twiml.VoiceResponse; 

let phoneNumber = req.body.phoneNumber;
let callerId = user.phoneNumber;
let twiml = new VoiceResponse();

let dial = twiml.dial({ callerId: callerId });
dial.number(phoneNumber);

res.send(twiml.toString());

如果另一端的用户没有接听电话,我需要按一个按钮将录音作为语音邮件发送给该用户。

<button>Send Voicemail</button>

我怎样才能做到这一点?

【问题讨论】:

    标签: javascript node.js twilio twilio-twiml


    【解决方案1】:

    这应该可以结合使用 Twilio 的应答机检测服务和 &lt;Play&gt;TwiML 动词。

    Here is a code sample 使用应答机检测拨打外线电话。

    const accountSid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
    const authToken = 'your_auth_token';
    const client = require('twilio')(accountSid, authToken);
    
    client.calls
      .create({
         machineDetection: 'Enable',
         url: 'https://handler.twilio.com/twiml/EHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
         to: '+1562300000',
         from: '+18180000000'
       })
     .then(call => console.log(call.sid))
     .done();
    

    在您的调用中启用 AMD 后,Twilio 会将调用结果发布到您指定的 webhook。该 webhook 将收到一个 AnsweredBy 参数,该参数将指示诸如 machine_startmachine_end_beep 之类的事件。

    接收 webhook 的控制器应使用 &lt;Play&gt; TwiML 动词“按下”正确的按钮进行响应。 Here is a code sample 的样子(此代码未经测试):

    const VoiceResponse = require('twilio').twiml.VoiceResponse;
    
    app.post('/answering-machine-handler', function (req, res) {
      const response = new VoiceResponse();
    
      if (req.params.AnsweredBy === 'machine_start') {
        response.play({
            digits: 'wwww3'
        });
      } else {
        // Handle other cases here.
      }
    
      res.send(response);
    })
    
    console.log(response.toString());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-20
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 2018-04-21
      • 2017-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多