有没有一种方法可以编程地创建Twimlbin ?


Is there a way to programmatically create a Twimlbin?

我想做一个应用程序,用户可以输入一个电话号码和一个消息,我可以有Twilio发送该电话号码与该文本合成的消息。我使用的TwiML代码的一个例子是像

这样简单的东西
<?xml version="1.0" encoding="UTF-8"?>
    <Response>
        <Say>Hello World</Say>
    <Response>

为了使这个工作,我已经尝试设置一个PHP函数,它接受消息并响应上面的TwiML,但是我从测试报告中得到的电话呼叫是应用程序失败。为了记录,以下是我尝试过的PHP代码。

echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<Response>";
echo "<Say>" . $_GET['message'] . "</Say>";
echo "</Response>";

然而,我很容易就能得到一个TwiMLBin来处理这个(毕竟这是它的目的)。环顾四周,但我无法找到任何关于该网站的API。有没有人知道,如果有一种方法,以编程方式创建TwiMLBin,以便我可以创建适当的TwiMLBin的消息,我的用户输入,然后直接我的Twilio函数调用到适当的URL?

类似的东西应该在PHP中工作。cURL在许多编程语言中都是可用的,因此您可以将其反向使用。

<?php
/* 
 * Create TWimL Bin
 */
$url = "http://twimlbin.com/create";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$html = curl_exec($ch);
$status_code = curl_getinfo($ch,CURLINFO_HTTP_CODE);
if($status_code=302 or $status_code=301){
  $TwimLBinURL = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
}
curl_close($ch);
/*
 * Update TwimL with XML
 */
$ExplodeTwimLBinURL = explode("/", $TwimLBinURL);
$TwimLBinID = $ExplodeTwimLBinURL[3];
$TwimLBinUpdateUrl = "http://twimlbin.com/".$TwimLBinID."/update";
$data = "twiml=<PUT TWIML XML HERE>";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$TwimLBinUpdateUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $data);
$result = curl_exec($ch);
curl_close($ch);
echo $TwimLBinURL;
/*
 * End of TwimL Bin Creation
 */
?>