2017-02-25 58 views
1

我通过PHP REST api sdk发送和接收来自/来自twilio的消息时创建自己的消息日志记录5.我想在发送新消息时获取消息sid并在代码周围挖我发现我可以从 Twilio \ HTTP \ CurlClient.php 线36点开始得到它:Twilio php Library SDK 5 curl响应正文得到sid

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; 

这样我就可以检索JSON有一个消息的“sid”条目的响应就是c reated。

已经有了一种获取这些信息的方法,但我没有在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; 

是否有某种方式使用$客户端刚刚创建得到了消息的“SID”?

回答

0

Twilio福音传教士在这里。

create()函数返回一个对象,它应该让你得到的消息SID:

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

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

echo $msg.Sid 

希望有所帮助。

+0

我发现$ msg.Sid导致失败,但$ msg.sid(小写)确实产生了如下文本片段:[Twilio.Api.V2010.MessageInstance accountSid = ************ ****** sid = SMdeeb8d9d10ab463a94f8ba081d60871d]这是真正接近我想要的,并可以解析出sid值。这是你期望它产生的吗?这真的是一个很大的帮助。 – Yosh

+0

对不起,试试'$ msg-> sid' –