При использовании Twilio Notify API для отправки массовых SMS-сообщений, как привязать обратные вызовы webhook к исходному сообщению? - PullRequest
1 голос
/ 24 мая 2019

При отправке SMS с использованием API уведомлений я получаю sid уведомления.

Body:
  "sid":"NT49cefe1c684f470648e59883c1bcc556",

На панели инструментов Twilio.com я настроил Уведомление с помощью службы сообщений. Эта служба обмена сообщениями была настроена для вызова моей пользовательской веб-службы (webhook в терминологии Twilio). Я получаю информацию о статусе для каждой привязки, на которую было отправлено сообщение, но нет идентификатора исходного события Notify, поэтому я могу связать их вместе.

Я ожидал увидеть где-нибудь идентификатор "NT".

Body:
  SmsSid=SM89ca8924434306734be97ecb28c5b5cc
  SmsStatus=delivered
  MessageStatus=delivered
  MessagingServiceSid=MG767836bd41ab8b07c00d41582f15f2a1
  MessageSid=SM89ca8924434306734be97ecb28c5b5cc

Как я могу связать эти статусы веб-крюка с исходным Уведомлением?

1 Ответ

0 голосов
/ 15 июля 2019

Twilio не позволяет связывать уведомления с отдельными сообщениями. (см. https://stackoverflow.com/a/52157927/1196148)

Однако , вы можете использовать параметр status_callback для указания пользовательского URL-адреса веб-крючка, уникального для этого уведомления. Добавьте дополнительный параметр, чтобы webhook мог найти ресурс, который вызвал уведомление:

$notification = $client
    ->notify->services( $serviceSid )
    ->notifications->create( [
        "toBinding" => [
            '{"binding_type":"sms", "address":"+15555555555"}',
            '{"binding_type":"sms", "address":"+16666666666"}',
        ],
        "body" => "Hello",
        "sms" => [
            "status_callback" => "https://example.com/status/?id=" . $some_id,
        ],
    ] );
...