Руководства для разработчиков
Kavchat — чат поддержки, который отвечает по вашим сценариям. В нём нет языковой модели: опубликованный сценарий работает на устройстве пользователя, поэтому ответы быстрые, предсказуемые и доступны даже без сети. Здесь вы узнаете, как всё устроено и с чего начать.
Как устроен Kavchat
- Панель управления. Вы и ваша команда входите в систему на app.kavchat.com. У каждого рабочего пространства есть публичный ключ (
pk_live_...) и секретный ключ (sk_live_...). Оба находятся на странице Установка. - Сценарии. В визуальном редакторе вы собираете сценарии из шагов. Каждый шаг содержит сообщение, кнопки и ключевые слова. Кнопка ведёт к другому шагу, другому сценарию, по ссылке, на экран вашего приложения или к форме обращения.
- Публикация. Каждая публикация сохраняется как версия с номером. Вы выбираете, кому доступен бот: никому, только тестовым пользователям (по номеру телефона) или всем. В любой момент можно восстановить предыдущую версию без обновления приложения.
- Виджет или SDK. Сайт загружает виджет с публичным ключом, а приложение использует один из мобильных SDK. Виджет и SDK скачивают опубликованную версию, сохраняют её на устройстве и ведут диалог прямо на нём.
- Токен идентификации (необязательно). Когда пользователь вошёл в систему, ваш сервер подписывает короткий JWT секретным ключом. Так Kavchat связывает диалог и обращение с идентификатором пользователя в вашей системе и может показывать бота, доступного только тестовым пользователям, нужным людям.
- Обращения и webhook. Если сценарий не решает проблему, форма обращения создаёт обращение с полной историей диалога. Оно поступает в раздел обращений в панели управления, а на тарифе Premium также отправляется в вашу систему через подписанный webhook. Ваш сервер также может читать и закрывать обращения через Server API.
Два ключа для разных задач
| Ключ | Где используется | Для чего |
|---|---|---|
Публичный ключ pk_live_... | На страницах сайта и в приложениях. Его можно размещать в открытом доступе. | Загрузка бота, передача данных о ходе диалога и создание обращений. |
Секретный ключ sk_live_... | Только на вашем сервере. Никогда не размещайте его в браузере или приложении. | Подпись токена идентификации, проверка webhook и вызовы Server API. |
Быстрый старт
Для сайта достаточно этой строки перед </body>. Скопируйте её со своим ключом со страницы Установка в панели управления:
<script src="https://cdn.kavchat.com/v1/kavchat.js" data-key="pk_live_..." async></script>Опубликуйте сценарий, откройте доступ к боту для всех (или для тестовых пользователей по номерам телефонов) и обновите страницу.
Руководства
Кнопки и вопросы
Короткие кнопки и полные вопросы на каждом шаге, с поиском, если тем много.
Виджет для сайта
Одна строка кода, необязательный JavaScript-интерфейс, события и CSP.
React Native
Provider, экран чата и плавающая кнопка. Работает в любом приложении React Native (начиная с версии 0.72), с Expo или без.
Flutter
Контроллер, плавающая кнопка и экран чата со встроенной поддержкой RTL.
iOS
Пакет Swift с компонентами SwiftUI и UIKit. Для iOS 15 и выше.
Android
Компоненты Jetpack Compose и Activity для приложений на Views. Для API 23 и выше.
Идентификация пользователей
Подпишите краткосрочный токен на сервере. Примеры на 7 языках.
Webhook
Каждое новое обращение приходит в вашу систему с подписью. На Премиум.
Server API
Обращения, отчёты, аудитория и версии прямо с вашего сервера.
Нужна помощь?
Напишите нам на support@kavchat.com. Полное описание API находится в файле openapi.yaml (OpenAPI 3.1).