如何在twilio中回调状态,例如在php中。
require __DIR__ . '/vendor/autoload.php';
use Twilio\Rest\Client;
// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "---------------";
$token = "-----------------;
$client = new Client($sid, $token);
$call = $client->calls->create(
$to, $from,
array(
"url" => "http://demo.twilio.com/docs/voice.xml",//this line complete
"method" => "GET",
"statusCallbackMethod" => "POST",
"statusCallback" => "https://www.myapp.com/events", //in this line no idea
"statusCallbackEvent" => array(
"initiated", "ringing", "answered", "completed"
)
)
);
echo $call->sid;
在此示例中,如何在调用后获取事件
答案 0 :(得分:1)
您的代码适用于注册来自Twilio的通话状态通知。对于您在statusCallbackEvent
数组中指定的每个事件,Twilio将对statusCallback
参数中指定的URL发出异步HTTP请求。有关详细信息,请参阅this文章。
现在,您需要通过以下网址提供服务:https://www.myapp.com/events,收听Twilio发送的通知。在您的情况下,这些将是POST请求,给定您在statusCallbackMethod
参数中指定的方法。您需要告知通知哪个事件的参数是CallStatus
。有关详细信息,请参阅this文档。
我们不使用PHP,但如果您想进行快速测试,只需创建一个Twilio Function并在其中粘贴以下代码即可查看您的事件通知:
exports.handler = function(context, event, callback) {
let response = { get_started: true };
console.log(`Call status notified was '${event.CallStatus}'.`);
callback(null, response);
};