javascript - TwilioRestClient 和 Twilio.Device 之间有什么区别,为什么我可以使用 RestClient 调用但不能有现场语音?

标签 javascript asp.net-mvc twilio

我尝试通过 Twilio 调用我的电话号码。我设法通过调用操作方法做到了这一点:

public ActionResult Call(string toNumber) {
    client = new TwilioRestClient(Settings.AccountSid, Settings.AuthToken);        
    var result = client.InitiateOutboundCall(Settings.TwilioNumber, toNumber, "http://twimlets.com/message?Message%5B0%5D=http://demo.kevinwhinnery.com/audio/zelda.mp3");     
    if (result.RestException != null) {
        return new System.Web.Mvc.HttpStatusCodeResult(500, result.RestException.Message);
    }    
    return Content("Call enroute!");
}

当我接听电话时,会播放 url 中指定的 mp3。我想要现场 2 路音频。 在 Twilio 的一些示例中,例如:https://www.twilio.com/docs/quickstart/csharp/client/outgoing-calls我看到了功能 token 的用法:

var capability = new TwilioCapability(accountSid, authToken);
    capability.AllowClientOutgoing(appSid);
    capability.AllowClientIncoming("jenny");
    string token = capability.GenerateToken();

和 Twilio 设备:Twilio.Device.setup('@token');

为什么在我的示例中甚至可以在不生成功能 token 的情况下调用电话?我能以某种方式在 C# 而不是 javascript 中创建 Twilio.Device 吗?我应该从 Controller 传递功能 token 作为模型吗?

最佳答案

Twilio.Device 命名空间专用于 Twilio 客户端库(适用于 iOS、Android 或 Web 浏览器的 JS 库)。如果您将智能手机或 Web 浏览器视为语音通信的可能设备,那么做您想做的事情会更容易一些。如果您希望能够在计算机上与您的手机通信,则必须在 .Net 中生成功能 token ,然后在浏览器中设置您的设备,以便您可以通过计算机进行通信。

在此处阅读有关功能 token 的更多信息: https://www.twilio.com/docs/client/capability-tokens

关于javascript - TwilioRestClient 和 Twilio.Device 之间有什么区别,为什么我可以使用 RestClient 调用但不能有现场语音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30334484/

相关文章:

javascript - Ajax 和 session 变量

javascript - Ajax调用angularJs调用方法

PHP - Twilio SMS MySQL 多个号码 - 仅发送到第一行

ios - 在iOS中禁用了Twilio扬声器音频/视频通话

asp.net-mvc - 温莎 + NHibernate + ISession + MVC

asp.net - 在 asp.net mvc 中使用来电显示作为 twilio 号码

javascript - 如何设置默认值并在 jquery 中加载页面时填充下拉选择框

javascript - 如何在EaselJS中触发和监听全局事件

javascript - 根据设定的间隔组合数组(javascript)

ajax - ASP.NET MVC Ajax 错误返回 View 而不是 ajax