繁体   English   中英

如何在 Angular 应用程序中为来电设置 twilio 设备(即 API 在 .NET 6 中)?

[英]How to setup twilio device in Angular app for the incoming call (i.e. API is in .NET 6)?

我面临一个与来电相关的问题,所以情况是 API 在 .NET 6 中,它的前端在 Angular 应用程序中,也是多租户应用程序。

所以问题是我在 Angular 应用程序中创建了 Twilio 设备,还在 Twilio 上创建了传入的 webhook,webhook 端点在 .NET API 中,当传入呼叫来电时,webhook 被触发但是我如何将传入呼叫连接到 88670888339107 中的 88670883391607 .

在为调用生成令牌时,我还添加了传入的 scope 身份。

注意:拨出电话工作正常。

预期答案:我错过了什么? 或者您是否有任何参考博客或其他内容,如果有,请帮助技术社区。

提前致谢。

在 .NET 6 中生成令牌如下

var scopes = new HashSet<IScope> {
             { new IncomingClientScope(unique_user_name) },
             { new OutgoingClientScope(my_twiml_app_sid) }
           };
var capability = new ClientCapability(twilio_sid, twilio_token, expiration_time, scopes: scopes);
string voicetoken = capability.ToJwt();

然后如下所示在 Angular 中设置设备并准备好设备 function

device.setup(voice_token);

device.on('ready', () => {
      console.log('device is ready.');
});

device.on('error', (err) => {
      console.log('device is not ready. Error - ', err);
});

device.on('incoming', (call) => {
      console.log('incoming call', call);
});

还创建了带有来电显示和“收件人”号码的传入 webhook,如下所示,

public TwiMLResult IncomingVoice()
{
    var response = new VoiceResponse();
    
    var dial = new Dial(callerId: my_callerId);
    
    // wrap the phone number or client name in the appropriate TwiML verb
    // by checking if the number given has only digits and format symbols
    if(Regex.IsMatch(to, "^[\\d\\+\\-\\(\\) ]+$"))
    {
        dial.Number(to);
    }
    else
    {
        dial.Client(to);
    }
    response.Append(dial);
    return TwiML(response);
}

上面的例子一切正常,但是 Twilio 设备在来电时没有触发。

当您<Dial> 'ing a <Client>时,如果该客户端使用语音 SDK 连接到 Twilio,则 Twilio 将为您拨打该客户端。您传递给IncomingClientScopeunique_user_name是您的客户端的 ID,它必须匹配<Client> TwiML 名词的内容,因此它应该匹配to变量。

当您的客户端使用您的 Angular 应用程序连接时,应触发'incoming'事件,您需要接听来电。

根据您共享的代码,我看不出有什么问题。 分享如何获取to变量可能会有所帮助。

我建议登录到 Twilio 控制台,单击 Monitor > Logs > Calls,然后检查您的呼叫及其 TwiML。 也许其中包含一些有用的信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM