- session.py: новый лог-памп не поднимается, пока предыдущий не завершился (stopping/is_alive), параллельное чтение кольца исключено - __init__: счётчик pending закрывает окно гонки setup/unload последней записи; warning при не-словарном fglair: в YAML - trial: properties_missing — отдельная ошибка формы/abort (en/ru/strings) - ConfigEntryNotReady: «порт 0» больше не показывается - тесты: контраст одинакового явного порта, неблокирующий unload (тикер loop) - план H5: публикация pyfglair именно на PyPI (manylinux x86_64/aarch64)
78 lines
3.5 KiB
JSON
78 lines
3.5 KiB
JSON
{
|
|
"config": {
|
|
"step": {
|
|
"user": {
|
|
"title": "FGLair",
|
|
"menu_options": {
|
|
"cloud": "Вход в облако FGLair",
|
|
"manual": "Ввод параметров вручную",
|
|
"import_json": "Импорт config_*.json"
|
|
}
|
|
},
|
|
"cloud": {
|
|
"title": "Вход в облако FGLair",
|
|
"description": "Нужен однократно для провижинига: получает статический LAN-ключ устройства.",
|
|
"data": {
|
|
"email": "E-mail",
|
|
"password": "Пароль",
|
|
"region": "Регион"
|
|
},
|
|
"data_description": {
|
|
"region": "Регион аккаунта FGLair/Ayla"
|
|
}
|
|
},
|
|
"cloud_device": {
|
|
"title": "Выбор кондиционера",
|
|
"data": {
|
|
"dsn": "Устройство"
|
|
}
|
|
},
|
|
"manual": {
|
|
"title": "Параметры устройства",
|
|
"data": {
|
|
"host": "Хост (IP или DNS-имя)",
|
|
"device_port": "Порт модуля",
|
|
"dsn": "DSN",
|
|
"lanip_key": "LAN IP key",
|
|
"lanip_key_id": "LAN IP key ID",
|
|
"name": "Имя (необязательно)",
|
|
"model": "Модель / oem_model (необязательно)"
|
|
},
|
|
"data_description": {
|
|
"device_port": "По умолчанию 80; меняйте только для проброса портов",
|
|
"lanip_key": "Из облачного discovery или диагностики ESPHome"
|
|
}
|
|
},
|
|
"import_json": {
|
|
"title": "Импорт config_*.json",
|
|
"data": {
|
|
"config_json": "JSON конфигурации"
|
|
},
|
|
"data_description": {
|
|
"config_json": "Вставьте объект JSON, созданный fglair-discover или fglctl"
|
|
}
|
|
}
|
|
},
|
|
"error": {
|
|
"cannot_connect": "Не удалось подключиться к устройству",
|
|
"no_slots": "Оба LAN-слота заняты (приложение FGLair или ESPHome). Освободите один и повторите",
|
|
"key_mismatch": "LAN-ключ не совпадает с устройством; повторите discovery или импортируйте config заново",
|
|
"timeout": "Устройство не вышло на связь за отведённое время",
|
|
"invalid_auth": "Неверный e-mail или пароль",
|
|
"invalid_import": "Некорректный config JSON",
|
|
"no_devices": "В аккаунте не найдено устройств",
|
|
"unknown": "Неожиданная ошибка",
|
|
"properties_missing": "Устройство подключилось, но не отдало базовые свойства"
|
|
},
|
|
"abort": {
|
|
"already_configured": "Устройство уже настроено",
|
|
"invalid_import": "Некорректный config JSON",
|
|
"cannot_connect": "Не удалось подключиться к устройству",
|
|
"no_slots": "Оба LAN-слота заняты",
|
|
"key_mismatch": "LAN-ключ не совпадает с устройством",
|
|
"timeout": "Устройство не вышло на связь за отведённое время",
|
|
"properties_missing": "Устройство подключилось, но не отдало базовые свойства"
|
|
}
|
|
}
|
|
}
|