【问题标题】:Twilio php Library SDK 5 curl response body to get sidTwilio php Library SDK 5 curl 响应正文获取 sid
【发布时间】:2017-02-25 14:04:47
【问题描述】:

在通过 PHP REST api sdk 5 从/向 twilio 发送和接收消息时,我正在创建自己的消息日志记录。我想在发送新消息时获取消息 sid 并挖掘我发现的代码它来自 Twilio\Http\CurlClient.php 第 36 行开始:

36           list($head, $body) = ($parts[0] == 'HTTP/1.1 100 Continue')
37                              ? array($parts[1], $parts[2])
38                               : array($parts[0], $parts[1]);

我添加了第 39 行

39          $GLOBALS["curlResponseBody"] = $body;

所以我可以检索包含刚刚创建的消息的“sid”条目的 json 响应。

必须有一种方法来获取该信息,但我只是没有看到任何关于 SDK5 的提及。 这是我用来创建消息的代码:

require_once 'Twilio/autoload.php'; // Loads the library
use Twilio\Rest\Client;

$client = new Client($account_sid, $auth_token);

$client->messages->create(
    $toPhone,
    array(
        'from' => $fromTwilioPhone,
        'body' => $responseMessage,
    )
);

//This edit to the Twilio PHP Library is found in Twilio\Http\CurlClient.php            
$curlResponseBody = json_decode($GLOBALS["curlResponseBody"]);
$newMessageSid = $curlResponseBody->sid;

有什么方法可以使用 $client 来获取刚刚创建的消息的“sid”吗?

【问题讨论】:

    标签: php sms twilio message


    【解决方案1】:

    Twilio 布道者在这里。

    create() 函数返回一个对象,该对象应该让您获取消息 sid:

    $client = new Client($account_sid, $auth_token);
    
    $msg = $client->messages->create(
        $toPhone,
        array(
            'from' => $fromTwilioPhone,
            'body' => $responseMessage,
        )
    );
    
    echo $msg.Sid
    

    希望对您有所帮助。

    【讨论】:

    • 我发现 $msg.Sid 导致失败,但 $msg.sid(小写)确实生成了如下文本:[Twilio.Api.V2010.MessageInstance accountSid=******* *********** sid=SMdeeb8d9d10ab463a94f8ba081d60871d] 这真的很接近我想要的并且可以解析出 sid 值。这是您期望它产生的结果吗?这真的是一个很大的帮助。
    • 对不起,试试$msg->sid
    猜你喜欢
    • 1970-01-01
    • 2015-05-21
    • 2015-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    • 2015-04-25
    • 1970-01-01
    相关资源
    最近更新 更多