【问题标题】:Twilio - why i get in call status is in-progress also completed and my phone not ringing yetTwilio - 为什么我的通话状态正在进行中,我的电话还没有响铃
【发布时间】:2018-11-14 11:19:27
【问题描述】:

这是我的代码:

require_once 'library/Twilio/autoload.php'
use Twilio\Rest\Client
account_sid ='ACXXXXXXX'
auth_token ='xxxxx'
twilio_number ='+1xxxx'
to_number = "+212xxxx"
client = new Client($account_sid, $auth_token)
client->account->calls->create(  
    to_number,
    twilio_number,
    array("method" => "GET","statusCallback" => "https://xxx.php",
        "statusCallbackEvent" => array('initiated', 'ringing', 
        'answered','completed'),
        "statusCallbackMethod" => "POST",
        "url" => "http://xxx.php" 
    )
)

这是 callstatus 的结果: 1-发起 2 进行中 3-完成

【问题讨论】:

  • 您的call logs 中是否有任何内容可以告诉您有关电话的更多信息?或者也许在Twilio debugger
  • Array ([Called] => +212xx [ToState] => [CallerCountry] => US [Direction] => outbound-api [Timestamp] => Tue.. [CallerState] => TX [ToZip] => [SequenceNumber] => 1 [CallSid] => CAxx [To] => +212xx [CallerZip] => [ToCountry] => MA [ApiVersion] => 2010-04-01 [CalledZip] => [CalledCity] => [CallStatus] => 进行中 [From] => +1xx [AccountSid] => ACxx [CalledCountry] => MA [CallerCity] => [Caller] => +1xx [FromCountry] => US [FromZip] => [FromState] => TX)
  • 这不是很有帮助¯_(ツ)_/¯ 您是否按照我的建议检查了通话记录和调试器?
  • 这就是我在 Twilio 调试器中发现的:21626 - Invalid 'StatusCallbackEvent'=>callSid 的无效事件:CAXXX 无效 statusCallbackEvents 排队
  • 看起来您要求的事件不存在?您能否检查您的事件列表并尝试再次调用,看看调用和调试器中发生了什么?

标签: php callback twilio twilio-php


【解决方案1】:

这里是 Twilio 开发者宣传员。

在您的最后评论中,您表明您使用array('queued','initiated', 'ringing', 'answered', 'completed') 作为您的statusCallbackEvent 参数。使用 REST API the only available events that you can subscribe to are initiated, ringing, answered and completed 进行调用时。

您可能会发现您收到的CallStatus 参数是queuedinitiatedringingin-progressbusyfailedno-answer 之一,但这些都是可用的状态,而不是要订阅的可用事件。

确保您只请求事件initiatedringingansweredcompleted,您的呼叫应该没问题。

【讨论】:

  • 我在 statusCallbackEvent 的最后一个代码中所做的事情:"statusCallbackEvent" => array("initiated","ringing","answered","completed") 。这是我得到的通话状态列表:已启动、正在响铃、进行中、已完成。
  • 如您所见,没有呼叫状态已接听/未接听以及我想要的,因为我想确定电话是否被接听的条件
  • 对,所以状态in-progress表示来电已被接听。 busyfailedno-answer 状态表示呼叫未被应答。
  • 酷!如果这回答了您的问题,请将其标记为正确,以便遇到此问题的其他人也可以看到它也有所帮助。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-15
  • 2014-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多