Одна инсталляция Thoth позволяет создавать и обслуживать неограниченное количество локальных приложений Битрикс24 с OAuth 2.0 авторизацией.
Одна инсталляция приложения позволяет интегрировать с Битрикс24 неограниченное количество независимых друг от друга внешних систем по API.
Токен OAuth 2.0 авторизации Битрикс24 автоматически обновляется.
https://www.youtube.com/playlist?list=PLeniNJl73vVmmsG1XzTlimbZJf969LIpS
- WhatsApp API Business /до 20.02.2024
- Подробное логирование /до 28.02.2024
- Asterisk /до 20.03.2024
- Telegram - ...
- Instagram - ...
- SMS (goip) - ...
- more ...
- Для корректной работы платформы Thoth необходим домен, обеспеченный действительным SSL-сертификатом.
- Пример настройки приложений Flask с Gunicorn и Nginx на сервере Ubuntu
- Все последующие действия должны осуществляться при запущенном и корректно работающем приложении.
cd /opt
git clone https://github.com/vaestvita/thoth
cd thoth
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
sudo cp example/thoth.service /etc/systemd/system
sudo systemctl daemon-reload
sudo systemctl start thoth
sudo systemctl enable thoth
- Запустите файл add_config
python tools/add_config.py
- Скрипт запросит необходимые для генерации конфигурации данные
Введите название конфигурации (my_project): test
Введите адрес портала (domain.bitrix24.ru): domain.bitrix24.ru
Введите домен сервера, где будет расположен скрипт (domain.ru): app.thoth.kz
- В результате в папке configs будет сформирован конфигурационный файл, а в консоли будут выведены данные, необходимые для подключения к Битрикс24. Сохраните полученный ответ для удобства
Базовая конфигурация сохранена. Данные для регистрации приложения:
Адрес обработчика и первоначальной установки: https://app.thoth.kz/bitrix?config=qJA0VBVH7tjxfGEfVE5U
- В Битрикс24 создайте серверное локальное приложение без интерфейса в Битрикс24 и заполните соответствующие поля (Путь вашего обработчика и Путь для первоначальной установки)
- Необходимые права (Настройка прав): crm,imopenlines,contact_center,user,im,imconnector,disk
- Нажмите "Сохранить"
- Конфигурационный файл будет автоматически заполнен данными с сервера Битрикс24
- Скопируйте в соответствующие поля конфигурационного файла значения полей Код приложения (client_id) и Ключ приложения (client_secret)
- Запустите файл add_connector.py, выберите конфигурацию для настройки
- Введите имя коннектора и путь к файлу SVG или URL картинки
- Перейдите в раздел Интеграции > Контакт Центр и выберите созданный коннектор
- Нажмите "Подключить"
- Thoth, как и Битрикс24 поддерживает подключение "многие ко многим"
- ОЧЕНЬ ВАЖНО! Для одной пары коннектор+линия на стороне приложения thoth нужно подключать только один канал! Иначе работоспособность вообще не гарантируется. Пример конфигурации можете посмотреть здесь
- Рекомендуется получить Постоянный маркер, иначе придется перевыпускать токен каждый день
- Создайте приложение на портале разработчиков
- В панели подключите продукты Webhooks, WhatsApp
- Сохраните ID номера телефона (тестовый или подключенный)
- Загустите скрипт add_whatsapp
- На портале - Быстрый старт > Настройка > URL обратного вызова
- Введите адрес и Подтверждение маркера, выданные скриптом add_whatsapp
- Нажмите "Подтвердить и сохранить"
-
Протестировано на FreePBX (15, 16) с Asterisk (16, 18, 20)
-
Одна инсталляция THOTH по умолчанию поддерживает, подключение к одному серверу Asterisk. Статистика о звонках будет отправляться только на один портал Битрикс24.
При первом запуске приложения в корне генерируется config.ini с параметром [enabled = false] в секции [asterisk].
[ПРАВА ЛОКАЛЬНОГО ПРИЛОЖЕНИЯ] - telephony, im, user, crm
- cel_general_custom.conf
[general]+
apps=dial
[manager]+
enabled=yes
- Заполните файл config.ini согласно примеру, подставив свои данные.
- Установите [enabled] = true
- Выберите портал Битрикс24 для интеграции. В значении [config_value] в секции [bitrix] укажите значение [config_key] из одного из файлов кофигруации.
- Для доступа к файлам записей настройте свой вебсервер. Пример для Apache
- Укажите контексты в [inbound_contexts] и [hangup_delisting]. Если используется FreePBX (15, 16) с Asterisk (16, 18, 20) "из коробки", то эти значения менять не нужно.
- [default_user_id] - ID пользователя битрикс24 к которому будут привязаны все потерянные звонки. Если оставить пустым, то будет использован ID первого активного пользователя в системе.
- Для работы ClickToCall запустите event_bind, выберите конфигруцию, укажите код события [OnExternalCallStart]. Так же убедитесь, что в Битрикс24 локальное приложение THOTH уставновлено в поле "Номер для исходящего звонка по-умолчанию" в общих настройках телефонии.
- Перезапустите приложение
- При удаленном подключении к AMI иногда может теряться подключение. Попоробуйте запустить THOTH на сервере PBX или в той же локальной сети
- При манипуляциях с номерами как в битриксе так и в АТС желательно удалить файл bitrix_users.json в корне и перезапустить приложение.