其中,扩展的对讲状态存储在星号/freepbx 中



我想在应用程序/扩展部分(在freepbx管理面板中)添加一个复选框,选中时启用对讲模式,未选中时禁用对讲模式。我也想在另一个页面中做同样的事情。我已经做了这么多,但我找不到对讲模式值(或自动应答值)的存储位置/存储方式。

我认为不错的页面开始是 http://www.freepbx.org/development

发现拨号计划的简单方法是执行以下操作:

asterisk -r
core set verbose 10
enable intercom, call
disable intercom, call

大多数值都在 db 或星号数据库中。

我终于想通了。它在星号的SQLite数据库中。用于存储/读取此代码的代码位于/var/www/html/admin/modules/core/functions.inc.php。这个文件包含了更多的东西和核心功能。

我写了两个函数来设置和获取对讲状态

<?php
function setIntercomStatus($extension,$status)
{
    global $db;
    global $amp_conf;
    global $astman;

    if($extension!='')
    {
        if($astman)
        {
        $result = $astman->database_put("AMPUSER",$extension."/answermode","""
            . (isset($status) ? $status : '')
            . """);
        }
        else 
            { 
                die("Error connecting to database");
            }
    }
}
function getIntercomStatus($extension)
{
    global $db;
    global $amp_conf;
    global $astman;
    if($extension != '' and $astman)
    {

          $answermode=$astman->database_get("AMPUSER",$extension."/answermode");
          if($answermode)
          {
            return (trim($answermode) == '') ? 'disabled' : $answermode;;
          }
          else {
              return "Extension Not Found";  
          }

    }

}
?>

设置功能中的$status可以是"对讲机"或"禁用"

$astman 是 phpAGI 软件包中AGI_AsteriskManager的一个实例(位于/var/www/html/admin/libraries/php-asmanager.php)。分机的对讲状态存储在数据库"AMPUSER"/extension_number/应答模式中。

相关内容

  • 没有找到相关文章

最新更新