Skip to content

Thoth: Bitrix24 Integration Hub. It enables the installation of an unlimited number of local Bitrix24 applications, the registration of connectors using the REST API, and OAuth 2.0.

vaestvita/thoth

Repository files navigation

Thoth: Bitrix24 Integration Hub

Описание

Одна инсталляция Thoth позволяет создавать и обслуживать неограниченное количество локальных приложений Битрикс24 с OAuth 2.0 авторизацией.

Одна инсталляция приложения позволяет интегрировать с Битрикс24 неограниченное количество независимых друг от друга внешних систем по API.

Токен OAuth 2.0 авторизации Битрикс24 автоматически обновляется.

Видеоинструкции на Youtube

https://www.youtube.com/playlist?list=PLeniNJl73vVmmsG1XzTlimbZJf969LIpS

ToDo

  • 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

Генерация конфигурационного файла и подключение коннектора

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 картинки

Подключение коннектора Битрикс24 к открытой линии

  • Перейдите в раздел Интеграции > Контакт Центр и выберите созданный коннектор
  • Нажмите "Подключить"
  • Thoth, как и Битрикс24 поддерживает подключение "многие ко многим"

Подключение мессенджера (На примере WhatsApp) к Битрикс24

  • ОЧЕНЬ ВАЖНО! Для одной пары коннектор+линия на стороне приложения thoth нужно подключать только один канал! Иначе работоспособность вообще не гарантируется. Пример конфигурации можете посмотреть здесь
  • Рекомендуется получить Постоянный маркер, иначе придется перевыпускать токен каждый день
  • Создайте приложение на портале разработчиков
  • В панели подключите продукты Webhooks, WhatsApp
  • Сохраните ID номера телефона (тестовый или подключенный)
  • Загустите скрипт add_whatsapp
  • На портале - Быстрый старт > Настройка > URL обратного вызова
  • Введите адрес и Подтверждение маркера, выданные скриптом add_whatsapp
  • Нажмите "Подтвердить и сохранить"

Подключение Asterisk (FreePBX, Yeastar, etc.)

  • Протестировано на 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 в корне и перезапустить приложение.

About

Thoth: Bitrix24 Integration Hub. It enables the installation of an unlimited number of local Bitrix24 applications, the registration of connectors using the REST API, and OAuth 2.0.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages