Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

Доработка FreePBX. Включение записей для очередей, маршрутов и групп

База знаний Использование FreePBX

В этой статье рассмотрим, как сделать запись по умолчанию включённой, при создании новых очередей, входящих или исходящих маршрутов и ринг групп.

Включение записи при создании очереди


Открываем файл: …/admin/modules/queues/views/form.php. В данном файле производятся настройки отображения очередей, также как и входные параметры.
Найдём там строку:

if (!isset($thisQ['recording'])) {
        $recording = "dontcare";


Здесь происходит инициализация входящего параметра для записи разговоров в очереди. Как видим, значение равно dontcare. Меняем его на force.
Сохраняем файл, перезагружаем страничку в браузере, пробуем добавить новую очередь. Если всё было сделано правильно, получим следующий результат, при создании новой очереди:

Запись при создании очереди


Подробнее о работе с очередями можно почитать в статье.
Теперь разберёмся, как включать запись на исходящих маршрутах.


Включение записи при создании исходящего маршрута


Открываем для редактирования файл: …/admin/modules/callrecording/functions.inc.php.
В нём находим функцию:

function callrecording_adjustroute($route_id,$action,$callrecording='')

В этой функции находим следующий код:

if ($callrecording != '') {
        $_SESSION['callrecordingAddRoute'] = $callrecording;
}

Данный блок кода отвечает за передачу текущего параметра записи разговоров, установленного на исходящем маршруте (если он, конечно, установлен). По умолчанию, когда только создаётся исходящий маршрут, данный параметр не выбран, то есть, установлен в значение ''.
Добавим после этого код:

else
{
        $_SESSION['callrecordingAddRoute'] = "force";
}

Тем самым, при создании нового исходящего маршрута, параметр записи разговоров будет установлен в значение «force».


Рассмотрим, как это всё выглядит на примере. Создадим новый маршрут во вкладке Connectivity -> Outbound Routes. Подробнее о работе с исходящими маршрутами можно почитать в статье.


Записи включаются во вкладке Additional Settings. Если зайти в эту вкладку при создании нового маршрута, увидим, что там не выбрано ни одно поле.

Создание нового исходящего маршрута


Так и оставляем, нажимаем Submit. Дело в том, что запись выставится в «force» только при нажатии Submit, и только в том случае, если никакой другой параметр для установки записи разговора не был выбран.


Теперь открываем только что созданный маршрут для редактирования, переходим на вкладку Additional Settings, смотрим, что всё отработало.

Включение записей разговоров на исходящем маршруте


Включение записи при создании входящего маршрута


Открываем для редактирования файл: …/admin/modules/callrecording/functions.inc.php.


В нём находим функцию:


function callrecording_hook_core($viewing_itemid, $target_menuid)


В этой функции находим следующий код:


if ($callrecording == "") {
        $callrecording = "dontcare";
}


Когда создаётся новый входящий маршрут, переменная $callrecording равна "". Соответственно, по умолчанию, выбранным будет значение dontcare. Изменим его на значение force, получим:

if ($callrecording == "") {
        $callrecording = "force";
}

Сохраняем файл, перезагружаем страничку браузера, пробуем добавить новый входящий маршрут. Подробнее о работе с входящими маршрутами можно прочитать в статье. Во вкладке Other должны увидеть следующее:


Включение записей разговоров на входящем маршруте


Включение записи при создании ринг группы

Открываем для редактирования файл: …/admin/modules/ringgroups/views/form.php.
В самом начале этого файла идёт инициализация переменных. Находим тот участок, который отвечает за значения по умолчанию (можно понять по комментарию «//default» в начале). В нём находим переменную $recording:


$recording = 'dontcare';


И меняем значение на force:


$recording = 'force';


Теперь, при создании новой ринг группы, по умолчанию, будет выбираться параметр записи, равный force.


Включение записей разговоров при создании ринг-группы

FreePBX, outbound