Сброс значений контекстных переменных

Список методов управления Агентом по API

Codename

Метод API

Задача

Особенности

Endpoint

drop_chat_vars

Удаление контекстных переменных из определенного Чата

Удалить из контекста Чата определенные пользовательские контекстные переменные

Нельзя удалить Системные контекстные переменные. При выполнении запроса через External Request заголовок Authorization не требуется

drop_agent_chats_fullcontext

Сброс контекста по ID агента

Сбросить контекст Чатов определенного Агента во всех активных Чатах

Не рекомендуется использовать внешний запрос на сброс контекста Чатов в этом же Агенте.

Получение токена доступа

Для выполнения методов управления Агентом по API необходимо получить токен доступа, чтобы впоследствии использовать его в заголовке Authorization: Bearer: token. Для получения токена вам необходимо использовать локальное хранилище данных в консоли отладки в браузере.

Получение токена на примере браузера Google Chrome:

  1. Авторизуйтесь на Платформе и оставайтесь на той же вкладке браузера;

  2. Зайдите в консоль отладки (клавиша F12 для Google Chrome);

  3. Перейдите на вкладку Application;

  4. В меню раскройте Local Storage;

  5. Выберите https://admin.chatme.ai;

  6. Среди появившихся ключей найдите auth-token. Скопируйте значение этого ключа. Это и есть нужный токен.

Пример значения auth_token: yFoWslOyB57U7Mh2QmYw7iHCcEwPr7oKMoae7zzHGCQ

Токен перестает быть валидным после выхода пользователя – владельца токена из аккаунта на Платформе. При выполнении запроса с невалидным токеном вы получите ошибку.

Удаление контекстных переменных из определенного чата

Данный метод API позволяет удалить из Контекста Чата определенные пользовательские и канальные контекстные переменные. Подробнее о типах контекстных переменных.

Данный метод можно использовать для удаления переменных из контекста чата одного Агента через External Request в его Сценарии (например, для того чтобы удалить переменные перед прохождением слота Slot Filling).

Нельзя удалить системные контекстные переменные, используя этот метод.

Request Headers

Content-type: Application/graphql
Authorization: Bearer: token

NB

При выполнении запроса через External Request заголовок Authorization не требуется.

Request Body

mutation {
      resetChatContextVariables(
          chatId: chat_id,
          contextVariableNames: array
      )  
   }
  • chat_id: идентификатор Чата на Платформе.

  • array: массив текстовых элементов – названий контекстных переменных Чата, которые нужно удалить из Контекста Чата с указанным chat_id.

Пример запроса

mutation {
      resetChatContextVariables(
          chatId: "6182a92db90c03eb5c66eed67f67219b9cf2158c",
          contextVariableNames: ["uname", "uage", "channel_id"]
      )    
   }

В приведенном примере запроса из Контекст Чата с chat_id = 6182a92db90c03eb5c66eed67f67219b9cf2158c будут удалены пользовательские контекстные переменные uname и uage.

NB

Если указанные в запросе переменные не существуют в Контексте Чата и отправлен запрос на их удаление, ничего не произойдет.

  • Переменная channel_id не подлежит удалению, так как является системной.

Response

{
    "data": {
       "resetChatContext": true/false
    }
}

В ответ на запрос на удаление переменных из Контекста Чата Платформа возвращает результат поиска данного Чата. Если Чат с указанным chat_id найден, Платформа вернет resetChatContext со значением true, иначе – false.

NB

Ответ Платформы не свидетельствует об успешном удалении Контекстных переменных Чата, а только о том, что указанный chat_id найден.

Пример ответа системы при запросе с невалидным токеном

{
    "data": null,
    "errors": [
        {
            "message": "ERR_AUTHENTICATION_REQUIRED",
            "locations": [
            "locations": [
                {
                    "line": 2,
                    "column": 1
                }
            ],
            "path": [
                "resetChatContextVariables"
            ],
            "code": "ERR_AUTHENTICATION_REQUIRED"
        }
    ]
}

Сброс контекста по ID Агента

Метод позволяет сбросить контекст всех чатов определенного Агента во всех конечных Каналах.

NB

Не рекомендуется использовать метод через External Request для сброса Контекста Чата Ботом у самого себя – приведет к непредсказуемому поведению во всех Чатах.

Request Headers

Content-type: Application/json
Authorization: Bearer: token

Request Body

{
"query": "mutation {resetChatContext(agentId: agent_id )}"
}
  • agent_id: идентификатор Агента на Платформе.

Пример запроса

{
"query": "mutation {resetChatContext(agentId: 6660)}"
}

Response

{
    "data": {
       "resetChatContext": true
    }
}

Если Агент с указанным agent_id найден, Платформа вернет resetChatContext со значением true, иначе – false.

NB

Ответ Платформы не свидетельствует об успешном удалении Контекстных переменных Чата, а только о том, что указанный chat_id найден.

Пример ответа системы при запросе с невалидным токеном

{
    "data": null,
    "errors": [
        {
            "message": "ERR_AUTHENTICATION_REQUIRED",
            "locations": [
                {
                    "line": 1,
                    "column": 11
            ],
            "path": [
                "resetChatContext"
            ],
            "code": "ERR_AUTHENTICATION_REQUIRED"
        }
    ]
}

Last updated