0

我对 twilio 非常陌生,我在 twilio 上创建了一个测试帐户,他们给了我一个号码。

现在我想将来自给定(由 twilio 给出)的呼叫转发到任何其他号码。我可以从 twilio 的网站上做到这一点。

但是,我想通过我的应用程序来实现这一点,其中 1. 一侧有我的号码,2. 另一侧有一个文本框,我将在其中提供号码,呼叫将被转发3.保存按钮,将保存更改,按下该按钮后,每当有人拨打twilio提供的号码时,来电将被转发到文本框中指定的号码

我想通过PHP来实现这个功能

但我完全不知道twilio。

希望得到帮助。

任何帮助将不胜感激。

提前感谢您的帮助。

4

3 回答 3

2

您实际上可以使用纯 XML 的 TwiML 来实现这一点。只需将您的 twilio 号码的语音 URL 指向您的应用程序上输出以下内容的端点:

<?php
header("content-type: text/xml");
echo '<?xml version="1.0" encoding="UTF-8"?>';
$forward_to="";
if($_REQUEST['To'] == $number_a){
    $forward_to ='forward  number'; //this is already defined by your users, so it much be stored somewhere...
}elseif($_REQUEST['''] == $number_b){
    $forward_to ='forward  number'; //this is already defined by your users, so it much be stored somewhere...
}
?>

<Response>
    <Dial>
        <Number><?php echo $forward_to; ?></Number>
    </Dial>
</Response>

因此,当有电话打进来时,您要检查电话是从哪里来的,号码 a 或号码 b。然后,如果它来自 a,您将获得 a 的转发号码(即 c),如果来自 b,您将获得 b 的转发号码(即 d)。

于 2015-09-11T23:16:56.567 回答
0

Twilio 开发人员布道者在这里。

如果您完全不熟悉 Twilio,那么我建议您查看我们的PHP 语音快速入门。那里的教程将使您开始使用 Twilio,然后您将能够以您想要的方式自定义您的应用程序。

如果您随后遇到一些问题,您可以在 StackOverflow 上发布您尝试过的代码,这里的人们会尽力提供帮助。

于 2015-09-10T12:04:02.200 回答
0
$success_flag = false;
$phone_number_array = "";
$phone_number_array = json_decode($_POST['phone_number_array'], true);
$phone_number_array=array_map('trim',$phone_number_array);

$forward_number_array = "";
$forward_number_array = json_decode($_POST['forward_number_array'], true);
$forward_number_array=array_map('trim',$forward_number_array);  
$arrResponse = $forward_number_array;

try {
    for ($counter=0; $counter < count($phone_number_array); $counter++) { 

        foreach ($client->account->incoming_phone_numbers->getIterator(0, 50, array(
                "PhoneNumber" => $phone_number_array[$counter]
            )) as $number
        ) {
            $voice_url = "http://twimlets.com/forward?PhoneNumber=" . $forward_number_array[$counter];
                $number->update(array(
                "VoiceUrl" => $voice_url,
            ));
            $success_flag = true;

        }
    }       
} catch (Exception $e) {
    $success_flag = false;
    $error = "\n\nError in forward numbers : " . $e;
    file_put_contents("debug_file.txt", print_r($error, true), FILE_APPEND);

}

if($success_flag==false){
    $response = "no records found";
    echo $response;
}else{
    $response = "Changes saved successfully";
    echo $response;
}   
于 2015-09-16T08:38:18.260 回答