Cluster · разработчикам
app.config
Чтение собственной конфигурации и объявление её полей.
Все методы SDK · Типы и ошибки
Получение объекта
value = await app.config.get("title", "Notes")__init__
Создаёт Config. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.
def __init__(app: App) -> None: ...Аргументы
app: App, обязательный. Переданный ядром объект app. Второй App в модуле создавать не нужно.
Результат
None. Создаёт Config. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
# Обычный способ получения объекта:
value = await app.config.get("title", "Notes")snapshot
Создаёт объект снимка конфигурации без обращения к ядру.
def snapshot() -> ConfigView: ...Аргументы
Нет.
Результат
ConfigView. Создаёт объект снимка конфигурации без обращения к ядру.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
result = app.config.snapshot()field
Создаёт описание одного поля заданного типа.
def field(kind: str, **options: JSON) -> Field: ...Аргументы
kind: str, обязательный. Тип string, secret, integer, number, boolean, chat, user, file, select, list или json.options: JSON, произвольные именованные аргументы. Поля: label: str | dict[str, str], default: JSON, required: bool, min/max: float, choices: list[str | int | bool], items: str, when: {field: str, equals: JSON}. Для list значение items: string, integer, number, boolean, chat или user; исходно string. Это имя типа элемента, не вложенная схема. Проверка build() обязательна.
Результат
Field. Создаёт описание одного поля заданного типа.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
result = app.config.field("integer", default=1)fields
Создаёт упорядоченный набор полей конфигурации.
def fields() -> Fields: ...Аргументы
Нет.
Результат
Fields. Создаёт упорядоченный набор полей конфигурации.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
result = app.config.fields()get
Читает конфигурацию и возвращает значение одного ключа либо default.
async def get(key: str, default: JSON = None) -> JSON: ...Аргументы
key: str, обязательный. Непустой ключ записи либо постоянный ключ кнопки в указанном объекте.default: JSON, по умолчаниюNone. Возвращаемое или исходное значение при отсутствии данных. Объекты JSON копируются.
Результат
JSON. Читает конфигурацию и возвращает значение одного ключа либо default.
Права
Нужны config.read.
Ошибки
- Ошибки ядра: AccessDenied при нехватке прав или выходе за ограничения, InvalidInput для неверных параметров, InvalidState для недоступного состояния, QuotaExceeded при превышении лимита, Unavailable при недоступной службе. Остальные коды представлены SDKError; см. TYPES.md. Ошибка канала связи вызывает RuntimeError. Действие с неизвестным результатом нельзя автоматически считать невыполненным.
Пример
result = await app.config.get("count")all
Возвращает доступные значения всей конфигурации своего экземпляра.
async def all() -> dict[str, JSON]: ...Аргументы
Нет.
Результат
dict[str, JSON]. Возвращает доступные значения всей конфигурации своего экземпляра.
Права
Нужны config.read.
Ошибки
- Ошибки ядра: AccessDenied при нехватке прав или выходе за ограничения, InvalidInput для неверных параметров, InvalidState для недоступного состояния, QuotaExceeded при превышении лимита, Unavailable при недоступной службе. Остальные коды представлены SDKError; см. TYPES.md. Ошибка канала связи вызывает RuntimeError. Действие с неизвестным результатом нельзя автоматически считать невыполненным.
Пример
result = await app.config.all()