Ошибка Twilio Twilio/Rest/Calls.php

всякий раз, когда я пытаюсь сделать конференц-связь, он говорит об ошибке приложения, и я получаю сообщение об ошибке в журнале ошибок:

Предупреждение PHP: strlen() ожидает, что параметр 1 будет строкой, массивом, указанным в /home/aan/public_html/twilio/twilio-php-4.11.0/Services/Twilio/Rest/Calls.php в строке 16.

Вот код

<?php

require("twilio-php-4.11.0/Services/Twilio/Twiml.php");

    if($_REQUEST['Digits'] != '1') {
        header("Location: twiml.php");
        die;
    }

   $MODERATOR = $_GET['phone'];

$response = new Services_Twilio_Twiml();


$dial = $response->dial($MODERATOR);
  $dial->conference('My conference', array(
                'startConferenceOnEnter' => True
                ));

Я уже позвонил и набрал цифру, но когда я набираю второй номер и пытаюсь сделать их конференцией, я получаю эту ошибку


person Stacy Thompson    schedule 04.03.2017    source источник
comment
Это полный файл PHP? Похоже, что эта ошибка могла произойти только в том случае, если функция create где-то вызывалась: github.com/twilio/twilio-php/blob/4.11.0/Services/Twilio/Rest/   -  person Devin Rader    schedule 05.03.2017
comment
@DevinRader Спасибо за ответ. Эта проблема решена.   -  person Stacy Thompson    schedule 06.03.2017
comment
Привет, Стейси, рад, что ты решил проблему! Не могли бы вы опубликовать свое исправление в разделе ответов, чтобы другие могли извлечь выгоду, а вы могли получить голоса :)   -  person Megan Speir    schedule 07.03.2017
comment
@MeganSpeir Я изменил его на ..... header(content-type: text/xml); echo ‹?xml версия=\1.0\кодировка=\UTF-8\?›\n; ?› ‹Response› ‹Dial›‹?php echo $phone ?›‹/Dial› ‹/Response›   -  person Stacy Thompson    schedule 09.03.2017


Ответы (2)


header("content-type: text/xml"); 
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
?> 
<Response> 
 <Dial><?php echo $phone ?></Dial> 
</Response>

Фрагмент здесь был исправлением OP для обнаружения ошибки с использованием библиотеки twilio-php.

person Community    schedule 09.03.2017

Я обычно использую TwiML для конференц-связи, это просто реализовать.

$my_conference = "My Conference";
$statusCallbackUrl = "https://example.net/Welcome/conference_control"; // call back url    
<Response>
  <Dial> 
    <Conference beep="false" statusCallback="<?php echo $statusCallbackUrl; ?>" 
      statusCallbackEvent="start end join leave mute hold" endConferenceOnExit="true" 
      startConferenceOnEnter="true"> 
        <?php echo $my_conference; ?>
    </Conference>
  </Dial>
</Response>

Надеюсь, это поможет вам.

person NomanJaved    schedule 25.02.2021