# Системные контекстные переменные

Системная контекстная переменная — переменные, создаваемые в Чате Платформа для служебных целей и обеспечения работы Сценарий агента. Системная контекстная переменная недоступны для редактирования пользователем, но доступны для просмотра и использовании в Сценарий агента.В данной таблице перечислены все Системная контекстная переменная Платформа и их характеристики.

<table><thead><tr><th>Переменная</th><th>Смысл</th><th>Скрыта от пользователя</th><th>Использование</th><th>Переменная всегда в контексте</th><th>Переменная всегда не пустая</th><th>Формат</th><th>Пример</th><th>Создание в Контексте Чата</th><th>Источник данных при создании</th><th>Изменение системой после создания</th><th>Изменение пользователем через слоты</th></tr></thead><tbody><tr><td>agent_id</td><td>Уникальный идентификатор Агента в Платформа</td><td>нет</td><td>идентификация текущего агента в данном чате</td><td>да</td><td>да</td><td>число</td><td>1772</td><td>При создании Чата</td><td>Параметры Агента</td><td>Невозможно</td><td>Невозможно</td></tr><tr><td>chat_id</td><td>Уникальный идентификатор Чата в Платформа</td><td>нет</td><td><ul><li>Идентификация Чата в Платформа</li><li>Идентификация Чата во Входящий запрос</li></ul></td><td>да</td><td>да</td><td>40 символов: латинские буквы и цифры</td><td>1fab819e20c1e939ed14d7024d17653fb07a77dd</td><td>При создании Чата</td><td><ul><li>генерация по формуле</li></ul><p>chat_id={channel_name}:{channel_chat_id}гдеchannel_name = {token}:{connector_id}:{agent_id}</p><ul><li>переменная закодирована после генерации</li></ul></td><td>Невозможно</td><td>Невозможно</td></tr><tr><td>channel_chat_id</td><td>идентификатор Собеседника в Конечный канал - синтетическая переменная, правила ее формирования задаются в настройках Коннектора к данному каналу</td><td>нет</td><td><ul><li>Идентификация Чата и\или Собеседника в Конечный канал</li><li>Генерация chat_id</li></ul><p><br></p></td><td>да</td><td>да</td><td>&#x3C;id чата\собеседника>|&#x3C;название коннектора></td><td>192929922|telegram</td><td>При создании Чат  в платформе</td><td>генерация по формулесhannel_chat_id = {id_from_channel|connector_name}гдеid_from_channel - идентификатор чата\собеседника\визитера из Конечный каналconnector_name - название Коннектор для Конечный канал, в котором происходит Общение</td><td>Невозможно</td><td>Невозможно</td></tr><tr><td>channel_id</td><td>Уникальный идентификатор объекта платформы Канал Проекта.  </td><td>нет</td><td><ul><li>Уникальный идентификатор объекта платформы Канал Проекта в котором происходит общение в данном Чате</li></ul></td><td>да</td><td>да</td><td>число</td><td>28844</td><td>При создании Чата в платформе</td><td>параметры Конечный канал Агента</td><td>Невозможно</td><td>Невозможно</td></tr><tr><td>client_message</td><td>Текст последнего сообщения, которое пришло от Собеседник  в Чат</td><td>нет</td><td><ul><li>движение бота по  Сценарий агента</li><li>в  Сценарий агента  по желанию дизайнера</li><li>в слоте NLU, как объект для распознавания</li><li>в слоте Regular Expression, как объект для проверки на соответствие регулярному выражению</li></ul></td><td>да</td><td>нет</td><td>текст, формируется в конечном канале</td><td>Привет!</td><td>При поступлении первого сообщения от Собеседника  в Чате</td><td>Конечный канал</td><td><ul><li>сообщение собеседника в конечном канале</li><li>команда start в телеграм боте</li><li>техническое сообщение от конечного канала в зависимости от коннектора</li></ul></td><td>Возможно</td></tr><tr><td>date</td><td>Время получения последнего сообщения от Собеседник  = время получения последнего значения client_message, но именно из Канал Проекта (а не в слоте Memory)</td><td>нет</td><td><ul><li>в Сценарий агента  по желанию ДД</li><li>в целях исполнения Сценарий агента</li></ul></td><td>да</td><td>да</td><td>дата<br>часовой пояс(UTC)</td><td>2020-12-17 13:29:19</td><td>При создании Чат в платформе</td><td>Время получения последнего сообщения</td><td>При получении нового сообщения от Собеседник</td><td>Невозможно</td></tr><tr><td>dialog_id</td><td>Идентификатор диалога</td><td>нет</td><td><ul><li>в системных целях</li><li>Идентификация нового диалога</li></ul></td><td>да</td><td>да</td><td>строка</td><td>1fab819e20c1e939ed14d7024d17653fb07a77dd</td><td>При создании Чата в платформе</td><td>рандомайзер+хэш</td><td>При старте нового Диалога в Чате</td><td>Невозможно</td></tr><tr><td>modified_at</td><td>Время последней модификации Контекст Чата</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>да</td><td>да</td><td>дата<br>часовой пояс(UTC)</td><td>12/17/2020 10:46:25</td><td>При создании Чата в платформе</td><td>Время создания Чата</td><td>При изменении Контекст Чата</td><td>Невозможно</td></tr><tr><td>slot_id</td><td>Уникальный для платформы идентификатор последнего "выполненного" Слота в Сценарий агента</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>да</td><td>да</td><td>число</td><td>1</td><td>При создании Чата  в платформе</td><td>Начальная позиция в Сценарий агента  - 1</td><td>При переходе к ноде соответствующей следующему Слот</td><td>Невозможно</td></tr><tr><td>strategy_modified_at</td><td>Время создания Обученная модель агента (время последнего переобучения)</td><td>нет</td><td>в Сценарий агента  по желанию ДД, также используется для сброса состояния Чата при переобучении</td><td>да</td><td>да</td><td>дата</td><td>12/17/2020 10:46:25</td><td>При создании Чата в платформе</td><td>База данных платформы: обученная модель Сценарий агента Агента</td><td>При последующем сообщении от Собеседника после Обучение/переобучения</td><td>Невозможно</td></tr><tr><td>confidence</td><td>Процент уверенности модели NLU  при распознавании Реплика Интентом</td><td>нет</td><td>при переходе по Сценарий агента  после слота NLU</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>Число с плавающей точкой</td><td>0.4812345</td><td>При прохождении слота NLU</td><td>Результат работы NLU</td><td>При прохождении слота NLU. Если при следующем прохождении NLU Интент  не распознается, то переменная будет удалена из Контекст Чата</td><td>Невозможно</td></tr><tr><td>error</td><td>Текст ошибки, полученный в результате выполнения слотов NLU/ Regular Expression  / Memory  </td><td>нет</td><td>при переходе по Сценарий агента  после СлотовNLU/ Regular Expression  / Memory  </td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>Строка</td><td>no intent!</td><td>При прохождении Слотов NLU/ Regular Expression  / Memory  </td><td>Результат выполнения операций NLU/ Regular Expression  / Memory  </td><td>При прохождении Слотов NLU/ Regular Expression  / Memory  </td><td>Невозможно</td></tr><tr><td>incoming_request_id</td><td>Уникальный для платформы идентификатор (токен) Входящий запрос</td><td>нет</td><td>испольуется для инициализации прохождения по Ветка сценария слота  Incoming Request</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>Строка</td><td>5944::80nyRRRjWAjQGfHkQJyJu6VWT8ToMpw79wi3m4e-x0g</td><td>Записывается в контекст в момент получения запроса на исполнение слота Incoming Request</td><td>Данные сценания - слота IR</td><td>Удаляется после прохождения слота Incoming Request — переменная будет удалена из Контекст Чата после достижения следующего после слота Incoming Request   слотов Wait For Reaction / Change Chat Mode</td><td>Невозможно</td></tr><tr><td>intent</td><td>Уникальный для платформы идентификатор распознанного Интента</td><td>нет</td><td>при переходе по Сценарий агента  после слота NLU</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>Число</td><td>1</td><td>При прохождении слота NLU</td><td>Результат работы NLU</td><td>При прохождении слота NLU. Если при следующем прохождении слота NLU intent  не распознается, то переменная будет удалена из Контекст Чата</td><td>Невозможно</td></tr><tr><td>request_success</td><td>Флаг, показывает успех последнего выполненного Внешний запрос в Сценарий агента</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>True или False</td><td>При получении ответа на Внешний запрос</td><td>Результат выполнения слота External Request</td><td>При получении ответа на Внешний запрос  . False - любые ошибки в процессе подготовки или обработки запроса, в т.ч. ответы с сервера с кодами 4хх и 5хх<br></td><td>Возможно</td></tr><tr><td>response_status_code</td><td>Код ответа сервера на выполненный Внешний запрос</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>нет</td><td>Да, когда присутствует в контексте</td><td>число</td><td>от 100 до 599</td><td>При получении ответа на Внешний запрос</td><td>Результат выполнения слота External Request</td><td>При получении ответа на External Request</td><td>Возможно</td></tr><tr><td>parse_result</td><td>Строка - часть client_message, соответствующую регулярному выражению в слоте Regular Expression, полученная после успешной проверки client_message в  данном слоте</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>слово</td><td>При прохождении слота Regular Expression</td><td>Результат выполнения слота Regular Expression</td><td>При прохождении слота Regular Expression</td><td>Возможно</td></tr><tr><td>IR_url</td><td>Адрес активного вебхука Входящий запрос (слот Incoming Request) в данной Обученная модель агента</td><td>нет</td><td>Для отправки запроса из внешних систем Агенту</td><td>нет</td><td>Да, когда присутствует в контексте</td><td>url</td><td>https://admin.chatme.ai/api/incoming_request/29614::XnLlRoKPAnwLKNoFHUWPmzYkE1fT9pi-10ZkjcmDRBc</td><td>При прохождении слота Incoming Request</td><td>Данные поля WEBHOOK слота Incoming Request</td><td>Невозможно</td><td>Невозможно</td></tr><tr><td>node_id</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>savepoint_node_id</td><td>Идентификатор последнего достигнутого в Общение Слота с установленной точкой сохранения</td><td>нет</td><td>в Слоте Jump для перехода в соответствующий Слот через опцию “get slot id from context”</td><td>нет</td><td>да</td><td>число</td><td>1</td><td>При прохождении слота с установленной Точка сохранения  - содержащего /s в поле Name</td><td>Обученная модель агента</td><td>Каждый раз прохождении слота с установленной Точка сохранения  - содержащего /s в поле Name</td><td>Возможно</td></tr><tr><td>raw_response</td><td>Переменная содержит ответ внешней системы на Внешний запрос</td><td>нет</td><td>Для дебага Агента; для редактирования External Request (узнать, что приходит в ответ и что можно парсить)</td><td>нет</td><td>нет</td><td>строка</td><td><p>Успешный запрос:</p><pre><code>{"success":true,"temperature":"-5.3","feels_like":"-12.18"}
</code></pre><p>Неуспешный запрос:</p><pre><code>{"success":false,"message":"empty city provided"}
</code></pre></td><td>При прохождении слота External Request</td><td>Внешняя система, к которой обращается External Request</td><td>Каждый раз при следующем прохождении этого же или другого слота External Request</td><td>Возможно</td></tr><tr><td>response_headers</td><td>Содержимое переменной: массив заголовков и их значений из полученного ответа на Внешний запрос и системная информация.</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>нет</td><td>нет</td><td>строка</td><td>Успешный запрос:{'Server': 'nginx/1.14.0 (Ubuntu)', 'Date': 'Thu, 28 Apr 2022 12:09:42 GMT', 'Content-Type': 'application/json', 'Content-Length': '59', 'Connection': 'keep-alive'}При неуспешном запросе: если запрос дошёл до сервера, то заголовки формируются, если нет, то переменная чистится</td><td>При прохождении слота External Request</td><td>Внешняя система, которая отвечает на External Request</td><td>Каждый раз при следующем прохождении этого же или другого слота External Request</td><td>Возможно</td></tr><tr><td>notification_count</td><td>Счетчик рассылок  в конкретном Чате</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>число</td><td>123</td><td>При прохождении слота Notification</td><td>Генерируется системой</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_task_id</td><td>Принимает значение равное Идентификатор задачи на рассылку,который система отправила в ответе (response) на Запрос на рассылку  от внешней системе</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>строка (UUID)</td><td>123e4567-e89b-12d3-a456-426655440000</td><td>При прохождении слота Notification</td><td>Конечный канал, к которому обращается Notification</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_init_time</td><td>Датавремя начала выполнения Слота Notification по UTC</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>датавремя</td><td></td><td>При прохождении слота Notification</td><td>Генерируется системой</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_message_id</td><td>Когда рассылка отправляется, Конечный канал возвращает id сообщения</td><td>нет</td><td>движение Агента по Сценарий агента</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>любая строка в зависимости от мессенджера</td><td>При прохождении слота Notification</td><td>Конечный канал, к которому обращается Notification</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_id</td><td>id рассылки, на данный момент = id Слота Notification  </td><td>нет</td><td>движение Агента по Сценарий агента</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>число</td><td>123</td><td>При прохождении слота Notification</td><td>Данные сценария</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_raw_status</td><td>json-объект, запрос, который отправляет Конечный канал в ответ на рассылку, описание статуса</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>json-объект</td><td>{‘description’:’failed to build request’}{‘description’:’no account on &#x3C;номер телефона\ключевой идентификатор собеседника>’,<br>‘channel_response’: тело ответа от канала as is (объект)<br>}</td><td>При прохождении слота Notification</td><td>часть ‘description’ создается платформой, часть ‘channel_response’— Конечный канал, к которому обращается Notification</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Возможно</td></tr><tr><td>notification_status</td><td>Технический статус рассылкиВозможные значения: ‘no_account’, ‘failed’, ‘sent’, ‘delivered’, ‘read’</td><td>нет</td><td>движение Агента по Сценарий агента</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>'sent''delivered'‘failed’‘no_account’.</td><td>При прохождении слота Notification</td><td>Конечный канал, к которому обращается Notification</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Невозможно</td></tr><tr><td>notification_raw_request</td><td>Запрос, который Платформа отправляет в мессенджер для запуска рассылки</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>json-объект</td><td>{ "to": "9601103070", "type": "template", "template": {   "namespace": "2a958ec8_9602_4cc0_aea4_73006715d273",   "name": "mailing_02",   "components": [     {       "type": "body",       "parameters": [         {           "type": "text",           "text": "\u044d\u043d\u0434\u043e\u043a\u0440\u0438\u043d\u043e\u043b\u043e\u0433"         } }</td><td>При прохождении слота Notification</td><td>Генерируется Слотом Notification</td><td>Каждый раз при следующем прохождении этого же или другого слота Notification</td><td>Возможно</td></tr><tr><td>intent_name</td><td>В переменной хранится название последнего пройденного интента</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>smalltalk_hello</td><td>При прохождении подслота intent</td><td><p>берется из поля Name ИнтентаВажно:</p><ol><li>Если название Интента было изменено в Ресурс компании и Агент был переобучен, то в переменную записывается то название, которое было актуально на момент прохождения слота с этим Интентом.</li><li>Если название Интента было изменено в Ресурс компании, но Агент не был переобучен, то в переменную записывается старое название Интента.</li></ol></td><td>каждый раз при прохождении этого же или другого подслота intent</td><td>Возможно</td></tr><tr><td>nlu_result</td><td>В переменной хранится информация о топ-5 распознанных интентов в порядке убывания конфиденса</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td><p>json-объект;может содержать разное количество пар ключ-значение:</p><ol><li>5 пар — если Слот NLU имеет 5 или более Подслотов intent;</li><li>2-4 пары — если Слот NLU имеет от 2 до 4 Подслотов intent (количество пар будет соответствовать количеству Подслотов intent);</li><li>1 пару — если Реплика Собеседника является точным совпадением Обучающая фраза одного из Интентов</li></ol></td><td>[{'intent_name': 'size', 'confidence': 0.9993743300437927}, {'intent_name': 'product_in_stock', 'confidence': 0.00019508253899402916}, {'intent_name': 'model_price', 'confidence': 0.00012844608863815665}, {'intent_name': 'address', 'confidence': 0.00010525238758418709}]</td><td>при прохождении Слота NLU  </td><td>поле Name распознанных Интентов или Интента и ихconfidence</td><td>каждый раз при прохождении этого же или другого Слота NLU  </td><td>Возможно</td></tr><tr><td>platform_chat_id</td><td>"Промежуточная версия” идентификатора Чата, предназначенная для  сопоставления старых идентификаторов чатов с новыми идентификаторами</td><td>нет</td><td>Служебная переменная, пока не используется</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>40 символов: латинские буквы и цифры</td><td>1fab819e20c1e939ed14d7024d17653fb07a77dd</td><td>при создании нового Чата</td><td>Генерируется системой</td><td>нет</td><td>Невозможно</td></tr><tr><td>chat_language</td><td>В переменной хранится распознанный язык</td><td>нет</td><td>в Сценарий агента  по желанию ДД</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>строка</td><td>Russian</td><td>при прохождении слота Language</td><td>Генерируется системой</td><td>каждый раз при прохождении этого же или другого Слота Language</td><td>Невозможно</td></tr><tr><td>channel_raw_response</td><td>json-объект, запрос, который отправляет Конечный канал  в ответ на перевод на оператора/группу операторов</td><td>нет</td><td>при переходе по Сценарий агента после слота Change Chat Mode</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>json-объект, состоящий из ключа code и объекта body</td><td><pre><code>{    "code": 200,    "body": {        "result": "ok"    }}
</code></pre></td><td>при прохождении слота Change Chat Mode</td><td>Конечный канал, к которому обращается Change Chat Mode</td><td>каждый раз при прохождении этого же или другого Слота Change Chat Mode</td><td>Невозможно</td></tr><tr><td>repeat_index</td><td>переменная используется для отражения номера текущей итерации цикла, нумерация итераций начинается с 0</td><td>нет</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>Невозможно</td></tr><tr><td>email_status</td><td>Результ отправки письма</td><td>нет</td><td>движение Агента по Сценарий агента</td><td>Нет</td><td>Да, когда присутствует в контексте</td><td>json-объект, состоящий из ключа task_id или error</td><td>{ "task_id": &#x3C;идентификатор задачи> }</td><td>При прохождении слота Email</td><td></td><td>Каждый раз при следующем прохождении этого же или другого слота Email</td><td>Невозможно</td></tr></tbody></table>

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chatme-ai-4.gitbook.io/docs/sostoyanie-obsheniya-tochka-v-scenarii-agenta-v-kotoroi-agent-nakhoditsya-v-tekushii-moment.-sostoya/sistemnye-kontekstnye-peremennye.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
