我目前正在使用twilio客户端呼叫,我必须从浏览器呼叫用户。让我们看看情景。
启动片段:
include 'twilio/Services/Twilio/Capability.php';
include 'twilio/Services/Twilio.php';
$accountSid = 'ACxxxxxxxxxxxxxxx';
$authToken = 'xxxxxxxxxxxxxxxxx';
$token = new Services_Twilio_Capability($accountSid, $authToken);
$token->allowClientOutgoing('APXXXXXXXXXXX');
$client = new Services_Twilio($accountSid, $authToken);
$call = $client->account->calls->create("twilio Number", "client number", "https://www.mysite.com/twilio/callback", array());
我的回电是这样的:
function callback(){
$xml = "<Response><Say>Placing your call now.</Say><Dial callerId='twilio verified number' timeout='40' record='true'></Dial></Response>";
header("content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" . $xml;
exit();
}
我不知道$from
函数中的$to
,calls->create()
参数究竟是什么。如果我们最初启动对$的调用那么它应该有效。
我的要求是从我的浏览器调用客户端到客户端号码。是的,我看到引用here但又重叠了。
答案 0 :(得分:2)
Twilio传道者在这里。
看起来您当前的代码正在使用REST库来启动呼叫。这会向Twilio发送一条消息,以便从Twilio拨打电话到某个电话。所有这些都发生在服务器上,而不是在浏览器中。
在您的情况下,您似乎想要直接从浏览器拨打电话。为此,您需要使用Twilio Client,它是一个JavaScript框架,允许您创建从浏览器到Twilio的音频连接,并使用WebRTC(或Flash,如果需要)进行连接。它是Twilio Client SDK的工作,用于确定如何创建和管理浏览器与Twilio之间的实际音频连接。
https://www.twilio.com/docs/tutorials/walkthrough/browser-calls/php/laravel
这与使用REST API启动呼叫不同。使用REST API启动出站呼叫时,API实际上不会管理音频连接。您使用API只是告诉Twilio在Twilio和手机之间发起电话(或发送短信),或向Twilio询问信息(如获取发送短信的列表)。实际音频连接的管理由Twilios内部系统处理。
您的PHP代码的第一部分是正确的,您需要创建Twilio Capability令牌。该令牌由我们的JavaScript库使用。本教程显示了可用于从浏览器调用Twilio的JavaScript代码:
https://www.twilio.com/docs/tutorials/walkthrough/browser-calls/php/laravel
一旦浏览器连接到Twilio,Twilio将向您在TwiML App上设置的URL发出请求(以您在创建功能令牌时指定的“AP”开头的字符串)。您可以从此URL返回任何您喜欢的TwiML,包括使用&lt; Dial&gt;非常告诉Twilio将Twilio Client连接桥接到&lt; Conference&gt;。
希望有所帮助。
德文
答案 1 :(得分:0)
This会很有帮助。如果你查看代码,有一些api(我认为callFromBrowser())可以解决问题。