语音文件

列出、上传、更新、删除欢迎、等待和活动语音提示。上传的文件会自动转换为适合电话线路的 8 kHz 单声道,并显示在面板的“语音文件”下。 总机密钥 (key=K…)。速率限制:每分钟 10 次请求。

GET语音文件列表

GET https://api.buluthat.com/api/announcements.php?key=K…
[
  { "id": 112, "name": "Firmamıza hoş geldiniz" },
  { "id": 113, "name": "Mesai dışındayız" },
  { "id": 115, "name": "Öğle molası" }
]

id 该值用于自动外呼活动中 media_file_id,点击拨号时 announcement_to_* 用作。

POST上传新语音文件

POST https://api.buluthat.com/api/announcements.php
Content-Type: application/x-www-form-urlencoded

key=K…&name=Karşılama+sesi&sounddata=data:audio/mp3;name:anons.mp3;base64,SUQzAwAAAAAH…
参数必填说明
name是列表中显示的名称
sounddata是文件内容, Data URL 格式: data:<mime>;name:<dosyaadı>;base64,<içerik>

接受的扩展名: wav mp3 wma m4a aac ac3 amr flac gsm mpeg mp1 mp2 ra spx ogg 3gp。最大 20 MB。

响应 200 OK,响应正文中为新记录的 id(859).

PUT更新语音文件

PUT https://api.buluthat.com/api/announcements.php/859
Content-Type: application/x-www-form-urlencoded

key=K…&name=Karşılama+sesi+v2&sounddata=data:audio/mp3;name:anons2.mp3;base64,…

仅用于更改名称 sounddata 请勿发送。响应 OK.

DELETE删除语音文件

DELETE https://api.buluthat.com/api/announcements.php/859?key=K…

被 IVR、队列或活动使用中的文件无法删除; 400 announcement in use 返回。

文字转语音提示

要输入文字并合成语音(TTS),请在自动外呼活动中 tts_template 请使用,或在面板 > 语音合成工作室中生成;在工作室中生成的文件也会出现在此列表中 [Stüdyo] 会带上该标签。

示例:使用 PHP 上传

$file = 'anons.mp3';
$data = 'data:audio/mp3;name:' . rawurlencode(basename($file)) . ';base64,' . base64_encode(file_get_contents($file));
$ch = curl_init('https://api.buluthat.com/api/announcements.php');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query(['key' => $key, 'name' => 'Karşılama', 'sounddata' => $data]),
]);
$id = curl_exec($ch);   // "859"