1

我想让我的客户检查最终客户是否收到文本以及他/她发送了什么回复?我总是通过twilio查看客户是否收到短信?有没有办法从twilio检查它?

4

2 回答 2

1

Twilio 开发人员布道者在这里。

在使用webhook从 Twilio 发送消息后,您可以将传入消息获取到您的 Twilio 号码并报告消息的状态。

当您发送消息时,您可以包含一个StatusCallback参数。该参数应该是应用程序中的 URL。

$client->messages
  ->create(
    $to,
    array(
        "from" => $from,
        "body" => "Let's grab lunch at Milliways tomorrow!",
        "statusCallback" => "https://example.com/messageStatus"
    )
);

statusCallback每次您的消息状态更改为以下之一时,Twilio 都会向 URL 发送一个 POST 请求: queuedfailedsentDeliveredundelivered。它将包含原始消息的 SID,因此您可以将这些 webhook 绑定回您发送的消息。

同样,您可以获取这些 Webhook 通知,以接收到您的 Twilio 号码的传入消息。为此,您需要将传入的 webhook URL 设置为Twilio 控制台中的号码。将其设置为应用程序中的 URL,当有人向您的 Twilio 号码发送消息时,您将收到一个 webhook。查看此快速入门指南,了解使用 PHP 将消息发送到您的 Twilio 号码

让我知道这是否有帮助。

[编辑]

感谢您明确表示这是事后的评论,而不是发送时的评论。

在这种情况下,您绝对可以按发送消息的电话号码列出消息。消息资源包括一个Status属性,该属性列出了 Twilio 系统中的当前消息状态,从“已接受”和“排队”到“正在发送”、“已发送”、“已交付”、“未交付”和“失败”。您可以在文档中查看有关这些状态的更多信息

要获取从某个号码发送的消息列表,您可以使用以下代码:

use Twilio\Rest\Client;

// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
$token = "your_auth_token";
$client = new Client($sid, $token);

// Loop over the list of messages and echo a property for each one
foreach ($client->messages->read(array("from" => $FROM_NUMBER) as $message) {
    echo $message->status . " - " . $message->to . " = " . $message->body;
}
于 2018-01-09T03:32:30.130 回答
0

您可以提取特定消息的数据https://www.twilio.com/docs/api/messaging/message#delivery-related-errors 或者您可以简单地提取所有日志

于 2018-01-05T08:52:57.883 回答