Twilio REST api PHP звонит пользователю и читает данные SMS - PullRequest
1 голос
/ 19 августа 2011

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

Теперь, что мне нужно сделать, но я застрял в том, когда кто-то из SMS-сообщений Twilio, данные или информация в теле SMS-сообщения должны быть прочитаны человеку, который отвечает на телефонный звонок, используя глагол Say. Я не уверен, как я могу получить тело SMS и прочитать его в моем приложении. Есть идеи на этот счет?

<?php
print_r(error_reporting(-1));

session_start();  


    require 'Services/Twilio.php';
    $version = "2010-04-01";

$arr = array('416..','647...');



    $sid = '...';
    $token = '..';
    $from = '..';
    $callback = 'site.com/Twilio/twilio-twilio-php-a0e9f92/dial.php';


    $client = new Services_Twilio($sid, $token, $version);


if (isset($_REQUEST['index'])) {
$index = $_REQUEST['index'];
} else {
$index = 0;
}

$next = $index + 1;

if ($index==0 && $_REQUEST['CallStatus']=='completed')

{
//Read SMS to the called party



}

else

{

if ($index>=1 && $_REQUEST['CallStatus']=='completed')
{
//Read SMS



}

else
    {

    try {
$call = $client->account->calls->create(
$from,
$arr[$index],
'http://site.com/Twilio/twilio-twilio-php-a0e9f92/dial.php?index=' . $next,
array('Timeout' => 5,'StatusCallback' => $callback)
);

} catch (Exception $e) {
            var_dump($e);
        }
    }   
}

1 Ответ

2 голосов
/ 20 августа 2011

На самом деле это можно сделать с помощью кода, очень похожего на тот, который у вас уже есть, просто упростить и разделить на файл PHP для обработки входящих SMS, а затем файл PHP обратного вызова для обработки сделанного вами телефонного звонка.

Сначала мы создадим файл (например, smshandler.php) и укажем на него номер нашего телефона на панели мониторинга Twilio.В нем мы создадим вызов на основе номера телефона пользователя SMS.

Например:

<?php
$number = $_REQUEST['From'];
$body = $_REQUEST['Body'];
$call = $client->account->calls->create(
    $from,
    $number,
    'http://path/to/your/callback.php?body=' . $body
);
?>

Затем мы будем использовать создание другого файла (например, callback.php)и передать ему тело сообщения, а затем отобразить это тело в TwiML, чтобы прочитать содержимое обратно пользователю, которого мы вызвали.

Например:

<?php 
$message = $_REQUEST['body'];
?>
<Response>
    <Say><?php echo message; ?></Say>
</Response>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...