在 Twilio 上使用预先批准的模板消息发送 WhatsApp 通知

Send WhatsApp Notification using Pre-approved Template Message on Twilio

您好,我刚刚获准在 Twilio 上使用它的 WhatsApp 消息服务。 我在沙盒中测试没问题,但是当我把它移到生产环境中时,我遇到了麻烦。

根据 Twilio 的解释,我必须使用 预先批准的模板 之一开始与 WhatsApp 客户的对话。当客户回复后,我们有 24 小时的时间 window 来发送自由格式的消息。

我已经做了 https://www.twilio.com/docs/sms/whatsapp/tutorial/send-whatsapp-notification-messages-templates 中的内容,但不幸的是,给定的示例实际上是针对自由格式消息的。

这是脚本:

<?php

require_once '/path/to/vendor/autoload.php';

use Twilio\Rest\Client;

$sid    = "ACxxxxxxxxxxxxxxxxxxxxx";
$token  = "your_auth_token";
$twilio = new Client($sid, $token);

$message = $twilio->messages
                  ->create("whatsapp:+14155238886", // to
                           array(
                               "from" => "whatsapp:+15005550006",
                               "body" => "Hi Joe! Thanks for placing an order with us. We’ll let you know once your order has been processed and delivered. Your order number is O12235234"
                           )
                  );

print($message->sid);

任何人都可以帮我 PHP 脚本,了解如何使用这个预先批准的模板发送 WhatsApp 消息吗?

下面是带有预定义模板的代码

    $number = "+919XXXXXXXXX";
    $to = "whatsapp:" . $number;
    $from = "whatsapp:+1YYYYYYYYYY";
    $msg = "Un rendez-vous de {{1}} pour {{2}} avec {{3}} et prévu le {{4}} a été créé.";
    $accountSid = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
    $authToken = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB";
    $twilioClient = new Client($accountSid, $authToken);
    $msg_data = array("from" => $from, "body" => $msg);
    try {
        $message = $twilioClient->messages->create($to, $msg_data);
        $response = $message->sid ? $message->sid : '';
        error_log("Twilio msg response : " . print_r($response, true));
    } catch (TwilioException $e) {
        error_log('Could not send whatsapp notification to ' . $number);
        error_log('Could not send whatsapp TwilioException' . $e->getMessage());
    }

一个建议在创建消息字符串时检查白色 space。即使是一个白人space他们也拒绝

好吧,也许你们中的一些人来到这里是想问类似的问题,这是我在联系 Twilio 支持后得到的:

  • 我的 WhatsApp API 现在可以使用了。
  • 我的代码和他们的代码(他们的文档中有什么 https://www.twilio.com/docs/sms/whatsapp/tutorial/send-whatsapp-notification-messages-templates)都没有问题,实际上他们使用相同的代码发送模板消息或自由格式消息。
  • 他们向 WhatsApp 提交的模板 API 包含错误,导致我们在 Twilio 中实际拥有的内容与 WhatsApp 实际收到的内容不匹配。所以这就是为什么我发送的第一条消息(即使我使用了预先批准的模板)总是被视为自由格式消息因此未送达。
  • Twilio WhatsApp API 仍处于测试服务阶段,意味着会出现错误。虽然它仍处于测试阶段,但他们建议我们需要创建尽可能简单的模板,并避免使用粗体、斜体、删除线等格式以及在模板中使用新行 (\n)。

我能分享的就这么多,希望你不会像我一样遇到问题。 干杯!