Интеграции
Обзор
Подключение мессенджеров к платформе. Каждая интеграция связывает внешний аккаунт мессенджера с компанией, позволяя принимать сообщения в единый inbox.
Поддерживаемые мессенджеры
| Мессенджер | Метод подключения | Цвет badge |
|---|---|---|
| Telegram | QR-код / код авторизации | #0088CC |
| OAuth | #E4405F | |
| API credentials | #25D366 | |
| Messenger | OAuth | #0084FF |
| Viber (E-Chat) | API credentials | #7360F2 |
| ElevenLabs | API key | — |
| Google Sheets | API credentials | — |
Экраны
Список интеграций ((tabs)/integrations.tsx + integrations/index.tsx)
- Карточки подключённых мессенджеров
- Статус подключения
- Кнопка подключения нового
Подключение (integrations/connect.tsx)
Форма зависит от типа мессенджера.
Потоки подключения
Telegram (QR-код)
1. initTelegramQRAuth(companyId)
2. WebSocket: telegram:qr-updated → показать QR-код
3. Пользователь сканирует QR в Telegram
4. WebSocket: telegram:qr-needs-2fa → запросить 2FA (если включен)
5. WebSocket: telegram:qr-completed → подключение завершеноПри ошибке или отмене: cancelTelegramQRAuth().
Telegram (код авторизации)
1. initTelegramAuth(companyId, phone)
2. Получить код в Telegram
3. verifyTelegramCode(code)
4. Интеграция созданаInstagram / Messenger (OAuth)
1. getInstagramAuthUrl(companyId) / getMessengerAuthUrl(companyId)
2. WebBrowser.openAuthSessionAsync(url)
3. Callback с токенами
4. Интеграция создана автоматическиWhatsApp
1. Пользователь вводит API credentials
2. connectWhatsApp(companyId, payload)
3. Интеграция созданаViber E-Chat
1. Пользователь вводит API credentials
2. connectViberEchat(companyId, payload)
3. Интеграция созданаElevenLabs
1. Пользователь вводит API key
2. connectElevenLabs(companyId, payload)
3. Интеграция созданаAPI-методы
| Метод | Описание |
|---|---|
getIntegrations(params) | Список интеграций (фильтр по companyId, type) |
connectIntegration(type, companyId, payload) | Общий метод подключения |
initTelegramAuth(companyId, phone) | Инициация Telegram auth по номеру |
verifyTelegramCode(code) | Верификация кода Telegram |
initTelegramQRAuth(companyId) | Инициация QR-авторизации Telegram |
completeTelegramQRAuth(payload) | Завершение QR-авторизации (2FA) |
cancelTelegramQRAuth() | Отмена QR-авторизации |
getInstagramAuthUrl(companyId) | URL для OAuth Instagram |
getMessengerAuthUrl(companyId) | URL для OAuth Messenger |
connectWhatsApp(companyId, payload) | Подключение WhatsApp |
connectViberEchat(companyId, payload) | Подключение Viber |
connectElevenLabs(companyId, payload) | Подключение ElevenLabs |
connectGoogleSheets(payload) | Подключение Google Sheets |
WebSocket события (Telegram QR)
| Событие | Описание |
|---|---|
telegram:qr-updated | Новый QR-код для отображения |
telegram:qr-needs-2fa | Требуется 2FA пароль |
telegram:qr-completed | Авторизация завершена |