Twilio Conversation 尝试发送消息时出现致命错误?

问题描述

我正在尝试按照在线 twilio 示例进行群组对话。我进行了对话并且人们已连接(我认为)但是当我发送消息时,我收到以下错误

Fatal error: Uncaught Twilio\Exceptions\RestException: [HTTP 412] Unable to create record: Group MMS activation Failed in

有没有人有任何 PHP 工作对话的工作样本?如果你愿意,我可以发布我的完整代码(减去钥匙和电话号码)

更新:

设置对话的代码

$conversation = $twilio->conversations->v1->conversations
                                          ->create([
                                                       "friendlyName" => "RawesomePaws"
                                                   ]
                                          );

然后我添加了 Twilio 电话和其他 3 个短信电话 #'s

$participant = $twilio->conversations->v1->conversations("CHb61ad48141884350896047adc23XXXX")
                                         ->participants
                                         ->create([
                                                      "identity" => "Rawesome Orders","messagingBindingProjectedAddress" => "+1408840XXXX"
                                                  ]
                                         );

$participant = $twilio->conversations->v1->conversations("CHb61ad48141884350896047adc237XXXX")
                                         ->participants
                                         ->create([
                                                      "messagingBindingAddress" => "+1408409XXXX"
                                                  ]
                                         );

$participant = $twilio->conversations->v1->conversations("CHb61ad48141884350896047adc237XXXX")
                                         ->participants
                                         ->create([
                                                      "messagingBindingAddress" => "+1815210XXXX"
                                                  ]
                                         );

$participant = $twilio->conversations->v1->conversations("CHb61ad48141884350896047adc237XXXX")
                                         ->participants
                                         ->create([
                                                      "messagingBindingAddress" => "+1408540XXXX"
                                                  ]
                                         );


既然对话已经建立,我尝试发送群消息:

$message = $twilio->conversations->v1->conversations("CHb61ad48141884350896047adc237XXXX")
                                     ->messages
                                     ->create([
                                                  "body" => 'Message Body',"author" => 'Rawesome Orders',]
                                     );

这是我在终端时的输出

Fatal error: Uncaught Twilio\Exceptions\RestException: [HTTP 412] Unable to create record: Group MMS activation Failed in /home/customer/www/sirota-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP:88
Stack trace:
#0 /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP(223): Twilio\Version->exception(Object(Twilio\Http\Response),'Unable to creat...')
#1 /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Rest/Conversations/V1/Conversation/MessageList.PHP(57): Twilio\Version->create('POST','/Conversations/...',Array,Array)
#2 /home/customer/www/XXX-consulting.com/public_html/PPLG/sms_SendMessage.PHP(15): Twilio\Rest\Conversations\V1\Conversation\MessageList->create(Object(Twilio\Values))
#3 {main}
  thrown in /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP on line 88

更新 2 这是来自PHPLog的完整日志

[24-Apr-2021 01:11:59 UTC] -- BEGIN Twilio API Request --
[24-Apr-2021 01:11:59 UTC] Request Method: POST
[24-Apr-2021 01:11:59 UTC] Request URL: /v1/Conversations/CHb61ad48141884350896047adc237cf45/Messages
[24-Apr-2021 01:11:59 UTC] Request Headers: 
[24-Apr-2021 01:11:59 UTC] User-Agent: twilio-PHP/6.16.0 (PHP 7.3.27)
[24-Apr-2021 01:11:59 UTC] Accept-Charset: utf-8
[24-Apr-2021 01:11:59 UTC] Content-Type: application/x-www-form-urlencoded
[24-Apr-2021 01:11:59 UTC] Accept: application/json
[24-Apr-2021 01:11:59 UTC] -- END Twilio API Request --
[24-Apr-2021 01:12:00 UTC] Status Code: 412
[24-Apr-2021 01:12:00 UTC] Response Headers:
[24-Apr-2021 01:12:00 UTC] Date:  Sat,24 Apr 2021 01:12:00 GMT
[24-Apr-2021 01:12:00 UTC] Content-Type:  application/json; charset=utf-8
[24-Apr-2021 01:12:00 UTC] Content-Length:  129
[24-Apr-2021 01:12:00 UTC] Connection:  keep-alive
[24-Apr-2021 01:12:00 UTC] Twilio-Request-Id:  RQbd66fd8e4b548596a430a2646a4376f2
[24-Apr-2021 01:12:00 UTC] Twilio-Request-Duration:  0.195
[24-Apr-2021 01:12:00 UTC] Access-Control-Allow-Origin:  *
[24-Apr-2021 01:12:00 UTC] Access-Control-Allow-Headers:  Accept,Authorization,Content-Type,If-Match,If-Modified-Since,if-none-match,If-Unmodified-Since
[24-Apr-2021 01:12:00 UTC] Access-Control-Allow-Methods:  GET,POST,DELETE,OPTIONS
[24-Apr-2021 01:12:00 UTC] Access-Control-Expose-Headers:  ETag
[24-Apr-2021 01:12:00 UTC] Access-Control-Allow-Credentials:  true
[24-Apr-2021 01:12:00 UTC] X-Powered-By:  AT-5000
[24-Apr-2021 01:12:00 UTC] X-Shenanigans:  none
[24-Apr-2021 01:12:00 UTC] X-Home-Region:  us1
[24-Apr-2021 01:12:00 UTC] X-API-Domain:  conversations.twilio.com
[24-Apr-2021 01:12:00 UTC] Strict-Transport-Security:  max-age=31536000
[24-Apr-2021 01:12:00 UTC] PHP Fatal error:  Uncaught Twilio\Exceptions\RestException: [HTTP 412] Unable to create record: Group MMS activation Failed in /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP:88
Stack trace:
#0 /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP(223): Twilio\Version->exception(Object(Twilio\Http\Response),Array)
#2 /home/customer/www/XXX-consulting.com/public_html/PPLG/sms_SendMessage.PHP(15): Twilio\Rest\Conversations\V1\Conversation\MessageList->create(Object(Twilio\Values))
#3 {main}
  thrown in /home/customer/www/XXX-consulting.com/public_html/PPLG/cron/twilio-PHP-main/src/Twilio/Version.PHP on line 88

解决方法

这里是 Twilio 开发者布道者。

我认为此错误代码尚未发布,我将在内部跟进。不过,我已经找到了有关此错误的一些文档。

失败的典型原因包括:

  • 对话中的非聊天参与者少于 3 个
  • 对话中有聊天参与者
  • 存在与完全相同参与者的群组对话
  • 有一位参与者只有 ProjectedAddress

请注意,具有 IdentityProjectedAddress 的参与者算作非聊天参与者。

据我从您的代码中看到,您有 4 个非聊天参与者(值得注意的是,现在群 MMS 的限制是 4 个参与者),所以没问题。您有一位参与者带有 ProjectedAddressIdentity,这很好。没有只有 ProjectedAddress 的参与者。

这就留下了一个潜在的问题,即已经存在一个包含这些确切参与者的群组。

为了检查发生了什么,我现在要做几件事。

首先,仔细检查这些参与者是否已正确创建并且没有缺少属性,尤其是具有 IdentityProjectedAddress 的参与者。

然后,检查您是否有包含这些参与者的现有对话对象。

如果这些检查都没有发现任何问题,请告诉我,我会升级您打开的票证。