我们正在接收twillio的自动呼叫。我们确实安装了openvbx。我试图找出如何阻止呼叫与开始时有111,110或101的传入DID。我知道如何在openvbx中输入静态数字,我可以成功阻止它们。
任何帮助都将不胜感激。
答案 0 :(得分:0)
Hi Twilio客户支持。
你有没有想过使用Twilio动词?它允许您构建一个您不希望接收来电的号码列表:
https://www.twilio.com/docs/api/twiml/reject
https://www.twilio.com/docs/howto/reject
此致 汤姆
答案 1 :(得分:0)
我想这里和twilio都不支持openvbx。要在stackoverflow上发布一个问题并将其标记为openvbx,它说我需要有一定数量的积分。我是新手,所以我的账户没有积分。
无论如何我解决了自己的问题。以下是寻找类似解决方案的其他用户的解释。
您需要在openvbx安装中编辑插件/ standard / applets / start / twiml.php,并将其编码为以下代码。我希望openvbx有更多的支持。
<?php
$ci =& get_instance();
$list = AppletInstance::getValue('list');
$direction = isset($_REQUEST['Direction']) ? $_REQUEST['Direction'] : 'inbound';
// block calls
$caller = normalize_phone_to_E164(isset($_REQUEST['From'])? $ci->input->get_post('From') : '');
$response = new TwimlResponse;
// Update this list of numbers
$block_list = array('+112345678910');
//pattern analysis to block DIDs
$patterns = array('111','110','101','+111','+110','+101');
$position = 0;
foreach ($patterns as $pattern) {
if( $position = strpos(' ' . $caller, $pattern)) {
if( $position == 1 ) $response->reject(array('reason' => 'busy'));
}
}
if (in_array($caller, $block_list)) {
$response->reject(array('reason' => 'busy'));
}else{
$next = AppletInstance::getDropZoneUrl('next');
if (!empty($next)) {
$response->redirect($next);
}
}
$response->respond();
?>