2016-08-01 11 views
2

Я пытаюсь создать автоответчик. Я использую Nexmo.Voicexml: <record> Подача звукового сообщения обрезания

У меня есть два номера: один французский номер и один номер в США (Калифорния)

Когда я называю мой французский номер, мой аудио сообщение сохраняется на моем сервере, и я могу слушать его. Но когда я назову свой номер в США, я могу прослушать мое приглашение (вот оно), но сохраненное аудиосообщение не будет сохранено правильно. Я не знаю, почему, какая-то идея?

phone.php

<?php 
    // accept both query string and post 
    $request = array_merge($_GET, $_POST); 
    error_log('got a call from: ' . $request['nexmo_caller_id']); 
    // make the XML short tag friendly 
    echo '<?xml version="1.0" encoding="UTF-8"?>'; 
    ?> 
    <vxml version = "2.1"> 
     <form> 
      <record name="message" beep="true" maxtime="60s" dtmfterm="true"> 
       <audio src="./welcome.wav"/> 
      </record> 
      <catch event="connection.disconnect.hangup"> 
       <submit next="./recphone.php" enctype="multipart/form-data" method="post"/> 
      </catch> 
     </form> 
    </vxml> 

recphone.php

<?php 
if(!isset($_FILES['message'])){ 
    return; //not a post from our script 
} 

switch($_FILES['message']['error']){ 
    case UPLOAD_ERR_OK: 
     move_uploaded_file($_FILES['message']['tmp_name'], './recordings/' . $_FILES['message']['name']); 
     $prompt = 'Thanks, your message has been saved.'; 
     break; 
    default: 
     $prompt = 'Sorry, we could not save your message.'; 
} 
echo '<?xml version="1.0" encoding="UTF-8"?>'; 
?> 
<vxml version="2.1"> 
    <form> 
     <block> 
      <prompt><?php echo $prompt ?></prompt> 
     </block> 
    </form> 
</vxml> 

ответ

0

Существует проблема с Nexmo при перенаправлении вызовов на документ VoiceXML.

Наконец-то я решил использовать Asterisk для создания своего IVR.

Если кто-то приземлился здесь с идеей создания своего IVR, я написал учебник на моем GitHub: https://github.com/guillaumeteillet/ivr-guillaume-teillet

0

Гийом,

Я не знаю, почему это не работает, если честно. Когда вы говорите, что оно не сохранено правильно, что вы имеете в виду? У вас есть проблема с содержимым аудио? Кодек? Или что-то другое?

Также, когда вы проводите тесты, откуда вы это делаете? Например. вы звоните по французскому номеру из Франции и номер США из Франции? Если да, то что происходит, если вы звоните по американскому номеру из самих США?

И наконец, какой у вас номер в США у вас с Nexmo? Вы проверили, что у него есть все требования для вашего случая использования?

+0

Я имею в виду аудио файл создается, но это просто какой-то шум, а не содержание моего сообщения. Вот мой тест: 1) Франция Французский Номер: Работает 2) Skype для французского Номер: FAIL 3) США США Количество: FAIL 4) Skype США Номер: FAIL Но если я называю мой файл VoiceXML с voxeo.com и он работает ... Я получил этот номер: 19093431653, это номер голоса/смс. Я уже отправил сообщение nexmo, и они расследуют мою проблему. – Guillaume

0

Разнообразны ли звуковые тома на двух TFN? Возможно ли, что платформа думает, что звук остановлен, потому что уровень громкости падает ниже порога обнаружения?

Если усечение звука согласовано независимо от длины оставшегося сообщения, я бы посмотрел на платформу как имеющую несогласованную настройку.

+0

Вот пример звукового сообщения, которое я получил для вызова по 5-10 секунд: http://teillet.eu/phone/recordings/message-1470154576875.wav Если аудиотоки не совпадают для двух числа на Nexmo, я думаю, я ничего не могу сделать, кроме поиска другого провайдера. – Guillaume