如何获取twillio发送短信的状态

时间:2017-09-11 13:16:59

标签: php twilio twilio-php

我试图从我的小道Twilio帐户发送短信。所以请帮助获得短信响应/状态

$client = new Client(TWILIO_SID, TWILIO_TOKEN);
    $client->messages->create(
        $mobile,
        array(
            'from' => TWILIO_FROM_NUMBER,
            'body' => $mobile_message,
            //'statusCallback' => "https://requestb.in/v9uqy6v9"
            'statusCallback' => base_url()."sms_status.php"
        )
    );

    //$status = file_get_contents('https://requestb.in/v9uqy6v9');
    $status = file_get_contents(base_url()."sms_status.php");

当我运行上面的代码时出现错误:

Message: file_get_contents(http://.../sms_status.php): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found

当我手动浏览sms_status.php文件网址时,没有任何错误

我也关注此链接How to get notified when SMS Status changes from 'Queued' to 'Sent'?

所以请帮我解决上面的问题,并定义像json / text / array这样的输出格式......

1 个答案:

答案 0 :(得分:0)

Twilio开发者传道者在这里。

当您为发送的SMS消息设置statusCallback URL时,URL需要指向可以处理传入HTTP请求的应用程序。

当SMS消息的状态通过排队,失败,发送,传递或未传递而改变时,Twilio将向您的URL发出HTTP POST请求,发送所有standard request parameters以及两个额外参数; MessageStatusErrorCode。参数将作为URL编码的表单参数发送,因此您应该能够使用PHP的$_REQUEST[]语法读取它们。

因此,请确保您的应用程序可以在statusCallback URL处接收HTTP请求,并且您可以根据需要从那里记录数据。

如果有帮助,请告诉我。