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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Создание нового модуля в FreePBX

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

В этой статье речь пойдёт о создании нового модуля в FreePBX, средствами freepbxgenerator.phar.

Создание модуля


Первым шагом при создании нового модуля станет скачивание специальной программы freepbxgenerator.phar. Используем для этого команду wget:

wget https://git.freepbx.org/projects/FL/repos/freepbx-module-generator/raw/dist/freepbxgenerator.phar?at=refs%2Fheads%2Fmaster -O freepbxgenerator.phar

Phar - это утилита для создания исполняемых архивов в PHP, аналог JAR в Java.

Phar входит в php по умолчанию, начиная с версии 5.3, так что никаких дополнительных инсталляций не требуется.

После того, как файл загрузился, необходимо выдать ему права на исполнение:


chmod +x freepbxgenerator.phar

После чего запускаем файл:


./ freepbxgenerator.phar

После небольшого интерактивного диалога, новый модуль будет создан. Рассмотрим элементы данного диалога.


Первый вопрос о том, к какому типу будет отнесён создаваемый модуль. Предлагается 3 варианта ответа:
[0] FreePBX - является полноценным модулем FreePBX;
[1] UCP 14+ - модуль для UCP FreePBX версии 14 и выше;
[2] Both - является примером UCP приложения. Может не нести никакой пользы.


После каждого вопроса в скобках указано значение по умолчанию.


Для применения значения по умолчанию достаточно просто нажать клавишу Enter.

Тип создаваемого модуля


Как видно из скриншота, значением по умолчанию является both, выбрал создание обычного модуля FreePBX (0).
Кратко рассмотрим следующие вопросы.
Вводим имя модуля (без пробелов) (в моём случае FreePBXnewModule). Далее указываем директорию, в которой будет храниться модуль. Здесь лучше всё оставить по умолчанию, поэтому нажимаем Enter, переходим к следующему вопросу. Версия модуля - можно также оставить по умолчанию. В описании можно указать, для чего предназначен модуль (будет отображено в описании, на вкладке Admin -> Module Admin). Далее выбираем тип лицензии для нашего модуля. Доступны GPLv2, GPLv3, AGPLv3 или MIT. Можно воспользоваться выбором по умолчанию, то есть AGPLv3. Заключительным этапом будет выбор места расположения нашего модуля, то есть той вкладки, в которой он будет потом находиться.

Использование freepbxgenerator


В заключительной части создания модуля будут представлены на проверку все введённые данные. Если всё верно, вводим «yes». После чего модуль добавится и FreePBX перезагрузится.


Добавление модуля


И мы видим, что модуль действительно добавился туда, куда нам хотелось, то есть во вкладку Applications.

Новый модуль

Если его открыть, получим приветственную надпись о том, что модуль работает. Это, своего рода, «заглушка», вместо которой, впоследствии, будем вставлять свой исходный код.

Работа модуля

Теперь перейдём во вкладку Admin -> Module Admin. Как можно заметить, новый модуль здесь также доступен со стандартными функциями выключения, отмены установки и удаления.

Вкладка Module Admin

А так выглядит дерево созданных каталогов нашего модуля:

Дерево каталогов

Можно видеть, что создался новый класс с именем нашего модуля. С него и следует начинать разработку. В нём уже располагаются стандартные методы любого модульного класса FreePBX, такие как install, uninstall, backup,restore, doConfigPageInit, getActionBar(для вывода кнопок управления (Submit,Reset,Delete)), showPage, методы ajax и getRightNav - правая выпадающая панель навигации.


При удалении модуля (в случае, если в Module Admin нажимаем Remove), модуль полностью удаляется с жёсткого диска.

На этом рассмотрение технологии создания нового модуля во FreePBX можно считать завершённым.

тип, FreePBX