Twilio Conference - PHP - 未收到 statusCallback

Posted

技术标签:

【中文标题】Twilio Conference - PHP - 未收到 statusCallback【英文标题】:Twilio Conference - PHP - Not receiving statusCallback 【发布时间】:2019-11-16 13:20:06 【问题描述】:

我正在使用 Twilio 设置电话会议。我需要在会议中发布公告(播放 MP3 文件),但似乎 $twilio->conferences("CFxxxxxxx")->update 需要 ConferenceSid(我更喜欢使用 FriendlyName,但这不起作用)。

所以,我添加了 statusCallback 以在会议开始时获取 ConferenceSid,但它没有发送请求。我猜修复很简单,但我不知道它是什么。


$twilio = new Client($sid, $token);

$participant = $twilio->conferences("myFriendlyName",
    array(
        "statusCallbackEvent"=>"initiated",
        "statusCallback"=>"https://example.com/wp-json/rec/v1/myroute/",
        "statusCallbackMethod"=>"POST"))
    ->participants
    ->create(
        "+15555555", 
        $participantphone,
                array(
                   "record" => True,
                   "endConferenceOnExit" => False,
                   "recordingStatusCallbackEvent" => array("completed"),
                   "RecordingStatusCallback" => "https://example.com/wp-json/rec/v1/myroute/")
);

我收到 RecordingStatusCallback,但没有收到 statusCallback 请求。

【问题讨论】:

【参考方案1】:

这里是 Twilio 开发人员宣传员。

您没有收到状态回调,因为您没有为新参与者设置它。在您的示例代码中,您传递给会议资源的第二个参数没有任何作用。

相反,您应该将所有这些参数作为选项传递给对create the new participant 的调用。

$twilio = new Client($sid, $token);

$participant = $twilio->conferences("myFriendlyName")
    ->participants
    ->create(
        "+15555555", 
        $participantphone,
                array(
                   "record" => True,
                   "endConferenceOnExit" => False,
                   "recordingStatusCallbackEvent" => array("completed"),
                   "recordingStatusCallback" => "https://example.com/wp-json/rec/v1/myroute/"),
                   "statusCallbackEvent"=>"initiated",
                   "statusCallback"=>"https://example.com/wp-json/rec/v1/myroute/",
                   "statusCallbackMethod"=>"POST"
);

让我知道这是否有帮助。

【讨论】:

您好,感谢您的回复。我收到了请求,但它不包含 ConferenceSid。我需要 ConferenceSid 以便向会议发送通知。这是 statusCallback 中的内容: Called= ToState= CallerCountry= Direction= Timestamp= CallbackSource= CallerState= ToZip= SequenceNumber= CallSid= To= CallerZip= ToCountry= CalledZip= ApiVersion= CalledCity= CallStatus= From= AccountSid= CalledCountry= CallerCity= ToCity = FromCountry= Caller= FromCity= CalledState= FromZip=& FromState= 谢谢! 啊,好的,如果您需要搜索您的会议,您可以使用Conference API list resource 并按friendlyName 过滤。

以上是关于Twilio Conference - PHP - 未收到 statusCallback的主要内容,如果未能解决你的问题,请参考以下文章

Twilio - 如何将现有呼叫移至会议

Twilio 的 PHP 代码在终端中工作,但在浏览器中不工作

php 使用Twilio API发送短信通知

Twilio 创建地址子账户问题 api php

为 Twilio 创建 PHP webhook 的问题

在 Twilio Programmable Chat 中,在 Laravel PHP 中,如何获取用户所属的所有频道?