mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-04-20 22:13:48 +00:00
1263 lines
No EOL
88 KiB
Text
1263 lines
No EOL
88 KiB
Text
{
|
||
"channels_channelDeleteFailed": "Не удалось удалить канал {name}.",
|
||
"@channels_channelDeleteFailed": {
|
||
"placeholders": {
|
||
"name": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@@locale": "ru",
|
||
"appTitle": "MeshCore Open",
|
||
"nav_contacts": "Контакты",
|
||
"nav_channels": "Каналы",
|
||
"nav_map": "Карта",
|
||
"common_cancel": "Отмена",
|
||
"common_ok": "OK",
|
||
"common_connect": "Коннект",
|
||
"common_unknownDevice": "Неизвестное устройство",
|
||
"common_save": "Сохранить",
|
||
"common_delete": "Удалить",
|
||
"common_close": "Закрыть",
|
||
"common_edit": "Изменить",
|
||
"common_add": "Добавить",
|
||
"common_settings": "Настройки",
|
||
"common_disconnect": "Отключить",
|
||
"common_connected": "Подключено",
|
||
"common_disconnected": "Отключено",
|
||
"common_create": "Создать",
|
||
"common_continue": "Продолжить",
|
||
"common_share": "Поделиться",
|
||
"common_copy": "Копировать",
|
||
"common_retry": "Повторить",
|
||
"common_hide": "Скрыть",
|
||
"common_remove": "Убрать",
|
||
"common_enable": "Включить",
|
||
"common_disable": "Выключить",
|
||
"common_reboot": "Перезагрузить",
|
||
"common_loading": "Загрузка...",
|
||
"common_notAvailable": "—",
|
||
"common_voltageValue": "{volts} В",
|
||
"common_percentValue": "{percent}%",
|
||
"scanner_title": "MeshCore Open",
|
||
"scanner_scanning": "Поиск устройств...",
|
||
"scanner_connecting": "Подключение...",
|
||
"scanner_disconnecting": "Отключение...",
|
||
"scanner_notConnected": "Не подключено",
|
||
"scanner_connectedTo": "Подключено к {deviceName}",
|
||
"scanner_searchingDevices": "Поиск устройств MeshCore...",
|
||
"scanner_tapToScan": "Нажмите для поиска MeshCore устройств",
|
||
"scanner_connectionFailed": "Подключение не удалось: {error}",
|
||
"scanner_stop": "Стоп",
|
||
"scanner_scan": "Сканирование",
|
||
"device_quickSwitch": "Быстрое переключение",
|
||
"device_meshcore": "MeshCore",
|
||
"settings_title": "Настройки",
|
||
"settings_deviceInfo": "Информация об устройстве",
|
||
"settings_appSettings": "Настройки приложения",
|
||
"settings_appSettingsSubtitle": "Уведомления, сообщения и настройки карты",
|
||
"settings_nodeSettings": "Настройки ноды",
|
||
"settings_nodeName": "Имя ноды",
|
||
"settings_nodeNameNotSet": "Не установлено",
|
||
"settings_nodeNameHint": "Введите имя ноды",
|
||
"settings_nodeNameUpdated": "Имя обновлено",
|
||
"settings_radioSettings": "Настройки радио",
|
||
"settings_radioSettingsSubtitle": "Частота, мощность и коэффициент распространения",
|
||
"settings_radioSettingsUpdated": "Настройки радио обновлены",
|
||
"settings_location": "Позиция",
|
||
"settings_locationSubtitle": "Координаты GPS",
|
||
"settings_locationUpdated": "Позиция и настройки GPS обновлены",
|
||
"settings_locationBothRequired": "Введите широту и долготу.",
|
||
"settings_locationInvalid": "Неверная широта или долгота.",
|
||
"settings_locationGPSEnable": "Включить GPS",
|
||
"settings_locationGPSEnableSubtitle": "Включение GPS для автоматического обновления позиции.",
|
||
"settings_locationIntervalSec": "Интервал для позиционирования GPS (секунды)",
|
||
"settings_locationIntervalInvalid": "Интервал должен составлять не менее 60 секунд и не более 86400 секунд.",
|
||
"settings_latitude": "Широта",
|
||
"settings_longitude": "Долгота",
|
||
"settings_privacyMode": "Режим конфиденциальности",
|
||
"settings_privacyModeSubtitle": "Скрыть имя/позицию в анонсировании",
|
||
"settings_privacyModeToggle": "Включите режим конфиденциальности, чтобы скрыть свое имя и местоположение в анонсировании.",
|
||
"settings_privacyModeEnabled": "Режим конфиденциальности включен",
|
||
"settings_privacyModeDisabled": "Режим конфиденциальности выключен",
|
||
"settings_actions": "Действия",
|
||
"settings_sendAdvertisement": "Отправить анонсирование",
|
||
"settings_sendAdvertisementSubtitle": "Отправить анонсирование о присутствии сейчас",
|
||
"settings_advertisementSent": "Анонсирование отправлено",
|
||
"settings_syncTime": "Синхронизация времени",
|
||
"settings_syncTimeSubtitle": "Синхронизировать время с телефоном",
|
||
"settings_timeSynchronized": "Время синхронизировано",
|
||
"settings_refreshContacts": "Обновить контакты",
|
||
"settings_refreshContactsSubtitle": "Перезагрузить список контактов с устройства",
|
||
"settings_rebootDevice": "Перезагрузить устройство",
|
||
"settings_rebootDeviceSubtitle": "Перезапустить устройство MeshCore",
|
||
"settings_rebootDeviceConfirm": "Вы уверены, что хотите перезагрузить устройство? Вы будете отключены.",
|
||
"settings_debug": "Отладка",
|
||
"settings_bleDebugLog": "Журнал отладки BLE",
|
||
"settings_bleDebugLogSubtitle": "Команды BLE, ответы и сырые данные",
|
||
"settings_appDebugLog": "Журнал отладки приложения",
|
||
"settings_appDebugLogSubtitle": "Сообщения отладки приложения",
|
||
"settings_about": "О программе",
|
||
"settings_aboutVersion": "MeshCore Open v{version}",
|
||
"settings_aboutLegalese": "2026 MeshCore Open Source Project",
|
||
"settings_aboutDescription": "Открытое клиентское приложение на Flutter для устройств MeshCore с LoRa-сетями.",
|
||
"settings_infoName": "Имя",
|
||
"settings_infoId": "ID",
|
||
"settings_infoStatus": "Статус",
|
||
"settings_infoBattery": "Батарея",
|
||
"settings_infoPublicKey": "Публичный ключ",
|
||
"settings_infoContactsCount": "Количество контактов",
|
||
"settings_infoChannelCount": "Количество каналов",
|
||
"settings_presets": "Пресеты",
|
||
"settings_frequency": "Частота (МГц)",
|
||
"settings_frequencyHelper": "300.0 – 2500.0",
|
||
"settings_frequencyInvalid": "Недопустимая частота (300–2500 МГц)",
|
||
"settings_bandwidth": "Полоса пропускания",
|
||
"settings_spreadingFactor": "Коэффициент расширения",
|
||
"settings_codingRate": "Коэффициент кодирования",
|
||
"settings_txPower": "Мощность передачи (дБм)",
|
||
"settings_txPowerHelper": "0 – 22",
|
||
"settings_txPowerInvalid": "Недопустимая мощность передачи (0–22 дБм)",
|
||
"settings_error": "Ошибка: {message}",
|
||
"appSettings_title": "Настройки приложения",
|
||
"appSettings_appearance": "Внешний вид",
|
||
"appSettings_theme": "Тема",
|
||
"appSettings_themeSystem": "Как в системе",
|
||
"appSettings_themeLight": "Светлая",
|
||
"appSettings_themeDark": "Тёмная",
|
||
"appSettings_language": "Язык",
|
||
"appSettings_languageSystem": "Как в системе",
|
||
"appSettings_languageEn": "Английский",
|
||
"appSettings_languageFr": "Французский",
|
||
"appSettings_languageEs": "Испанский",
|
||
"appSettings_languageDe": "Немецкий",
|
||
"appSettings_languagePl": "Польский",
|
||
"appSettings_languageSl": "Словенский",
|
||
"appSettings_languagePt": "Португальский",
|
||
"appSettings_languageIt": "Итальянский",
|
||
"appSettings_languageZh": "Китайский",
|
||
"appSettings_languageSv": "Шведский",
|
||
"appSettings_languageNl": "Нидерландский",
|
||
"appSettings_languageSk": "Словацкий",
|
||
"appSettings_languageBg": "Болгарский",
|
||
"appSettings_languageRu": "Русский",
|
||
"appSettings_notifications": "Уведомления",
|
||
"appSettings_enableNotifications": "Включить уведомления",
|
||
"appSettings_enableNotificationsSubtitle": "Получать уведомления о сообщениях и оповещениях",
|
||
"appSettings_notificationPermissionDenied": "Разрешение на уведомления отклонено",
|
||
"appSettings_notificationsEnabled": "Уведомления включены",
|
||
"appSettings_notificationsDisabled": "Уведомления отключены",
|
||
"appSettings_messageNotifications": "Уведомления о сообщениях",
|
||
"appSettings_messageNotificationsSubtitle": "Показывать уведомление при получении новых сообщений",
|
||
"appSettings_channelMessageNotifications": "Уведомления о сообщениях в каналах",
|
||
"appSettings_channelMessageNotificationsSubtitle": "Показывать уведомление при получении сообщений в каналах",
|
||
"appSettings_advertisementNotifications": "Уведомления об анонсированиях",
|
||
"appSettings_advertisementNotificationsSubtitle": "Показывать уведомление при обнаружении новых нод",
|
||
"appSettings_messaging": "Обмен сообщениями",
|
||
"appSettings_clearPathOnMaxRetry": "Сбросить маршрут после максимального числа попыток",
|
||
"appSettings_clearPathOnMaxRetrySubtitle": "Сбросить маршрут контакта после 5 неудачных попыток отправки",
|
||
"appSettings_pathsWillBeCleared": "Маршруты будут сброшены после 5 неудачных попыток",
|
||
"appSettings_pathsWillNotBeCleared": "Маршруты не будут автоматически сбрасываться",
|
||
"appSettings_autoRouteRotation": "Автоматическое переключение маршрутов",
|
||
"appSettings_autoRouteRotationSubtitle": "Циклически переключаться между лучшими маршрутами и режимом рассылки",
|
||
"appSettings_autoRouteRotationEnabled": "Автоматическое переключение маршрутов включено",
|
||
"appSettings_autoRouteRotationDisabled": "Автоматическое переключение маршрутов отключено",
|
||
"appSettings_battery": "Батарея",
|
||
"appSettings_batteryChemistry": "Химия батареи",
|
||
"appSettings_batteryChemistryPerDevice": "Установить для устройства ({deviceName})",
|
||
"appSettings_batteryChemistryConnectFirst": "Подключитесь к устройству, чтобы выбрать",
|
||
"appSettings_batteryNmc": "18650 NMC (3.0–4.2 В)",
|
||
"appSettings_batteryLifepo4": "LiFePO4 (2.6–3.65 В)",
|
||
"appSettings_batteryLipo": "LiPo (3.0–4.2 В)",
|
||
"appSettings_mapDisplay": "Отображение карты",
|
||
"appSettings_showRepeaters": "Показывать репитеры",
|
||
"appSettings_showRepeatersSubtitle": "Отображать репитеры на карте",
|
||
"appSettings_showChatNodes": "Показывать чат-ноды",
|
||
"appSettings_showChatNodesSubtitle": "Отображать чат-ноды на карте",
|
||
"appSettings_showOtherNodes": "Показывать другие ноды",
|
||
"appSettings_showOtherNodesSubtitle": "Отображать другие типы нод на карте",
|
||
"appSettings_timeFilter": "Фильтр по времени",
|
||
"appSettings_timeFilterShowAll": "Показывать все ноды",
|
||
"appSettings_timeFilterShowLast": "Показывать ноды за последние {hours} ч",
|
||
"appSettings_mapTimeFilter": "Временной фильтр карты",
|
||
"appSettings_showNodesDiscoveredWithin": "Показывать ноды, обнаруженные за:",
|
||
"appSettings_allTime": "Всё время",
|
||
"appSettings_lastHour": "Последний час",
|
||
"appSettings_last6Hours": "Последние 6 часов",
|
||
"appSettings_last24Hours": "Последние 24 часа",
|
||
"appSettings_lastWeek": "Последнюю неделю",
|
||
"appSettings_offlineMapCache": "Кэш офлайн-карты",
|
||
"appSettings_noAreaSelected": "Область не выбрана",
|
||
"appSettings_areaSelectedZoom": "Область выбрана (масштаб {minZoom}–{maxZoom})",
|
||
"appSettings_debugCard": "Отладка",
|
||
"appSettings_appDebugLogging": "Журнал отладки приложения",
|
||
"appSettings_appDebugLoggingSubtitle": "Записывать отладочные сообщения приложения для диагностики",
|
||
"appSettings_appDebugLoggingEnabled": "Журнал отладки приложения включён",
|
||
"appSettings_appDebugLoggingDisabled": "Журнал отладки приложения отключён",
|
||
"contacts_title": "Контакты",
|
||
"contacts_noContacts": "Контактов пока нет",
|
||
"contacts_contactsWillAppear": "Контакты появятся, когда устройства начнут рассылать оповещения",
|
||
"contacts_searchContacts": "Поиск контактов...",
|
||
"contacts_noUnreadContacts": "Нет непрочитанных контактов",
|
||
"contacts_noContactsFound": "Контакты или группы не найдены",
|
||
"contacts_deleteContact": "Удалить контакт",
|
||
"contacts_removeConfirm": "Удалить {contactName} из контактов?",
|
||
"contacts_manageRepeater": "Управление репитером",
|
||
"contacts_manageRoom": "Управление сервером комнат",
|
||
"contacts_roomLogin": "Вход на сервер комнат",
|
||
"contacts_openChat": "Открыть чат",
|
||
"contacts_editGroup": "Изменить группу",
|
||
"contacts_deleteGroup": "Удалить группу",
|
||
"contacts_deleteGroupConfirm": "Удалить \"{groupName}\"?",
|
||
"contacts_newGroup": "Новая группа",
|
||
"contacts_groupName": "Имя группы",
|
||
"contacts_groupNameRequired": "Имя группы обязательно",
|
||
"contacts_groupNameReserved": "Это имя группы зарезервировано",
|
||
"contacts_groupAlreadyExists": "Группа \"{name}\" уже существует",
|
||
"contacts_filterContacts": "Фильтр контактов...",
|
||
"contacts_noContactsMatchFilter": "Нет контактов, соответствующих фильтру",
|
||
"contacts_noMembers": "Нет участников",
|
||
"contacts_lastSeenNow": "Видели только что",
|
||
"contacts_lastSeenMinsAgo": "Видели {minutes} мин назад",
|
||
"contacts_lastSeenHourAgo": "Видели 1 час назад",
|
||
"contacts_lastSeenHoursAgo": "Видели {hours} ч назад",
|
||
"contacts_lastSeenDayAgo": "Видели 1 день назад",
|
||
"contacts_lastSeenDaysAgo": "Видели {days} дн. назад",
|
||
"channels_title": "Каналы",
|
||
"channels_noChannelsConfigured": "Каналы не настроены",
|
||
"channels_addPublicChannel": "Добавить публичный канал",
|
||
"channels_searchChannels": "Поиск каналов...",
|
||
"channels_noChannelsFound": "Каналы не найдены",
|
||
"channels_channelIndex": "Канал {index}",
|
||
"channels_hashtagChannel": "Хэштег-канал",
|
||
"channels_public": "Публичный",
|
||
"channels_private": "Приватный",
|
||
"channels_publicChannel": "Публичный канал",
|
||
"channels_privateChannel": "Приватный канал",
|
||
"channels_editChannel": "Изменить канал",
|
||
"channels_muteChannel": "Отключить уведомления канала",
|
||
"channels_unmuteChannel": "Включить уведомления канала",
|
||
"channels_deleteChannel": "Удалить канал",
|
||
"channels_deleteChannelConfirm": "Удалить \"{name}\"? Это действие нельзя отменить.",
|
||
"channels_channelDeleted": "Канал \"{name}\" удалён",
|
||
"channels_addChannel": "Добавить канал",
|
||
"channels_channelIndexLabel": "Индекс канала",
|
||
"channels_channelName": "Имя канала",
|
||
"channels_usePublicChannel": "Использовать публичный канал",
|
||
"channels_standardPublicPsk": "Стандартный публичный PSK",
|
||
"channels_pskHex": "PSK (Hex)",
|
||
"channels_generateRandomPsk": "Сгенерировать случайный PSK",
|
||
"channels_enterChannelName": "Введите имя канала",
|
||
"channels_pskMustBe32Hex": "PSK должен содержать 32 шестнадцатеричных символа",
|
||
"channels_channelAdded": "Канал \"{name}\" добавлен",
|
||
"channels_editChannelTitle": "Изменить канал {index}",
|
||
"channels_smazCompression": "Сжатие SMAZ",
|
||
"channels_channelUpdated": "Канал \"{name}\" обновлён",
|
||
"channels_publicChannelAdded": "Публичный канал добавлен",
|
||
"channels_sortBy": "Сортировка",
|
||
"channels_sortManual": "Вручную",
|
||
"channels_sortAZ": "По алфавиту",
|
||
"channels_sortLatestMessages": "По последним сообщениям",
|
||
"channels_sortUnread": "По непрочитанным",
|
||
"channels_createPrivateChannel": "Создать приватный канал",
|
||
"channels_createPrivateChannelDesc": "Защищён секретным ключом.",
|
||
"channels_joinPrivateChannel": "Присоединиться к приватному каналу",
|
||
"channels_joinPrivateChannelDesc": "Введите секретный ключ вручную.",
|
||
"channels_joinPublicChannel": "Присоединиться к публичному каналу",
|
||
"channels_joinPublicChannelDesc": "К этому каналу может присоединиться любой.",
|
||
"channels_joinHashtagChannel": "Присоединиться к хэштег-каналу",
|
||
"channels_joinHashtagChannelDesc": "К хэштег-каналам может присоединиться любой.",
|
||
"channels_scanQrCode": "Сканировать QR-код",
|
||
"channels_scanQrCodeComingSoon": "Скоро будет",
|
||
"channels_enterHashtag": "Введите хэштег",
|
||
"channels_hashtagHint": "например, #команда",
|
||
"chat_noMessages": "Сообщений пока нет",
|
||
"chat_sendMessageToStart": "Отправьте сообщение, чтобы начать",
|
||
"chat_originalMessageNotFound": "Исходное сообщение не найдено",
|
||
"chat_replyingTo": "Ответ для {name}",
|
||
"chat_replyTo": "Ответить {name}",
|
||
"chat_location": "Местоположение",
|
||
"chat_sendMessageTo": "Отправить сообщение {contactName}",
|
||
"chat_typeMessage": "Напишите сообщение...",
|
||
"chat_messageTooLong": "Сообщение слишком длинное (макс. {maxBytes} байт).",
|
||
"chat_messageCopied": "Сообщение скопировано",
|
||
"chat_messageDeleted": "Сообщение удалено",
|
||
"chat_retryingMessage": "Повтор отправки сообщения",
|
||
"chat_retryCount": "Попытка {current}/{max}",
|
||
"chat_sendGif": "Отправить GIF",
|
||
"chat_reply": "Ответить",
|
||
"chat_addReaction": "Добавить реакцию",
|
||
"chat_me": "Я",
|
||
"emojiCategorySmileys": "Смайлы",
|
||
"emojiCategoryGestures": "Жесты",
|
||
"emojiCategoryHearts": "Сердечки",
|
||
"emojiCategoryObjects": "Предметы",
|
||
"gifPicker_title": "Выберите GIF",
|
||
"gifPicker_searchHint": "Поиск GIF...",
|
||
"gifPicker_poweredBy": "Работает на GIPHY",
|
||
"gifPicker_noGifsFound": "GIF не найдены",
|
||
"gifPicker_failedLoad": "Не удалось загрузить GIF",
|
||
"gifPicker_failedSearch": "Не удалось выполнить поиск GIF",
|
||
"gifPicker_noInternet": "Нет подключения к интернету",
|
||
"debugLog_appTitle": "Журнал отладки приложения",
|
||
"debugLog_bleTitle": "Журнал отладки BLE",
|
||
"debugLog_copyLog": "Копировать журнал",
|
||
"debugLog_clearLog": "Очистить журнал",
|
||
"debugLog_copied": "Журнал отладки скопирован",
|
||
"debugLog_bleCopied": "Журнал BLE скопирован",
|
||
"debugLog_noEntries": "Журнал отладки пока пуст",
|
||
"debugLog_enableInSettings": "Включите запись журнала отладки в настройках",
|
||
"debugLog_frames": "Фреймы",
|
||
"debugLog_rawLogRx": "Сырой журнал приёма",
|
||
"debugLog_noBleActivity": "Активность BLE пока отсутствует",
|
||
"debugFrame_length": "Длина фрейма: {count} байт",
|
||
"debugFrame_command": "Команда: 0x{value}",
|
||
"debugFrame_textMessageHeader": "Фрейм текстового сообщения:",
|
||
"debugFrame_destinationPubKey": "- Публичный ключ получателя: {pubKey}",
|
||
"debugFrame_timestamp": "- Временная метка: {timestamp}",
|
||
"debugFrame_flags": "- Флаги: 0x{value}",
|
||
"debugFrame_textType": "- Тип текста: {type} ({label})",
|
||
"debugFrame_textTypeCli": "CLI",
|
||
"debugFrame_textTypePlain": "Обычный",
|
||
"debugFrame_text": "- Текст: \"{text}\"",
|
||
"debugFrame_hexDump": "Шестнадцатеричный дамп:",
|
||
"chat_pathManagement": "Управление маршрутами",
|
||
"chat_routingMode": "Режим маршрутизации",
|
||
"chat_autoUseSavedPath": "Авто (использовать сохранённый маршрут)",
|
||
"chat_forceFloodMode": "Принудительный режим рассылки",
|
||
"chat_recentAckPaths": "Недавние подтверждённые маршруты (нажмите, чтобы использовать):",
|
||
"chat_pathHistoryFull": "История маршрутов заполнена. Удалите записи, чтобы добавить новые.",
|
||
"chat_hopSingular": "хоп",
|
||
"chat_hopPlural": "хопов",
|
||
"chat_hopsCount": "{count} {count, plural, one{хоп} few{хопа} many{хопов} other{хопов}}",
|
||
"chat_successes": "успешно",
|
||
"chat_removePath": "Удалить маршрут",
|
||
"chat_noPathHistoryYet": "История маршрутов пока пуста.\nОтправьте сообщение, чтобы обнаружить маршруты.",
|
||
"chat_pathActions": "Действия с маршрутом:",
|
||
"chat_setCustomPath": "Указать маршрут вручную",
|
||
"chat_setCustomPathSubtitle": "Вручную задать маршрут передачи",
|
||
"chat_clearPath": "Очистить маршрут",
|
||
"chat_clearPathSubtitle": "Принудительно обновить маршрут при следующей отправке",
|
||
"chat_pathCleared": "Маршрут очищен. Следующее сообщение обновит маршрут.",
|
||
"chat_floodModeSubtitle": "Используйте переключатель маршрутизации в панели приложения",
|
||
"chat_floodModeEnabled": "Режим рассылки включён. Отключите через значок маршрутизации в панели приложения.",
|
||
"chat_fullPath": "Полный маршрут",
|
||
"chat_pathDetailsNotAvailable": "Детали маршрута ещё недоступны. Попробуйте отправить сообщение для обновления.",
|
||
"chat_pathSetHops": "Маршрут установлен: {hopCount} {hopCount, plural, one{хоп} few{хопа} many{хопов} other{хопов}} — {status}",
|
||
"chat_pathSavedLocally": "Сохранено локально. Подключитесь для синхронизации.",
|
||
"chat_pathDeviceConfirmed": "Подтверждено устройством.",
|
||
"chat_pathDeviceNotConfirmed": "Ещё не подтверждено устройством.",
|
||
"chat_type": "Тип",
|
||
"chat_path": "Маршрут",
|
||
"chat_publicKey": "Публичный ключ",
|
||
"chat_compressOutgoingMessages": "Сжимать исходящие сообщения",
|
||
"chat_floodForced": "Рассылка (принудительно)",
|
||
"chat_directForced": "Прямой (принудительно)",
|
||
"chat_hopsForced": "{count} хоп(ов) (принудительно)",
|
||
"chat_floodAuto": "Рассылка (авто)",
|
||
"chat_direct": "Прямой",
|
||
"chat_poiShared": "Точка интереса отправлена",
|
||
"chat_unread": "Непрочитанных: {count}",
|
||
"map_title": "Карта нод",
|
||
"map_noNodesWithLocation": "Нет нод с данными о местоположении",
|
||
"map_nodesNeedGps": "Ноды должны передавать свои GPS-координаты, чтобы отображаться на карте",
|
||
"map_nodesCount": "Нод: {count}",
|
||
"map_pinsCount": "Меток: {count}",
|
||
"map_chat": "Чат",
|
||
"map_repeater": "Репитер",
|
||
"map_room": "Комната",
|
||
"map_sensor": "Сенсор",
|
||
"map_pinDm": "Метка (ЛС)",
|
||
"map_pinPrivate": "Метка (Приватная)",
|
||
"map_pinPublic": "Метка (Публичная)",
|
||
"map_lastSeen": "Последнее появление",
|
||
"map_disconnectConfirm": "Вы уверены, что хотите отключиться от этого устройства?",
|
||
"map_from": "От",
|
||
"map_source": "Источник",
|
||
"map_flags": "Флаги",
|
||
"map_shareMarkerHere": "Поделиться меткой здесь",
|
||
"map_pinLabel": "Метка",
|
||
"map_label": "Подпись",
|
||
"map_pointOfInterest": "Точка интереса",
|
||
"map_sendToContact": "Отправить контакту",
|
||
"map_sendToChannel": "Отправить в канал",
|
||
"map_noChannelsAvailable": "Нет доступных каналов",
|
||
"map_publicLocationShare": "Публичная передача местоположения",
|
||
"map_publicLocationShareConfirm": "Вы собираетесь поделиться местоположением в {channelLabel}. Этот канал публичный, и любой, у кого есть PSK, сможет его увидеть.",
|
||
"map_connectToShareMarkers": "Подключитесь к устройству, чтобы делиться метками",
|
||
"map_filterNodes": "Фильтр нод",
|
||
"map_nodeTypes": "Типы нод",
|
||
"map_chatNodes": "Чат-ноды",
|
||
"map_repeaters": "Репитеры",
|
||
"map_otherNodes": "Другие ноды",
|
||
"map_keyPrefix": "Префикс ключа",
|
||
"map_filterByKeyPrefix": "Фильтр по префиксу ключа",
|
||
"map_publicKeyPrefix": "Префикс публичного ключа",
|
||
"map_markers": "Метки",
|
||
"map_showSharedMarkers": "Показывать общие метки",
|
||
"map_lastSeenTime": "Время последнего появления",
|
||
"map_sharedPin": "Общая метка",
|
||
"map_joinRoom": "Присоединиться к комнате",
|
||
"map_manageRepeater": "Управление репитером",
|
||
"mapCache_title": "Кэш офлайн-карты",
|
||
"mapCache_selectAreaFirst": "Сначала выберите область для кэширования",
|
||
"mapCache_noTilesToDownload": "Нет плиток для загрузки в этой области",
|
||
"mapCache_downloadTilesTitle": "Загрузить плитки",
|
||
"mapCache_downloadTilesPrompt": "Загрузить {count} плиток для офлайн-использования?",
|
||
"mapCache_downloadAction": "Загрузить",
|
||
"mapCache_cachedTiles": "Закэшировано {count} плиток",
|
||
"mapCache_cachedTilesWithFailed": "Закэшировано {downloaded} плиток ({failed} не загружено)",
|
||
"mapCache_clearOfflineCacheTitle": "Очистить офлайн-кэш",
|
||
"mapCache_clearOfflineCachePrompt": "Удалить все закэшированные плитки карты?",
|
||
"mapCache_offlineCacheCleared": "Офлайн-кэш очищен",
|
||
"mapCache_noAreaSelected": "Область не выбрана",
|
||
"mapCache_cacheArea": "Область кэширования",
|
||
"mapCache_useCurrentView": "Использовать текущий вид",
|
||
"mapCache_zoomRange": "Диапазон масштаба",
|
||
"mapCache_estimatedTiles": "Оценочное количество плиток: {count}",
|
||
"mapCache_downloadedTiles": "Загружено {completed} из {total}",
|
||
"mapCache_downloadTilesButton": "Загрузить плитки",
|
||
"mapCache_clearCacheButton": "Очистить кэш",
|
||
"mapCache_failedDownloads": "Неудачных загрузок: {count}",
|
||
"mapCache_boundsLabel": "С {north}, Ю {south}, В {east}, З {west}",
|
||
"time_justNow": "Только что",
|
||
"time_minutesAgo": "{minutes} мин назад",
|
||
"time_hoursAgo": "{hours} ч назад",
|
||
"time_daysAgo": "{days} дн. назад",
|
||
"time_hour": "час",
|
||
"time_hours": "часов",
|
||
"time_day": "день",
|
||
"time_days": "дней",
|
||
"time_week": "неделя",
|
||
"time_weeks": "недель",
|
||
"time_month": "месяц",
|
||
"time_months": "месяцев",
|
||
"time_minutes": "минут",
|
||
"time_allTime": "Всё время",
|
||
"dialog_disconnect": "Отключиться",
|
||
"dialog_disconnectConfirm": "Вы уверены, что хотите отключиться от этого устройства?",
|
||
"login_repeaterLogin": "Вход в репитер",
|
||
"login_roomLogin": "Вход на сервер комнат",
|
||
"login_password": "Пароль",
|
||
"login_enterPassword": "Введите пароль",
|
||
"login_savePassword": "Сохранить пароль",
|
||
"login_savePasswordSubtitle": "Пароль будет надёжно сохранён на этом устройстве",
|
||
"login_repeaterDescription": "Введите пароль репитера для доступа к настройкам и статусу.",
|
||
"login_roomDescription": "Введите пароль комнаты для доступа к настройкам и статусу.",
|
||
"login_routing": "Маршрутизация",
|
||
"login_routingMode": "Режим маршрутизации",
|
||
"login_autoUseSavedPath": "Авто (использовать сохранённый маршрут)",
|
||
"login_forceFloodMode": "Принудительный режим рассылки",
|
||
"login_managePaths": "Управление маршрутами",
|
||
"login_login": "Войти",
|
||
"login_attempt": "Попытка {current}/{max}",
|
||
"login_failed": "Ошибка входа: {error}",
|
||
"login_failedMessage": "Не удалось войти. Либо пароль неверен, либо репитер недоступен.",
|
||
"common_reload": "Обновить",
|
||
"common_clear": "Очистить",
|
||
"path_currentPath": "Текущий маршрут: {path}",
|
||
"path_usingHopsPath": "Используется маршрут из {count} {count, plural, one{хоп} few{хопа} many{хопов} other{хопов}}",
|
||
"path_enterCustomPath": "Введите маршрут вручную",
|
||
"path_currentPathLabel": "Текущий маршрут",
|
||
"path_hexPrefixInstructions": "Введите 2-символьные шестнадцатеричные префиксы для каждого хопа, разделённые запятыми.",
|
||
"path_hexPrefixExample": "Пример: A1,F2,3C (каждый узел использует первый байт своего публичного ключа)",
|
||
"path_labelHexPrefixes": "Маршрут (шестнадцатеричные префиксы)",
|
||
"path_helperMaxHops": "Максимум 64 хопа. Каждый префикс — 2 шестнадцатеричных символа (1 байт)",
|
||
"path_selectFromContacts": "Или выберите из контактов:",
|
||
"path_noRepeatersFound": "Репитеры или серверы комнат не найдены.",
|
||
"path_customPathsRequire": "Пользовательские маршруты требуют промежуточных узлов, способных ретранслировать сообщения.",
|
||
"path_invalidHexPrefixes": "Недопустимые шестнадцатеричные префиксы: {prefixes}",
|
||
"path_tooLong": "Маршрут слишком длинный. Максимум 64 хопа.",
|
||
"path_setPath": "Установить маршрут",
|
||
"repeater_management": "Управление репитером",
|
||
"room_management": "Управление сервером комнат",
|
||
"repeater_managementTools": "Инструменты управления",
|
||
"repeater_status": "Статус",
|
||
"repeater_statusSubtitle": "Просмотр статуса, статистики и соседей репитера",
|
||
"repeater_telemetry": "Телеметрия",
|
||
"repeater_telemetrySubtitle": "Просмотр телеметрии датчиков и системной статистики",
|
||
"repeater_cli": "CLI",
|
||
"repeater_cliSubtitle": "Отправка команд репитеру",
|
||
"repeater_neighbors": "Соседи",
|
||
"repeater_neighborsSubtitle": "Просмотр соседей на нулевом хопе.",
|
||
"repeater_settings": "Настройки",
|
||
"repeater_settingsSubtitle": "Настройка параметров репитера",
|
||
"repeater_statusTitle": "Статус репитера",
|
||
"repeater_routingMode": "Режим маршрутизации",
|
||
"repeater_autoUseSavedPath": "Авто (использовать сохранённый маршрут)",
|
||
"repeater_forceFloodMode": "Принудительный режим рассылки",
|
||
"repeater_pathManagement": "Управление маршрутами",
|
||
"repeater_refresh": "Обновить",
|
||
"repeater_statusRequestTimeout": "Время ожидания статуса истекло.",
|
||
"repeater_errorLoadingStatus": "Ошибка загрузки статуса: {error}",
|
||
"repeater_systemInformation": "Системная информация",
|
||
"repeater_battery": "Батарея",
|
||
"repeater_clockAtLogin": "Время (при входе)",
|
||
"repeater_uptime": "Время работы",
|
||
"repeater_queueLength": "Длина очереди",
|
||
"repeater_debugFlags": "Флаги отладки",
|
||
"repeater_radioStatistics": "Радиостатистика",
|
||
"repeater_lastRssi": "Последний RSSI",
|
||
"repeater_lastSnr": "Последний SNR",
|
||
"repeater_noiseFloor": "Уровень шума",
|
||
"repeater_txAirtime": "Время эфира (передача)",
|
||
"repeater_rxAirtime": "Время эфира (приём)",
|
||
"repeater_packetStatistics": "Статистика пакетов",
|
||
"repeater_sent": "Отправлено",
|
||
"repeater_received": "Получено",
|
||
"repeater_duplicates": "Дубликаты",
|
||
"repeater_daysHoursMinsSecs": "{days} дн. {hours}ч {minutes}м {seconds}с",
|
||
"repeater_packetTxTotal": "Всего: {total}, Рассылка: {flood}, Прямые: {direct}",
|
||
"repeater_packetRxTotal": "Всего: {total}, Рассылка: {flood}, Прямые: {direct}",
|
||
"repeater_duplicatesFloodDirect": "Рассылка: {flood}, Прямые: {direct}",
|
||
"repeater_duplicatesTotal": "Всего: {total}",
|
||
"repeater_settingsTitle": "Настройки репитера",
|
||
"repeater_basicSettings": "Основные настройки",
|
||
"repeater_repeaterName": "Имя репитера",
|
||
"repeater_repeaterNameHelper": "Отображаемое имя этого репитера",
|
||
"repeater_adminPassword": "Пароль администратора",
|
||
"repeater_adminPasswordHelper": "Пароль с полным доступом",
|
||
"repeater_guestPassword": "Гостевой пароль",
|
||
"repeater_guestPasswordHelper": "Пароль для доступа только для чтения",
|
||
"repeater_radioSettings": "Настройки радио",
|
||
"repeater_frequencyMhz": "Частота (МГц)",
|
||
"repeater_frequencyHelper": "300–2500 МГц",
|
||
"repeater_txPower": "Мощность передачи",
|
||
"repeater_txPowerHelper": "1–30 дБм",
|
||
"repeater_bandwidth": "Полоса пропускания",
|
||
"repeater_spreadingFactor": "Коэффициент расширения",
|
||
"repeater_codingRate": "Коэффициент кодирования",
|
||
"repeater_locationSettings": "Настройки местоположения",
|
||
"repeater_latitude": "Широта",
|
||
"repeater_latitudeHelper": "В десятичных градусах (напр., 37.7749)",
|
||
"repeater_longitude": "Долгота",
|
||
"repeater_longitudeHelper": "В десятичных градусах (напр., -122.4194)",
|
||
"repeater_features": "Функции",
|
||
"repeater_packetForwarding": "Пересылка пакетов",
|
||
"repeater_packetForwardingSubtitle": "Разрешить репитеру пересылать пакеты",
|
||
"repeater_guestAccess": "Гостевой доступ",
|
||
"repeater_guestAccessSubtitle": "Разрешить гостевой доступ только для чтения",
|
||
"repeater_privacyMode": "Режим конфиденциальности",
|
||
"repeater_privacyModeSubtitle": "Скрывать имя/местоположение в оповещениях",
|
||
"repeater_advertisementSettings": "Настройки анонсирования",
|
||
"repeater_localAdvertInterval": "Интервал локальных анонсирований",
|
||
"repeater_localAdvertIntervalMinutes": "{minutes} минут",
|
||
"repeater_floodAdvertInterval": "Интервал анонсирований рассылкой (flood)",
|
||
"repeater_floodAdvertIntervalHours": "{hours} часов",
|
||
"repeater_encryptedAdvertInterval": "Интервал зашифрованных анонсирований",
|
||
"repeater_dangerZone": "Опасная зона",
|
||
"repeater_rebootRepeater": "Перезагрузить репитер",
|
||
"repeater_rebootRepeaterSubtitle": "Перезапустить устройство репитера",
|
||
"repeater_rebootRepeaterConfirm": "Вы уверены, что хотите перезагрузить этот репитер?",
|
||
"repeater_regenerateIdentityKey": "Пересоздать ключ идентификации",
|
||
"repeater_regenerateIdentityKeySubtitle": "Сгенерировать новую пару публичного/приватного ключей",
|
||
"repeater_regenerateIdentityKeyConfirm": "Это создаст новую идентичность для репитера. Продолжить?",
|
||
"repeater_eraseFileSystem": "Стереть файловую систему",
|
||
"repeater_eraseFileSystemSubtitle": "Отформатировать файловую систему репитера",
|
||
"repeater_eraseFileSystemConfirm": "ВНИМАНИЕ: это удалит все данные на репитере. Действие нельзя отменить!",
|
||
"repeater_eraseSerialOnly": "Очистка доступна только через последовательную консоль.",
|
||
"repeater_commandSent": "Команда отправлена: {command}",
|
||
"repeater_errorSendingCommand": "Ошибка отправки команды: {error}",
|
||
"repeater_confirm": "Подтвердить",
|
||
"repeater_settingsSaved": "Настройки успешно сохранены",
|
||
"repeater_errorSavingSettings": "Ошибка сохранения настроек: {error}",
|
||
"repeater_refreshBasicSettings": "Обновить основные настройки",
|
||
"repeater_refreshRadioSettings": "Обновить настройки радио",
|
||
"repeater_refreshTxPower": "Обновить мощность передачи",
|
||
"repeater_refreshLocationSettings": "Обновить настройки местоположения",
|
||
"repeater_refreshPacketForwarding": "Обновить пересылку пакетов",
|
||
"repeater_refreshGuestAccess": "Обновить гостевой доступ",
|
||
"repeater_refreshPrivacyMode": "Обновить режим конфиденциальности",
|
||
"repeater_refreshAdvertisementSettings": "Обновить настройки анонсирований",
|
||
"repeater_refreshed": "{label} обновлён",
|
||
"repeater_errorRefreshing": "Ошибка обновления {label}",
|
||
"repeater_cliTitle": "CLI репитера",
|
||
"repeater_debugNextCommand": "Отладка следующей команды",
|
||
"repeater_commandHelp": "Справка по командам",
|
||
"repeater_clearHistory": "Очистить историю",
|
||
"repeater_noCommandsSent": "Команды ещё не отправлялись",
|
||
"repeater_typeCommandOrUseQuick": "Введите команду ниже или используйте быстрые команды",
|
||
"repeater_enterCommandHint": "Введите команду...",
|
||
"repeater_previousCommand": "Предыдущая команда",
|
||
"repeater_nextCommand": "Следующая команда",
|
||
"repeater_enterCommandFirst": "Сначала введите команду",
|
||
"repeater_cliCommandFrameTitle": "Фрейм CLI-команды",
|
||
"repeater_cliCommandError": "Ошибка: {error}",
|
||
"repeater_cliQuickGetName": "Получить имя",
|
||
"repeater_cliQuickGetRadio": "Получить радио",
|
||
"repeater_cliQuickGetTx": "Получить TX",
|
||
"repeater_cliQuickNeighbors": "Соседи",
|
||
"repeater_cliQuickVersion": "Версия",
|
||
"repeater_cliQuickAdvertise": "Анонсировать",
|
||
"repeater_cliQuickClock": "Время",
|
||
"repeater_cliHelpAdvert": "Отправляет пакет анонсирования",
|
||
"repeater_cliHelpReboot": "Перезагружает устройство. (обычно вы получите «Тайм-аут» — это нормально)",
|
||
"repeater_cliHelpClock": "Показывает текущее время по часам устройства.",
|
||
"repeater_cliHelpPassword": "Устанавливает новый пароль администратора для устройства.",
|
||
"repeater_cliHelpVersion": "Показывает версию устройства и дату сборки прошивки.",
|
||
"repeater_cliHelpClearStats": "Сбрасывает различные счётчики статистики в ноль.",
|
||
"repeater_cliHelpSetAf": "Устанавливает коэффициент времени в эфире.",
|
||
"repeater_cliHelpSetTx": "Устанавливает мощность передачи LoRa в дБм. (требуется перезагрузка)",
|
||
"repeater_cliHelpSetRepeat": "Включает или отключает роль репитера для этой ноды.",
|
||
"repeater_cliHelpSetAllowReadOnly": "(Сервер комнат) Если «on», то вход без пароля разрешён, но публиковать в комнату нельзя (только чтение)",
|
||
"repeater_cliHelpSetFloodMax": "Устанавливает максимальное число хопов для входящих пакетов в режиме рассылки (если >= макс., пакет не пересылается)",
|
||
"repeater_cliHelpSetIntThresh": "Устанавливает порог интерференции (в дБ). По умолчанию 14. Установите 0, чтобы отключить обнаружение помех.",
|
||
"repeater_cliHelpSetAgcResetInterval": "Устанавливает интервал сброса автоматической регулировки усиления. Установите 0, чтобы отключить.",
|
||
"repeater_cliHelpSetMultiAcks": "Включает или отключает функцию «двойных ACK».",
|
||
"repeater_cliHelpSetAdvertInterval": "Устанавливает интервал (в минутах) отправки локального (нулевой хоп) анонсирования. Установите 0, чтобы отключить.",
|
||
"repeater_cliHelpSetFloodAdvertInterval": "Устанавливает интервал (в часах) отправки анонсирований рассылкой. Установите 0, чтобы отключить.",
|
||
"repeater_cliHelpSetGuestPassword": "Устанавливает/обновляет гостевой пароль. (для репитеров гости могут отправлять запрос «Get Stats»)",
|
||
"repeater_cliHelpSetName": "Устанавливает имя в оповещениях.",
|
||
"repeater_cliHelpSetLat": "Устанавливает широту для карты в оповещениях. (десятичные градусы)",
|
||
"repeater_cliHelpSetLon": "Устанавливает долготу для карты в оповещениях. (десятичные градусы)",
|
||
"repeater_cliHelpSetRadio": "Устанавливает полностью новые параметры радио и сохраняет их в настройки. Требуется команда «reboot» для применения.",
|
||
"repeater_cliHelpSetRxDelay": "Устанавливает (экспериментально) базовую задержку (>1 для эффекта) для принятых пакетов на основе качества сигнала. Установите 0, чтобы отключить.",
|
||
"repeater_cliHelpSetTxDelay": "Устанавливает множитель времени в эфире для пакета в режиме рассылки и применяет случайную задержку перед пересылкой (чтобы уменьшить коллизии).",
|
||
"repeater_cliHelpSetDirectTxDelay": "То же, что txdelay, но для случайной задержки пересылки пакетов в прямом режиме.",
|
||
"repeater_cliHelpSetBridgeEnabled": "Включить/выключить мост.",
|
||
"repeater_cliHelpSetBridgeDelay": "Установить задержку перед ретрансляцией пакетов.",
|
||
"repeater_cliHelpSetBridgeSource": "Выбрать, будет ли мост ретранслировать полученные или отправленные пакеты.",
|
||
"repeater_cliHelpSetBridgeBaud": "Установить скорость последовательного соединения для мостов RS232.",
|
||
"repeater_cliHelpSetBridgeSecret": "Установить секрет моста для мостов ESP-NOW.",
|
||
"repeater_cliHelpSetAdcMultiplier": "Устанавливает пользовательский коэффициент коррекции напряжения батареи (поддерживается только на некоторых платах).",
|
||
"repeater_cliHelpTempRadio": "Устанавливает временные параметры радио на заданное число минут, затем возвращает исходные. (НЕ сохраняется в настройки).",
|
||
"repeater_cliHelpSetPerm": "Изменяет ACL. Удаляет запись (по префиксу публичного ключа), если «permissions» равен нулю. Добавляет новую запись, если указан полный ключ и он отсутствует в ACL. Обновляет запись по совпадению префикса. Биты прав зависят от роли прошивки, но младшие 2 бита: 0 (Гость), 1 (Только чтение), 2 (Чтение/запись), 3 (Админ)",
|
||
"repeater_cliHelpGetBridgeType": "Получает тип моста: none, rs232, espnow",
|
||
"repeater_cliHelpLogStart": "Начинает запись пакетов в файловую систему.",
|
||
"repeater_cliHelpLogStop": "Останавливает запись пакетов в файловую систему.",
|
||
"repeater_cliHelpLogErase": "Удаляет журналы пакетов из файловой системы.",
|
||
"repeater_cliHelpNeighbors": "Показывает список других репитеров, услышанных через оповещения нулевого хопа. Каждая строка: префикс-id-в-hex:временная-метка:snr×4",
|
||
"repeater_cliHelpNeighborRemove": "Удаляет первую подходящую запись (по префиксу публичного ключа в hex) из списка соседей.",
|
||
"repeater_cliHelpRegion": "(только через последовательный порт) Показывает все определённые регионы и текущие права на рассылку.",
|
||
"repeater_cliHelpRegionLoad": "ПРИМЕЧАНИЕ: это специальная многострочная команда. Каждая следующая строка — имя региона (с отступом пробелами для указания иерархии, минимум один пробел). Завершается пустой строкой.",
|
||
"repeater_cliHelpRegionGet": "Ищет регион по префиксу имени (или «*» для глобальной области). Отвечает: «-> имя-региона (родитель) 'F'»",
|
||
"repeater_cliHelpRegionPut": "Добавляет или обновляет определение региона с заданным именем.",
|
||
"repeater_cliHelpRegionRemove": "Удаляет определение региона с заданным именем. (должно точно совпадать и не иметь дочерних регионов)",
|
||
"repeater_cliHelpRegionAllowf": "Разрешает рассылку («F»lood) для заданного региона. («*» для глобальной/устаревшей области)",
|
||
"repeater_cliHelpRegionDenyf": "Запрещает рассылку («F»lood) для заданного региона. (НЕ рекомендуется для глобальной области!)",
|
||
"repeater_cliHelpRegionHome": "Показывает текущий «домашний» регион. (Пока не используется, зарезервировано на будущее)",
|
||
"repeater_cliHelpRegionHomeSet": "Устанавливает «домашний» регион.",
|
||
"repeater_cliHelpRegionSave": "Сохраняет список/карту регионов в память.",
|
||
"repeater_cliHelpGps": "Показывает статус GPS. Если GPS выключен — отвечает только «off». Если включён — показывает статус, фиксацию, количество спутников.",
|
||
"repeater_cliHelpGpsOnOff": "Переключает состояние питания GPS.",
|
||
"repeater_cliHelpGpsSync": "Синхронизирует время ноды с часами GPS.",
|
||
"repeater_cliHelpGpsSetLoc": "Устанавливает позицию ноды по координатам GPS и сохраняет в настройки.",
|
||
"repeater_cliHelpGpsAdvert": "Показывает конфигурацию передачи местоположения в анонсированиях:\n- none: не включать местоположение\n- share: передавать GPS-координаты (из SensorManager)\n- prefs: передавать координаты из настроек",
|
||
"repeater_cliHelpGpsAdvertSet": "Устанавливает конфигурацию передачи местоположения.",
|
||
"repeater_commandsListTitle": "Список команд",
|
||
"repeater_commandsListNote": "ПРИМЕЧАНИЕ: для большинства команд «set ...» существуют соответствующие команды «get ...».",
|
||
"repeater_general": "Общие",
|
||
"repeater_settingsCategory": "Настройки",
|
||
"repeater_bridge": "Мост",
|
||
"repeater_logging": "Журналирование",
|
||
"repeater_neighborsRepeaterOnly": "Соседи (только для репитеров)",
|
||
"repeater_regionManagementRepeaterOnly": "Управление регионами (только для репитеров)",
|
||
"repeater_regionNote": "Команды регионов введены для управления определениями регионов и правами доступа.",
|
||
"repeater_gpsManagement": "Управление GPS",
|
||
"repeater_gpsNote": "Команда gps введена для управления параметрами, связанными с местоположением.",
|
||
"telemetry_receivedData": "Полученные телеметрические данные",
|
||
"telemetry_requestTimeout": "Время ожидания телеметрии истекло.",
|
||
"telemetry_errorLoading": "Ошибка загрузки телеметрии: {error}",
|
||
"telemetry_noData": "Данные телеметрии недоступны.",
|
||
"telemetry_channelTitle": "Канал {channel}",
|
||
"telemetry_batteryLabel": "Батарея",
|
||
"telemetry_voltageLabel": "Напряжение",
|
||
"telemetry_mcuTemperatureLabel": "Температура МК",
|
||
"telemetry_temperatureLabel": "Температура",
|
||
"telemetry_currentLabel": "Ток",
|
||
"telemetry_batteryValue": "{percent}% / {volts}В",
|
||
"telemetry_voltageValue": "{volts}В",
|
||
"telemetry_currentValue": "{amps}А",
|
||
"telemetry_temperatureValue": "{celsius}°C / {fahrenheit}°F",
|
||
"neighbors_receivedData": "Полученные данные о соседях",
|
||
"neighbors_requestTimedOut": "Время ожидания данных о соседях истекло.",
|
||
"neighbors_errorLoading": "Ошибка загрузки соседей: {error}",
|
||
"neighbors_repeatersNeighbors": "Соседи репитеров",
|
||
"neighbors_noData": "Данные о соседях недоступны.",
|
||
"neighbors_unknownContact": "Неизвестный {pubkey}",
|
||
"neighbors_heardA ago": "Слышали: {time} назад",
|
||
"channelPath_title": "Путь пакета",
|
||
"channelPath_viewMap": "Посмотреть на карте",
|
||
"channelPath_otherObservedPaths": "Другие наблюдаемые пути",
|
||
"channelPath_repeaterHops": "Хопы через репитеры",
|
||
"channelPath_noHopDetails": "Детали хопов для этого пакета не предоставлены.",
|
||
"channelPath_messageDetails": "Детали сообщения",
|
||
"channelPath_senderLabel": "Отправитель",
|
||
"channelPath_timeLabel": "Время",
|
||
"channelPath_repeatsLabel": "Повторы",
|
||
"channelPath_pathLabel": "Путь {index}",
|
||
"channelPath_observedLabel": "Наблюдаемый",
|
||
"channelPath_observedPathTitle": "Наблюдаемый путь {index} • {hops}",
|
||
"channelPath_noLocationData": "Нет данных о местоположении",
|
||
"channelPath_timeWithDate": "{day}/{month} {time}",
|
||
"channelPath_timeOnly": "{time}",
|
||
"channelPath_unknownPath": "Неизвестный",
|
||
"channelPath_floodPath": "Рассылка",
|
||
"channelPath_directPath": "Прямой",
|
||
"channelPath_observedZeroOf": "0 из {total} хопов",
|
||
"channelPath_observedSomeOf": "{observed} из {total} хопов",
|
||
"channelPath_mapTitle": "Карта пути",
|
||
"channelPath_noRepeaterLocations": "Нет данных о местоположении репитеров для этого пути.",
|
||
"channelPath_primaryPath": "Путь {index} (Основной)",
|
||
"channelPath_pathLabelTitle": "Путь",
|
||
"channelPath_observedPathHeader": "Наблюдаемый путь",
|
||
"channelPath_selectedPathLabel": "{label} • {prefixes}",
|
||
"channelPath_noHopDetailsAvailable": "Детали хопов для этого пакета недоступны.",
|
||
"channelPath_unknownRepeater": "Неизвестный репитер",
|
||
"community_title": "Сообщество",
|
||
"community_create": "Создать сообщество",
|
||
"community_createDesc": "Создать новое сообщество и поделиться через QR-код.",
|
||
"community_join": "Присоединиться",
|
||
"community_joinTitle": "Присоединиться к сообществу",
|
||
"community_joinConfirmation": "Вы хотите присоединиться к сообществу \"{name}\"?",
|
||
"community_scanQr": "Сканировать QR-код сообщества",
|
||
"community_scanInstructions": "Наведите камеру на QR-код сообщества",
|
||
"community_showQr": "Показать QR-код",
|
||
"community_publicChannel": "Публичный канал сообщества",
|
||
"community_hashtagChannel": "Хэштег-канал сообщества",
|
||
"community_name": "Имя сообщества",
|
||
"community_enterName": "Введите имя сообщества",
|
||
"community_created": "Сообщество \"{name}\" создано",
|
||
"community_joined": "Присоединились к сообществу \"{name}\"",
|
||
"community_qrTitle": "Поделиться сообществом",
|
||
"community_qrInstructions": "Отсканируйте этот QR-код, чтобы присоединиться к \"{name}\"",
|
||
"community_hashtagPrivacyHint": "Хэштег-каналы сообщества доступны только его участникам",
|
||
"community_invalidQrCode": "Недопустимый QR-код сообщества",
|
||
"community_alreadyMember": "Уже участник",
|
||
"community_alreadyMemberMessage": "Вы уже участник сообщества \"{name}\".",
|
||
"community_addPublicChannel": "Добавить публичный канал сообщества",
|
||
"community_addPublicChannelHint": "Автоматически добавить публичный канал для этого сообщества",
|
||
"community_noCommunities": "Вы ещё не присоединились ни к одному сообществу",
|
||
"community_scanOrCreate": "Отсканируйте QR-код или создайте сообщество, чтобы начать",
|
||
"community_manageCommunities": "Управление сообществами",
|
||
"community_delete": "Покинуть сообщество",
|
||
"community_deleteConfirm": "Покинуть \"{name}\"?",
|
||
"community_deleteChannelsWarning": "Это также удалит {count} канал(ов) и их сообщения.",
|
||
"community_deleted": "Покинули сообщество \"{name}\"",
|
||
"community_regenerateSecret": "Пересоздать секрет",
|
||
"community_regenerateSecretConfirm": "Пересоздать секретный ключ для \"{name}\"? Все участники должны будут отсканировать новый QR-код для продолжения общения.",
|
||
"community_regenerate": "Пересоздать",
|
||
"community_secretRegenerated": "Секрет пересоздан для \"{name}\"",
|
||
"community_updateSecret": "Обновить секрет",
|
||
"community_secretUpdated": "Секрет обновлён для \"{name}\"",
|
||
"community_scanToUpdateSecret": "Отсканируйте новый QR-код, чтобы обновить секрет для \"{name}\"",
|
||
"community_addHashtagChannel": "Добавить хэштег-канал сообщества",
|
||
"community_addHashtagChannelDesc": "Добавить хэштег-канал для этого сообщества",
|
||
"community_selectCommunity": "Выбрать сообщество",
|
||
"community_regularHashtag": "Обычный хэштег",
|
||
"community_regularHashtagDesc": "Публичный хэштег (любой может присоединиться)",
|
||
"community_communityHashtag": "Хэштег сообщества",
|
||
"community_communityHashtagDesc": "Доступен только участникам сообщества",
|
||
"community_forCommunity": "Для {name}",
|
||
"listFilter_tooltip": "Фильтр и сортировка",
|
||
"listFilter_sortBy": "Сортировка по",
|
||
"listFilter_latestMessages": "Последние сообщения",
|
||
"listFilter_heardRecently": "Слышали недавно",
|
||
"listFilter_az": "По алфавиту",
|
||
"listFilter_filters": "Фильтры",
|
||
"listFilter_all": "Все",
|
||
"listFilter_users": "Пользователи",
|
||
"listFilter_repeaters": "Репитеры",
|
||
"listFilter_roomServers": "Серверы комнат",
|
||
"listFilter_unreadOnly": "Только непрочитанные",
|
||
"listFilter_newGroup": "Новая группа",
|
||
"@chat_couldNotOpenLink": {
|
||
"placeholders": {
|
||
"url": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@neighbors_heardAgo": {
|
||
"placeholders": {
|
||
"time": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"chat_open": "Открыть",
|
||
"chat_couldNotOpenLink": "Не удалось открыть ссылку: {url}",
|
||
"chat_openLink": "Открыть ссылку?",
|
||
"chat_openLinkConfirmation": "Хотите открыть эту ссылку в вашем браузере?",
|
||
"neighbors_heardAgo": "Слушал(а): {time} назад",
|
||
"chat_invalidLink": "Неправильный формат ссылки",
|
||
"@contacts_pathTraceTo": {
|
||
"placeholders": {
|
||
"name": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"pathTrace_you": "Вы",
|
||
"pathTrace_failed": "Путь трассировки не выполнен.",
|
||
"pathTrace_notAvailable": "Трассировка пути недоступна.",
|
||
"pathTrace_refreshTooltip": "Обновить Path Trace",
|
||
"contacts_pathTrace": "Трассировка пути",
|
||
"contacts_ping": "Пинговать",
|
||
"contacts_repeaterPathTrace": "Отследить путь к ретранслятору",
|
||
"contacts_repeaterPing": "Пинговать повторитель",
|
||
"contacts_roomPathTrace": "Трассировка пути к серверу комнаты",
|
||
"contacts_roomPing": "Пинговать сервер комнаты",
|
||
"contacts_chatTraceRoute": "Трассировка маршрута",
|
||
"contacts_pathTraceTo": "Показать маршрут к {name}",
|
||
"contacts_contactImported": "Контакт был импортирован",
|
||
"contacts_contactImportFailed": "Контакт не удалось импортировать",
|
||
"contacts_invalidAdvertFormat": "Недействительные контактные данные",
|
||
"contacts_zeroHopAdvert": "Реклама Zero Hop",
|
||
"appSettings_languageUk": "Українська",
|
||
"appSettings_enableMessageTracing": "Включить трассировку сообщений",
|
||
"appSettings_enableMessageTracingSubtitle": "Показывать подробные метаданные о маршрутизации и времени для сообщений",
|
||
"contacts_floodAdvert": "Рекламный поток",
|
||
"contacts_clipboardEmpty": "Буфер обмена пуст.",
|
||
"contacts_copyAdvertToClipboard": "Копировать рекламу в буфер обмена",
|
||
"contacts_ShareContact": "Копировать контакт в буфер обмена",
|
||
"contacts_zeroHopContactAdvertFailed": "Не удалось отправить контакт.",
|
||
"contacts_contactAdvertCopied": "Реклама скопирована в буфер обмена.",
|
||
"contacts_contactAdvertCopyFailed": "Копирование рекламы в буфер обмена не удалось.",
|
||
"contacts_addContactFromClipboard": "Добавить контакт из буфера обмена",
|
||
"contacts_ShareContactZeroHop": "Поделиться контактом по объявлению",
|
||
"contacts_zeroHopContactAdvertSent": "Отправлено сообщение по объявлению.",
|
||
"notification_activityTitle": "Активность MeshCore",
|
||
"notification_messagesCount": "{count} {count, plural, =1{сообщение} few{сообщения} many{сообщений} other{сообщений}}",
|
||
"notification_channelMessagesCount": "{count} {count, plural, =1{сообщение канала} few{сообщения канала} many{сообщений канала} other{сообщений канала}}",
|
||
"notification_newNodesCount": "{count} {count, plural, =1{новый узел} few{новых узла} many{новых узлов} other{новых узлов}}",
|
||
"notification_newTypeDiscovered": "Обнаружен новый {contactType}",
|
||
"notification_receivedNewMessage": "Получено новое сообщение",
|
||
"settings_gpxExportRepeaters": "Экспортировать рипитеры / сервер комнаты в GPX",
|
||
"settings_gpxExportRepeatersSubtitle": "Экспортирует ретрансляторы / сервер комнат с местоположением в файл GPX.",
|
||
"settings_gpxExportContacts": "Экспортировать спутников в GPX",
|
||
"settings_gpxExportNotAvailable": "Не поддерживается на вашем устройстве/ОС",
|
||
"settings_gpxExportError": "Произошла ошибка при экспорте.",
|
||
"settings_gpxExportRepeatersRoom": "Местоположения повторителей и серверов комнат",
|
||
"settings_gpxExportChat": "Местоположения спутников",
|
||
"settings_gpxExportContactsSubtitle": "Экспортирует спутников с местоположением в файл GPX.",
|
||
"settings_gpxExportAll": "Экспортировать все контакты в GPX",
|
||
"settings_gpxExportAllSubtitle": "Экспортирует все контакты с местоположением в файл GPX.",
|
||
"settings_gpxExportAllContacts": "Все местоположения контактов",
|
||
"settings_gpxExportSuccess": "Успешно экспортирован файл GPX.",
|
||
"settings_gpxExportNoContacts": "Нет контактов для экспорта.",
|
||
"settings_gpxExportShareText": "Данные карты экспортированы из meshcore-open",
|
||
"settings_gpxExportShareSubject": "meshcore-open экспорт данных карты GPX",
|
||
"pathTrace_someHopsNoLocation": "Одному или нескольким хмелям не указано местоположение!",
|
||
"map_tapToAdd": "Нажимайте на узлы, чтобы добавить их в путь.",
|
||
"map_removeLast": "Удалить последний",
|
||
"map_pathTraceCancelled": "Отмена трассировки пути",
|
||
"pathTrace_clearTooltip": "Очистить путь",
|
||
"map_runTrace": "Запустить трассировку пути",
|
||
"scanner_enableBluetooth": "Включите Bluetooth",
|
||
"scanner_bluetoothOff": "Bluetooth выключен",
|
||
"scanner_bluetoothOffMessage": "Пожалуйста, включите Bluetooth, чтобы найти устройства.",
|
||
"scanner_chromeRequired": "Требуется браузер Chrome",
|
||
"scanner_chromeRequiredMessage": "Для поддержки Bluetooth в этом веб-приложении требуется Google Chrome или браузер на базе Chromium.",
|
||
"snrIndicator_nearByRepeaters": "Ближайшие ретрансляторы",
|
||
"snrIndicator_lastSeen": "Последний раз видели",
|
||
"chat_ShowAllPaths": "Показать все пути",
|
||
"settings_clientRepeatFreqWarning": "Для работы в режиме \"без подключения к сети\" требуется частота 433, 869 или 918 МГц.",
|
||
"settings_clientRepeatSubtitle": "Позвольте этому устройству повторять пакеты данных для других устройств.",
|
||
"settings_clientRepeat": "Повторение \"вне сети\"",
|
||
"settings_aboutOpenMeteoAttribution": "Данные о высоте LOS: Open-Meteo (CC BY 4.0)",
|
||
"appSettings_unitsTitle": "Единицы",
|
||
"appSettings_unitsMetric": "Метрическая (м/км)",
|
||
"appSettings_unitsImperial": "Имперская (ft / mi)",
|
||
"map_lineOfSight": "Линия видимости",
|
||
"map_losScreenTitle": "Линия видимости",
|
||
"losSelectStartEnd": "Выберите начальный и конечный узлы для LOS.",
|
||
"losRunFailed": "Проверка прямой видимости не удалась: {error}",
|
||
"@losRunFailed": {
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"losClearAllPoints": "Очистить все точки",
|
||
"losRunToViewElevationProfile": "Запустите LOS, чтобы просмотреть профиль высот.",
|
||
"losMenuTitle": "ЛОС Меню",
|
||
"losMenuSubtitle": "Коснитесь узлов или нажмите и удерживайте карту для выбора пользовательских точек.",
|
||
"losShowDisplayNodes": "Показать узлы отображения",
|
||
"losCustomPoints": "Пользовательские точки",
|
||
"losCustomPointLabel": "Пользовательский {index}",
|
||
"@losCustomPointLabel": {
|
||
"placeholders": {
|
||
"index": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"losPointA": "Точка А",
|
||
"losPointB": "Точка Б",
|
||
"losAntennaA": "Антенна А: {value} {unit}",
|
||
"@losAntennaA": {
|
||
"placeholders": {
|
||
"value": {
|
||
"type": "String"
|
||
},
|
||
"unit": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"losAntennaB": "Антенна Б: {value} {unit}",
|
||
"@losAntennaB": {
|
||
"placeholders": {
|
||
"value": {
|
||
"type": "String"
|
||
},
|
||
"unit": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"losRun": "Запустить ЛОС",
|
||
"losNoElevationData": "Нет данных о высоте",
|
||
"losProfileClear": "{distance} {distanceUnit}, свободная зона видимости, минимальный зазор {clearance} {heightUnit}",
|
||
"@losProfileClear": {
|
||
"placeholders": {
|
||
"distance": {
|
||
"type": "String"
|
||
},
|
||
"distanceUnit": {
|
||
"type": "String"
|
||
},
|
||
"clearance": {
|
||
"type": "String"
|
||
},
|
||
"heightUnit": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"losProfileBlocked": "{distance} {distanceUnit}, заблокирован {obstruction} {heightUnit}",
|
||
"@losProfileBlocked": {
|
||
"placeholders": {
|
||
"distance": {
|
||
"type": "String"
|
||
},
|
||
"distanceUnit": {
|
||
"type": "String"
|
||
},
|
||
"obstruction": {
|
||
"type": "String"
|
||
},
|
||
"heightUnit": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"losStatusChecking": "ЛОС: проверяю...",
|
||
"losStatusNoData": "ЛОС: нет данных",
|
||
"losStatusSummary": "LOS: {clear}/{total} очищено, {blocked} заблокировано, {unknown} неизвестно.",
|
||
"@losStatusSummary": {
|
||
"placeholders": {
|
||
"clear": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
},
|
||
"blocked": {
|
||
"type": "int"
|
||
},
|
||
"unknown": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"losErrorElevationUnavailable": "Данные о высоте недоступны для одного или нескольких образцов.",
|
||
"losErrorInvalidInput": "Неверные данные о точках/высоте для расчета LOS.",
|
||
"losRenameCustomPoint": "Переименовать пользовательскую точку",
|
||
"losPointName": "Имя точки",
|
||
"losShowPanelTooltip": "Показать панель LOS",
|
||
"losHidePanelTooltip": "Скрыть панель LOS",
|
||
"losElevationAttribution": "Данные о высоте: Open-Meteo (CC BY 4.0)",
|
||
"losLegendRadioHorizon": "Радиогоризонт",
|
||
"losLegendLosBeam": "Линия прямой видимости",
|
||
"losLegendTerrain": "Рельеф",
|
||
"losFrequencyLabel": "Частота",
|
||
"losFrequencyInfoTooltip": "Просмотреть детали расчёта",
|
||
"losFrequencyDialogTitle": "Расчёт радиогоризонта",
|
||
"losFrequencyDialogDescription": "Начиная с k={baselineK} на частоте {baselineFreq} МГц, расчет корректирует коэффициент k для текущего диапазона {frequencyMHz} МГц, который определяет изогнутую границу радиогоризонта.",
|
||
"@losFrequencyDialogDescription": {
|
||
"description": "Explain how the calculation uses the baseline frequency and derived k-factor.",
|
||
"placeholders": {
|
||
"baselineK": {
|
||
"type": "double"
|
||
},
|
||
"baselineFreq": {
|
||
"type": "double"
|
||
},
|
||
"frequencyMHz": {
|
||
"type": "double"
|
||
},
|
||
"kFactor": {
|
||
"type": "double"
|
||
}
|
||
}
|
||
},
|
||
"listFilter_addToFavorites": "Добавить в избранное",
|
||
"listFilter_favorites": "Избранное",
|
||
"listFilter_removeFromFavorites": "Удалить из избранного",
|
||
"@contacts_searchFavorites": {
|
||
"placeholders": {
|
||
"number": {
|
||
"type": "int"
|
||
},
|
||
"str": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@contacts_searchUsers": {
|
||
"placeholders": {
|
||
"number": {
|
||
"type": "int"
|
||
},
|
||
"str": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@contacts_searchRepeaters": {
|
||
"placeholders": {
|
||
"number": {
|
||
"type": "int"
|
||
},
|
||
"str": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@contacts_searchRoomServers": {
|
||
"placeholders": {
|
||
"number": {
|
||
"type": "int"
|
||
},
|
||
"str": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"contacts_searchRepeaters": "Поиск {number}{str} ретрансляторов...",
|
||
"contacts_searchContactsNoNumber": "Поиск контактов...",
|
||
"contacts_unread": "Непрочитанное",
|
||
"contacts_searchRoomServers": "Поиск {number}{str} серверов комнат...",
|
||
"contacts_searchFavorites": "Поиск {number}{str} избранного...",
|
||
"contacts_searchUsers": "Поиск {number}{str} пользователей...",
|
||
"settings_contactSettings": "Настройки контактов",
|
||
"settings_contactSettingsSubtitle": "Настройки добавления контактов",
|
||
"contactsSettings_autoAddTitle": "Автоматическое обнаружение",
|
||
"contactsSettings_title": "Настройки контактов",
|
||
"contactsSettings_otherTitle": "Другие настройки, связанные с контактами",
|
||
"contactsSettings_autoAddUsersSubtitle": "Разрешить компаньону автоматически добавлять обнаруженных пользователей",
|
||
"contactsSettings_autoAddRoomServersTitle": "Автоматически добавлять серверы комнат",
|
||
"contactsSettings_autoAddSensorsTitle": "Автоматически добавлять датчики",
|
||
"contactsSettings_autoAddSensorsSubtitle": "Разрешить компаньону автоматически добавлять обнаруженные датчики",
|
||
"contactsSettings_autoAddUsersTitle": "Автоматически добавлять пользователей",
|
||
"contactsSettings_overwriteOldestTitle": "Перезаписать самое старое",
|
||
"contactsSettings_autoAddRepeatersTitle": "Автоматически добавлять ретрансляторы",
|
||
"contactsSettings_autoAddRepeatersSubtitle": "Разрешить спутнику автоматически добавлять обнаруженные ретрансляторы",
|
||
"contactsSettings_autoAddRoomServersSubtitle": "Разрешить компаньону автоматически добавлять обнаруженные сервера комнат.",
|
||
"discoveredContacts_noMatching": "Нет совпадающих контактов",
|
||
"discoveredContacts_searchHint": "Найденные контакты поиска",
|
||
"discoveredContacts_contactAdded": "Контакт добавлен",
|
||
"discoveredContacts_copyContact": "Копировать контакт в буфер обмена",
|
||
"discoveredContacts_addContact": "Добавить контакт",
|
||
"discoveredContacts_Title": "Обнаруженные контакты",
|
||
"discoveredContacts_deleteContact": "Удалить контакт",
|
||
"contactsSettings_overwriteOldestSubtitle": "Когда список контактов заполнен, будет заменен самый старый контакт, который не находится в избранном.",
|
||
"common_deleteAll": "Удалить все",
|
||
"discoveredContacts_deleteContactAllContent": "Вы уверены, что хотите удалить все обнаруженные контакты?",
|
||
"discoveredContacts_deleteContactAll": "Удалить Все Обнаруженные Контакты",
|
||
"map_guessedLocation": "Угаданное место",
|
||
"map_showGuessedLocations": "Отобразить предполагаемые места расположения узлов",
|
||
"connectionChoiceUsbLabel": "USB",
|
||
"usbScreenSubtitle": "Выберите обнаруженное устройство с последовательным интерфейсом и подключите его напрямую к вашему узлу MeshCore.",
|
||
"usbScreenTitle": "Подключение через USB",
|
||
"connectionChoiceBluetoothLabel": "Bluetooth",
|
||
"usbScreenStatus": "Выберите USB-устройство",
|
||
"usbScreenNote": "USB-серийный порт активен на поддерживаемых устройствах Android и на настольных платформах.",
|
||
"usbScreenEmptyState": "Не обнаружено устройств USB. Подключите одно из них и обновите список.",
|
||
"usbErrorPermissionDenied": "Запрос на доступ через USB был отклонен.",
|
||
"usbErrorDeviceMissing": "Выбранное USB-устройство больше недоступно.",
|
||
"usbErrorInvalidPort": "Выберите действительное USB-устройство.",
|
||
"usbErrorBusy": "Еще одно запрошенное соединение через USB уже находится в процессе.",
|
||
"usbErrorNotConnected": "Ни одно USB-устройство не подключено.",
|
||
"usbErrorOpenFailed": "Не удалось открыть выбранное USB-устройство.",
|
||
"usbErrorConnectFailed": "Не удалось установить соединение с выбранным USB-устройством.",
|
||
"usbErrorUnsupported": "Поддержка последовательного USB отсутствует на данной платформе.",
|
||
"usbErrorAlreadyActive": "USB-соединение уже установлено.",
|
||
"usbErrorNoDeviceSelected": "Не было выбрано ни одно устройство USB.",
|
||
"usbErrorPortClosed": "USB-соединение не установлено.",
|
||
"usbFallbackDeviceName": "Устройство для последовательного подключения к сети",
|
||
"@usbConnectionFailed": {
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"usbStatus_searching": "Поиск USB-устройств...",
|
||
"usbStatus_connecting": "Подключение к USB-устройству...",
|
||
"usbConnectionFailed": "Не удалось установить соединение через USB: {error}",
|
||
"usbStatus_notConnected": "Выберите USB-устройство",
|
||
"usbErrorConnectTimedOut": "Соединение не установлено. Убедитесь, что устройство имеет установленное программное обеспечение USB Companion.",
|
||
"@tcpStatus_connectingTo": {
|
||
"placeholders": {
|
||
"endpoint": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@tcpConnectionFailed": {
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"tcpHostHint": "192.168.40.10",
|
||
"connectionChoiceTcpLabel": "TCP",
|
||
"tcpHostLabel": "IP-адрес",
|
||
"tcpScreenTitle": "Установить соединение по протоколу TCP",
|
||
"tcpPortLabel": "Порт",
|
||
"tcpPortHint": "5000",
|
||
"tcpStatus_notConnected": "Введите адрес и подключитесь.",
|
||
"tcpStatus_connectingTo": "Подключение к {endpoint}...",
|
||
"tcpErrorHostRequired": "Необходимо указать IP-адрес.",
|
||
"tcpErrorPortInvalid": "Порт должен находиться в диапазоне от 1 до 65535.",
|
||
"tcpErrorUnsupported": "Протокол TCP не поддерживается на этой платформе.",
|
||
"tcpErrorTimedOut": "Соединение TCP не удалось установить.",
|
||
"tcpConnectionFailed": "Не удалось установить соединение TCP: {error}",
|
||
"map_showDiscoveryContacts": "Показать контакты Discovery",
|
||
"map_setAsMyLocation": "Установить мое местоположение",
|
||
"@path_routeWeight": {
|
||
"placeholders": {
|
||
"weight": {
|
||
"type": "String"
|
||
},
|
||
"max": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"settings_privacy": "Настройки конфиденциальности",
|
||
"settings_privacySubtitle": "Контролируйте, какую информацию делиться.",
|
||
"settings_telemetryLocationMode": "Режим местоположения телеметрии",
|
||
"settings_telemetryEnvironmentMode": "Режим среды телеметрии",
|
||
"settings_advertLocation": "Местоположение рекламы",
|
||
"settings_advertLocationSubtitle": "Включить местоположение в объявление",
|
||
"settings_allowAll": "Разрешить все",
|
||
"settings_privacySettingsDescription": "Выберите, какую информацию ваше устройство будет делиться с другими.",
|
||
"settings_denyAll": "Отклонить все",
|
||
"settings_allowByContact": "Разрешить по флагам контактов",
|
||
"contact_info": "Контактная информация",
|
||
"settings_telemetryBaseMode": "Базовый режим телеметрии",
|
||
"contact_teleBase": "База телеметрии",
|
||
"contact_teleLoc": "Местоположение телеметрии",
|
||
"contact_teleLocSubtitle": "Разрешить обмен данными о местоположении",
|
||
"contact_teleEnv": "Среда телеметрии",
|
||
"contact_teleEnvSubtitle": "Разрешить обмен данными датчиков окружающей среды",
|
||
"contact_settings": "Настройки контактов",
|
||
"contact_telemetry": "Телеметрия",
|
||
"contact_clearChat": "Очистить чат",
|
||
"contact_lastSeen": "Последний раз видели",
|
||
"contact_teleBaseSubtitle": "Разрешить обмен уровнем заряда батареи и базовой телеметрией",
|
||
"@settings_multiAck": {
|
||
"placeholders": {
|
||
"value": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"appSettings_maxRouteWeight": "Максимальный допустимый вес маршрута",
|
||
"appSettings_maxRouteWeightSubtitle": "Максимальный вес, который может быть перевезён по определённому маршруту при успешных доставках.",
|
||
"appSettings_initialRouteWeightSubtitle": "Начальный вес для новых, только что открытых маршрутов",
|
||
"appSettings_initialRouteWeight": "Начальный вес маршрута",
|
||
"appSettings_routeWeightSuccessIncrement": "Увеличение веса успеха",
|
||
"appSettings_routeWeightSuccessIncrementSubtitle": "Вес, добавленный к маршруту после успешной доставки.",
|
||
"appSettings_routeWeightFailureDecrement": "Уменьшение веса неудачи",
|
||
"appSettings_routeWeightFailureDecrementSubtitle": "Вес, который был удален с пути после неудачной доставки.",
|
||
"appSettings_maxMessageRetries": "Максимальное количество повторных попыток отправки сообщения",
|
||
"appSettings_maxMessageRetriesSubtitle": "Количество попыток повторной отправки сообщения перед тем, как пометить его как неудачное.",
|
||
"path_routeWeight": "{weight}/{max}",
|
||
"settings_telemetryModeUpdated": "Режим телеметрии обновлен",
|
||
"settings_multiAck": "Мульти-ACK: {value}",
|
||
"map_showOverlaps": "Перекрытия ключа повтора",
|
||
"map_runTraceWithReturnPath": "Вернуться обратно по тому же пути",
|
||
"@radioStats_noiseFloor": {
|
||
"placeholders": {
|
||
"noiseDbm": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"@radioStats_lastRssi": {
|
||
"placeholders": {
|
||
"rssiDbm": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"@radioStats_lastSnr": {
|
||
"placeholders": {
|
||
"snr": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@radioStats_txAir": {
|
||
"placeholders": {
|
||
"seconds": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"@radioStats_rxAir": {
|
||
"placeholders": {
|
||
"seconds": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"@radioStats_stripNoise": {
|
||
"placeholders": {
|
||
"noiseDbm": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"chat_sendCooldown": "Пожалуйста, подождите немного, прежде чем отправлять сообщение снова.",
|
||
"appSettings_jumpToOldestUnread": "Перейти к самому старому непрочитанному сообщению",
|
||
"appSettings_languageHu": "Венгерский",
|
||
"appSettings_jumpToOldestUnreadSubtitle": "При открытии чата с непрочитанными сообщениями, прокрутите страницу, чтобы увидеть первое непрочитанное сообщение, а не последнее.",
|
||
"appSettings_languageJa": "Японский",
|
||
"appSettings_languageKo": "Корейский",
|
||
"radioStats_tooltip": "Статистика радио и беспроводной сети",
|
||
"radioStats_screenTitle": "Статистика радиовещания",
|
||
"radioStats_notConnected": "Подключитесь к устройству, чтобы просмотреть статистику радио.",
|
||
"radioStats_firmwareTooOld": "Для работы радиостатистики требуется установленная версия прошивки v8 или более новая.",
|
||
"radioStats_waiting": "Ожидаем данных…",
|
||
"radioStats_noiseFloor": "Уровень шума: {noiseDbm} дБм",
|
||
"radioStats_lastRssi": "Последнее значение RSSI: {rssiDbm} дБм",
|
||
"radioStats_lastSnr": "Последнее значение SNR: {snr} дБ",
|
||
"radioStats_txAir": "Время эфира на телеканале TX (общее): {seconds} секунд",
|
||
"radioStats_rxAir": "Общее время использования RX (в секундах): {seconds} с",
|
||
"radioStats_chartCaption": "Уровень шума (дБм) на основе последних измерений.",
|
||
"radioStats_stripNoise": "Уровень шума: {noiseDbm} дБм",
|
||
"radioStats_stripWaiting": "Получение данных о радио…",
|
||
"radioStats_settingsTile": "Статистика радиовещания",
|
||
"radioStats_settingsSubtitle": "Уровень шума, RSSI, SNR и время передачи",
|
||
"@scanner_linuxPairingPinPrompt": {
|
||
"placeholders": {
|
||
"deviceName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"scanner_linuxPairingShowPin": "Показать PIN",
|
||
"scanner_linuxPairingPinPrompt": "Введите PIN‑код для {deviceName} (оставьте пустым, если нет).",
|
||
"scanner_linuxPairingHidePin": "Скрыть PIN",
|
||
"scanner_linuxPairingPinTitle": "PIN‑код сопряжения Bluetooth",
|
||
"repeater_cliQuickDiscovery": "Обнаружить Соседей",
|
||
"repeater_cliQuickClockSync": "Синхронизация часов"
|
||
} |