Twilio REST api PHP呼叫用户并阅读短信数据

问题描述:

首先,我有一个顺序拨号应用程序,它会调用一系列电话号码,直到其中一个拨号。Twilio REST api PHP呼叫用户并阅读短信数据

现在,我需要做的,但我坚持的是,当有人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); 
     } 
    } 
} 
+0

我建议你联系Twilio。我以前用过它们,他们的客户服务非常好。 –

这其实可以用非常类似的代码完成,以你拥有的,只是简化并分成用于处理传入的短信,然后处理电话,说你犯了一个回调PHP文件的PHP文件。

首先,我们将创建一个文件(例如smshandler.php)并将其电话号码指向Twilio仪表板。其中,我们将根据短信用户的电话号码创建一个呼叫。

例如:

<?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> 
+0

虽然不要忘记,当你得到'From'字段时,它会被认为是+ 1NNNNNNNNNN,并被读为十亿N N N千。所以如果你要阅读From,请务必为理智而插入一些空格。 – CaseySoftware

+0

非常感谢我给这个尝试。任何想法,如果发件人必须是一个数字? From for me是一个网络监控工具,因此我不能完全确定该工具是否具有电话号码或某种URL作为其调用者ID – Bulvak