Перейти к основному содержимому

$jsapi.chatHistoryJson

Метод $jsapi.chatHistoryJson() возвращает подробную историю диалога в текущей сессии в формате JSON. В этом формате вы можете отправлять историю в сторонние системы.

История — это список из различных сообщений:

Поля сообщения:

ПолеОписание
questionID

Идентификатор сообщения.

Если бот реагирует на запрос пользователя или событие, то questionID в реакции бота будет совпадать с questionID в запросе или событии.

textТекст сообщения. Поле отсутствует, если у сообщения нет текста.
authorАвтор:
  • CLIENT — для запросов пользователя и событий.
  • BOT — для реакций бота.
  • OPERATOR — для сообщений оператора.
statusСтатус:
  • SENT — отправлено.
  • DELIVERED — доставлено.
  • NOT_DELIVERED — не доставлено.
  • READ — прочитано.
  • NOT_SENT — не отправлено.
eventDataДанные, переданные вместе с событием.
sendDateInUTCUnix-время отправки по часовому поясу UTC.

Пример использования

Метод вызывается без аргументов.

state: historyJson
q: история диалога в формате JSON
a: {{ $jsapi.chatHistoryJson() }}

Пример истории:

[
{
"questionId": "example1-0000-0000-0000-000000000000",
"text": "Как купить билет?",
"author": "CLIENT",
"status": "SENT",
"eventData": {},
"sendDateInUTC": 1713883656
},
{
"questionId": "example1-0000-0000-0000-000000000000",
"text": "Вы можете купить билет онлайн: https://example.com/buy",
"author": "BOT",
"status": "SENT",
"eventData": {},
"sendDateInUTC": 1713883656
},
{
"questionId": "example2-0000-0000-0000-000000000000",
"author": "CLIENT",
"status": "SENT",
"eventData": {
"example": "data"
},
"sendDateInUTC": 1713883656
},
{
"questionId": "example2-0000-0000-0000-000000000000",
"text": "Скачайте билет: https://example.com/ticket",
"author": "BOT",
"status": "SENT",
"eventData": {},
"sendDateInUTC": 1713883656
}
]