# General Translation Python SDKs: msg URL: https://generaltranslation.com/ru/docs/python/reference/functions/msg.mdx --- title: msg description: Регистрирует сообщение вместе с параметрами перевода как закодированную строку в General Translation Python. Справочник API для msg. --- Регистрирует сообщение вместе с параметрами перевода и возвращает закодированную строку, которую позже можно декодировать. Используйте это, когда сообщение создаётся в одном месте, а обрабатывается в другом. ## Обзор [#overview] Вызовите `msg`, передав исходную строку и любые переменные или зарезервированные параметры. Без именованных аргументов функция возвращает сообщение без изменений. С параметрами она возвращает закодированную строку `{interpolated}:{base64options}`, которую могут читать [`m_fallback`](/docs/python/reference/functions/m-fallback), [`decode_msg`](/docs/python/reference/functions/decode-msg) и [`decode_options`](/docs/python/reference/functions/decode-options). ```python from gt_i18n import msg msg("Save", _context="button") ``` Сигнатура: ```python msg(message: str, **kwargs: object) -> str ``` Импортируйте `msg` из `gt_i18n`. Пакеты фреймворка не экспортируют его повторно. ## Как это работает [#how-it-works] * **Сокращённый вариант без параметров.** Если `kwargs` пуст, функция возвращает `message` без изменений. * **Интерполяция.** Функция интерполирует сообщение с пользовательскими переменными (без зарезервированных ключей), чтобы сформировать человекочитаемый префикс. * **Кодирование.** Функция вычисляет хеш сообщения (или использует переданный `__hash`), затем кодирует в base64 JSON с полезной нагрузкой параметров, включающей все `kwargs`, а также `__source` и `__hash`, и возвращает `"{interpolated}:{encoded}"`. * **Защита от ошибок.** Если интерполяция завершается ошибкой, функция возвращает исходное сообщение. ## Параметры [#parameters] | Параметр | Описание | Тип | Необязательный | По умолчанию | | --------------------- | ------------------------------------------------------------------------------------------- | ------------ | -------------- | ------------ | | [`message`](#message) | Исходная строка в формате ICU MessageFormat. | `str` | Нет | — | | [`kwargs`](#kwargs) | Переменные интерполяции и зарезервированные параметры GT (`_context`, `_id`, `_max_chars`). | keyword args | Да | — | ### `message` [#message] **Тип** `str` · **Обязательно** Исходная строка в формате ICU MessageFormat, которую нужно зарегистрировать. ### `kwargs` [#kwargs] **Тип** именованные аргументы · **Необязательно** Переменные интерполяции и зарезервированные параметры `_context`, `_id` и `_max_chars`, которые включаются в хеш. Все ключи сохраняются в закодированной полезной нагрузке. ## Возвращает [#returns] **Тип** `str` Если параметры не переданы, сообщение возвращается без изменений; в противном случае — как закодированная строка `{interpolated}:{base64options}`. ## Пример [#example] ```python from gt_i18n import msg, decode_msg, decode_options encoded = msg("Hi, {name}!", name="Bob", _id="greet") decode_msg(encoded) # "Hi, Bob!" decode_options(encoded) # {"name": "Bob", "_id": "greet", "__source": "Hi, {name}!", "__hash": "..."} ```