Интеграция чат-ботов
Принцип работы
Платформа GPTunneL позволяет интегрировать чат-ботов (Claude, GPT-4 и др.) с внешними чат-сервисами через вебхуки. Обмен данными — авторизованные POST-запросы с токеном в заголовке Authorization и телом в JSON.

Инициатор — чат-сервис. При сообщении пользователя чат-сервис отправляет CLIENT_MESSAGE на вебхук бота. Бот обрабатывает запрос и возвращает BOT_MESSAGE на вебхук чат-сервиса.
Если бот считает нужным перевести на оператора, он отправляет INVITE_AGENT.
Адрес для событий
POST
https://gptunnel.ru/api/bot curl -X POST https://gptunnel.ru/api/bot \ -H 'Authorization: YOUR_TOKEN' \ -H 'Content-Type: application/json' \ -d '{ "event": "CLIENT_MESSAGE", "id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "chat_id": "4976", "client_id": "30005", "message": { "type": "TEXT", "text": "Добрый день", "timestamp": 1713375646 }, "agents_online": false }'При получении события мы ответим кодом 200.
Основные события
{ "event": "CLIENT_MESSAGE", "id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "chat_id": "4976", "client_id": "30005", "message": { "type": "TEXT", "text": "Добрый день", "timestamp": 1713375646 }, "agents_online": false}{ "event": "BOT_MESSAGE", "id": "6620ce58bb349500015fa366", "chat_id": "4976", "client_id": "30005", "client_event_id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "message": { "type": "MARKDOWN", "content": "Здравствуйте! Чем могу помочь?", "text": "Здравствуйте! Чем могу помочь?", "timestamp": 1713375648 }}{ "event": "INVITE_AGENT", "id": "6620ce58bb349500015fa367", "chat_id": "4976", "client_id": "30005", "client_event_id": "9f7b373e-fce1-11ee-9da4-a912f79ee445"}Дополнительные события
Оператор принял чат.
{ "event": "AGENT_JOINED", "id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "chat_id": "4976", "client_id": "30005"}Нет доступных операторов после INVITE_AGENT.
{ "event": "AGENT_UNAVAILABLE", "id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "chat_id": "4976", "client_id": "30005"}Клиент закрыл чат.
{ "event": "CHAT_CLOSED", "id": "9f7b373e-fce1-11ee-9da4-a912f79ee445", "chat_id": "4976", "client_id": "30005"}Получить баланс
POST
https://gptunnel.ru/api/bot/balance curl -X POST https://gptunnel.ru/api/bot/balance \ -H 'Authorization: YOUR_TOKEN' \ -H 'Content-Type: application/json'{ "ok": true, "message": "OK", "balance": "354.91"}Настройка webhook через API
POST
https://gptunnel.ru/api/bot/config curl -X POST https://gptunnel.ru/api/bot/config \ -H 'Authorization: YOUR_TOKEN' \ -H 'Content-Type: application/json' \ -d '{"webHookUrl": "https://bestbotever.com/webhook"}'{ "ok": true, "message": "OK"}Вопросы по интеграции — в Телеграм: t.me/gptunnel_ru или @ScriptHeads