无法使用 callfire REST 发送语音广播 API
unable to send out voice broadcast with callfire REST API
我正在尝试使用 callfire REST API 发出出站呼叫,但遇到了一些困难。这是我的代码(改编自 https://developers.callfire.com/docs.html#createVoiceBroadcast):
<?php
$username = '...';
$password = '...';
$data = array(
'name' => 'Automation Test',
'fromNumber' => '...',
'recipients' => array(
array('phoneNumber' => '...')
),
'answeringMachineConfig' => 'AM_AND_ALIVE',
'liveSoundText' => 'hello, world!',
'machineSoundText' => 'hello, world!'
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,'https://api.callfire.com/v2/campaigns/voice-broadcasts');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_USERPWD, $username . ':' . $password);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$result = json_decode(curl_exec($ch));
print_r($result);
问题出在响应上。如下:
stdClass Object
(
[httpStatusCode] => 415
[internalCode] => 0
[message] => Exception in API
)
415 状态代码针对 "Unsupported Media Type" 每个 https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#4xx_Client_Error,但由于我没有上传任何媒体,所以该错误并没有多大意义。
也许我的 answeringMachineConfig
值无效。我知道 AM_AND_LIVE 应该是什么意思,但它在示例中,所以我正在使用它。如果只有少量可能的值,文档应该这样说..
您需要将内容类型设置为 'application/json'。
旧我知道,但只是 运行 穿过它。也许:
'answeringMachineConfig' => 'AM_AND_ALIVE',
应该是:
'answeringMachineConfig' => 'AM_AND_LIVE',
你写的是 ALIVE 而不是 LIVE
我正在尝试使用 callfire REST API 发出出站呼叫,但遇到了一些困难。这是我的代码(改编自 https://developers.callfire.com/docs.html#createVoiceBroadcast):
<?php
$username = '...';
$password = '...';
$data = array(
'name' => 'Automation Test',
'fromNumber' => '...',
'recipients' => array(
array('phoneNumber' => '...')
),
'answeringMachineConfig' => 'AM_AND_ALIVE',
'liveSoundText' => 'hello, world!',
'machineSoundText' => 'hello, world!'
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,'https://api.callfire.com/v2/campaigns/voice-broadcasts');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_USERPWD, $username . ':' . $password);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$result = json_decode(curl_exec($ch));
print_r($result);
问题出在响应上。如下:
stdClass Object
(
[httpStatusCode] => 415
[internalCode] => 0
[message] => Exception in API
)
415 状态代码针对 "Unsupported Media Type" 每个 https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#4xx_Client_Error,但由于我没有上传任何媒体,所以该错误并没有多大意义。
也许我的 answeringMachineConfig
值无效。我知道 AM_AND_LIVE 应该是什么意思,但它在示例中,所以我正在使用它。如果只有少量可能的值,文档应该这样说..
您需要将内容类型设置为 'application/json'。
旧我知道,但只是 运行 穿过它。也许:
'answeringMachineConfig' => 'AM_AND_ALIVE',
应该是:
'answeringMachineConfig' => 'AM_AND_LIVE',
你写的是 ALIVE 而不是 LIVE