FreePBX: различия между версиями

Материал из Planfix
Перейти к: навигация, поиск
Строка 107: Строка 107:
'''Шаг 5'''
'''Шаг 5'''


На сервере перейдите в папку /var/spool/asterisk/ и создайте ссылку с названием recordings на папку с названием monitor (в той же папке). Сделать это можно при помощи команды:  
На сервере:
*Перейдите в папку /var/spool/asterisk/
*Создайте ссылку с названием recordings на папку с названием monitor (в той же папке). Команда:
<code>ln –s ваш_путь/asterisk/monitor ваш_путь/asterisk/recordings</code>
<code>ln –s ваш_путь/asterisk/monitor ваш_путь/asterisk/recordings</code>


6. Переходим в папку /etc/asterisk/ cоздаем папку scripts(если еще нет) и в ней создаем файл ami_listener.py.
 
'''Шаг 6'''
 
Переходим в папку /etc/asterisk/ cоздаем папку scripts(если еще нет) и в ней создаем файл ami_listener.py.


7. Заполняем файл ami_listener.py согласно приложенному файлу ami_listener.txt, заменяя:
7. Заполняем файл ami_listener.py согласно приложенному файлу ami_listener.txt, заменяя:

Версия от 07:33, 18 июня 2024

FreePBX — это бесплатная программная телефонная система, которая позволяет управлять звонками в компании.

Возможности

  • Телефонные звонки через интернет: использует технологию VoIP, что позволяет совершать звонки через интернет вместо обычной телефонной сети.
  • Автоматическое распределение звонков: помогает автоматически направлять входящие звонки на нужные номера или отделы внутри компании.
  • Голосовые меню: Можно настроить интерактивные голосовые меню, чтобы звонящий мог выбрать нужный отдел, нажимая цифры на телефоне.
  • Голосовая почта: Если никто не может ответить на звонок, FreePBX может записать сообщение голосовой почты, которое потом можно прослушать.
  • Конференц-связь: Можно организовывать конференц-звонки, чтобы несколько человек могли одновременно участвовать в разговоре.
  • Запись звонков: Можно записывать телефонные разговоры для последующего прослушивания или анализа.
  • Интеграция с другими системами: FreePBX можно интегрировать с различными CRM-системами, в том числе с ПланФиксом.

Подключение

FreePBX к ПланФиксу можно подключить 2 способами:

Api ПланФикса для телефоний

  • Этим способом можно получать в ПланФикс только события о звонках, т.е. при звонке в активной вкладке ПланФикса появится карточка звонка.
  • Звонить из ПланФикса нельзя.
  • Для того, чтобы получить записи звонков необходимо дополнительно настроить apache/nginx (шаг 5).


Шаг 1

На сервере отредактируйте файл /etc/asterisk/extensions_override_freepbx.conf (пример файла) таким образом, чтобы он обязательно содержал 3 контекста:

  • [macro-dialout-one-predial-hook]
  • [macro-dialout-trunk-predial-hook]
  • [macro-hangupcall]

Для [macro-hangupcall] необязателен вид, как в примере.

Найдите в файле extensions_additional.conf контекст [macro-hangupcall] — скопируйте его — в самое начало добавьте строку:

exten => s,1,Macro(hangupcall-send-post)


Шаг 2

Скопируйте в файл extension_custom.conf все контексты из примера. Это можно сделать в том числе с помощью интерфейса FreePBX.


Шаг 3

Добавьте в файл globals_custom.conf 3 строки и замените {…} на соответствующие данные:

  • PBX_URL = {…} — URL-адрес вашей АТС
  • PF_URL = {…} — адрес для принятия запросов
  • PF_KEY = {…} — ключ авторизации (token) ПланФикса


Шаг 4

  • Перейдите в ПланФиксе в Управление аккаунтом — Интеграции — Виртуальные АТС — API ПланФикса для телефоний.
  • Заполните адрес АТС, чтобы ПланФикс понимал, что нужно принимать события приходящие с этого сайта или адреса.


Шаг 5

Добавьте ссылку на папку с записями. У папки должен быть нужный владелец, группа и права — 775.

  • Создаем ссылку
ln -s /var/spool/asterisk/monitor /var/www/html/monitor


  • Редактируем права и владельца:
chmod -R 775 /var/www/html/monitor/
chown -R asterisk:asterisk /var/www/html/monitor/

Интеграция FreePBX

Шаг 1

Откройте FreePBX и добавьте пользователя: Settings — Asterisk REST Interface Users — Add User. Заполните следующие поля:

  • REST Interface User Name: Имя пользователя
  • REST Interface User Password: Пароль
  • Password Type: Plain Text
  • Read Only: No

Скопируйте (понадобится в шаге 4) и сохраните.


Шаг 2

Добавьте менеджера: Settings — Asterisk Manager Users — Add Manager:

  • Name: Имя
  • Secret: Оставьте по умолчанию или добавьте свой
  • Остальные пункты можно не трогать.

Скопируйте (понадобится в шаге 4 и 6) и сохраните.


Шаг 3

Сохраните настройки, нажав Apply Config в правом верхнем углу.


Шаг 4

Перейдите в ПланФиксе в Управление аккаунтом — Интеграции — Виртуальные АТС — FreePBX. Заполните данные:

  • AMI Name: Name из шага 2
  • AMI Secret: Secret из шага 2
  • PBX address: URL-адрес вашей АТС
  • ARI User Name: Name из шага 1
  • ARI User Password: Password из шага 1

Скопируйте URL принимающего скрипта и сохраните интеграцию.


Шаг 5

На сервере:

  • Перейдите в папку /var/spool/asterisk/
  • Создайте ссылку с названием recordings на папку с названием monitor (в той же папке). Команда:

ln –s ваш_путь/asterisk/monitor ваш_путь/asterisk/recordings


Шаг 6

Переходим в папку /etc/asterisk/ cоздаем папку scripts(если еще нет) и в ней создаем файл ami_listener.py.

7. Заполняем файл ami_listener.py согласно приложенному файлу ami_listener.txt, заменяя:

Your_user_name: на Name из пункта 2

Your_user_password: на Secret из пункта 2

Your_planfix_endpoint_url: на URL принимающего скрипта из пункта 4

8. Делаем файл исполняемым с помощью команды:

chmod +x /etc/asterisk/scripts/ami_listener.py

9. Переходим в папку /lib/systemd/system/ и создаем файл crm-asterisk-listener.service

10. Заполняем его согласно приложенному файлу crm-asterisk-listener.txt

11. Добавляем в автозагрузку и запускаем сервис с помощью последовательных команд:

sudo systemctl enable crm-asterisk-listener

sudo systemctl start crm-asterisk-listener