#json #twilio #twilio-api #twilio-php
#json #twilio #twilio-api #twilio-php
Вопрос:
Я работаю с последней версией twilio php sdk 6.10
. Здесь я пытаюсь выполнять вызовы API уведомлений для отправки массовых сообщений. Он работает нормально, но ответ на запрос, который он возвращает, имеет неправильный json
формат. Вместо этого я получаю что-то вроде пользовательских атрибутов объекта как
TwilioRestNotifyV1ServiceNotificationInstance Object
(
[version:protected] => TwilioRestNotifyV1 Object
(
[_credentials:protected] =>
[_services:protected] => TwilioRestNotifyV1ServiceList Object
(
[version:protected] => TwilioRestNotifyV1 Object
*RECURSION*
[solution:protected] => Array
(
)
[uri:protected] => /Services
)
[domain:protected] => TwilioRestNotify Object
(
[_v1:protected] => TwilioRestNotifyV1 Object
*RECURSION*
[client:protected] => TwilioRestClient Object
(
[username:protected] => sidddddddddddddd555555555555555
[password:protected] => jk44444444444444555555555555555
[accountSid:protected] => sighhhhhhhhhhhhhhhhhh44444444
[region:protected] =>
[edge:protected] =>
[httpClient:protected] => TwilioHttpCurlClient Object
(
[curlOptions:protected] => Array
(
)
.
.
.
Как я могу заставить его возвращать ответ в правильном json
формате?
Вот как я делаю запросы на отправку
$notification = $client
->notify->services($messagingServiceSid)
->notifications->create([
"toBinding" => $binding,
"body" => $sms_text
]);
или как я могу извлечь необходимые данные из этого типа ответа?
Ответ №1:
Евангелист-разработчик Twilio здесь.
Библиотека Twilio PHP не возвращает вам необработанный JSON. Вместо этого он анализирует его и превращает в объект PHP, который вы можете вызывать для извлечения данных или выполнения дальнейших вызовов API.
У вас есть объект NotifcationInstance
, документы для которого находятся здесь: https://www.twilio.com/docs/libraries/reference/twilio-php/6.10.3/classes/Twilio_Rest_Notify_V1_Service_NotificationInstance.html.
И исходный код, включая все свойства, находится здесь: https://github.com/twilio/twilio-php/blob/main/src/Twilio/Rest/Notify/V1/Service/NotificationInstance.php
Таким образом, вы можете получить данные, вызвав свойства экземпляра:
$notification = $client
->notify->services($messagingServiceSid)
->notifications->create([
"toBinding" => $binding,
"body" => $sms_text
]);
echo $notification->sid;
echo $notification->body;