diff --git a/io-package.json b/io-package.json index 03ccaecd..4aba2eee 100644 --- a/io-package.json +++ b/io-package.json @@ -1,180 +1,183 @@ { - "common": { - "name": "matter", - "version": "0.2.7", - "news": { - "0.2.7": { - "en": "Cleans up objects when a controller node is deleted\nPrevents controller configuration changes to be executed in parallel", - "de": "Reinigt Objekte, wenn ein Controller-Knoten gelöscht wird\nVerhindert, dass Reglerkonfigurationsänderungen parallel ausgeführt werden", - "ru": "Очищает объекты при удалении узла контроллера\nПредотвращает изменения конфигурации контроллера, которые должны быть выполнены параллельно", - "pt": "Limpa objetos quando um nó do controlador é excluído\nImpede que as alterações de configuração do controlador sejam executadas em paralelo", - "nl": "Opruimt objecten wanneer een controllerknooppunt wordt verwijderd\nVoorkomt dat de configuratie van de controller parallel wordt uitgevoerd", - "fr": "Nettoie les objets lorsqu'un noeud du contrôleur est supprimé\nEmpêche les modifications de configuration du contrôleur d'être exécutées en parallèle", - "it": "Pulisce gli oggetti quando un nodo del controller viene eliminato\nPreviene modifiche di configurazione del controller da eseguire in parallelo", - "es": "Limpia objetos cuando se elimina un nodo controlador\nEvita los cambios de configuración del controlador a ejecutarse en paralelo", - "pl": "Oczyszcza obiekty po usunięciu węzła kontrolera\nZapobiega zmianom konfiguracji sterownika, które mają być wykonywane równolegle", - "uk": "Очищення об'єктів при видаленні вузла контролера\nЗапобігає зміни конфігурації контролера, які будуть виконуватися паралельно", - "zh-cn": "删除控制节点时清理对象\n防止同时执行控制器配置更改" - }, - "0.2.6": { - "en": "Fixes ColorTemperature light initialization because of matter.js update", - "de": "Behebt die ColorTemperatur Licht Initialisierung aufgrund der Materie. js update", - "ru": "Исправляет инициализацию цвета температуры из-за материи. js обновление", - "pt": "Corrige a inicialização de luz ColorTemperature por causa da matéria. js update", - "nl": "Bevestigt kleurTemperatuur licht initialisatie vanwege materie. js update", - "fr": "Corrige l'initialisation de la lumière ColorTemperature à cause de la matière. Mise à jour de js", - "it": "Fissa l'inizializzazione della luce ColorTemperature a causa della materia. aggiornamento js", - "es": "Arreglos ColorTemperatura inicialización de la luz debido a la materia. js update", - "pl": "Fixes ColorTemperatura inicjalizacja światła z powodu materii. Aktualizacja js", - "uk": "Фіксує колірТемпературна ініціалізація світла через матерію. оновлення js", - "zh-cn": "修补颜色Temperature光因物质而初始化. js 更新" - }, - "0.2.5": { - "en": "Sets the \"no-compose\" flag correctly to normally use composed if needed and adds it to a missing dialog\nAllows to use null values if needed\nFixes UNREACH handling for devices\nFixes object change handling for controller\nAllow Bridges to expose its name as a device name\nAllows to rename controller nodes and devices", - "de": "Setzt das \"no-compose\"-Flag richtig ein, um normalerweise komponiert zu verwenden und fügt es zu einem fehlenden Dialog hinzu\nErlaubt, bei Bedarf Nullwerte zu verwenden\nBehebt UNREACH-Handling für Geräte\nFixes Objektänderungshandling für Controller\nErlaubt Bridges, seinen Namen als Gerätenamen zu entlarven\nErmöglicht die Umbenennung von Controller-Knoten und -Geräten", - "ru": "Установить флаг «без композиций» правильно, чтобы обычно использовать его, если это необходимо, и добавить его в недостающий диалог\nПозволяет использовать нулевые значения в случае необходимости\nFixes UNREACH для устройств\nИсправление изменения объекта для контроллера\nПозволяет Bridges разоблачить свое имя как имя устройства\nПозволяет переименовать узлы и устройства контроллера", - "pt": "Define a bandeira \"não compor\" corretamente para usar normalmente composta se necessário e adiciona-a a uma caixa de diálogo ausente\nPermite usar valores nulos se necessário\nCorrige o manuseio UNREACH para dispositivos\nCorrige o manuseio de alterações de objetos para o controlador\nPermitir que Bridges exponha seu nome como um nome de dispositivo\nPermite renomear nós de controlador e dispositivos", - "nl": "Stelt de \"no-compose\"-vlag correct in om gecomposed te gebruiken indien nodig en voegt deze toe aan een ontbrekend dialoogvenster\nHiermee kunt u zo nodig nulwaarden gebruiken\nBevestigt UNREACH-afhandeling voor apparaten\nHerstelt object verandering behandeling voor controller\nBruggen toestaan om haar naam als apparaatnaam te ontmaskeren\nHiermee kunt u controllerknooppunten en -apparaten hernoemen", - "fr": "Définit le drapeau \"non-composant\" correctement pour utiliser normalement composé si nécessaire et l'ajoute à une boîte de dialogue manquante\nPermet d'utiliser des valeurs null si nécessaire\nCorrige la manipulation d'UNREACH pour les appareils\nCorrection de la manipulation du changement d'objet pour le contrôleur\nPermettre à Bridges d'exposer son nom comme un nom d'appareil\nPermet de renommer les nœuds et les périphériques du contrôleur", - "it": "Imposta la bandiera \"no-compose\" correttamente per utilizzare normalmente composta se necessario e aggiungerla a una finestra di dialogo mancante\nConsente di utilizzare valori null se necessario\nFissa la gestione UNREACH per dispositivi\nRisolve la gestione del cambiamento degli oggetti per il controller\nConsente a Bridges di esporre il suo nome come nome di un dispositivo\nConsente di rinominare nodi e dispositivi del controller", - "es": "Establece la bandera \"no-compos\" correctamente para usar normalmente compuesta si es necesario y la añade a un diálogo perdido\nPermite utilizar valores nulos si es necesario\nFija el manejo UNREACH para dispositivos\nArregla el manejo del cambio de objeto para el controlador\nPermitir a Bridges exponer su nombre como un nombre de dispositivo\nPermite renombrar nodos y dispositivos controlador", - "pl": "Ustawia flagę \"no- composite\" poprawnie, aby normalnie używać skomponowanego w razie potrzeby i dodaje ją do brakującego okna dialogowego\nPozwala na użycie wartości zerowych w razie potrzeby\nFixes UNREACH obsługi urządzeń\nUstawia obsługę zmiany obiektu dla kontrolera\nPozwól Mostkom na ujawnienie nazwy urządzenia\nUmożliwia zmianę nazwy węzłów i urządzeń sterownika", - "uk": "Встановіть прапорець \"no-compose\" правильно, щоб зазвичай використовувати, що складається, якщо потрібно і додає його до відсутній діалог\nДозволяє використовувати значення null, якщо потрібно\nВиправлення роботи UNREACH для пристроїв\nВиправлення управління змінами об'єкта для контролера\nДозволяє мостів, щоб виставити ім'я пристрою\nДозволяє перейменувати вузли контролера і пристрої", - "zh-cn": "设置“ 无编解” 旗帜, 以便在必要时正常使用编解, 并将其添加到缺少的对话框中\n需要时允许使用无效值\n修复设备的UNREACH处理\n修正控制器对象更改处理\n允许 Bridges 将其名称曝光为设备名称\n允许重命名控制器节点和设备" - }, - "0.2.4": { - "en": "Shows a progress indicator when deleting controller nodes\nCuts names and labels to 32 or 64 characters as needed by Matter\nImproves error handling on devices and bridges\nClear storage when removing a bridged device\nProcesses changed objects with a 5s delay to prevent too many changes at once\nFixes version determination\nInitializes Device objects more lazily", - "de": "Zeigt einen Fortschrittsindikator beim Löschen von Controller-Knoten\nSchneidet Namen und Labels auf 32 oder 64 Zeichen nach Bedarf von Matter\nVerbessert die Fehlerbehandlung auf Geräten und Brücken\nLöschen Sie die Speicherung beim Entfernen eines überbrückten Geräts\nProzesse veränderten Objekte mit einer Verzögerung von 5s, um zu viele Änderungen auf einmal zu verhindern\nBehebt die Versionsbestimmung\nInitialisiert Geräteobjekte mehr lazily", - "ru": "Показывает индикатор прогресса при удалении узлов контроллера\nОтрезает имена и этикетки до 32 или 64 символов по мере необходимости от Matter\nУлучшает обработку ошибок на устройствах и мостах\nЧистое хранение при удалении мостового устройства\nПроцессы изменили объекты с задержкой 5s, чтобы предотвратить слишком много изменений сразу\nОпределение версии\nИнициализировать объекты устройства более лениво", - "pt": "Mostra um indicador de progresso ao excluir nós do controlador\nCorta nomes e rótulos para 32 ou 64 caracteres conforme necessário pela Matter\nMelhora o manuseio de erros em dispositivos e pontes\nLimpar armazenamento ao remover um dispositivo ponte\nProcessos mudou objetos com um atraso de 5s para evitar muitas mudanças ao mesmo tempo\nCorrige a determinação da versão\nInicializa objetos de dispositivo mais preguiçosamente", - "nl": "Toont een voortgangsindicator bij het verwijderen van controllerknooppunten\nKnipt namen en labels tot 32 of 64 tekens naar behoefte door Matter\nVerbetert de foutafhandeling op apparaten en bruggen\nBewaarruimte wissen bij het verwijderen van een gebrugd apparaat\nProcessen veranderden objecten met een 5s vertraging om te veel veranderingen tegelijk te voorkomen\nRepareert versiebepaling\nInitialiseert apparaat objecten luier", - "fr": "Affiche un indicateur de progression lors de la suppression des nœuds du contrôleur\nCoupe les noms et les étiquettes à 32 ou 64 caractères selon les besoins de la matière\nAméliore la gestion des erreurs sur les appareils et les ponts\nEffacer le stockage lors de l'enlèvement d'un dispositif ponté\nLes processus ont changé des objets avec un retard de 5s pour éviter trop de changements à la fois\nCorrige la détermination de la version\nInitialise les objets du périphérique plus paresseusement", - "it": "Mostra un indicatore di progresso quando si eliminano i nodi del controller\nTagli nomi ed etichette a 32 o 64 caratteri come necessario da Matter\nMigliora la gestione degli errori su dispositivi e ponti\nConservazione chiara quando si rimuove un dispositivo pontificato\nProcessi modificati oggetti con un ritardo di 5s per prevenire troppe modifiche contemporaneamente\nFissa la determinazione della versione\nInizialmente gli oggetti del dispositivo più pigramente", - "es": "Muestra un indicador de progreso al eliminar los nodos del controlador\nCorta nombres y etiquetas a 32 o 64 caracteres según sea necesario por Matter\nMejora el manejo de errores en dispositivos y puentes\nDespejado el almacenamiento cuando se quita un dispositivo puente\nProcesos cambiaron objetos con un retraso de 5s para prevenir demasiados cambios a la vez\nDeterminación de la versión fija\nInicia objetos de dispositivo más lazily", - "pl": "Pokazuje wskaźnik postępu podczas usuwania węzłów sterownika\nWycina nazwy i etykiety do 32 lub 64 znaków według potrzeb Matter\nPoprawia obsługę błędów na urządzeniach i mostach\nPrzezroczysta pamięć masowa podczas usuwania zaokrąglonego urządzenia\nProcesy zmieniały obiekty z opóźnieniem 5s, aby zapobiec zbyt wielu zmian naraz\nUstalanie wersji filtrów\nInicjuje obiekty urządzenia bardziej leniwie", - "uk": "Показує індикатор прогресу при видаленні вузлів контролера\nНарізки імен і етикеток до 32 або 64 символів, як це потрібно за допомогою Matter\nПокращує обробку помилок на пристроях і мостах\nПрозоре зберігання при видаленні мостового пристрою\nПроцеси змінилися об'єкти з затримкою 5-х, щоб запобігти занадто багато змін одночасно\nВизначення виправлень\nНавігація Пристрої об'єктів більш лляною", - "zh-cn": "删除控制器节点时显示进度指标\n根据 Matter 的需要将名称和标签剪切为 32 或 64 个字符\n改进设备和桥梁的错误处理\n删除桥式设备时清除存储\n用5s延迟来防止太多更改的处理对象\n修复版本确定\n初始化设备对象更加懒散" - }, - "0.2.3": { - "en": "Makes sure to delete all objects and stop device when a device is deleted in UI\nWhen a devices/bridge object is deleted and adapter runs we try to detect this and stop the device/bridge\nOptimizes close handling of adapter\nUses adapter version as Software and Hardware versions in the exposed Matter devices\nFixes \"auto\" flags in backend when make no sense in objects\nFixes \"auto\" flag in UI\nPrevents cyclic state updates when a state is updated by the adapter to matter\nLog warnings when device optional device states are not mapped\nHides Product-ID and VendorId fields in UI when adding devices into a bridge", - "de": "Vergewissern Sie sich, alle Objekte zu löschen und das Gerät zu stoppen, wenn ein Gerät in UI gelöscht wird\nWenn ein Gerät/Brücke-Objekt gelöscht wird und der Adapter läuft, versuchen wir dies zu erkennen und das Gerät/Brücke zu stoppen\nOptimiert die enge Handhabung des Adapters\nVerwendet die Adapterversion als Software- und Hardwareversionen in den exponierten Matter-Geräten\nBehebt \"auto\" Fahnen im Backend, wenn kein Sinn in Objekten\nBehebt \"auto\"-Flag in UI\nVerhindert zyklische Zustandsaktualisierungen, wenn ein Zustand durch den Adapter zur Materie aktualisiert wird\nLog-Warnungen, wenn Geräte optionale Gerätezustände nicht abgebildet werden\nHides Produkt-ID und Verkäufer Id-Felder in UI beim Hinzufügen von Geräten in eine Brücke", - "ru": "Убедитесь, что удалить все объекты и остановить устройство, когда устройство удалено в пользовательском интерфейсе\nПри удалении устройства/мост и запуске адаптера мы пытаемся обнаружить это и остановить устройство/мост\nОптимизирует тесную обработку адаптера\nИспользует версию адаптера как версии программного обеспечения и оборудования в устройствах, находящихся под угрозой\nИсправления «авто» флаги в задней части, когда нет смысла в объектах\nФлаг \"авто\" в UI\nПредотвращает циклические обновления состояния, когда состояние обновляется адаптером к материи\nЖурнал предупреждения, когда состояния устройства не отображаются\nHides Product-ID и Vendor Id поля в пользовательском интерфейсе при добавлении устройств в мост", - "pt": "Certifica-se de excluir todos os objetos e parar o dispositivo quando um dispositivo é excluído na interface do usuário\nQuando um objeto de dispositivos / ponte é excluído e o adaptador é executado, tentamos detectar isso e parar o dispositivo / ponte\nOtimiza o manuseio próximo do adaptador\nUsa a versão do adaptador como versões de software e hardware nos dispositivos expostos da Matter\nCorrige bandeiras \"auto\" no backend quando não faz sentido em objetos\nCorrige a bandeira \"auto\" na interface do usuário\nPrevine atualizações de estado cíclico quando um estado é atualizado pelo adaptador para importar\nAvisos de log quando os estados do dispositivo opcional não são mapeados\nEsconde Produto-ID e Fornecedor Campos de identificação na interface do usuário ao adicionar dispositivos em uma ponte", - "nl": "Zorgt ervoor dat alle objecten te verwijderen en apparaat te stoppen wanneer een apparaat wordt verwijderd in UI\nWanneer een apparaat/brug object wordt verwijderd en de adapter draait proberen we dit te detecteren en het apparaat/brug te stoppen\nOptimaliseert het gebruik van de adapter\nGebruikt adapterversie als Software en Hardware versies in de blootgestelde Matter apparaten\nFixeert \"auto\"-vlaggen in backend wanneer geen zin in objecten\nFixeert \"auto\" vlag in UI\nVoorkomt cyclische status updates wanneer een toestand wordt bijgewerkt door de adapter aan materie\nLogwaarschuwingen wanneer optionele apparaattoestanden niet in kaart zijn gebracht\nVerbergt product-ID en leverancier Id velden in UI bij het toevoegen van apparaten aan een brug", - "fr": "S'assure de supprimer tous les objets et d'arrêter le périphérique quand un périphérique est supprimé dans l'interface utilisateur\nLorsqu'un objet périphérique/pont est supprimé et que l'adaptateur fonctionne, nous essayons de le détecter et arrêtons l'appareil/pont\nOptimise la manipulation étroite de l'adaptateur\nUtilise la version adaptateur comme versions logicielles et matérielles dans les périphériques de matière exposés\nCorrige les drapeaux \"auto\" en backend quand n'ont aucun sens dans les objets\nCorrection du drapeau \"auto\" dans l'interface utilisateur\nPrévient les mises à jour de l'état cyclique lorsqu'un état est mis à jour par l'adaptateur pour la matière\nSignaler les avertissements lorsque les états optionnels de l'appareil ne sont pas cartographiés\nCacher le produit-ID et le fournisseur Champs d'id dans l'interface utilisateur lors de l'ajout de dispositifs dans un pont", - "it": "Assicurarsi di eliminare tutti gli oggetti e fermare il dispositivo quando un dispositivo viene eliminato in UI\nQuando un oggetto dispositivo/ponte viene eliminato e l'adattatore viene eseguito cerchiamo di rilevare questo e di fermare il dispositivo/ponte\nOttimizza la stretta gestione dell'adattatore\nUtilizza la versione adattatore come versioni software e hardware nei dispositivi Matter esposti\nFissa bandiere \"auto\" in backend quando non hanno senso in oggetti\nFissa la bandiera \"auto\" in UI\nPreviene gli aggiornamenti dello stato ciclico quando uno stato viene aggiornato dall'adattatore alla materia\nAvvertenze di registro quando gli stati del dispositivo facoltativi non sono mappati\nNasconde prodotto-ID e venditore Id campi in UI quando si aggiungono dispositivi in un ponte", - "es": "Asegúrese de eliminar todos los objetos y detener el dispositivo cuando se elimina un dispositivo en UI\nCuando se elimina un objeto de dispositivo / puente y se ejecuta el adaptador intentamos detectarlo y detener el dispositivo/puente\nOptimiza el manejo cercano del adaptador\nUtiliza la versión de adaptador como versiones de software y hardware en los dispositivos de Matter expuestos\nFija banderas \"auto\" en backend cuando no tenga sentido en los objetos\nFija la bandera \"auto\" en UI\nEvita las actualizaciones del estado cíclico cuando un estado es actualizado por el adaptador a la materia\nAvisos de registro cuando los estados del dispositivo opcional no son mapeados\nOculta producto-ID y vendedor Campos de Id en UI al agregar dispositivos en un puente", - "pl": "Upewnij się, aby usunąć wszystkie obiekty i zatrzymać urządzenie, gdy urządzenie jest usuwane w UI\nPo usunięciu urządzenia / obiektu mostka i uruchomieniu adaptera staramy się to wykryć i zatrzymać urządzenie / most\nOptymalizuje ścisłą obsługę adaptera\nUżywa wersji adaptera jako wersji Software i Hardware w urządzeniach Matter narażonych\nFixes \"auto\" flagi w tle, gdy nie ma sensu w obiektach\nFixes \"auto\" flaga w UI\nZapobiega cyklicznym aktualizacjom stanu, gdy stan jest aktualizowany przez adapter do materii\nOstrzeżenia dotyczące dziennika, gdy dane urządzenia opcjonalnego nie są odwzorowane\nHides Product- ID i Vendor Id pola w UI podczas dodawania urządzeń do mostu", - "uk": "Переконайтеся, що видалити всі об'єкти і зупинити пристрій при видаленні пристрою в UI\nКоли пристрій / мостовий об'єкт видалений і адаптер працює, ми намагаємося виявити це і зупинити пристрій / мост\nОптимізуйте тісну обробку адаптера\nВикористання версії адаптера як програмно-апаратних версій у відкритих пристроях Matter\nВиправлення \"auto\" прапорів у спанді при відсутності сенсу в об'єктах\nВиправлення \"авто\" прапора в UI\nЗапобігає циклічному стану оновлення, коли стан оновлюється адаптером до речовини\nУвімкніть попередження, коли пристрій не позначений стан пристроїв\nСховати продукти та постачальник Id поля в UI при додаванні пристроїв в міст", - "zh-cn": "在 UI 中删除设备时确定删除所有对象并停止设备\n当设备/桥对象被删除和适配器运行时,我们尝试检测并停止设备/桥\n优化适配器的密切处理\n在已曝光的 Matter 设备中使用适配器版本作为软件和硬件版本\n当物体没有意义时将“自动”旗帜固定在后端\n在UI中修补“自动”旗帜\n当适配器将状态更新为物质时, 防止循环状态更新\n未映射设备可选设备状态时的日志警告\n隐藏产品识别和供应商 将设备添加到桥中的 ID 字段" - }, - "0.2.2": { - "en": "Uses plain matter.js logs for better readability\nPrevents ghost connection entries in the UI\nAdds some missing implementations for Controller of Door, Window, FloodAlarm and Motion", - "de": "Benutzt reine Materie. js logs für bessere Lesbarkeit\nVerhindert Geisteranschlusseinträge in der UI\nFügt einige fehlende Implementierungen für Controller von Tür, Fenster, FlutAlarm und Motion hinzu", - "ru": "Использует простую материю. js для лучшей читаемости\nПредотвращает записи подключения к привидению в UI\nДобавляет некоторые недостающие реализации для контроллера двери, окна, уведомления о наводнениях и движения", - "pt": "Usa matéria simples. js logs para melhor legibilidade\nPrevine entradas de conexão fantasma na interface do usuário\nAdiciona algumas implementações em falta para Controller of Door, Window, FloodAlarm e Motion", - "nl": "Gebruikt gewone materie. js logs voor betere leesbaarheid\nVoorkomt spookverbinding in de UI\nVoegt enkele ontbrekende implementaties voor Controller van deur, venster, FloodAlarm en beweging", - "fr": "Utilise la matière pure. js logs pour une meilleure lisibilité\nEmpêche les entrées de connexion fantôme dans l'interface utilisateur\nAjoute quelques implémentations manquantes pour Contrôleur de Porte, Fenêtre, InondAlarm et Motion", - "it": "Usa la materia normale. js logs per una migliore leggibilità\nPreviene le voci di connessione fantasma nell'interfaccia utente\nAggiunge alcune implementazioni mancanti per Controller di Porta, Finestra, Inondazione e Moto", - "es": "Usa materia simple. js logs for better readability\nEvita las entradas de conexión fantasma en la UI\nAñade algunas implementaciones faltantes para Controlador de Puerta, Ventana, FloodAlarm y Motion", - "pl": "Używa czystej materii. logi js dla lepszej czytelności\nZapobiega wpisom połączeń widmowych w UI\nDodaje brakujące implementacje dla Kontrolera Drzwi, Okna, Powódź Alarm i Ruch", - "uk": "Використання простої матерії. js журнали для кращого зчитування\nЗапобігає запису з'єднання привидів в УІ\nДодавання деяких відсутніх заходів для контролера дверей, вікна, повені", - "zh-cn": "使用普通物质。 js 更易读的日志\n防止 UI 中的幽灵连接条目\n为 Door 、 Window、 FloodAlmar 和 Motion 控制器添加一些缺失的执行" - }, - "0.2.1": { - "en": "Adds Color Temperature conversion if unit is \"mireds\"\nFixes Color Temperature cluster initialization\nFixes Min/Max calculation when unit conversion is used", - "de": "Fügt Farbtemperaturkonvertierung hinzu, wenn Einheit \"Wunder\" ist\nBehebt die Initialisierung von Farbtemperaturcluster\nBehebt Min/Max-Berechnung, wenn die Einheitskonvertierung verwendet wird", - "ru": "Добавляет преобразование цветовой температуры, если единица является «зерновой»\nИсправления Цвет Температурная инициализация кластера\nИсчисление запятой и Максом при использовании преобразования единицы", - "pt": "Adiciona conversão de temperatura de cor se a unidade é \"espelho\"\nCorrige a inicialização do cluster de temperatura de cor\nCorrige o cálculo Min/Max quando a conversão da unidade é usada", - "nl": "Voegt kleurtemperatuurconversie toe als eenheid \"gespiegeld\" is\nHerstelt kleurtemperatuur cluster initialisatie\nFixes Min/Max berekening wanneer eenheid conversie wordt gebruikt", - "fr": "Ajoute la conversion de température de couleur si l'unité est \"mireds\"\nCorrige l'initialisation du groupe de température de couleur\nCorrige le calcul min/max lorsque la conversion unitaire est utilisée", - "it": "Aggiunge la conversione di temperatura di colore se l'unità è \"mireds\"\nFissa l'inizializzazione del cluster di temperatura colore\nRisolve il calcolo Min/Max quando viene utilizzata la conversione dell'unità", - "es": "Agrega la conversión de temperatura de color si la unidad es \"mirada\"\nArreglos de inicialización del grupo de temperatura de color\nArreglos Min/Max cálculo cuando se utiliza la conversión de unidad", - "pl": "Dodaje konwersja temperatury koloru, jeśli jednostka jest \"mireds\"\nFixes Color Temperatura klaster inicjalizacja\nFixes Min / Max Calculation when unit conversion is used", - "uk": "Додавання перетворення температури кольору, якщо блок \"перемирає\"\nВиправлення початкової ініціалізації кольорових температур\nВиправлення мінімальних/максів при переході блоку використовується", - "zh-cn": "如果单位为“ 迷恋” , 则添加颜色温度转换\n修复色彩温度集群初始化\n在使用单位转换时修复 Min/ Max 计算" - } + "common": { + "name": "matter", + "version": "0.2.7", + "news": { + "0.2.7": { + "en": "Cleans up objects when a controller node is deleted\nPrevents controller configuration changes to be executed in parallel", + "de": "Reinigt Objekte, wenn ein Controller-Knoten gelöscht wird\nVerhindert, dass Reglerkonfigurationsänderungen parallel ausgeführt werden", + "ru": "Очищает объекты при удалении узла контроллера\nПредотвращает изменения конфигурации контроллера, которые должны быть выполнены параллельно", + "pt": "Limpa objetos quando um nó do controlador é excluído\nImpede que as alterações de configuração do controlador sejam executadas em paralelo", + "nl": "Opruimt objecten wanneer een controllerknooppunt wordt verwijderd\nVoorkomt dat de configuratie van de controller parallel wordt uitgevoerd", + "fr": "Nettoie les objets lorsqu'un noeud du contrôleur est supprimé\nEmpêche les modifications de configuration du contrôleur d'être exécutées en parallèle", + "it": "Pulisce gli oggetti quando un nodo del controller viene eliminato\nPreviene modifiche di configurazione del controller da eseguire in parallelo", + "es": "Limpia objetos cuando se elimina un nodo controlador\nEvita los cambios de configuración del controlador a ejecutarse en paralelo", + "pl": "Oczyszcza obiekty po usunięciu węzła kontrolera\nZapobiega zmianom konfiguracji sterownika, które mają być wykonywane równolegle", + "uk": "Очищення об'єктів при видаленні вузла контролера\nЗапобігає зміни конфігурації контролера, які будуть виконуватися паралельно", + "zh-cn": "删除控制节点时清理对象\n防止同时执行控制器配置更改" + }, + "0.2.6": { + "en": "Fixes ColorTemperature light initialization because of matter.js update", + "de": "Behebt die ColorTemperatur Licht Initialisierung aufgrund der Materie. js update", + "ru": "Исправляет инициализацию цвета температуры из-за материи. js обновление", + "pt": "Corrige a inicialização de luz ColorTemperature por causa da matéria. js update", + "nl": "Bevestigt kleurTemperatuur licht initialisatie vanwege materie. js update", + "fr": "Corrige l'initialisation de la lumière ColorTemperature à cause de la matière. Mise à jour de js", + "it": "Fissa l'inizializzazione della luce ColorTemperature a causa della materia. aggiornamento js", + "es": "Arreglos ColorTemperatura inicialización de la luz debido a la materia. js update", + "pl": "Fixes ColorTemperatura inicjalizacja światła z powodu materii. Aktualizacja js", + "uk": "Фіксує колірТемпературна ініціалізація світла через матерію. оновлення js", + "zh-cn": "修补颜色Temperature光因物质而初始化. js 更新" + }, + "0.2.5": { + "en": "Sets the \"no-compose\" flag correctly to normally use composed if needed and adds it to a missing dialog\nAllows to use null values if needed\nFixes UNREACH handling for devices\nFixes object change handling for controller\nAllow Bridges to expose its name as a device name\nAllows to rename controller nodes and devices", + "de": "Setzt das \"no-compose\"-Flag richtig ein, um normalerweise komponiert zu verwenden und fügt es zu einem fehlenden Dialog hinzu\nErlaubt, bei Bedarf Nullwerte zu verwenden\nBehebt UNREACH-Handling für Geräte\nFixes Objektänderungshandling für Controller\nErlaubt Bridges, seinen Namen als Gerätenamen zu entlarven\nErmöglicht die Umbenennung von Controller-Knoten und -Geräten", + "ru": "Установить флаг «без композиций» правильно, чтобы обычно использовать его, если это необходимо, и добавить его в недостающий диалог\nПозволяет использовать нулевые значения в случае необходимости\nFixes UNREACH для устройств\nИсправление изменения объекта для контроллера\nПозволяет Bridges разоблачить свое имя как имя устройства\nПозволяет переименовать узлы и устройства контроллера", + "pt": "Define a bandeira \"não compor\" corretamente para usar normalmente composta se necessário e adiciona-a a uma caixa de diálogo ausente\nPermite usar valores nulos se necessário\nCorrige o manuseio UNREACH para dispositivos\nCorrige o manuseio de alterações de objetos para o controlador\nPermitir que Bridges exponha seu nome como um nome de dispositivo\nPermite renomear nós de controlador e dispositivos", + "nl": "Stelt de \"no-compose\"-vlag correct in om gecomposed te gebruiken indien nodig en voegt deze toe aan een ontbrekend dialoogvenster\nHiermee kunt u zo nodig nulwaarden gebruiken\nBevestigt UNREACH-afhandeling voor apparaten\nHerstelt object verandering behandeling voor controller\nBruggen toestaan om haar naam als apparaatnaam te ontmaskeren\nHiermee kunt u controllerknooppunten en -apparaten hernoemen", + "fr": "Définit le drapeau \"non-composant\" correctement pour utiliser normalement composé si nécessaire et l'ajoute à une boîte de dialogue manquante\nPermet d'utiliser des valeurs null si nécessaire\nCorrige la manipulation d'UNREACH pour les appareils\nCorrection de la manipulation du changement d'objet pour le contrôleur\nPermettre à Bridges d'exposer son nom comme un nom d'appareil\nPermet de renommer les nœuds et les périphériques du contrôleur", + "it": "Imposta la bandiera \"no-compose\" correttamente per utilizzare normalmente composta se necessario e aggiungerla a una finestra di dialogo mancante\nConsente di utilizzare valori null se necessario\nFissa la gestione UNREACH per dispositivi\nRisolve la gestione del cambiamento degli oggetti per il controller\nConsente a Bridges di esporre il suo nome come nome di un dispositivo\nConsente di rinominare nodi e dispositivi del controller", + "es": "Establece la bandera \"no-compos\" correctamente para usar normalmente compuesta si es necesario y la añade a un diálogo perdido\nPermite utilizar valores nulos si es necesario\nFija el manejo UNREACH para dispositivos\nArregla el manejo del cambio de objeto para el controlador\nPermitir a Bridges exponer su nombre como un nombre de dispositivo\nPermite renombrar nodos y dispositivos controlador", + "pl": "Ustawia flagę \"no- composite\" poprawnie, aby normalnie używać skomponowanego w razie potrzeby i dodaje ją do brakującego okna dialogowego\nPozwala na użycie wartości zerowych w razie potrzeby\nFixes UNREACH obsługi urządzeń\nUstawia obsługę zmiany obiektu dla kontrolera\nPozwól Mostkom na ujawnienie nazwy urządzenia\nUmożliwia zmianę nazwy węzłów i urządzeń sterownika", + "uk": "Встановіть прапорець \"no-compose\" правильно, щоб зазвичай використовувати, що складається, якщо потрібно і додає його до відсутній діалог\nДозволяє використовувати значення null, якщо потрібно\nВиправлення роботи UNREACH для пристроїв\nВиправлення управління змінами об'єкта для контролера\nДозволяє мостів, щоб виставити ім'я пристрою\nДозволяє перейменувати вузли контролера і пристрої", + "zh-cn": "设置“ 无编解” 旗帜, 以便在必要时正常使用编解, 并将其添加到缺少的对话框中\n需要时允许使用无效值\n修复设备的UNREACH处理\n修正控制器对象更改处理\n允许 Bridges 将其名称曝光为设备名称\n允许重命名控制器节点和设备" + }, + "0.2.4": { + "en": "Shows a progress indicator when deleting controller nodes\nCuts names and labels to 32 or 64 characters as needed by Matter\nImproves error handling on devices and bridges\nClear storage when removing a bridged device\nProcesses changed objects with a 5s delay to prevent too many changes at once\nFixes version determination\nInitializes Device objects more lazily", + "de": "Zeigt einen Fortschrittsindikator beim Löschen von Controller-Knoten\nSchneidet Namen und Labels auf 32 oder 64 Zeichen nach Bedarf von Matter\nVerbessert die Fehlerbehandlung auf Geräten und Brücken\nLöschen Sie die Speicherung beim Entfernen eines überbrückten Geräts\nProzesse veränderten Objekte mit einer Verzögerung von 5s, um zu viele Änderungen auf einmal zu verhindern\nBehebt die Versionsbestimmung\nInitialisiert Geräteobjekte mehr lazily", + "ru": "Показывает индикатор прогресса при удалении узлов контроллера\nОтрезает имена и этикетки до 32 или 64 символов по мере необходимости от Matter\nУлучшает обработку ошибок на устройствах и мостах\nЧистое хранение при удалении мостового устройства\nПроцессы изменили объекты с задержкой 5s, чтобы предотвратить слишком много изменений сразу\nОпределение версии\nИнициализировать объекты устройства более лениво", + "pt": "Mostra um indicador de progresso ao excluir nós do controlador\nCorta nomes e rótulos para 32 ou 64 caracteres conforme necessário pela Matter\nMelhora o manuseio de erros em dispositivos e pontes\nLimpar armazenamento ao remover um dispositivo ponte\nProcessos mudou objetos com um atraso de 5s para evitar muitas mudanças ao mesmo tempo\nCorrige a determinação da versão\nInicializa objetos de dispositivo mais preguiçosamente", + "nl": "Toont een voortgangsindicator bij het verwijderen van controllerknooppunten\nKnipt namen en labels tot 32 of 64 tekens naar behoefte door Matter\nVerbetert de foutafhandeling op apparaten en bruggen\nBewaarruimte wissen bij het verwijderen van een gebrugd apparaat\nProcessen veranderden objecten met een 5s vertraging om te veel veranderingen tegelijk te voorkomen\nRepareert versiebepaling\nInitialiseert apparaat objecten luier", + "fr": "Affiche un indicateur de progression lors de la suppression des nœuds du contrôleur\nCoupe les noms et les étiquettes à 32 ou 64 caractères selon les besoins de la matière\nAméliore la gestion des erreurs sur les appareils et les ponts\nEffacer le stockage lors de l'enlèvement d'un dispositif ponté\nLes processus ont changé des objets avec un retard de 5s pour éviter trop de changements à la fois\nCorrige la détermination de la version\nInitialise les objets du périphérique plus paresseusement", + "it": "Mostra un indicatore di progresso quando si eliminano i nodi del controller\nTagli nomi ed etichette a 32 o 64 caratteri come necessario da Matter\nMigliora la gestione degli errori su dispositivi e ponti\nConservazione chiara quando si rimuove un dispositivo pontificato\nProcessi modificati oggetti con un ritardo di 5s per prevenire troppe modifiche contemporaneamente\nFissa la determinazione della versione\nInizialmente gli oggetti del dispositivo più pigramente", + "es": "Muestra un indicador de progreso al eliminar los nodos del controlador\nCorta nombres y etiquetas a 32 o 64 caracteres según sea necesario por Matter\nMejora el manejo de errores en dispositivos y puentes\nDespejado el almacenamiento cuando se quita un dispositivo puente\nProcesos cambiaron objetos con un retraso de 5s para prevenir demasiados cambios a la vez\nDeterminación de la versión fija\nInicia objetos de dispositivo más lazily", + "pl": "Pokazuje wskaźnik postępu podczas usuwania węzłów sterownika\nWycina nazwy i etykiety do 32 lub 64 znaków według potrzeb Matter\nPoprawia obsługę błędów na urządzeniach i mostach\nPrzezroczysta pamięć masowa podczas usuwania zaokrąglonego urządzenia\nProcesy zmieniały obiekty z opóźnieniem 5s, aby zapobiec zbyt wielu zmian naraz\nUstalanie wersji filtrów\nInicjuje obiekty urządzenia bardziej leniwie", + "uk": "Показує індикатор прогресу при видаленні вузлів контролера\nНарізки імен і етикеток до 32 або 64 символів, як це потрібно за допомогою Matter\nПокращує обробку помилок на пристроях і мостах\nПрозоре зберігання при видаленні мостового пристрою\nПроцеси змінилися об'єкти з затримкою 5-х, щоб запобігти занадто багато змін одночасно\nВизначення виправлень\nНавігація Пристрої об'єктів більш лляною", + "zh-cn": "删除控制器节点时显示进度指标\n根据 Matter 的需要将名称和标签剪切为 32 或 64 个字符\n改进设备和桥梁的错误处理\n删除桥式设备时清除存储\n用5s延迟来防止太多更改的处理对象\n修复版本确定\n初始化设备对象更加懒散" + }, + "0.2.3": { + "en": "Makes sure to delete all objects and stop device when a device is deleted in UI\nWhen a devices/bridge object is deleted and adapter runs we try to detect this and stop the device/bridge\nOptimizes close handling of adapter\nUses adapter version as Software and Hardware versions in the exposed Matter devices\nFixes \"auto\" flags in backend when make no sense in objects\nFixes \"auto\" flag in UI\nPrevents cyclic state updates when a state is updated by the adapter to matter\nLog warnings when device optional device states are not mapped\nHides Product-ID and VendorId fields in UI when adding devices into a bridge", + "de": "Vergewissern Sie sich, alle Objekte zu löschen und das Gerät zu stoppen, wenn ein Gerät in UI gelöscht wird\nWenn ein Gerät/Brücke-Objekt gelöscht wird und der Adapter läuft, versuchen wir dies zu erkennen und das Gerät/Brücke zu stoppen\nOptimiert die enge Handhabung des Adapters\nVerwendet die Adapterversion als Software- und Hardwareversionen in den exponierten Matter-Geräten\nBehebt \"auto\" Fahnen im Backend, wenn kein Sinn in Objekten\nBehebt \"auto\"-Flag in UI\nVerhindert zyklische Zustandsaktualisierungen, wenn ein Zustand durch den Adapter zur Materie aktualisiert wird\nLog-Warnungen, wenn Geräte optionale Gerätezustände nicht abgebildet werden\nHides Produkt-ID und Verkäufer Id-Felder in UI beim Hinzufügen von Geräten in eine Brücke", + "ru": "Убедитесь, что удалить все объекты и остановить устройство, когда устройство удалено в пользовательском интерфейсе\nПри удалении устройства/мост и запуске адаптера мы пытаемся обнаружить это и остановить устройство/мост\nОптимизирует тесную обработку адаптера\nИспользует версию адаптера как версии программного обеспечения и оборудования в устройствах, находящихся под угрозой\nИсправления «авто» флаги в задней части, когда нет смысла в объектах\nФлаг \"авто\" в UI\nПредотвращает циклические обновления состояния, когда состояние обновляется адаптером к материи\nЖурнал предупреждения, когда состояния устройства не отображаются\nHides Product-ID и Vendor Id поля в пользовательском интерфейсе при добавлении устройств в мост", + "pt": "Certifica-se de excluir todos os objetos e parar o dispositivo quando um dispositivo é excluído na interface do usuário\nQuando um objeto de dispositivos / ponte é excluído e o adaptador é executado, tentamos detectar isso e parar o dispositivo / ponte\nOtimiza o manuseio próximo do adaptador\nUsa a versão do adaptador como versões de software e hardware nos dispositivos expostos da Matter\nCorrige bandeiras \"auto\" no backend quando não faz sentido em objetos\nCorrige a bandeira \"auto\" na interface do usuário\nPrevine atualizações de estado cíclico quando um estado é atualizado pelo adaptador para importar\nAvisos de log quando os estados do dispositivo opcional não são mapeados\nEsconde Produto-ID e Fornecedor Campos de identificação na interface do usuário ao adicionar dispositivos em uma ponte", + "nl": "Zorgt ervoor dat alle objecten te verwijderen en apparaat te stoppen wanneer een apparaat wordt verwijderd in UI\nWanneer een apparaat/brug object wordt verwijderd en de adapter draait proberen we dit te detecteren en het apparaat/brug te stoppen\nOptimaliseert het gebruik van de adapter\nGebruikt adapterversie als Software en Hardware versies in de blootgestelde Matter apparaten\nFixeert \"auto\"-vlaggen in backend wanneer geen zin in objecten\nFixeert \"auto\" vlag in UI\nVoorkomt cyclische status updates wanneer een toestand wordt bijgewerkt door de adapter aan materie\nLogwaarschuwingen wanneer optionele apparaattoestanden niet in kaart zijn gebracht\nVerbergt product-ID en leverancier Id velden in UI bij het toevoegen van apparaten aan een brug", + "fr": "S'assure de supprimer tous les objets et d'arrêter le périphérique quand un périphérique est supprimé dans l'interface utilisateur\nLorsqu'un objet périphérique/pont est supprimé et que l'adaptateur fonctionne, nous essayons de le détecter et arrêtons l'appareil/pont\nOptimise la manipulation étroite de l'adaptateur\nUtilise la version adaptateur comme versions logicielles et matérielles dans les périphériques de matière exposés\nCorrige les drapeaux \"auto\" en backend quand n'ont aucun sens dans les objets\nCorrection du drapeau \"auto\" dans l'interface utilisateur\nPrévient les mises à jour de l'état cyclique lorsqu'un état est mis à jour par l'adaptateur pour la matière\nSignaler les avertissements lorsque les états optionnels de l'appareil ne sont pas cartographiés\nCacher le produit-ID et le fournisseur Champs d'id dans l'interface utilisateur lors de l'ajout de dispositifs dans un pont", + "it": "Assicurarsi di eliminare tutti gli oggetti e fermare il dispositivo quando un dispositivo viene eliminato in UI\nQuando un oggetto dispositivo/ponte viene eliminato e l'adattatore viene eseguito cerchiamo di rilevare questo e di fermare il dispositivo/ponte\nOttimizza la stretta gestione dell'adattatore\nUtilizza la versione adattatore come versioni software e hardware nei dispositivi Matter esposti\nFissa bandiere \"auto\" in backend quando non hanno senso in oggetti\nFissa la bandiera \"auto\" in UI\nPreviene gli aggiornamenti dello stato ciclico quando uno stato viene aggiornato dall'adattatore alla materia\nAvvertenze di registro quando gli stati del dispositivo facoltativi non sono mappati\nNasconde prodotto-ID e venditore Id campi in UI quando si aggiungono dispositivi in un ponte", + "es": "Asegúrese de eliminar todos los objetos y detener el dispositivo cuando se elimina un dispositivo en UI\nCuando se elimina un objeto de dispositivo / puente y se ejecuta el adaptador intentamos detectarlo y detener el dispositivo/puente\nOptimiza el manejo cercano del adaptador\nUtiliza la versión de adaptador como versiones de software y hardware en los dispositivos de Matter expuestos\nFija banderas \"auto\" en backend cuando no tenga sentido en los objetos\nFija la bandera \"auto\" en UI\nEvita las actualizaciones del estado cíclico cuando un estado es actualizado por el adaptador a la materia\nAvisos de registro cuando los estados del dispositivo opcional no son mapeados\nOculta producto-ID y vendedor Campos de Id en UI al agregar dispositivos en un puente", + "pl": "Upewnij się, aby usunąć wszystkie obiekty i zatrzymać urządzenie, gdy urządzenie jest usuwane w UI\nPo usunięciu urządzenia / obiektu mostka i uruchomieniu adaptera staramy się to wykryć i zatrzymać urządzenie / most\nOptymalizuje ścisłą obsługę adaptera\nUżywa wersji adaptera jako wersji Software i Hardware w urządzeniach Matter narażonych\nFixes \"auto\" flagi w tle, gdy nie ma sensu w obiektach\nFixes \"auto\" flaga w UI\nZapobiega cyklicznym aktualizacjom stanu, gdy stan jest aktualizowany przez adapter do materii\nOstrzeżenia dotyczące dziennika, gdy dane urządzenia opcjonalnego nie są odwzorowane\nHides Product- ID i Vendor Id pola w UI podczas dodawania urządzeń do mostu", + "uk": "Переконайтеся, що видалити всі об'єкти і зупинити пристрій при видаленні пристрою в UI\nКоли пристрій / мостовий об'єкт видалений і адаптер працює, ми намагаємося виявити це і зупинити пристрій / мост\nОптимізуйте тісну обробку адаптера\nВикористання версії адаптера як програмно-апаратних версій у відкритих пристроях Matter\nВиправлення \"auto\" прапорів у спанді при відсутності сенсу в об'єктах\nВиправлення \"авто\" прапора в UI\nЗапобігає циклічному стану оновлення, коли стан оновлюється адаптером до речовини\nУвімкніть попередження, коли пристрій не позначений стан пристроїв\nСховати продукти та постачальник Id поля в UI при додаванні пристроїв в міст", + "zh-cn": "在 UI 中删除设备时确定删除所有对象并停止设备\n当设备/桥对象被删除和适配器运行时,我们尝试检测并停止设备/桥\n优化适配器的密切处理\n在已曝光的 Matter 设备中使用适配器版本作为软件和硬件版本\n当物体没有意义时将“自动”旗帜固定在后端\n在UI中修补“自动”旗帜\n当适配器将状态更新为物质时, 防止循环状态更新\n未映射设备可选设备状态时的日志警告\n隐藏产品识别和供应商 将设备添加到桥中的 ID 字段" + }, + "0.2.2": { + "en": "Uses plain matter.js logs for better readability\nPrevents ghost connection entries in the UI\nAdds some missing implementations for Controller of Door, Window, FloodAlarm and Motion", + "de": "Benutzt reine Materie. js logs für bessere Lesbarkeit\nVerhindert Geisteranschlusseinträge in der UI\nFügt einige fehlende Implementierungen für Controller von Tür, Fenster, FlutAlarm und Motion hinzu", + "ru": "Использует простую материю. js для лучшей читаемости\nПредотвращает записи подключения к привидению в UI\nДобавляет некоторые недостающие реализации для контроллера двери, окна, уведомления о наводнениях и движения", + "pt": "Usa matéria simples. js logs para melhor legibilidade\nPrevine entradas de conexão fantasma na interface do usuário\nAdiciona algumas implementações em falta para Controller of Door, Window, FloodAlarm e Motion", + "nl": "Gebruikt gewone materie. js logs voor betere leesbaarheid\nVoorkomt spookverbinding in de UI\nVoegt enkele ontbrekende implementaties voor Controller van deur, venster, FloodAlarm en beweging", + "fr": "Utilise la matière pure. js logs pour une meilleure lisibilité\nEmpêche les entrées de connexion fantôme dans l'interface utilisateur\nAjoute quelques implémentations manquantes pour Contrôleur de Porte, Fenêtre, InondAlarm et Motion", + "it": "Usa la materia normale. js logs per una migliore leggibilità\nPreviene le voci di connessione fantasma nell'interfaccia utente\nAggiunge alcune implementazioni mancanti per Controller di Porta, Finestra, Inondazione e Moto", + "es": "Usa materia simple. js logs for better readability\nEvita las entradas de conexión fantasma en la UI\nAñade algunas implementaciones faltantes para Controlador de Puerta, Ventana, FloodAlarm y Motion", + "pl": "Używa czystej materii. logi js dla lepszej czytelności\nZapobiega wpisom połączeń widmowych w UI\nDodaje brakujące implementacje dla Kontrolera Drzwi, Okna, Powódź Alarm i Ruch", + "uk": "Використання простої матерії. js журнали для кращого зчитування\nЗапобігає запису з'єднання привидів в УІ\nДодавання деяких відсутніх заходів для контролера дверей, вікна, повені", + "zh-cn": "使用普通物质。 js 更易读的日志\n防止 UI 中的幽灵连接条目\n为 Door 、 Window、 FloodAlmar 和 Motion 控制器添加一些缺失的执行" + }, + "0.2.1": { + "en": "Adds Color Temperature conversion if unit is \"mireds\"\nFixes Color Temperature cluster initialization\nFixes Min/Max calculation when unit conversion is used", + "de": "Fügt Farbtemperaturkonvertierung hinzu, wenn Einheit \"Wunder\" ist\nBehebt die Initialisierung von Farbtemperaturcluster\nBehebt Min/Max-Berechnung, wenn die Einheitskonvertierung verwendet wird", + "ru": "Добавляет преобразование цветовой температуры, если единица является «зерновой»\nИсправления Цвет Температурная инициализация кластера\nИсчисление запятой и Максом при использовании преобразования единицы", + "pt": "Adiciona conversão de temperatura de cor se a unidade é \"espelho\"\nCorrige a inicialização do cluster de temperatura de cor\nCorrige o cálculo Min/Max quando a conversão da unidade é usada", + "nl": "Voegt kleurtemperatuurconversie toe als eenheid \"gespiegeld\" is\nHerstelt kleurtemperatuur cluster initialisatie\nFixes Min/Max berekening wanneer eenheid conversie wordt gebruikt", + "fr": "Ajoute la conversion de température de couleur si l'unité est \"mireds\"\nCorrige l'initialisation du groupe de température de couleur\nCorrige le calcul min/max lorsque la conversion unitaire est utilisée", + "it": "Aggiunge la conversione di temperatura di colore se l'unità è \"mireds\"\nFissa l'inizializzazione del cluster di temperatura colore\nRisolve il calcolo Min/Max quando viene utilizzata la conversione dell'unità", + "es": "Agrega la conversión de temperatura de color si la unidad es \"mirada\"\nArreglos de inicialización del grupo de temperatura de color\nArreglos Min/Max cálculo cuando se utiliza la conversión de unidad", + "pl": "Dodaje konwersja temperatury koloru, jeśli jednostka jest \"mireds\"\nFixes Color Temperatura klaster inicjalizacja\nFixes Min / Max Calculation when unit conversion is used", + "uk": "Додавання перетворення температури кольору, якщо блок \"перемирає\"\nВиправлення початкової ініціалізації кольорових температур\nВиправлення мінімальних/максів при переході блоку використовується", + "zh-cn": "如果单位为“ 迷恋” , 则添加颜色温度转换\n修复色彩温度集群初始化\n在使用单位转换时修复 Min/ Max 计算" + } + }, + "title": "Matter", + "titleLang": { + "en": "Matter protocol", + "de": "Matter Protokoll", + "ru": "Мэттерный протокол", + "pt": "Protocolo de matéria", + "nl": "Matter protocol", + "fr": "Matter protocol", + "it": "Protocollo della materia", + "es": "Protocolo de la materia", + "pl": "Protokół Matter", + "uk": "Протокол Маттер", + "zh-cn": "马特议定书" + }, + "desc": { + "en": "Controlling and simulation of matter devices", + "de": "Steuerung und Simulation von Matter-Geräten", + "ru": "Контроль и моделирование Matter-устройств", + "pt": "Controle e simulação de Matter-dispositivos", + "nl": "Controleren en simulatie van Matter-apparaten", + "fr": "Contrôle et simulation des Matter-dispositifs", + "it": "Controllo e simulazione di Matter-dispositivi", + "es": "Control y simulación de Matter-dispositivos", + "pl": "Kontrola i symulacja Matter-urządzeń", + "uk": "Контроль та імітація Matter-пристроїв", + "zh-cn": "控制和模拟事故装置" + }, + "authors": ["Denis Haev "], + "license": "Apache-2.0", + "platform": "Javascript/Node.js", + "mode": "daemon", + "nogit": true, + "loglevel": "info", + "readme": "https://github.com/ioBroker/ioBroker.matter/blob/master/README.md", + "icon": "matter.png", + "connectionType": "local", + "dataSource": "push", + "adminUI": { + "config": "materialize" + }, + "tier": 3, + "keywords": ["matter"], + "stopTimeout": 5000, + "enabled": true, + "compact": false, + "singletonHost": true, + "extIcon": "https://raw.githubusercontent.com/ioBroker/ioBroker.matter/master/admin/matter.png", + "type": "iot-systems", + "messagebox": true, + "plugins": { + "sentry": { + "dsn": "https://de38f4a20c964ce395d2e236c64aa075@sentry.iobroker.net/234" + } + }, + "licenseInformation": { + "type": "free", + "license": "Apache-2.0" + }, + "supportedMessages": { + "deviceManager": true + } }, - "title": "Matter", - "titleLang": { - "en": "Matter protocol", - "de": "Matter Protokoll", - "ru": "Мэттерный протокол", - "pt": "Protocolo de matéria", - "nl": "Matter protocol", - "fr": "Matter protocol", - "it": "Protocollo della materia", - "es": "Protocolo de la materia", - "pl": "Protokół Matter", - "uk": "Протокол Маттер", - "zh-cn": "马特议定书" + "protectedNative": ["password", "login"], + "encryptedNative": ["password"], + "native": { + "interface": "", + "debug": false, + "login": "", + "pass": "", + "defaultBridge": "" }, - "desc": { - "en": "Controlling and simulation of matter devices", - "de": "Steuerung und Simulation von Matter-Geräten", - "ru": "Контроль и моделирование Matter-устройств", - "pt": "Controle e simulação de Matter-dispositivos", - "nl": "Controleren en simulatie van Matter-apparaten", - "fr": "Contrôle et simulation des Matter-dispositifs", - "it": "Controllo e simulazione di Matter-dispositivi", - "es": "Control y simulación de Matter-dispositivos", - "pl": "Kontrola i symulacja Matter-urządzeń", - "uk": "Контроль та імітація Matter-пристроїв", - "zh-cn": "控制和模拟事故装置" - }, - "authors": [ - "Denis Haev " - ], - "license": "Apache-2.0", - "platform": "Javascript/Node.js", - "mode": "daemon", - "nogit": true, - "loglevel": "info", - "readme": "https://github.com/ioBroker/ioBroker.matter/blob/master/README.md", - "icon": "matter.png", - "connectionType": "local", - "dataSource": "push", - "adminUI": { - "config": "materialize" - }, - "tier": 3, - "keywords": [ - "matter" - ], - "stopTimeout": 5000, - "enabled": true, - "compact": false, - "singletonHost": true, - "extIcon": "https://raw.githubusercontent.com/ioBroker/ioBroker.matter/master/admin/matter.png", - "type": "iot-systems", - "messagebox": true, - "plugins": { - "sentry": { - "dsn": "https://de38f4a20c964ce395d2e236c64aa075@sentry.iobroker.net/234" - } - }, - "licenseInformation": { - "type": "free", - "license": "Apache-2.0" - }, - "supportedMessages": { - "deviceManager": true - } - }, - "protectedNative": [ - "password", - "login" - ], - "encryptedNative": [ - "password" - ], - "native": { - "interface": "", - "debug": false, - "login": "", - "pass": "", - "defaultBridge": "" - }, - "objects": [], - "instanceObjects": [] + "objects": [], + "instanceObjects": [ + { + "id": "welcomeDialog", + "common": { + "name": "Welcome dialog showed", + "role": "indicator", + "type": "boolean", + "read": true, + "write": false + }, + "native": {} + } + ] } diff --git a/src-admin/package.json b/src-admin/package.json index 8631d0a2..e34fc57c 100644 --- a/src-admin/package.json +++ b/src-admin/package.json @@ -23,7 +23,7 @@ "scripts": { "start": "vite", "build": "vite build", - "lint": "eslint --fix --ext .js,.jsx,.tsx src", + "lint": "eslint -c eslint.config.mjs", "check-ts": "tsc --noEmit --checkJS false", "tsc": "tsc --project tsconfig.json" }, diff --git a/src-admin/src/App.tsx b/src-admin/src/App.tsx index 71361d40..715197ef 100644 --- a/src-admin/src/App.tsx +++ b/src-admin/src/App.tsx @@ -8,13 +8,14 @@ import { DialogContent, DialogContentText, DialogTitle, + Fab, LinearProgress, Tab, Tabs, Tooltip, } from '@mui/material'; -import { SignalCellularOff as IconNotAlive } from '@mui/icons-material'; +import { Help as IconHelp, SignalCellularOff as IconNotAlive } from '@mui/icons-material'; import { AdminConnection, @@ -32,6 +33,7 @@ import BridgesTab from './Tabs/Bridges'; import ControllerTab from './Tabs/Controller'; import DevicesTab from './Tabs/Devices'; import OptionsTab from './Tabs/Options'; +import WelcomeDialog from './components/WelcomeDialog'; import type { CommissioningInfo, @@ -93,12 +95,14 @@ interface AppState extends GenericAppState { /** Undefined if no detection ran yet */ detectedDevices?: DetectedRoom[]; ready: boolean; + showWelcomeDialog: boolean; progress: { title?: ioBroker.StringOrTranslated; text?: ioBroker.StringOrTranslated; indeterminate?: boolean; value?: number; } | null; + welcomeDialogShowed: boolean; } class App extends GenericApp { @@ -155,6 +159,8 @@ class App extends GenericApp { }, ready: false, progress: null, + showWelcomeDialog: false, + welcomeDialogShowed: false, }); this.alert = window.alert; @@ -253,6 +259,8 @@ class App extends GenericApp { const alive = await this.socket.getState(`system.adapter.matter.${this.instance}.alive`); + const welcomeDialog = await this.socket.getState(`matter.${this.instance}.welcomeDialog`); + if (alive?.val) { this.refreshBackendSubscription(true); } @@ -262,6 +270,8 @@ class App extends GenericApp { commissioning, ready: true, alive: !!alive?.val, + showWelcomeDialog: !welcomeDialog?.val, + welcomeDialogShowed: !!welcomeDialog?.val, }); } @@ -278,6 +288,28 @@ class App extends GenericApp { } }; + renderWelcomeDialog(): React.JSX.Element | null { + if (!this.state.showWelcomeDialog) { + return null; + } + + return ( + { + if (!this.state.welcomeDialogShowed) { + await this.socket.setState(`matter.${this.instance}.welcomeDialog`, true, true); + } + this.setState({ showWelcomeDialog: false, welcomeDialogShowed: true }); + }} + login={this.state.native.login} + pass={this.state.native.pass} + /> + ); + } + onBackendUpdates = (update: GUIMessage | null): void => { if (!update) { return; @@ -440,6 +472,7 @@ class App extends GenericApp { this.updateNativeValue(id, value, resolve); }); }} + onShowWelcomeDialog={() => this.setState({ showWelcomeDialog: true })} onLoad={(native: Record) => this.onLoadConfig(native)} socket={this.socket} common={this.common} @@ -625,6 +658,7 @@ class App extends GenericApp { {this.renderToast()} {this.renderProgressDialog()} + {this.renderWelcomeDialog()}
{
)} + {this.common && this.state.selectedTab !== 'options' ? ( + + { + const win = window.open(this.common?.readme, '_blank'); + win?.focus(); + }} + > + + + + ) : null} diff --git a/src-admin/src/Tabs/Bridges.tsx b/src-admin/src/Tabs/Bridges.tsx index ebc618dd..7fc024e7 100644 --- a/src-admin/src/Tabs/Bridges.tsx +++ b/src-admin/src/Tabs/Bridges.tsx @@ -11,12 +11,13 @@ import { DomainDisabled, Edit, FormatListBulleted, + Info, KeyboardArrowDown, KeyboardArrowUp, - QuestionMark, Save, UnfoldLess, UnfoldMore, + Warning, } from '@mui/icons-material'; import { Button, @@ -41,10 +42,10 @@ import { Tooltip, } from '@mui/material'; -import { I18n, SelectID, type IobTheme } from '@iobroker/adapter-react-v5'; +import { I18n, SelectID, type IobTheme, IconDeviceType } from '@iobroker/adapter-react-v5'; import InfoBox from '../components/InfoBox'; -import DeviceDialog, { DEVICE_ICONS, SUPPORTED_DEVICES } from '../components/DeviceDialog'; +import DeviceDialog, { SUPPORTED_DEVICES } from '../components/DeviceDialog'; import type { BridgeDescription, BridgeDeviceDescription, @@ -124,6 +125,8 @@ const styles: Record = { }), }; +const MAX_UN_COMMISSIONED_DEVICES = 15; + interface BridgesProps extends BridgesAndDevicesProps { checkLicenseOnAdd: ( type: 'addBridge' | 'addDevice' | 'addDeviceToBridge', @@ -179,6 +182,11 @@ interface BridgesState extends BridgesAndDevicesState { /** If dialog open */ open: false; }; + showCommissioningHint: { + name: string; + bridgeIndex: number; + devices: BridgeDeviceDescription[]; + } | null; editBridgeDialog: AddBridgeDialog | EditBridgeDialog | null; editDeviceDialog: { type: 'device'; @@ -214,6 +222,8 @@ interface BridgesState extends BridgesAndDevicesState { type: 'bridge' | 'device'; } | null; suppressDeleteTime: number; + suppressAddTime: number; + suppressAddEnabled: boolean; suppressDeleteEnabled: boolean; } @@ -238,6 +248,7 @@ export class Bridges extends BridgesAndDevices { addDeviceDialog: null, editBridgeDialog: null, editDeviceDialog: null, + showCommissioningHint: null, bridgesOpened, }); } @@ -554,7 +565,7 @@ export class Bridges extends BridgesAndDevices { }} renderValue={value => ( - {DEVICE_ICONS[value] || } + {I18n.t(value)} )} @@ -566,7 +577,7 @@ export class Bridges extends BridgesAndDevices { key={type} value={type} > - {DEVICE_ICONS[type as Types] || } + {I18n.t(type)} ))} @@ -756,6 +767,71 @@ export class Bridges extends BridgesAndDevices { ); } + renderCommissioningHintDialog(): React.JSX.Element | null { + if (!this.state.showCommissioningHint) { + return null; + } + + if (this.state.suppressAddTime && this.state.suppressAddTime > Date.now()) { + setTimeout(() => { + if (!this.state.showCommissioningHint) { + return; + } + this.setState({ + addDevicePreDialog: { open: true, bridge: this.state.showCommissioningHint }, + showCommissioningHint: null, + }); + }, 50); + return null; + } + + return ( + this.setState({ showCommissioningHint: null })} + open={!0} + > + {I18n.t('Warning')} + + {I18n.t('Warning about 15 devices')} + this.setState({ suppressAddEnabled: e.target.checked })} + /> + } + label={I18n.t('Suppress question for 5 minutes')} + /> + + + + + + + ); + } + renderAddDeviceDialog(): React.JSX.Element | null { if (!this.state.addDeviceDialog) { return null; @@ -821,6 +897,13 @@ export class Bridges extends BridgesAndDevices { addDevices={(devices: DetectedDevice[]) => this.addDevicesToBridge(devices, this.state.addDeviceDialog?.bridgeIndex || 0, true) } + devicesInBridge={this.props.matter.bridges[this.state.addDeviceDialog.bridgeIndex].list.length} + checkAddedDevices={ + this.props.nodeStates[this.props.matter.bridges[this.state.addDeviceDialog.bridgeIndex].uuid] + .status === 'waitingForCommissioning' + ? MAX_UN_COMMISSIONED_DEVICES + : 0 + } matter={this.props.matter} socket={this.props.socket} detectedDevices={this.props.detectedDevices} @@ -974,7 +1057,7 @@ export class Bridges extends BridgesAndDevices { }} renderValue={value => ( - {DEVICE_ICONS[value] || } + {I18n.t(value)} )} @@ -986,7 +1069,7 @@ export class Bridges extends BridgesAndDevices { key={type} value={type} > - {DEVICE_ICONS[type as Types] || } + {I18n.t(type)} ))} @@ -1073,6 +1156,10 @@ export class Bridges extends BridgesAndDevices { devIndex: number, ): React.JSX.Element { const isLast = devIndex === bridge.list.length - 1; + const hasError = Array.isArray(this.props.nodeStates?.[bridge.uuid]?.error) + ? !!(this.props.nodeStates[bridge.uuid].error as string[])?.includes(device.uuid) + : false; + return ( { style={{ marginRight: 8 }} title={device.type} > - {DEVICE_ICONS[device.type] || } +
@@ -1094,6 +1181,30 @@ export class Bridges extends BridgesAndDevices {
{`${I18n.t('Device type')}: ${I18n.t(device.type)}`}
+
+ {this.props.nodeStates?.[bridge.uuid] ? ( + + this.requestAdditionalInformation(e, device.uuid)} + > + {hasError ? : } + + + ) : null}
@@ -1424,12 +1535,33 @@ export class Bridges extends BridgesAndDevices { ); return; } - this.setState({ - addDevicePreDialog: { - open: true, - bridge: { devices: bridge.list, name: bridge.name, bridgeIndex }, - }, - }); + + if ( + this.props.nodeStates[bridge.uuid]?.status === + 'waitingForCommissioning' && + bridge.list.length > MAX_UN_COMMISSIONED_DEVICES + ) { + // If a user already has >15 devices in an un-commissioned bridge and klicks the "+" button to add more devices + // to the bridge we should tell him "To avoid problems when pairing this bridge please consider to pair it now and add more devices afterwards". + this.setState({ + showCommissioningHint: { + devices: bridge.list, + name: bridge.name, + bridgeIndex, + }, + }); + } else { + this.setState({ + addDevicePreDialog: { + open: true, + bridge: { + devices: bridge.list, + name: bridge.name, + bridgeIndex, + }, + }, + }); + } }} > @@ -1453,6 +1585,7 @@ export class Bridges extends BridgesAndDevices { {this.renderAddDevicesPreDialog()} {this.renderAddCustomDeviceDialog()} {this.renderDeleteDialog()} + {this.renderCommissioningHintDialog()} {this.renderBridgeEditDialog()} {this.renderDeviceEditDialog()} {this.renderQrCodeDialog()} diff --git a/src-admin/src/Tabs/BridgesAndDevices.tsx b/src-admin/src/Tabs/BridgesAndDevices.tsx index a55db7fd..29342aec 100644 --- a/src-admin/src/Tabs/BridgesAndDevices.tsx +++ b/src-admin/src/Tabs/BridgesAndDevices.tsx @@ -106,7 +106,6 @@ class BridgesAndDevices { - // eslint-disable-next-line react/no-unused-class-component-methods protected isDevice: boolean; constructor(props: TProps) { @@ -245,12 +244,11 @@ class BridgesAndDevices; } - requestAdditionalInformation(uuid: string): void { + requestAdditionalInformation(e: React.MouseEvent, uuid: string): void { + e.stopPropagation(); + this.props.socket - .sendTo(`matter.${this.props.instance}`, 'extendedInfo', { - uuid, - error: this.props.nodeStates[uuid]?.error, - }) + .sendTo(`matter.${this.props.instance}`, 'extendedInfo', { uuid }) .then((result: { schema: JsonFormSchema; options?: BackEndCommandJsonFormOptions }): void => { this.setState({ jsonConfig: { @@ -324,7 +322,7 @@ class BridgesAndDevices this.requestAdditionalInformation(deviceOrBridge.uuid)} + onClick={e => this.requestAdditionalInformation(e, deviceOrBridge.uuid)} > {this.props.nodeStates[deviceOrBridge.uuid].error ? : } diff --git a/src-admin/src/Tabs/Controller.tsx b/src-admin/src/Tabs/Controller.tsx index d9cdbb09..1781ecf9 100644 --- a/src-admin/src/Tabs/Controller.tsx +++ b/src-admin/src/Tabs/Controller.tsx @@ -596,13 +596,28 @@ class Controller extends Component { this.setState({ showQrCodeDialog: { open: false } }, () => this.destroyQrCode())} + maxWidth="lg" + fullWidth > - {I18n.t('QR Code')} + {I18n.t('Add device by pairing code or QR Code')} +
{I18n.t('Add via QR Code')}
+ + {I18n.t('Requirements: add via QR Code')} +
+ {I18n.t( + ' Please DO NOT use the QR code / pairing code that is printed on the Matter device.', + )} +
+
this.setState({ manualCode: e.target.value })} /> @@ -625,6 +640,7 @@ class Controller extends Component { }, }} fullWidth + style={{ maxWidth: 400 }} value={this.state.qrCode || ''} error={!!this.state.qrError} helperText={this.state.qrError} @@ -632,6 +648,8 @@ class Controller extends Component { {this.state.camera.length ? ( { type="text" onChange={e => this.props.onChange('login', e.target.value)} margin="normal" + slotProps={{ + htmlInput: { + autocomplete: 'new-password', + }, + input: { + endAdornment: this.props.native.login ? ( + this.props.onChange('login', '')} + > + + + ) : null, + }, + }} style={{ ...styles.input, marginRight: 16 }} /> { error={!!passwordError} autoComplete="current-password" style={styles.input} + slotProps={{ + htmlInput: { + autocomplete: 'new-password', + }, + input: { + endAdornment: this.props.native.pass ? ( + this.setState({ passVisible: !this.state.passVisible })} + > + {this.state.passVisible ? : } + + ) : null, + }, + }} value={this.props.native.pass} - type="password" + type={this.state.passVisible ? 'text' : 'password'} helperText={passwordError || ''} onChange={e => this.props.onChange('pass', e.target.value)} margin="normal" diff --git a/src-admin/src/components/DeviceDialog.tsx b/src-admin/src/components/DeviceDialog.tsx index f85478d7..35493b4e 100644 --- a/src-admin/src/components/DeviceDialog.tsx +++ b/src-admin/src/components/DeviceDialog.tsx @@ -16,87 +16,14 @@ import { TextField, } from '@mui/material'; -import { - AcUnit, - Add, - Air, - Blinds, - Close, - DirectionsRun, - ExpandMore, - Gradient, - Image, - Lightbulb, - LocationOn, - Lock, - Palette, - PlayArrowRounded, - Power, - QuestionMark, - SensorDoor, - Thermostat, - Timeline, - TipsAndUpdates, - Tune, - Videocam, - VolumeUp, - Water, - WaterDrop, - WbSunny, - Whatshot, - Window, -} from '@mui/icons-material'; - -import { type AdminConnection, I18n, Icon, type IobTheme } from '@iobroker/adapter-react-v5'; +import { Add, Close, ExpandMore } from '@mui/icons-material'; + +import { type AdminConnection, I18n, Icon, IconDeviceType, type IobTheme } from '@iobroker/adapter-react-v5'; import { Types } from '@iobroker/type-detector'; import { clone, detectDevices, getText } from '../Utils'; import type { DetectedDevice, DetectedRoom, MatterConfig } from '../types'; -export const DEVICE_ICONS: Record = { - airCondition: , - blind: , - camera: , - chart: , - ct: , - dimmer: , - door: , - fireAlarm: , - floodAlarm: , - humidity: , - image: , - light: , - lock: , - location: , - media: , - motion: , - rgb: , - rgbSingle: , - rgbwSingle: , - slider: , - socket: , - temperature: , - thermostat: , - volume: , - volumeGroup: , - weatherCurrent: , - weatherForecast: , - window: , - windowTilt: , - - blindButtons: , - button: , - buttonSensor: , - cie: , - gate: , - hue: , - info: , - instance: , - unknown: , - vacuumCleaner: , - warning: , -}; - export const SUPPORTED_DEVICES: Types[] = [ Types.ct, Types.dimmer, @@ -191,6 +118,9 @@ interface DeviceDialogProps { onClose: () => void; type: 'bridge' | 'device'; name?: ioBroker.StringOrTranslated; + devicesInBridge?: number; + /** If dialog should check the number of devices */ + checkAddedDevices?: number; } interface DeviceDialogState { @@ -204,6 +134,7 @@ interface DeviceDialogState { deviceNames: Record; deviceRoomTypeNames: Record; expanded: string[]; + showCommissioningHint: DetectedDevice[] | null; } class DeviceDialog extends Component { @@ -227,6 +158,7 @@ class DeviceDialog extends Component { showUnsupported: window.localStorage.getItem('matter.showUnsupported') === 'true', deviceNames: {}, deviceRoomTypeNames: {}, + showCommissioningHint: null, expanded, }; } @@ -303,10 +235,61 @@ class DeviceDialog extends Component { } }); }); - this.props.addDevices(devices); - this.props.onClose(); + + if ( + this.props.checkAddedDevices && + devices.length && + (this.props.devicesInBridge || 0) + devices.length > this.props.checkAddedDevices + ) { + this.setState({ showCommissioningHint: devices }); + } else { + this.props.addDevices(devices); + this.props.onClose(); + } }; + renderCommissioningHintDialog(): React.JSX.Element | null { + if (!this.state.showCommissioningHint) { + return null; + } + + return ( + this.setState({ showCommissioningHint: null })} + open={!0} + > + {I18n.t('Warning')} + {I18n.t('Warning about 15 devices')} + + + + + + ); + } + renderDevice( roomIndex: number, room: DetectedRoom, @@ -344,7 +327,9 @@ class DeviceDialog extends Component { }} onClick={e => e.stopPropagation()} /> - {DEVICE_ICONS[device.deviceType] || } + + + { return room.devices.filter(device => SUPPORTED_DEVICES.includes(device.deviceType)).length; }) || []; + const devices: DetectedDevice[] = []; + this.state.rooms?.forEach(room => { + room.devices.forEach(device => { + if (this.state.devicesChecked[device._id]) { + devices.push(device); + } + }); + }); + + let showHint: React.JSX.Element | null = null; + if ( + this.props.checkAddedDevices && + devices.length && + (this.props.devicesInBridge || 0) + devices.length > this.props.checkAddedDevices + ) { + showHint =
{I18n.t('Warning about 15 devices')}
; + } + return ( + {this.renderCommissioningHintDialog()} {`${I18n.t('Add devices')}${this.props.type === 'bridge' ? ` ${I18n.t('to bridge')} ${getText(this.props.name)}` : ''}`} + {showHint} {this.state.rooms ? (
diff --git a/src-admin/src/components/InfoBox.tsx b/src-admin/src/components/InfoBox.tsx index e1ae8577..6028b95d 100644 --- a/src-admin/src/components/InfoBox.tsx +++ b/src-admin/src/components/InfoBox.tsx @@ -4,7 +4,7 @@ import { Info, Warning, Close, Visibility, type SvgIconComponent } from '@mui/ic interface InfoBoxProps { /** Text to display in the info box */ - children: string; + children: string | (string | React.JSX.Element | null)[] | React.JSX.Element; /** The type determines the color and symbol */ type: 'warning' | 'info' | 'error'; /** If the Box is closeable */ diff --git a/src-admin/src/components/WelcomeDialog.tsx b/src-admin/src/components/WelcomeDialog.tsx new file mode 100644 index 00000000..8f91530e --- /dev/null +++ b/src-admin/src/components/WelcomeDialog.tsx @@ -0,0 +1,315 @@ +import React from 'react'; +import { type AdminConnection, I18n } from '@iobroker/adapter-react-v5'; +import { Button, Dialog, DialogActions, DialogContent, DialogTitle, IconButton, TextField } from '@mui/material'; +import { Clear, Close, Visibility, VisibilityOff } from '@mui/icons-material'; +import { FaApple, FaAndroid } from 'react-icons/fa'; + +import InfoBox from './InfoBox'; + +interface NetworkInterface { + address: string; + netmask: string; + family: string; + mac: string; + internal: boolean; + cidr: string; +} + +interface WelcomeDialogProps { + login?: string; + pass?: string; + onClose: (login?: string, password?: string, navigateTo?: 'controller' | 'bridges') => void; + socket: AdminConnection; + instance: number; + common: ioBroker.InstanceCommon | null; +} + +interface WelcomeDialogState { + login?: string; + password?: string; + passwordRepeat?: string; + passVisible?: boolean; + iotInstance?: string; + iotLogin?: string; + iotPassword?: string; + ipV6found: boolean | null; +} + +class WelcomeDialog extends React.Component { + private readonly showLogin: boolean; + + constructor(props: WelcomeDialogProps) { + super(props); + this.showLogin = !this.props.login || !this.props.pass; + + this.state = { + login: this.props.login || '', + password: this.props.pass || '', + passwordRepeat: this.props.pass || '', + passVisible: false, + ipV6found: null, + }; + } + + async componentDidMount(): Promise { + let obj: ioBroker.StateObject | null | undefined = null; + try { + obj = (await this.props.socket.getObject( + `matter.${this.props.instance}.welcomeDialog`, + )) as ioBroker.StateObject; + } catch { + // ignore + } + if (!obj) { + await this.props.socket.setObject(`matter.${this.props.instance}.welcomeDialog`, { + type: 'state', + common: { + name: 'Welcome dialog', + type: 'boolean', + role: 'indicator', + read: true, + write: true, + }, + native: {}, + }); + } + + // detect if any iot or cloud with pro-account are available + const instancesIot = await this.props.socket.getAdapterInstances('iot'); + let instance: ioBroker.InstanceObject | null = null; + if (instancesIot) { + instance = instancesIot.find(it => it?.native?.login && it?.native?.pass) || null; + if (instance) { + // encode + const pass = await this.props.socket.decrypt(instance.native.pass); + + this.setState({ + iotInstance: instance._id, + iotPassword: pass, + iotLogin: instance.native.login, + }); + } + } + if (!instance) { + const instancesCloud = await this.props.socket.getAdapterInstances('cloud'); + instance = instancesCloud.find(it => it?.native?.login && it?.native?.pass) || null; + if (instance) { + // encode + const pass = await this.props.socket.decrypt(instance.native.pass); + + this.setState({ + iotInstance: instance._id, + iotPassword: pass, + iotLogin: instance.native.login, + }); + } + } + + try { + const hostObj: ioBroker.HostObject | null | undefined = + this.props.common && (await this.props.socket.getObject(`system.host.${this.props.common.host}`)); + let ipV6found = false; + // Try to find IPv6 address + if (hostObj?.native?.hardware?.networkInterfaces) { + const list: Record = hostObj.native.hardware.networkInterfaces as Record< + string, + NetworkInterface[] + >; + Object.keys(list).forEach(inter => { + // ignore internal interfaces + if (list[inter].find(_ip => _ip.internal)) { + return; + } + + // find ipv4 address + ipV6found = ipV6found || !!list[inter].find(_ip => _ip.family === 'IPv6'); + }); + } + this.setState({ ipV6found }); + } catch (e) { + window.alert(`Cannot read interfaces: ${e}`); + } + } + + render(): React.JSX.Element { + return ( + this.props.onClose()} + > + {I18n.t('Welcome to Matter!')} + + {this.state.ipV6found !== null ? ( + + {this.state.ipV6found + ? I18n.t( + 'Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.', + ) + : I18n.t( + 'Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!', + )} + + ) : null} + {I18n.t('Be sure, that UDP is enabled and working')} + + + {I18n.t( + 'To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:', + )} + + + + + {this.showLogin ? ( + this.setState({ login: e.target.value })} + fullWidth + slotProps={{ + htmlInput: { + autocomplete: 'new-password', + }, + input: { + endAdornment: this.state.login ? ( + this.setState({ login: '' })} + > + + + ) : null, + }, + }} + /> + ) : null} + {this.showLogin ? ( + this.setState({ password: e.target.value })} + slotProps={{ + htmlInput: { + autocomplete: 'new-password', + }, + input: { + endAdornment: this.state.password ? ( + this.setState({ passVisible: !this.state.passVisible })} + > + {this.state.passVisible ? : } + + ) : null, + }, + }} + sx={theme => ({ + [theme.breakpoints.down('md')]: { width: '100%' }, + [theme.breakpoints.up('md')]: { width: 'calc(50% - 8px)', marginRight: 1 }, + [theme.breakpoints.up('lg')]: { width: 'calc(30% - 8px)', marginRight: 1 }, + })} + /> + ) : null} + {this.showLogin ? ( + this.setState({ passwordRepeat: e.target.value })} + sx={theme => ({ + [theme.breakpoints.up('lg')]: { width: 'calc(30% - 8px)', marginRight: 1 }, + [theme.breakpoints.down('md')]: { width: '100%' }, + [theme.breakpoints.up('md')]: { width: 'calc(50% - 8px)', marginRight: 1 }, + })} + slotProps={{ + input: { + endAdornment: this.state.password ? ( + this.setState({ passVisible: !this.state.passVisible })} + > + {this.state.passVisible ? : } + + ) : null, + }, + htmlInput: { + autocomplete: 'new-password', + }, + }} + /> + ) : null} + {this.state.iotInstance && this.showLogin ? ( + + ) : null} + + + + + + + + ); + } +} + +export default WelcomeDialog; diff --git a/src-admin/src/i18n/de.json b/src-admin/src/i18n/de.json index f46fcbd4..b8b95b87 100644 --- a/src-admin/src/i18n/de.json +++ b/src-admin/src/i18n/de.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "Bitte verwenden Sie NICHT den QR-Code/Pairing-Code, der auf dem Matter-Gerät aufgedruckt ist.", "%s of %s devices selected": "%s von %s Geräten ausgewählt", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Aktivieren Sie BLE, um Geräte in der Nähe Ihres ioBroker-Hosts zu koppeln, die noch nicht mit einem anderen Ökosystem gekoppelt sind. Sie können auch die App „ioBroker Visu“ verwenden, um andere Geräte zu koppeln.", "Add": "Hinzufügen", @@ -10,6 +11,7 @@ "Add device from one state": "Gerät aus einem State hinzufügen", "Add device with auto-detection": "Gerät mit automatischer Erkennung hinzufügen", "Add devices": "Geräte hinzufügen", + "Add via QR Code": "Manuelles Hinzufügen eines bereits verbundenen Matter-Geräts mit dem ioBroker Matter Controller", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Zusätzlich zu Bridges können Sie ioBroker-Zustände auch als eigenständige Matter-Geräte verfügbar machen.\nSie können alle einzeln gepaart werden.\nSie sollten vorzugsweise Bridges verwenden.", "All": "Alle", "All devices": "Alle Geräte", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Mindestens eine Bridge muss aktiviert sein", "At least one enabled bridge must exist": "Es muss mindestens eine aktivierte Bridge vorhanden sein", "BLE Commissioning information": "BLE Inbetriebnahmeeinstellungen", + "Be sure, that UDP is enabled and working": "Stellen Sie sicher, dass UDP aktiviert ist und funktioniert", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Bluetooth-Konfiguration", @@ -36,6 +39,7 @@ "Commissioning information": "Hinweise zur Inbetriebnahme", "Configure custom device": "Benutzerdefiniertes Gerät konfigurieren", "Connect": "Verbinden", + "Connect Matter devices with ioBroker": "Matter-Geräte mit ioBroker verbinden ", "Connected": "Verbunden", "Controller": "Controller", "Controller and Device Factory Reset": "Controller und Geräte auf Werkseinstellungen zurücksetzen", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Erweitertes Debug-Logging für das Matter-Protokoll aktivieren (nur sichtbar mit der Protokollebene „Debug“)", "Enable/disable bridge": "Bridge aktivieren/deaktivieren", "Expand all": "Alle erweitern", + "Expose ioBroker devices as Matter bridge": "ioBroker-Geräte als Matter-Bridge verfügbar machen", "General": "Allgemein", "Generate new pairing code": "Neuen Pairing-Code generieren", "Hide unsupported devices": "Nicht unterstützte Geräte ausblenden", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Wenn Ihr Gerät über mehr als eine aktive Netzwerkschnittstelle verfügt und Sie Probleme haben, versuchen Sie, es auf eine Schnittstelle zu beschränken.", + "Info about Alexa Bridge": "Bitte beachten: Aufgrund von Einschränkungen des Amazon Alexa-Systems kann pro ioBroker-Host nur eine Bridge oder ein Gerät mit Alexa gekoppelt werden! Diese Auswahl bestimmt, welche Bridge mit dem Alexa-System gekoppelt wird.", "Instance is not alive": "Instanz ist nicht aktiv", "Interface": "Schnittstelle", "Logging": "Protokollierung", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges können mehrere Geräte enthalten und sind die einfachste Möglichkeit, ioBroker-Geräte in ein Matter-kompatibles Ökosystem zu integrieren. In einer Bridge enthaltene Geräte können auch nach der Inbetriebnahme der Bridge hinzugefügt oder entfernt werden. Einige Geräteeigenschaften können nicht mehr geändert werden, nachdem die Bridge als Controller in Betrieb genommen wurde.\n\nWenn Sie mindestens eine Assistentenlizenz in Ihrem ioBroker.pro-Konto besitzen, können Sie auch mehrere Bridges erstellen und Ihre Geräte so optimal strukturieren.\n\nBitte beachten: Aufgrund von Einschränkungen des Amazon Alexa-Systems können Sie pro ioBroker-Host nur eine Bridge oder ein Gerät mit Alexa koppeln!", "Matter Controller BLE Dialog Infotext": "Um Geräte zu koppeln, die WLAN oder Thread zur Kommunikation verwenden, müssen Sie Ihre WLAN- oder Thread-Anmeldeinformationen angeben.\nDiese Anmeldeinformationen werden dann bei der Inbetriebnahme an das Gerät übermittelt.\nWenn das Gerät bereits in einem anderen Ökosystem in Betrieb genommen wurde und bereits im Netzwerk ist, ist dies nicht erforderlich.", "Matter Controller Infotext": "Verwenden Sie die „Controller“-Funktionen, um Matter-kompatible Geräte in ioBroker zu integrieren. \nSie können Geräte entdecken, in Betrieb nehmen und anschließend verwalten. Die Daten der Geräte sind als Status auf der Registerkarte „Objekte“ von ioBroker verfügbar. \nDie Controller-Funktion ist standardmäßig deaktiviert und kann mit dem folgenden Schalter aktiviert werden.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter erfordert aktiviertes IPv6-Protokoll auf der ausgewählten Schnittstelle. Auf Ihrem System wurde kein IPv6 gefunden!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter erfordert aktiviertes IPv6-Protokoll auf der ausgewählten Schnittstelle. Auf Ihrem System wurde IPv6 gefunden.", "Name": "Name", "Network configuration": "Netzwerkkonfiguration", "New bridge": "Neue Brücke", @@ -93,6 +101,7 @@ "Options": "Optionen", "Pairing Info Text": "Erkennen von Geräten in Ihrem IP-Netzwerk. \nBitte stellen Sie sicher, dass der ioBroker-Host im Netzwerk und im Netzwerk der zu erkennenden Geräte frei UDP-Nachrichten senden und empfangen kann. \nSetzen Sie die Geräte bei Bedarf auf die Werkseinstellungen zurück oder schalten Sie sie aus und wieder ein.", "Pairing Info Text BLE": "Erkennen von Geräten in Ihrem IP-Netzwerk und über BLE. \nBitte stellen Sie sicher, dass der ioBroker-Host im Netzwerk und im Netzwerk der zu erkennenden Geräte frei UDP-Nachrichten senden und empfangen kann. \nSetzen Sie die Geräte bei Bedarf auf die Werkseinstellungen zurück oder schalten Sie sie aus und wieder ein.", + "Password repeat": "Passwort wiederholen", "Please confirm": "Bitte bestätigen", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Bitte scannen Sie diesen QR-Code mit der App des Ökosystems, mit dem Sie es koppeln möchten, oder verwenden Sie den unten aufgedruckten Setup-Code.", "Product ID": "Produkt ID", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Erneute Verbindung zum Backend herstellen", "Required": "Erforderlich", + "Requirements: add via QR Code": "Voraussetzung: Das Matter-Gerät muss bereits mit einem anderen Matter-System (z. B. Google, Apple, Alexa, …) verbunden sein. Hier musst du den QR-Code-Pairing-Code eingeben oder den QR-Code scannen, der vom Matter-Ökosystem (z. B. Google Home) für dieses Matter-Gerät in der App bereitgestellt wird.", "Reset": "Zurücksetzen", "Reset device or bridge": "Gerät oder Bridge zurücksetzen", "Reset it at least to defaults": "Endlich auf die Standardeinstellungen zurücksetzten", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "QR-Code zur Inbetriebnahme anzeigen", "Show additional information": "Weitere Informationen anzeigen", "Show error": "Fehler anzeigen", + "Show readme page": "Readme-Seite anzeigen", "Show unsupported devices": "Nicht unterstützte Geräte anzeigen", + "Show welcome dialog": "Willkommensdialog anzeigen", "Status": "Status", "Stop": "Stoppen", "Successfully re-announced": "Erfolgreich neu ausgeschrieben!", @@ -126,12 +138,15 @@ "Thread credentials": "Thread-Anmeldeinformationen", "Thread network name": "Thread-Network-Name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Um Matter-Geräte mit ioBroker-Controller in Betrieb zu nehmen/zu verbinden, verwenden Sie besser die ioBroker.visu-App:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Um eine Matter-Bridge oder Geräteoptionen mit mehr als 5 Geräten zu verwenden, geben Sie bitte gültige ioBroker.pro-Cloud-Anmeldeinformationen mit mindestens einer aktiven Assistant-Lizenz ein.", "Unselect all rooms": "Alle Räume abwählen", "Use last value for ON": "Bei ON den letzten Wert verwenden", "Value": "Wert", "Vendor ID": "Hersteller-ID", "WLAN credentials": "WLAN-Zugangsdaten", + "Warning about 15 devices": "Um Probleme beim Koppeln dieser Bridge zu vermeiden, sollten Sie sie jetzt koppeln und später weitere Geräte hinzufügen.", + "Welcome to Matter!": "Willkommen bei Matter!", "WiFi SSID": "WLAN-SSID", "WiFi password": "WLAN Passwort", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Sie benötigen den ioBroker.pro-Assistenten oder ein Remote-Abonnement, um mehr als 5 Geräte in Bridge zu haben", @@ -170,4 +185,4 @@ "weatherForecast": "Wettervorhersage", "window": "Fenster", "windowTilt": "Gekipptes Fenster" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/en.json b/src-admin/src/i18n/en.json index bd8f4f1b..697cf3af 100644 --- a/src-admin/src/i18n/en.json +++ b/src-admin/src/i18n/en.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": " Please DO NOT use the QR code / pairing code that is printed on the Matter device.", "%s of %s devices selected": "%s of %s devices selected", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Activate BLE to pair devices nearby of your ioBroker host, that are not already paired with an other ecosystem. You can also use the \"ioBroker Visu\" App to pair other devices.", "Add": "Add", @@ -10,6 +11,7 @@ "Add device from one state": "Add device from one state", "Add device with auto-detection": "Add device with auto-detection", "Add devices": "Add devices", + "Add via QR Code": "Manuall addition of an already connected Matter device with the ioBroker Matter Controller", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Additionally to bridges you can also expose ioBroker states as stand alone matter devices.\nThey can all be paired individually.\nYou should prefer to use bridges.", "All": "All", "All devices": "All devices", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "At least one bridge must be enabled", "At least one enabled bridge must exist": "At least one enabled bridge must exist", "BLE Commissioning information": "BLE Commissioning settings", + "Be sure, that UDP is enabled and working": "Be sure, that UDP is enabled and working", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Bluetooth configuration", @@ -36,6 +39,7 @@ "Commissioning information": "Commissioning information", "Configure custom device": "Configure custom device", "Connect": "Connect", + "Connect Matter devices with ioBroker": "Connect Matter devices with ioBroker", "Connected": "Connected", "Controller": "Controller", "Controller and Device Factory Reset": "Controller and Devices Factory Reset", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Enable enhanced debug logging for the Matter protocol (only visible with \"debug\" log level)", "Enable/disable bridge": "Enable/disable bridge", "Expand all": "Expand all", + "Expose ioBroker devices as Matter bridge": "Expose ioBroker devices as Matter bridge", "General": "General", "Generate new pairing code": "Generate new pairing code", "Hide unsupported devices": "Hide unsupported devices", "If your device has more then one active network interface and you have issues try limiting it to one interface": "If your device has more then one active network interface and you have issues try limiting it to one interface.", + "Info about Alexa Bridge": "Please note: Due to limitations of the Amazon Alexa system, only one bridge or device can be paired with Alexa per ioBroker host! This selection determines which bridge will be paired with the Alexa system.", "Instance is not alive": "Instance is not alive", "Interface": "Interface", "Logging": "Logging", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges can contain multiple devices inside them and are the most simple way to bring ioBroker devices into a Matter compatible ecosystem. Devices contained in a bridge can also be added or removed after the bridge got commissioned. Some device properties can not be changed after the bridge got commissioned into a controller.\n\nWhen you own at least an Assistant License in your ioBroker.pro Account you can also create multiple bridges an so structure your devices best.\n\nPlease note: Because of limitations of the Amazon Alexa system you can only have one bridge or device paired with Alexa per ioBroker host!", "Matter Controller BLE Dialog Infotext": "To pair devices that use WLAN or Thread to communicate you need to provide your WLAN or Thread credentials.\nThese credentials are then submitted to the device during commissioning. \nIf the device was already commissioned into an other ecosystem and is already in the network this is not needed.", "Matter Controller Infotext": "Use the \"Controller\" features to integrate Matter compatible devices into ioBroker. \nYou can discover and commission device and manage them afterwards. The data of the devices will be available as states in the ioBroker Objects tab. \nThe controller feature is disabled by default and can be enabled with the below switch.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.", "Name": "Name", "Network configuration": "Network configuration", "New bridge": "New bridge", @@ -93,6 +101,7 @@ "Options": "Options", "Pairing Info Text": "Discovering devices in your IP network. \nPlease make sure that he ioBroker host can freely send and receive UDP messages in the network and in the network of the devices to discover. \nIf needed reset the devices to factory settings or power cycle them.", "Pairing Info Text BLE": "Discovering devices in your IP network and via BLE. \nPlease make sure that he ioBroker host can freely send and receive UDP messages in the network and in the network of the devices to discover. \nIf needed reset the devices to factory settings or power cycle them.", + "Password repeat": "Password repeat", "Please confirm": "Please confirm", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.", "Product ID": "Product ID", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Reconnect to backend", "Required": "Required", + "Requirements: add via QR Code": "Prerequisite: The Matter device must already be commisioned to another Matter system (e.g. Google, Apple, Alexa, ...). Here you must enter the QR code pairing code or scan the QR code that is provided for this Matter device in the app by the Matter ecosystem (e.g. Google Home).", "Reset": "Reset", "Reset device or bridge": "Reset device or bridge", "Reset it at least to defaults": "Finally reset to default settings", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Show QR Code for commissioning", "Show additional information": "Show additional information", "Show error": "Show error", + "Show readme page": "Show readme page", "Show unsupported devices": "Show unsupported devices", + "Show welcome dialog": "Show welcome dialog", "Status": "Status", "Stop": "Stop", "Successfully re-announced": "Successfully re-announced!", @@ -126,12 +138,15 @@ "Thread credentials": "Thread credentials", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.", "Unselect all rooms": "Unselect all rooms", "Use last value for ON": "Use the last value by ON", "Value": "Value", "Vendor ID": "Vendor ID", "WLAN credentials": "WLAN credentials", + "Warning about 15 devices": "To avoid problems when pairing this bridge please consider to pair it now and add more devices afterwards", + "Welcome to Matter!": "Welcome to Matter!", "WiFi SSID": "WiFi SSID", "WiFi password": "WiFi password", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge", @@ -170,4 +185,4 @@ "weatherForecast": "Weather forecast", "window": "Window", "windowTilt": "Tilted window" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/es.json b/src-admin/src/i18n/es.json index 3ccb022c..32da884f 100644 --- a/src-admin/src/i18n/es.json +++ b/src-admin/src/i18n/es.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "NO utilice el código QR/código de emparejamiento que está impreso en el dispositivo Matter.", "%s of %s devices selected": "%s de %s dispositivos seleccionados", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Active BLE para emparejar dispositivos cercanos a su host ioBroker, que aún no estén emparejados con otro ecosistema. También puedes utilizar la aplicación \"ioBroker Visu\" para emparejar otros dispositivos.", "Add": "Agregar", @@ -10,6 +11,7 @@ "Add device from one state": "Agregar dispositivo desde un estado", "Add device with auto-detection": "Agregar dispositivo con detección automática", "Add devices": "Agregar dispositivos", + "Add via QR Code": "Adición manual de un dispositivo Matter ya conectado con el controlador Matter de ioBroker", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Además de los puentes, también puede exponer los estados de ioBroker como dispositivos independientes.\nTodos ellos se pueden emparejar individualmente.\nDeberías preferir utilizar puentes.", "All": "Todo", "All devices": "Todos los dispositivos", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Al menos un puente debe estar habilitado.", "At least one enabled bridge must exist": "Debe existir al menos un puente habilitado", "BLE Commissioning information": "Configuración de puesta en marcha de BLE", + "Be sure, that UDP is enabled and working": "Asegúrese de que UDP esté habilitado y funcionando", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "configuración bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Información de puesta en servicio", "Configure custom device": "Configurar dispositivo personalizado", "Connect": "Conectar", + "Connect Matter devices with ioBroker": "Conecte dispositivos Matter con ioBroker", "Connected": "Conectado", "Controller": "Controlador", "Controller and Device Factory Reset": "Restablecimiento de fábrica del controlador y los dispositivos", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Habilitar el registro de depuración mejorado para el protocolo Matter (solo visible con el nivel de registro \"depuración\")", "Enable/disable bridge": "Activar/desactivar puente", "Expand all": "Expandir todo", + "Expose ioBroker devices as Matter bridge": "Exponer dispositivos ioBroker como puente Matter", "General": "General", "Generate new pairing code": "Generar nuevo código de emparejamiento", "Hide unsupported devices": "Ocultar dispositivos no compatibles", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Si su dispositivo tiene más de una interfaz de red activa y tiene problemas, intente limitarlo a una interfaz.", + "Info about Alexa Bridge": "Tenga en cuenta: Debido a las limitaciones del sistema Amazon Alexa, solo se puede emparejar un puente o dispositivo con Alexa por host de ioBroker. Esta selección determina qué puente se emparejará con el sistema Alexa.", "Instance is not alive": "La instancia no está viva", "Interface": "Interfaz", "Logging": "Inicio sesión", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Los Matter Bridges pueden contener varios dispositivos en su interior y son la forma más sencilla de incorporar dispositivos ioBroker a un ecosistema compatible con Matter. Los dispositivos contenidos en un puente también se pueden agregar o quitar después de que el puente se haya puesto en servicio. Algunas propiedades del dispositivo no se pueden cambiar después de que el puente se haya puesto en servicio en un controlador.\n\nCuando posee al menos una licencia de Asistente en su cuenta ioBroker.pro, también puede crear múltiples puentes para estructurar mejor sus dispositivos.\n\nTenga en cuenta: debido a las limitaciones del sistema Amazon Alexa, ¡solo puede tener un puente o dispositivo emparejado con Alexa por host ioBroker!", "Matter Controller BLE Dialog Infotext": "Para emparejar dispositivos que utilizan WLAN o Thread para comunicarse, debe proporcionar sus credenciales de WLAN o Thread.\nLuego, estas credenciales se envían al dispositivo durante la puesta en servicio. \nSi el dispositivo ya se puso en servicio en otro ecosistema y ya está en la red, esto no es necesario.", "Matter Controller Infotext": "Utilice las funciones del \"Controlador\" para integrar dispositivos compatibles con Matter en ioBroker. \nPuede descubrir y poner en marcha dispositivos y gestionarlos posteriormente. Los datos de los dispositivos estarán disponibles como estados en la pestaña Objetos de ioBroker. \nLa función del controlador está deshabilitada de forma predeterminada y se puede habilitar con el siguiente interruptor.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter requiere el protocolo IPv6 habilitado en la interfaz seleccionada. ¡No se encontró IPv6 en su sistema!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter requiere que el protocolo IPv6 esté habilitado en la interfaz seleccionada. Se encontró algún protocolo IPv6 en su sistema.", "Name": "Nombre", "Network configuration": "Configuración de la red", "New bridge": "Nuevo puente", @@ -93,6 +101,7 @@ "Options": "Opciones", "Pairing Info Text": "Descubriendo dispositivos en su red IP. \nAsegúrese de que el host de ioBroker pueda enviar y recibir mensajes UDP libremente en la red y en la red de los dispositivos a descubrir. \nSi es necesario, restablezca los dispositivos a la configuración de fábrica o reinícielos.", "Pairing Info Text BLE": "Descubriendo dispositivos en su red IP y vía BLE. \nAsegúrese de que el host de ioBroker pueda enviar y recibir mensajes UDP libremente en la red y en la red de los dispositivos a descubrir. \nSi es necesario, restablezca los dispositivos a la configuración de fábrica o reinícielos.", + "Password repeat": "Repetición de contraseña", "Please confirm": "Por favor confirmar", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Escanee este código QR con la aplicación del ecosistema con el que desea vincularlo o utilice el código de configuración impreso a continuación.", "Product ID": "ID del Producto", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Reconectarse al backend", "Required": "Requerido", + "Requirements: add via QR Code": "Requisito: El dispositivo Matter ya debe estar conectado a otro sistema Matter (p. ej. Google, Apple, Alexa, etc.). Para ello, debe introducir el código QR de emparejamiento o escanear el código QR que el ecosistema Matter proporciona para este dispositivo Matter en la aplicación (p. ej. Google Home).", "Reset": "Reiniciar", "Reset device or bridge": "Restablecer dispositivo o puente", "Reset it at least to defaults": "Finalmente restablecer la configuración predeterminada", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Mostrar código QR para puesta en servicio", "Show additional information": "Mostrar información adicional", "Show error": "Mostrar error", + "Show readme page": "Mostrar página readme", "Show unsupported devices": "Mostrar dispositivos no compatibles", + "Show welcome dialog": "Mostrar diálogo de bienvenida", "Status": "Estado", "Stop": "Detener", "Successfully re-announced": "¡Reanunciado con éxito!", @@ -126,12 +138,15 @@ "Thread credentials": "Credenciales del hilo", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Para poner en funcionamiento o conectar dispositivos con el controlador ioBroker, utilice la mejor aplicación ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Para utilizar un puente Matter u opciones de dispositivo con más de 5 dispositivos, ingrese credenciales válidas de ioBroker.pro Cloud con al menos una licencia de Asistente activa.", "Unselect all rooms": "Deseleccionar todas las habitaciones", "Use last value for ON": "Utilice el último valor de ON", "Value": "Valor", "Vendor ID": "ID del proveedor", "WLAN credentials": "Credenciales WLAN", + "Warning about 15 devices": "Para evitar problemas al emparejar este puente, considere emparejarlo ahora y agregar más dispositivos después.", + "Welcome to Matter!": "¡Bienvenido a Matter!", "WiFi SSID": "Wi-Fi SSID", "WiFi password": "Contraseña de wifi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Necesita el asistente ioBroker.pro o una suscripción remota para tener más de 5 dispositivos en puente", @@ -170,4 +185,4 @@ "weatherForecast": "Pronóstico del tiempo", "window": "Ventana", "windowTilt": "ventana inclinada" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/fr.json b/src-admin/src/i18n/fr.json index 82bfae0b..2b154235 100644 --- a/src-admin/src/i18n/fr.json +++ b/src-admin/src/i18n/fr.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "Veuillez NE PAS utiliser le code QR / code d'appairage imprimé sur l'appareil Matter.", "%s of %s devices selected": "%s sur %s appareils sélectionnés", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Activez BLE pour coupler des appareils à proximité de votre hôte ioBroker, qui ne sont pas déjà couplés à un autre écosystème. Vous pouvez également utiliser l'application « ioBroker Visu » pour coupler d'autres appareils.", "Add": "Ajouter", @@ -10,6 +11,7 @@ "Add device from one state": "Ajouter un appareil à partir d'un état", "Add device with auto-detection": "Ajouter un appareil avec détection automatique", "Add devices": "Ajouter des appareils", + "Add via QR Code": "Ajout manuel d'un appareil Matter déjà connecté avec le contrôleur Matter ioBroker", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "En plus des ponts, vous pouvez également exposer les états ioBroker en tant que dispositifs autonomes.\nIls peuvent tous être jumelés individuellement.\nVous devriez préférer utiliser des ponts.", "All": "Tous", "All devices": "Tous les dispositifs", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Au moins un pont doit être activé", "At least one enabled bridge must exist": "Au moins un pont activé doit exister", "BLE Commissioning information": "Paramètres de mise en service BLE", + "Be sure, that UDP is enabled and working": "Assurez-vous que UDP est activé et fonctionne", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Configuration Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Informations de mise en service", "Configure custom device": "Configurer un appareil personnalisé", "Connect": "Connecter", + "Connect Matter devices with ioBroker": "Connectez les appareils Matter avec ioBroker", "Connected": "Connecté", "Controller": "Manette", "Controller and Device Factory Reset": "Réinitialisation d'usine du contrôleur et des appareils", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Activer la journalisation de débogage améliorée pour le protocole Matter (visible uniquement avec le niveau de journalisation « debug »)", "Enable/disable bridge": "Activer/désactiver le pont", "Expand all": "Développer tout", + "Expose ioBroker devices as Matter bridge": "Exposez les appareils ioBroker en tant que pont Matter", "General": "Général", "Generate new pairing code": "Générer un nouveau code d'appairage", "Hide unsupported devices": "Masquer les appareils non pris en charge", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Si votre appareil dispose de plusieurs interfaces réseau actives et que vous rencontrez des problèmes, essayez de le limiter à une seule interface.", + "Info about Alexa Bridge": "Remarque : en raison des limitations du système Amazon Alexa, un seul pont ou appareil peut être associé à Alexa par hôte ioBroker ! Cette sélection détermine quel pont sera associé au système Alexa.", "Instance is not alive": "L'instance n'est pas vivante", "Interface": "Interface", "Logging": "Enregistrement", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Les Matter Bridges peuvent contenir plusieurs appareils et constituent le moyen le plus simple d'intégrer des appareils ioBroker dans un écosystème compatible Matter. Les appareils contenus dans un pont peuvent également être ajoutés ou supprimés une fois le pont mis en service. Certaines propriétés de l'appareil ne peuvent pas être modifiées une fois le pont mis en service dans un contrôleur.\n\nLorsque vous possédez au moins une licence Assistant dans votre compte ioBroker.pro, vous pouvez également créer plusieurs ponts afin de structurer au mieux vos appareils.\n\nRemarque : en raison des limitations du système Amazon Alexa, vous ne pouvez avoir qu'un seul pont ou appareil associé à Alexa par hôte ioBroker !", "Matter Controller BLE Dialog Infotext": "Pour coupler des appareils qui utilisent WLAN ou Thread pour communiquer, vous devez fournir vos informations d'identification WLAN ou Thread.\nCes informations d'identification sont ensuite soumises à l'appareil lors de la mise en service. \nSi l'appareil a déjà été mis en service dans un autre écosystème et se trouve déjà dans le réseau, cela n'est pas nécessaire.", "Matter Controller Infotext": "Utilisez les fonctionnalités « Contrôleur » pour intégrer des appareils compatibles Matter dans ioBroker. \nVous pouvez découvrir et mettre en service des appareils et les gérer ensuite. Les données des appareils seront disponibles sous forme d'états dans l'onglet Objets ioBroker. \nLa fonction du contrôleur est désactivée par défaut et peut être activée avec le commutateur ci-dessous.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter nécessite l'activation du protocole IPv6 sur l'interface sélectionnée. Aucun IPv6 n'a été trouvé sur votre système !", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter nécessite que le protocole IPv6 soit activé sur l'interface sélectionnée. Un IPv6 a été détecté sur votre système.", "Name": "Nom", "Network configuration": "Configuration du réseau", "New bridge": "Nouveau pont", @@ -93,6 +101,7 @@ "Options": "Possibilités", "Pairing Info Text": "Découverte des appareils de votre réseau IP. \nVeuillez vous assurer que l'hôte ioBroker peut envoyer et recevoir librement des messages UDP sur le réseau et sur le réseau des appareils à découvrir. \nSi nécessaire, réinitialisez les appareils aux paramètres d'usine ou redémarrez-les.", "Pairing Info Text BLE": "Découverte des appareils dans votre réseau IP et via BLE. \nVeuillez vous assurer que l'hôte ioBroker peut envoyer et recevoir librement des messages UDP sur le réseau et sur le réseau des appareils à découvrir. \nSi nécessaire, réinitialisez les appareils aux paramètres d'usine ou redémarrez-les.", + "Password repeat": "Répéter le mot de passe", "Please confirm": "Veuillez confirmer", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Veuillez scanner ce QR-Code avec l'application de l'écosystème auquel vous souhaitez le coupler ou utiliser le code de configuration imprimé ci-dessous.", "Product ID": "Identifiant du produit", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Se reconnecter au backend", "Required": "Requis", + "Requirements: add via QR Code": "Condition préalable : l'appareil Matter doit déjà être mis en service sur un autre système Matter (par ex. Google, Apple, Alexa, ...). Vous devez ici saisir le code QR d'appairage ou scanner le code QR fourni pour cet appareil Matter dans l'application par l'écosystème Matter (par ex. Google Home).", "Reset": "Réinitialiser", "Reset device or bridge": "Réinitialiser l'appareil ou le pont", "Reset it at least to defaults": "Enfin réinitialisé aux paramètres par défaut", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Afficher le code QR pour la mise en service", "Show additional information": "Afficher des informations supplémentaires", "Show error": "Afficher l'erreur", + "Show readme page": "Afficher la page readme", "Show unsupported devices": "Afficher les appareils non pris en charge", + "Show welcome dialog": "Afficher la boîte de dialogue de bienvenue", "Status": "Statut", "Stop": "Arrêt", "Successfully re-announced": "Ré-annoncé avec succès !", @@ -126,12 +138,15 @@ "Thread credentials": "Informations d'identification du fil de discussion", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Pour mettre en service/connecter des appareils Matter avec le contrôleur ioBroker, utilisez la meilleure application ioBroker.visu :", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Pour utiliser un pont Matter ou des options d'appareil avec plus de 5 appareils, veuillez saisir des informations d'identification ioBroker.pro Cloud valides avec au moins une licence Assistant active.", "Unselect all rooms": "Désélectionner toutes les pièces", "Use last value for ON": "Utiliser la dernière valeur par ON", "Value": "Valeur", "Vendor ID": "Fournisseur ID", "WLAN credentials": "Identifiants WLAN", + "Warning about 15 devices": "Pour éviter les problèmes lors de l'appairage de ce pont, pensez à l'appairer maintenant et à ajouter d'autres appareils par la suite.", + "Welcome to Matter!": "Bienvenue chez Matter !", "WiFi SSID": "SSID Wi-Fi", "WiFi password": "Mot de passe WiFi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Vous avez besoin de l'assistant ioBroker.pro ou d'un abonnement à distance pour avoir plus de 5 appareils en pont", @@ -170,4 +185,4 @@ "weatherForecast": "Prévisions météorologiques", "window": "Fenêtre", "windowTilt": "Fenêtre inclinée" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/it.json b/src-admin/src/i18n/it.json index 97748bd5..b3a3493e 100644 --- a/src-admin/src/i18n/it.json +++ b/src-admin/src/i18n/it.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "Si prega di NON utilizzare il codice QR/codice di associazione stampato sul dispositivo Matter.", "%s of %s devices selected": "%s di %s dispositivi selezionati", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Attiva BLE per associare i dispositivi nelle vicinanze del tuo host ioBroker, che non sono già accoppiati con un altro ecosistema. Puoi anche utilizzare l'app \"ioBroker Visu\" per associare altri dispositivi.", "Add": "Aggiungere", @@ -10,6 +11,7 @@ "Add device from one state": "Aggiungi dispositivo da uno stato", "Add device with auto-detection": "Aggiungi dispositivo con rilevamento automatico", "Add devices": "Aggiungi dispositivi", + "Add via QR Code": "Aggiunta manuale di un dispositivo Matter già connesso con ioBroker Matter Controller", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Oltre ai bridge puoi anche esporre gli stati di ioBroker come dispositivi di questione autonomi.\nPossono essere tutti accoppiati individualmente.\nDovresti preferire usare i bridge.", "All": "Al", "All devices": "Tutti i dispositivi", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Almeno un bridge deve essere abilitato", "At least one enabled bridge must exist": "Deve esistere almeno un bridge abilitato", "BLE Commissioning information": "Impostazioni di messa in servizio BLE", + "Be sure, that UDP is enabled and working": "Assicurati che UDP sia abilitato e funzionante", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Configurazione Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Informazioni sulla messa in servizio", "Configure custom device": "Configura dispositivo personalizzato", "Connect": "Collegare", + "Connect Matter devices with ioBroker": "Collega i dispositivi Matter con ioBroker", "Connected": "Collegato", "Controller": "Controllore", "Controller and Device Factory Reset": "Ripristino delle impostazioni di fabbrica del controller e dei dispositivi", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Abilita la registrazione di debug avanzata per il protocollo Matter (visibile solo con livello di registro \"debug\")", "Enable/disable bridge": "Abilita/disabilita il bridge", "Expand all": "Espandi tutto", + "Expose ioBroker devices as Matter bridge": "Esporre i dispositivi ioBroker come Matter Bridge", "General": "Generale", "Generate new pairing code": "Genera un nuovo codice di accoppiamento", "Hide unsupported devices": "Nascondi i dispositivi non supportati", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Se il tuo dispositivo ha più di un'interfaccia di rete attiva e riscontri problemi, prova a limitarla a un'unica interfaccia.", + "Info about Alexa Bridge": "Nota bene: a causa delle limitazioni del sistema Amazon Alexa, solo un bridge o dispositivo può essere associato ad Alexa per host ioBroker! Questa selezione determina quale bridge verrà associato al sistema Alexa.", "Instance is not alive": "L'istanza non è attiva", "Interface": "Interfaccia", "Logging": "Registrazione", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "I Matter Bridge possono contenere più dispositivi al loro interno e rappresentano il modo più semplice per portare i dispositivi ioBroker in un ecosistema compatibile con Matter. I dispositivi contenuti in un bridge possono anche essere aggiunti o rimossi dopo la messa in servizio del bridge. Alcune proprietà del dispositivo non possono essere modificate dopo la messa in servizio del bridge in un controller.\n\nQuando possiedi almeno una licenza Assistant nel tuo account ioBroker.pro puoi anche creare più bridge per strutturare al meglio i tuoi dispositivi.\n\nNota: a causa delle limitazioni del sistema Amazon Alexa puoi avere un solo bridge o dispositivo accoppiato con Alexa per host ioBroker!", "Matter Controller BLE Dialog Infotext": "Per associare i dispositivi che utilizzano WLAN o Thread per comunicare è necessario fornire le credenziali WLAN o Thread.\nQueste credenziali vengono quindi inviate al dispositivo durante la messa in servizio. \nSe il dispositivo è già stato messo in servizio in un altro ecosistema ed è già nella rete, ciò non è necessario.", "Matter Controller Infotext": "Utilizza le funzionalità \"Controller\" per integrare i dispositivi compatibili con Matter in ioBroker. \nPuoi scoprire e mettere in servizio il dispositivo e gestirlo successivamente. I dati dei dispositivi saranno disponibili come stati nella scheda Oggetti ioBroker. \nLa funzionalità del controller è disabilitata per impostazione predefinita e può essere abilitata con l'interruttore seguente.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter richiede il protocollo IPv6 abilitato sull'interfaccia selezionata. Nessun IPv6 trovato sul tuo sistema!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter richiede il protocollo IPv6 abilitato sull'interfaccia selezionata. È stato trovato un IPv6 sul tuo sistema.", "Name": "Nome", "Network configuration": "Configurazione di rete", "New bridge": "Nuovo ponte", @@ -93,6 +101,7 @@ "Options": "Opzioni", "Pairing Info Text": "Rilevamento dei dispositivi nella tua rete IP. \nAssicurati che l'host ioBroker possa inviare e ricevere liberamente messaggi UDP nella rete e nella rete dei dispositivi da rilevare. \nSe necessario, ripristina i dispositivi alle impostazioni di fabbrica o spegnili e spegnili.", "Pairing Info Text BLE": "Rilevamento dei dispositivi nella tua rete IP e tramite BLE. \nAssicurati che l'host ioBroker possa inviare e ricevere liberamente messaggi UDP nella rete e nella rete dei dispositivi da rilevare. \nSe necessario, ripristina i dispositivi alle impostazioni di fabbrica o spegnili e spegnili.", + "Password repeat": "Ripetizione password", "Please confirm": "Per favore conferma", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Scansiona questo codice QR con l'app dell'ecosistema a cui desideri associarlo o utilizza il codice di configurazione stampato di seguito.", "Product ID": "Codice prodotto", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Riconnettiti al backend", "Required": "Necessario", + "Requirements: add via QR Code": "Prerequisito: il dispositivo Matter deve essere già stato commissionato a un altro sistema Matter (ad esempio Google, Apple, Alexa, ...). Qui devi inserire il codice di associazione del codice QR o scansionare il codice QR fornito per questo dispositivo Matter nell'app dall'ecosistema Matter (ad esempio Google Home).", "Reset": "Ripristina", "Reset device or bridge": "Ripristina il dispositivo o il bridge", "Reset it at least to defaults": "Infine ripristina le impostazioni predefinite", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Mostra il codice QR per la messa in servizio", "Show additional information": "Mostra informazioni aggiuntive", "Show error": "Mostra errore", + "Show readme page": "Mostra la pagina Leggimi", "Show unsupported devices": "Mostra i dispositivi non supportati", + "Show welcome dialog": "Mostra finestra di dialogo di benvenuto", "Status": "Stato", "Stop": "Fermare", "Successfully re-announced": "Riannunciato con successo!", @@ -126,12 +138,15 @@ "Thread credentials": "Credenziali del thread", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Per mettere in funzione/collegare i dispositivi Matter con il controller ioBroker, utilizzare la migliore app ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Per utilizzare un bridge Matter o opzioni dispositivo con più di 5 dispositivi, inserisci credenziali ioBroker.pro Cloud valide con almeno una licenza Assistant attiva.", "Unselect all rooms": "Deseleziona tutte le stanze", "Use last value for ON": "Utilizzare l'ultimo valore per ON", "Value": "Valore", "Vendor ID": "ID del venditore", "WLAN credentials": "Credenziali Wi-Fi", + "Warning about 15 devices": "Per evitare problemi durante l'associazione di questo bridge, si prega di considerare di associarlo ora e di aggiungere altri dispositivi in seguito.", + "Welcome to Matter!": "Benvenuti su Matter!", "WiFi SSID": "SSID Wi-Fi", "WiFi password": "Password Wi-Fi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Hai bisogno dell'assistente ioBroker.pro o di un abbonamento remoto per avere più di 5 dispositivi in bridge", @@ -170,4 +185,4 @@ "weatherForecast": "Previsioni del tempo", "window": "Finestra", "windowTilt": "Finestra inclinata" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/nl.json b/src-admin/src/i18n/nl.json index b157d30a..dc205b06 100644 --- a/src-admin/src/i18n/nl.json +++ b/src-admin/src/i18n/nl.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "Gebruik NIET de QR-code/koppelingscode die op het Matter-apparaat staat.", "%s of %s devices selected": "%s van %s apparaten geselecteerd", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Activeer BLE om apparaten in de buurt van uw ioBroker-host te koppelen die nog niet aan een ander ecosysteem zijn gekoppeld. U kunt ook de app \"ioBroker Visu\" gebruiken om andere apparaten te koppelen.", "Add": "Toevoegen", @@ -10,6 +11,7 @@ "Add device from one state": "Voeg apparaat toe vanuit één staat", "Add device with auto-detection": "Apparaat toevoegen met automatische detectie", "Add devices": "Apparaten toevoegen", + "Add via QR Code": "Handmatige toevoeging van een reeds aangesloten Matter-apparaat met de ioBroker Matter Controller", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Naast bruggen kunt u ioBroker-statussen ook blootstellen als zelfstandige zakenapparaten.\nZe kunnen allemaal afzonderlijk worden gekoppeld.\nGebruik bij voorkeur bruggen.", "All": "Alles", "All devices": "Alle apparaten", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Er moet minimaal één brug zijn ingeschakeld", "At least one enabled bridge must exist": "Er moet ten minste één ingeschakelde brug bestaan", "BLE Commissioning information": "BLE Inbedrijfstellingsinstellingen", + "Be sure, that UDP is enabled and working": "Zorg ervoor dat UDP is ingeschakeld en werkt", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Bluetooth-configuratie", @@ -36,6 +39,7 @@ "Commissioning information": "Informatie over inbedrijfstelling", "Configure custom device": "Configureer een aangepast apparaat", "Connect": "Aansluiten", + "Connect Matter devices with ioBroker": "Verbind Matter-apparaten met ioBroker", "Connected": "Verbonden", "Controller": "Controleur", "Controller and Device Factory Reset": "Fabrieksreset van controller en apparaten", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Verbeterde debug-logging inschakelen voor het Matter-protocol (alleen zichtbaar met logniveau 'debug')", "Enable/disable bridge": "Brug in-/uitschakelen", "Expand all": "Alles uitvouwen", + "Expose ioBroker devices as Matter bridge": "IoBroker-apparaten blootstellen als Matter-brug", "General": "Algemeen", "Generate new pairing code": "Genereer een nieuwe koppelingscode", "Hide unsupported devices": "Verberg niet-ondersteunde apparaten", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Als uw apparaat meer dan één actieve netwerkinterface heeft en u problemen ondervindt, probeer het dan te beperken tot één interface.", + "Info about Alexa Bridge": "Let op: Vanwege beperkingen van het Amazon Alexa-systeem kan er slechts één bridge of apparaat worden gekoppeld aan Alexa per ioBroker-host! Deze selectie bepaalt welke bridge wordt gekoppeld aan het Alexa-systeem.", "Instance is not alive": "Instantie is niet levend", "Interface": "Koppel", "Logging": "Loggen", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges kunnen meerdere apparaten bevatten en zijn de meest eenvoudige manier om ioBroker-apparaten in een Matter-compatibel ecosysteem te brengen. Apparaten in een brug kunnen ook worden toegevoegd of verwijderd nadat de brug in gebruik is genomen. Sommige apparaateigenschappen kunnen niet worden gewijzigd nadat de brug in een controller is in bedrijf gesteld.\n\nWanneer u minimaal een Assistent-licentie in uw ioBroker.pro-account bezit, kunt u ook meerdere bridges maken om uw apparaten zo het beste te structureren.\n\nLet op: vanwege de beperkingen van het Amazon Alexa-systeem kun je per ioBroker-host slechts één bridge of apparaat met Alexa koppelen!", "Matter Controller BLE Dialog Infotext": "Om apparaten te koppelen die WLAN of Thread gebruiken om te communiceren, moet u uw WLAN- of Thread-inloggegevens opgeven.\nDeze inloggegevens worden vervolgens tijdens de inbedrijfstelling naar het apparaat verzonden. \nAls het apparaat al in gebruik is genomen in een ander ecosysteem en zich al in het netwerk bevindt, is dit niet nodig.", "Matter Controller Infotext": "Gebruik de \"Controller\"-functies om Matter-compatibele apparaten in ioBroker te integreren. \nU kunt apparaten ontdekken, in bedrijf stellen en achteraf beheren. De gegevens van de apparaten zullen beschikbaar zijn als statussen op het tabblad ioBroker Objects. \nDe controllerfunctie is standaard uitgeschakeld en kan worden ingeschakeld met de onderstaande schakelaar.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter vereist ingeschakeld IPv6-protocol op geselecteerde interface. Er is geen IPv6 gevonden op uw systeem!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter vereist ingeschakeld IPv6-protocol op geselecteerde interface. Er is wat IPv6 gevonden op uw systeem.", "Name": "Naam", "Network configuration": "Netwerk configuratie", "New bridge": "Nieuwe brug", @@ -93,6 +101,7 @@ "Options": "Opties", "Pairing Info Text": "Apparaten in uw IP-netwerk ontdekken. \nZorg ervoor dat de ioBroker-host vrijelijk UDP-berichten kan verzenden en ontvangen in het netwerk en in het netwerk van de te ontdekken apparaten. \nReset indien nodig de apparaten naar de fabrieksinstellingen of schakel ze uit en weer in.", "Pairing Info Text BLE": "Apparaten ontdekken in uw IP-netwerk en via BLE. \nZorg ervoor dat de ioBroker-host vrijelijk UDP-berichten kan verzenden en ontvangen in het netwerk en in het netwerk van de te ontdekken apparaten. \nReset indien nodig de apparaten naar de fabrieksinstellingen of schakel ze uit en weer in.", + "Password repeat": "Wachtwoord herhalen", "Please confirm": "Bevestig alstublieft", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Scan deze QR-code met de app van het ecosysteem waaraan u deze wilt koppelen of gebruik de hieronder afgedrukte installatiecode.", "Product ID": "Product-ID", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Opnieuw verbinden met backend", "Required": "Vereist", + "Requirements: add via QR Code": "Voorwaarde: Het Matter-apparaat moet al in gebruik zijn genomen bij een ander Matter-systeem (bijv. Google, Apple, Alexa, ...). Hier moet u de QR-codekoppelingscode invoeren of de QR-code scannen die voor dit Matter-apparaat in de app is verstrekt door het Matter-ecosysteem (bijv. Google Home).", "Reset": "Opnieuw instellen", "Reset device or bridge": "Apparaat of brug resetten", "Reset it at least to defaults": "Eindelijk teruggezet naar de standaardinstellingen", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "QR-code weergeven voor inbedrijfstelling", "Show additional information": "Toon aanvullende informatie", "Show error": "Fout weergeven", + "Show readme page": "Leesmij-pagina weergeven", "Show unsupported devices": "Toon niet-ondersteunde apparaten", + "Show welcome dialog": "Welkomstdialoog weergeven", "Status": "Toestand", "Stop": "Stop", "Successfully re-announced": "Met succes opnieuw aangekondigd!", @@ -126,12 +138,15 @@ "Thread credentials": "Thread-referenties", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Voor het in bedrijf stellen/verbinden van materieapparaten met de ioBroker-controller kunt u het beste de ioBroker.visu-app gebruiken:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Om een Matter-bridge of apparaatopties met meer dan 5 apparaten te gebruiken, voert u geldige ioBroker.pro Cloud-inloggegevens in met minimaal een actieve Assistent-licentie.", "Unselect all rooms": "Deselecteer alle kamers", "Use last value for ON": "Gebruik de laatste waarde bij AAN", "Value": "Waarde", "Vendor ID": "Verkopers ID", "WLAN credentials": "WLAN-referenties", + "Warning about 15 devices": "Om problemen te voorkomen bij het koppelen van deze brug, kunt u overwegen om deze nu te koppelen en later meer apparaten toe te voegen.", + "Welcome to Matter!": "Welkom bij Matter!", "WiFi SSID": "WiFi-SSID", "WiFi password": "Wifi wachtwoord", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "U hebt een ioBroker.pro-assistent of een extern abonnement nodig om meer dan 5 apparaten in bridge te hebben", @@ -170,4 +185,4 @@ "weatherForecast": "Weervoorspelling", "window": "Raam", "windowTilt": "Gekanteld raam" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/pl.json b/src-admin/src/i18n/pl.json index aa9adc1a..307e089d 100644 --- a/src-admin/src/i18n/pl.json +++ b/src-admin/src/i18n/pl.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "Prosimy NIE używać kodu QR/kodu parowania wydrukowanego na urządzeniu Matter.", "%s of %s devices selected": "Wybrano %s z %s urządzeń", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Aktywuj BLE, aby sparować urządzenia w pobliżu hosta ioBroker, które nie są jeszcze sparowane z innym ekosystemem. Możesz także użyć aplikacji „ioBroker Visu”, aby sparować inne urządzenia.", "Add": "Dodać", @@ -10,6 +11,7 @@ "Add device from one state": "Dodaj urządzenie z jednego stanu", "Add device with auto-detection": "Dodaj urządzenie z funkcją automatycznego wykrywania", "Add devices": "Dodaj urządzenia", + "Add via QR Code": "Ręczne dodawanie już podłączonego urządzenia Matter z kontrolerem Matter ioBroker", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Oprócz mostów możesz także udostępniać stany ioBroker jako samodzielne urządzenia materii.\nWszystkie można łączyć indywidualnie.\nPowinieneś preferować korzystanie z mostów.", "All": "Wszystko", "All devices": "Wszystkie urządzenia", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Przynajmniej jeden most musi być włączony", "At least one enabled bridge must exist": "Musi istnieć co najmniej jeden włączony most", "BLE Commissioning information": "BLE Ustawienia uruchomienia", + "Be sure, that UDP is enabled and working": "Upewnij się, że protokół UDP jest włączony i działa", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Konfiguracja Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Informacje o uruchomieniu", "Configure custom device": "Skonfiguruj urządzenie niestandardowe", "Connect": "Łączyć", + "Connect Matter devices with ioBroker": "Połącz urządzenia Matter z ioBroker", "Connected": "Połączony", "Controller": "Kontroler", "Controller and Device Factory Reset": "Reset do ustawień fabrycznych kontrolera i urządzeń", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Włącz rozszerzone rejestrowanie debugowania dla protokołu Matter (widoczne tylko na poziomie rejestrowania „debugowanie”)", "Enable/disable bridge": "Włącz/wyłącz most", "Expand all": "Rozwiń wszystkie", + "Expose ioBroker devices as Matter bridge": "Udostępnij urządzenia ioBroker jako most Matter", "General": "Ogólny", "Generate new pairing code": "Wygeneruj nowy kod parowania", "Hide unsupported devices": "Ukryj nieobsługiwane urządzenia", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Jeśli Twoje urządzenie ma więcej niż jeden aktywny interfejs sieciowy i masz problemy, spróbuj ograniczyć je do jednego interfejsu.", + "Info about Alexa Bridge": "Uwaga: Ze względu na ograniczenia systemu Amazon Alexa, tylko jeden most lub urządzenie może być sparowane z Alexą na hosta ioBroker! Ten wybór określa, który most zostanie sparowany z systemem Alexa.", "Instance is not alive": "Instancja nie jest żywa", "Interface": "Interfejs", "Logging": "Logowanie", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges może zawierać wiele urządzeń i jest najprostszym sposobem na wprowadzenie urządzeń ioBroker do ekosystemu kompatybilnego z Matter. Urządzenia znajdujące się w moście można również dodawać lub usuwać po oddaniu mostu do użytku. Niektórych właściwości urządzenia nie da się zmienić po uruchomieniu mostu w sterowniku.\n\nJeśli posiadasz co najmniej Licencję Asystenta na swoim koncie ioBroker.pro, możesz także tworzyć wiele mostów, aby najlepiej zorganizować swoje urządzenia.\n\nUwaga: ze względu na ograniczenia systemu Amazon Alexa, na jednego hosta ioBroker można sparować tylko jeden most lub urządzenie z Alexą!", "Matter Controller BLE Dialog Infotext": "Aby sparować urządzenia korzystające z sieci WLAN lub wątku do komunikacji, musisz podać dane uwierzytelniające sieć WLAN lub wątek.\nTe dane uwierzytelniające są następnie przesyłane do urządzenia podczas uruchamiania. \nJeśli urządzenie zostało już uruchomione w innym ekosystemie i znajduje się już w sieci, nie jest to potrzebne.", "Matter Controller Infotext": "Skorzystaj z funkcji „Kontrolera”, aby zintegrować urządzenia kompatybilne z Matter z ioBroker. \nMożesz odkryć i uruchomić urządzenie, a następnie zarządzać nimi. Dane urządzeń będą dostępne jako stany w zakładce Obiekty ioBroker. \nFunkcja kontrolera jest domyślnie wyłączona i można ją włączyć za pomocą poniższego przełącznika.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter wymaga włączonego protokołu IPv6 na wybranym interfejsie. Nie znaleziono protokołu IPv6 w Twoim systemie!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter wymaga włączonego protokołu IPv6 na wybranym interfejsie. Niektóre IPv6 zostały znalezione w twoim systemie.", "Name": "Nazwa", "Network configuration": "Konfiguracja sieci", "New bridge": "Nowy most", @@ -93,6 +101,7 @@ "Options": "Opcje", "Pairing Info Text": "Wykrywanie urządzeń w Twojej sieci IP. \nUpewnij się, że host ioBroker może swobodnie wysyłać i odbierać wiadomości UDP w sieci oraz w sieci wykrywanych urządzeń. \nW razie potrzeby zresetuj urządzenia do ustawień fabrycznych lub wyłącz je i włącz.", "Pairing Info Text BLE": "Wykrywanie urządzeń w Twojej sieci IP i poprzez BLE. \nUpewnij się, że host ioBroker może swobodnie wysyłać i odbierać wiadomości UDP w sieci oraz w sieci wykrywanych urządzeń. \nW razie potrzeby zresetuj urządzenia do ustawień fabrycznych lub wyłącz je i włącz.", + "Password repeat": "Powtórz hasło", "Please confirm": "Proszę potwierdzić", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Zeskanuj ten kod QR za pomocą aplikacji ekosystemu, z którym chcesz go sparować, lub użyj poniższego wydrukowanego kodu konfiguracyjnego.", "Product ID": "ID produktu", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Ponowne połączenie z zapleczem", "Required": "Wymagany", + "Requirements: add via QR Code": "Warunek wstępny: Urządzenie Matter musi być już zlecone innemu systemowi Matter (np. Google, Apple, Alexa, ...). Tutaj musisz wprowadzić kod parowania kodu QR lub zeskanować kod QR, który jest dostarczany dla tego urządzenia Matter w aplikacji przez ekosystem Matter (np. Google Home).", "Reset": "Resetowanie", "Reset device or bridge": "Zresetuj urządzenie lub most", "Reset it at least to defaults": "Na koniec przywróć ustawienia domyślne", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Pokaż kod QR do uruchomienia", "Show additional information": "Pokaż dodatkowe informacje", "Show error": "Pokaż błąd", + "Show readme page": "Pokaż stronę readme", "Show unsupported devices": "Pokaż nieobsługiwane urządzenia", + "Show welcome dialog": "Pokaż okno dialogowe powitalne", "Status": "Status", "Stop": "Zatrzymywać się", "Successfully re-announced": "Pomyślnie ogłoszono ponownie!", @@ -126,12 +138,15 @@ "Thread credentials": "Poświadczenia wątku", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Aby uruchomić/połączyć urządzenia Matter ze sterownikiem ioBroker, należy użyć lepszej aplikacji ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Aby korzystać z mostu Matter lub opcji urządzenia z więcej niż 5 urządzeniami, wprowadź prawidłowe dane uwierzytelniające ioBroker.pro Cloud z co najmniej aktywną licencją Asystenta.", "Unselect all rooms": "Odznacz wszystkie pokoje", "Use last value for ON": "Użyj ostatniej wartości poprzez ON", "Value": "Wartość", "Vendor ID": "Identyfikator sprzedawcy", "WLAN credentials": "Dane uwierzytelniające WLAN", + "Warning about 15 devices": "Aby uniknąć problemów podczas parowania tego mostu, rozważ sparowanie go teraz i dodanie kolejnych urządzeń później.", + "Welcome to Matter!": "Witamy w Matter!", "WiFi SSID": "SSID Wi-Fi", "WiFi password": "Hasło do wifi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Aby mieć więcej niż 5 urządzeń w moście, potrzebujesz asystenta ioBroker.pro lub zdalnej subskrypcji", @@ -170,4 +185,4 @@ "weatherForecast": "Prognoza pogody", "window": "Okno", "windowTilt": "Uchylone okno" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/pt.json b/src-admin/src/i18n/pt.json index b5db90c6..9c33cfcc 100644 --- a/src-admin/src/i18n/pt.json +++ b/src-admin/src/i18n/pt.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "NÃO use o código QR/código de pareamento impresso no dispositivo Matter.", "%s of %s devices selected": "%s de %s dispositivos selecionados", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Ative o BLE para emparelhar dispositivos próximos ao seu host ioBroker, que ainda não estejam emparelhados com outro ecossistema. Você também pode usar o aplicativo \"ioBroker Visu\" para emparelhar outros dispositivos.", "Add": "Adicionar", @@ -10,6 +11,7 @@ "Add device from one state": "Adicionar dispositivo de um estado", "Add device with auto-detection": "Adicionar dispositivo com detecção automática", "Add devices": "Adicionar dispositivos", + "Add via QR Code": "Adição manual de um dispositivo Matter já conectado com o controlador Matter ioBroker", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "Além das pontes, você também pode expor os estados do ioBroker como dispositivos independentes.\nTodos eles podem ser emparelhados individualmente.\nVocê deve preferir usar pontes.", "All": "Tudo", "All devices": "Todos os dispositivos", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Pelo menos uma ponte deve estar habilitada", "At least one enabled bridge must exist": "Deve existir pelo menos uma ponte habilitada", "BLE Commissioning information": "Configurações de comissionamento BLE", + "Be sure, that UDP is enabled and working": "Certifique-se de que o UDP esteja habilitado e funcionando", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Configuração Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Informações de comissionamento", "Configure custom device": "Configurar dispositivo personalizado", "Connect": "Conectar", + "Connect Matter devices with ioBroker": "Conecte dispositivos Matter com ioBroker", "Connected": "Conectado", "Controller": "Controlador", "Controller and Device Factory Reset": "Redefinição de fábrica do controlador e dos dispositivos", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Habilitar registro de depuração aprimorado para o protocolo Matter (visível somente com o nível de registro \"debug\")", "Enable/disable bridge": "Habilitar/desabilitar ponte", "Expand all": "Expandir todos", + "Expose ioBroker devices as Matter bridge": "Expor dispositivos ioBroker como ponte de matéria", "General": "Em geral", "Generate new pairing code": "Gerar novo código de pareamento", "Hide unsupported devices": "Ocultar dispositivos não suportados", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Se o seu dispositivo tiver mais de uma interface de rede ativa e você tiver problemas, tente limitá-lo a uma interface.", + "Info about Alexa Bridge": "Observação: devido às limitações do sistema Amazon Alexa, apenas uma ponte ou dispositivo pode ser pareado com Alexa por host ioBroker! Esta seleção determina qual ponte será pareada com o sistema Alexa.", "Instance is not alive": "A instância não está viva", "Interface": "Interface", "Logging": "Exploração madeireira", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges podem conter vários dispositivos dentro deles e são a maneira mais simples de trazer dispositivos ioBroker para um ecossistema compatível com Matter. Os dispositivos contidos em uma ponte também podem ser adicionados ou removidos após o comissionamento da ponte. Algumas propriedades do dispositivo não podem ser alteradas depois que a ponte foi comissionada em um controlador.\n\nQuando você possui pelo menos uma licença de assistente em sua conta ioBroker.pro, você também pode criar várias pontes e estruturar melhor seus dispositivos.\n\nObservação: devido às limitações do sistema Amazon Alexa, você só pode ter uma ponte ou dispositivo emparelhado com Alexa por host ioBroker!", "Matter Controller BLE Dialog Infotext": "Para emparelhar dispositivos que usam WLAN ou Thread para se comunicar, você precisa fornecer suas credenciais de WLAN ou Thread.\nEssas credenciais são então enviadas ao dispositivo durante o comissionamento. \nSe o dispositivo já tiver sido comissionado em outro ecossistema e já estiver na rede, isso não será necessário.", "Matter Controller Infotext": "Use os recursos do \"Controlador\" para integrar dispositivos compatíveis com Matter no ioBroker. \nVocê pode descobrir e comissionar dispositivos e gerenciá-los posteriormente. Os dados dos dispositivos estarão disponíveis como estados na aba Objetos ioBroker. \nO recurso do controlador está desabilitado por padrão e pode ser habilitado com a chave abaixo.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "O assunto requer protocolo IPv6 habilitado na interface selecionada. Nenhum IPv6 foi encontrado no seu sistema!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "O assunto requer protocolo IPv6 habilitado na interface selecionada. Algum IPv6 foi encontrado no seu sistema.", "Name": "Nome", "Network configuration": "Configuração de rede", "New bridge": "Nova ponte", @@ -93,6 +101,7 @@ "Options": "Opções", "Pairing Info Text": "Descobrindo dispositivos em sua rede IP. \nCertifique-se de que o host ioBroker possa enviar e receber livremente mensagens UDP na rede e na rede dos dispositivos a serem descobertos. \nSe necessário, redefina os dispositivos para as configurações de fábrica ou desligue-os.", "Pairing Info Text BLE": "Descobrindo dispositivos na sua rede IP e via BLE. \nCertifique-se de que o host ioBroker possa enviar e receber livremente mensagens UDP na rede e na rede dos dispositivos a serem descobertos. \nSe necessário, redefina os dispositivos para as configurações de fábrica ou desligue-os.", + "Password repeat": "Repetição de senha", "Please confirm": "Por favor confirme", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Digitalize este código QR com o aplicativo do ecossistema ao qual deseja emparelhá-lo ou use o código de configuração impresso abaixo.", "Product ID": "ID do produto", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Reconectar ao backend", "Required": "Obrigatório", + "Requirements: add via QR Code": "Pré-requisito: O dispositivo Matter já deve estar comissionado para outro sistema Matter (por exemplo, Google, Apple, Alexa, ...). Aqui você deve inserir o código de pareamento do código QR ou escanear o código QR fornecido para este dispositivo Matter no aplicativo pelo ecossistema Matter (por exemplo, Google Home).", "Reset": "Reiniciar", "Reset device or bridge": "Redefinir dispositivo ou ponte", "Reset it at least to defaults": "Finalmente redefinir para as configurações padrão", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Mostrar código QR para comissionamento", "Show additional information": "Mostrar informações adicionais", "Show error": "Mostrar erro", + "Show readme page": "Mostrar página leia-me", "Show unsupported devices": "Mostrar dispositivos não suportados", + "Show welcome dialog": "Mostrar caixa de diálogo de boas-vindas", "Status": "Status", "Stop": "Parar", "Successfully re-announced": "Reanunciado com sucesso!", @@ -126,12 +138,15 @@ "Thread credentials": "Credenciais de thread", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Para comissionar/conectar dispositivos de matéria com o controlador ioBroker, use o aplicativo ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Para usar uma ponte Matter ou opções de dispositivo com mais de 5 dispositivos, insira credenciais válidas do ioBroker.pro Cloud com pelo menos uma licença ativa do Assistant.", "Unselect all rooms": "Desmarque todos os quartos", "Use last value for ON": "Use o último valor por ON", "Value": "Valor", "Vendor ID": "ID do fornecedor", "WLAN credentials": "Credenciais WLAN", + "Warning about 15 devices": "Para evitar problemas ao parear esta ponte, considere pareá-la agora e adicionar mais dispositivos depois", + "Welcome to Matter!": "Bem-vindo à Matter!", "WiFi SSID": "SSID Wi-Fi", "WiFi password": "Senha do wifi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Você precisa do assistente ioBroker.pro ou assinatura remota para ter mais de 5 dispositivos em bridge", @@ -170,4 +185,4 @@ "weatherForecast": "Previsão do tempo", "window": "Janela", "windowTilt": "Janela inclinada" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/ru.json b/src-admin/src/i18n/ru.json index e31922de..0fea8571 100644 --- a/src-admin/src/i18n/ru.json +++ b/src-admin/src/i18n/ru.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "НЕ ИСПОЛЬЗУЙТЕ QR-код/код сопряжения, напечатанный на устройстве Matter.", "%s of %s devices selected": "Выбрано %s из %s устройств", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Активируйте BLE для сопряжения устройств поблизости от вашего хоста ioBroker, которые еще не подключены к другой экосистеме. Вы также можете использовать приложение «ioBroker Visu» для сопряжения других устройств.", "Add": "Добавлять", @@ -10,6 +11,7 @@ "Add device from one state": "Добавить устройство из одного штата", "Add device with auto-detection": "Добавить устройство с автоопределением", "Add devices": "Добавить устройства", + "Add via QR Code": "Ручное добавление уже подключенного устройства Matter с помощью контроллера Matter ioBroker", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "В дополнение к мостам вы также можете предоставлять состояния ioBroker как автономные материальные устройства.\nВсе они могут быть соединены индивидуально.\nВы должны предпочесть использовать мосты.", "All": "Все", "All devices": "Все устройства", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Хотя бы один мост должен быть включен", "At least one enabled bridge must exist": "Должен существовать хотя бы один включенный мост.", "BLE Commissioning information": "BLE Настройки ввода в эксплуатацию", + "Be sure, that UDP is enabled and working": "Убедитесь, что UDP включен и работает.", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "Конфигурация Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Информация о вводе в эксплуатацию", "Configure custom device": "Настройка пользовательского устройства", "Connect": "Соединять", + "Connect Matter devices with ioBroker": "Подключите устройства Matter с помощью ioBroker", "Connected": "Связанный", "Controller": "Контроллер", "Controller and Device Factory Reset": "Сброс настроек контроллера и устройств до заводских настроек", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Включить расширенное ведение журнала отладки для протокола Matter (видно только с уровнем журнала «отладка»)", "Enable/disable bridge": "Включить/выключить мост", "Expand all": "Расширить все", + "Expose ioBroker devices as Matter bridge": "Предоставьте устройства ioBroker в качестве моста Matter", "General": "Общий", "Generate new pairing code": "Создать новый код сопряжения", "Hide unsupported devices": "Скрыть неподдерживаемые устройства", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Если на вашем устройстве имеется более одного активного сетевого интерфейса и у вас возникли проблемы, попробуйте ограничить его одним интерфейсом.", + "Info about Alexa Bridge": "Обратите внимание: из-за ограничений системы Amazon Alexa, только один мост или устройство может быть сопряжено с Alexa на один хост ioBroker! Этот выбор определяет, какой мост будет сопряжен с системой Alexa.", "Instance is not alive": "Экземпляр не живой", "Interface": "Интерфейс", "Logging": "Ведение журнала", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges может содержать внутри себя несколько устройств и является наиболее простым способом объединения устройств ioBroker в экосистему, совместимую с Matter. Устройства, содержащиеся в мосте, также можно добавлять или удалять после ввода моста в эксплуатацию. Некоторые свойства устройства невозможно изменить после ввода моста в состав контроллера.\n\nЕсли у вас есть хотя бы лицензия Assistant в вашей учетной записи ioBroker.pro, вы также можете создать несколько мостов, чтобы лучше структурировать свои устройства.\n\nОбратите внимание: из-за ограничений системы Amazon Alexa вы можете иметь только один мост или устройство, сопряженное с Alexa, на один хост ioBroker!", "Matter Controller BLE Dialog Infotext": "Для сопряжения устройств, которые используют WLAN или Thread для связи, вам необходимо предоставить свои учетные данные WLAN или Thread.\nЭти учетные данные затем передаются на устройство во время ввода в эксплуатацию. \nЕсли устройство уже было введено в эксплуатацию в другой экосистеме и уже находится в сети, в этом нет необходимости.", "Matter Controller Infotext": "Используйте функции «Контроллер» для интеграции совместимых с Matter устройств в ioBroker. \nВы можете обнаружить и ввести в эксплуатацию устройство, а затем управлять им. Данные устройств будут доступны в виде состояний на вкладке «Объекты ioBroker». \nФункция контроллера по умолчанию отключена, но ее можно включить с помощью переключателя ниже.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Matter требует включенного протокола IPv6 на выбранном интерфейсе. IPv6 не найден в вашей системе!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Matter требует включенного протокола IPv6 на выбранном интерфейсе. В вашей системе обнаружен какой-то IPv6.", "Name": "Имя", "Network configuration": "Конфигурация сети", "New bridge": "Новый мост", @@ -93,6 +101,7 @@ "Options": "Параметры", "Pairing Info Text": "Обнаружение устройств в вашей IP-сети. \nУбедитесь, что хост ioBroker может свободно отправлять и получать UDP-сообщения в сети и в сети обнаруживаемых устройств. \nПри необходимости сбросьте устройства к заводским настройкам или выключите и включите их.", "Pairing Info Text BLE": "Обнаружение устройств в вашей IP-сети и через BLE. \nУбедитесь, что хост ioBroker может свободно отправлять и получать UDP-сообщения в сети и в сети обнаруживаемых устройств. \nПри необходимости сбросьте устройства к заводским настройкам или выключите и включите их.", + "Password repeat": "Повторите пароль", "Please confirm": "Пожалуйста подтвердите", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Отсканируйте этот QR-код с помощью приложения той экосистемы, к которой вы хотите его подключить, или используйте распечатанный ниже код настройки.", "Product ID": "Код товара", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Повторное подключение к бэкэнду", "Required": "Необходимый", + "Requirements: add via QR Code": "Предварительное условие: Устройство Matter должно быть уже подключено к другой системе Matter (например, Google, Apple, Alexa, ...). Здесь вы должны ввести код сопряжения QR-кода или отсканировать QR-код, предоставленный для этого устройства Matter в приложении экосистемой Matter (например, Google Home).", "Reset": "Перезагрузить", "Reset device or bridge": "Сброс устройства или моста", "Reset it at least to defaults": "Наконец сброс к настройкам по умолчанию", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Показать QR-код для ввода в эксплуатацию", "Show additional information": "Показать дополнительную информацию", "Show error": "Показать ошибку", + "Show readme page": "Показать страницу readme", "Show unsupported devices": "Показать неподдерживаемые устройства", + "Show welcome dialog": "Показать приветственный диалог", "Status": "Положение дел", "Stop": "Останавливаться", "Successfully re-announced": "Успешно повторно объявлено!", @@ -126,12 +138,15 @@ "Thread credentials": "Учетные данные потока", "Thread network name": "Имя сети Thread", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Для ввода в эксплуатацию/подключения устройств Matter к контроллеру ioBroker используйте лучшее приложение ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Чтобы использовать мост Matter или варианты устройств с более чем 5 устройствами, введите действительные учетные данные ioBroker.pro Cloud с как минимум активной лицензией Assistant.", "Unselect all rooms": "Отменить выбор всех номеров", "Use last value for ON": "Использовать последнее значение при включении", "Value": "Значение", "Vendor ID": "Идентификатор поставщика", "WLAN credentials": "Учетные данные WLAN", + "Warning about 15 devices": "Чтобы избежать проблем при сопряжении этого моста, пожалуйста, рассмотрите возможность сопряжения сейчас и добавления дополнительных устройств позже.", + "Welcome to Matter!": "Добро пожаловать в Matter!", "WiFi SSID": "SSID Wi-Fi", "WiFi password": "Пароль Wi-Fi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Вам нужен помощник ioBroker.pro или удаленная подписка, чтобы иметь более 5 устройств в мосту.", @@ -170,4 +185,4 @@ "weatherForecast": "Прогноз погоды", "window": "Окно", "windowTilt": "Наклонное окно" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/uk.json b/src-admin/src/i18n/uk.json index e0cc0603..3e70c7e9 100644 --- a/src-admin/src/i18n/uk.json +++ b/src-admin/src/i18n/uk.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": " Будь ласка, НЕ використовуйте QR-код/код сполучення, надрукований на пристрої Matter.", "%s of %s devices selected": "%s із %s вибрано пристроїв", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "Активуйте BLE, щоб підключити пристрої поблизу вашого хосту ioBroker, які ще не підключено до іншої екосистеми. Ви також можете використовувати додаток \"ioBroker Visu\" для підключення інших пристроїв.", "Add": "додати", @@ -10,6 +11,7 @@ "Add device from one state": "Додати пристрій з одного стану", "Add device with auto-detection": "Додати пристрій з автовизначенням", "Add devices": "Додайте пристрої", + "Add via QR Code": "Ручне додавання вже підключеного пристрою Matter за допомогою ioBroker Matter Controller", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "На додаток до мостів ви також можете виставляти стани ioBroker як самостійні матеріальні пристрої.\nЇх усіх можна поєднати окремо.\nКраще використовувати мости.", "All": "Усе", "All devices": "Всі пристрої", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "Принаймні один міст має бути ввімкнено", "At least one enabled bridge must exist": "Повинен існувати принаймні один увімкнений міст", "BLE Commissioning information": "Параметри введення в експлуатацію BLE", + "Be sure, that UDP is enabled and working": "Переконайтеся, що UDP увімкнено та працює", "Bluetooth": "Bluetooth", "Bluetooth HCI ID": "Bluetooth HCI ID", "Bluetooth configuration": "конфігурація Bluetooth", @@ -36,6 +39,7 @@ "Commissioning information": "Інформація про введення в експлуатацію", "Configure custom device": "Налаштувати спеціальний пристрій", "Connect": "Підключитися", + "Connect Matter devices with ioBroker": "Підключайте пристрої Matter за допомогою ioBroker", "Connected": "Підключено", "Controller": "Контролер", "Controller and Device Factory Reset": "Скидання до заводських налаштувань контролера та пристроїв", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "Увімкнути розширене журналювання налагодження для протоколу Matter (видиме лише на рівні журналу \"налагодження\")", "Enable/disable bridge": "Увімкнути/вимкнути міст", "Expand all": "Розгорнути все", + "Expose ioBroker devices as Matter bridge": "Виявляйте пристрої ioBroker як міст Matter", "General": "Загальний", "Generate new pairing code": "Створіть новий код сполучення", "Hide unsupported devices": "Приховати непідтримувані пристрої", "If your device has more then one active network interface and you have issues try limiting it to one interface": "Якщо ваш пристрій має більше ніж один активний мережевий інтерфейс і у вас є проблеми, спробуйте обмежити його одним інтерфейсом.", + "Info about Alexa Bridge": "Будь ласка, зверніть увагу: через обмеження системи Amazon Alexa лише один міст або пристрій можна поєднати з Alexa на одному хості ioBroker! Цей вибір визначає, який міст буде сполучено з системою Alexa.", "Instance is not alive": "Примірник не живий", "Interface": "Інтерфейс", "Logging": "Лісозаготівля", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges можуть містити в собі кілька пристроїв і є найпростішим способом підключення пристроїв ioBroker до сумісної з Matter екосистеми. Пристрої, які містяться в мосту, також можна додавати або видаляти після введення мосту в експлуатацію. Деякі властивості пристрою не можуть бути змінені після введення мосту в експлуатацію контролера.\n\nЯкщо у вас є принаймні ліцензія Assistant у вашому обліковому записі ioBroker.pro, ви також можете створити кілька мостів, щоб найкраще структурувати свої пристрої.\n\nБудь ласка, зверніть увагу: через обмеження системи Amazon Alexa ви можете мати лише один міст або пристрій, підключений до Alexa на хост ioBroker!", "Matter Controller BLE Dialog Infotext": "Щоб з’єднати пристрої, які використовують для зв’язку WLAN або Thread, потрібно надати свої облікові дані WLAN або Thread.\nПотім ці облікові дані надсилаються на пристрій під час введення в експлуатацію. \nЯкщо пристрій уже введено в експлуатацію в іншій екосистемі та вже є в мережі, це не потрібно.", "Matter Controller Infotext": "Використовуйте функції «Контролер», щоб інтегрувати сумісні пристрої з Matter в ioBroker. \nВи можете виявити та ввести в експлуатацію пристрій, а потім керувати ним. Дані пристроїв будуть доступні як стани на вкладці Об’єкти ioBroker. \nФункцію контролера вимкнено за замовчуванням, і її можна ввімкнути за допомогою перемикача нижче.", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "Справа вимагає ввімкнення протоколу IPv6 на вибраному інтерфейсі. У вашій системі не знайдено IPv6!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "Справа вимагає ввімкнення протоколу IPv6 на вибраному інтерфейсі. У вашій системі знайдено деяку кількість IPv6.", "Name": "Ім'я", "Network configuration": "Конфігурація мережі", "New bridge": "Новий міст", @@ -93,6 +101,7 @@ "Options": "Опції", "Pairing Info Text": "Виявлення пристроїв у вашій IP-мережі. \nБудь ласка, переконайтеся, що хост ioBroker може вільно надсилати й отримувати UDP-повідомлення в мережі та в мережі пристроїв для виявлення. \nЗа потреби скиньте пристрої до заводських налаштувань або вимкніть їх.", "Pairing Info Text BLE": "Виявлення пристроїв у вашій IP-мережі та через BLE. \nБудь ласка, переконайтеся, що хост ioBroker може вільно надсилати й отримувати UDP-повідомлення в мережі та в мережі пристроїв для виявлення. \nЗа потреби скиньте пристрої до заводських налаштувань або вимкніть їх.", + "Password repeat": "Повторення пароля", "Please confirm": "Будь-ласка підтвердіть", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "Будь ласка, відскануйте цей QR-код за допомогою програми екосистеми, до якої ви хочете підключити його, або скористайтеся надрукованим нижче кодом налаштування.", "Product ID": "ID продукту", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "Повторно підключіться до сервера", "Required": "Обов'язковий", + "Requirements: add via QR Code": "Необхідна умова: пристрій Matter уже має бути підключено до іншої системи Matter (наприклад, Google, Apple, Alexa, ...). Тут ви повинні ввести код підключення QR-коду або відсканувати QR-код, наданий для цього пристрою Matter у програмі екосистемою Matter (наприклад, Google Home).", "Reset": "Скинути", "Reset device or bridge": "Скинути пристрій або міст", "Reset it at least to defaults": "Нарешті скинути налаштування за замовчуванням", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "Показати QR-код для введення в експлуатацію", "Show additional information": "Показати додаткову інформацію", "Show error": "Показати помилку", + "Show readme page": "Показати сторінку readme", "Show unsupported devices": "Показати непідтримувані пристрої", + "Show welcome dialog": "Показати діалогове вікно привітання", "Status": "Статус", "Stop": "СТІЙ", "Successfully re-announced": "Успішно повторно анонсовано!", @@ -126,12 +138,15 @@ "Thread credentials": "Облікові дані ланцюжка", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "Для запуску/підключення важливих пристроїв за допомогою контролера ioBroker використовуйте кращий додаток ioBroker.visu:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "Щоб використовувати міст Matter або параметри пристрою з більш ніж 5 пристроями, введіть дійсні облікові дані ioBroker.pro Cloud із принаймні активною ліцензією Асистента.", "Unselect all rooms": "Скасувати вибір усіх кімнат", "Use last value for ON": "Використовуйте останнє значення за ON", "Value": "Значення", "Vendor ID": "ID постачальника", "WLAN credentials": "облікові дані WLAN", + "Warning about 15 devices": "Щоб уникнути проблем під час підключення цього мосту, спробуйте підключити його зараз, а потім додайте інші пристрої", + "Welcome to Matter!": "Ласкаво просимо до Matter!", "WiFi SSID": "SSID WiFi", "WiFi password": "Пароль WiFi", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "Вам потрібен помічник ioBroker.pro або віддалена підписка, щоб мати більше 5 пристроїв у мосту", @@ -170,4 +185,4 @@ "weatherForecast": "Прогноз погоди", "window": "Вікно", "windowTilt": "Похиле вікно" -} +} \ No newline at end of file diff --git a/src-admin/src/i18n/zh-cn.json b/src-admin/src/i18n/zh-cn.json index e3bf6f0e..44aa1609 100644 --- a/src-admin/src/i18n/zh-cn.json +++ b/src-admin/src/i18n/zh-cn.json @@ -1,4 +1,5 @@ { + " Please DO NOT use the QR code / pairing code that is printed on the Matter device.": "请不要使用印刷在 Matter 设备上的二维码/配对码。", "%s of %s devices selected": "已选择 %s 个设备(共 %s 个)", "Activate BLE to pair devices nearby. You can also use the \"ioBroker Visu\" App to pair other devices.": "激活 BLE 以配对 ioBroker 主机附近尚未与其他生态系统配对的设备。您还可以使用“ioBroker Visu”应用程序配对其他设备。", "Add": "添加", @@ -10,6 +11,7 @@ "Add device from one state": "从一种状态添加设备", "Add device with auto-detection": "添加自动检测设备", "Add devices": "添加设备", + "Add via QR Code": "使用 ioBroker Matter Controller 手动添加已连接的 Matter 设备", "Additionally to bridges you can also expose ioBroker states as stand alone matter devices. They can all be paired individually. You should prefer to use bridges.": "除了桥接器之外,您还可以将 ioBroker 状态公开为独立的物质设备。\n它们都可以单独配对。\n您应该更喜欢使用桥接器。", "All": "全部", "All devices": "所有设备", @@ -21,6 +23,7 @@ "At least one bridge must be enabled": "必须至少启用一个桥", "At least one enabled bridge must exist": "必须存在至少一个启用的网桥", "BLE Commissioning information": "BLE 调试设置", + "Be sure, that UDP is enabled and working": "确保 UDP 已启用并正常工作", "Bluetooth": "蓝牙", "Bluetooth HCI ID": "蓝牙 HCI 标识", "Bluetooth configuration": "蓝牙配置", @@ -36,6 +39,7 @@ "Commissioning information": "调试信息", "Configure custom device": "配置自定义设备", "Connect": "连接", + "Connect Matter devices with ioBroker": "使用 ioBroker 连接 Matter 设备", "Connected": "连接的", "Controller": "控制器", "Controller and Device Factory Reset": "控制器和设备恢复出厂设置", @@ -66,10 +70,12 @@ "Enable enhanced debug logging for the Matter protocol": "为 Matter 协议启用增强调试日志记录(仅在“调试”日志级别下可见)", "Enable/disable bridge": "启用/禁用桥接", "Expand all": "展开全部", + "Expose ioBroker devices as Matter bridge": "将 ioBroker 设备公开为 Matter 桥", "General": "一般的", "Generate new pairing code": "生成新的配对码", "Hide unsupported devices": "隐藏不支持的设备", "If your device has more then one active network interface and you have issues try limiting it to one interface": "如果您的设备具有多个活动网络接口并且您遇到问题,请尝试将其限制为一个接口。", + "Info about Alexa Bridge": "请注意:由于 Amazon Alexa 系统的限制,每个 ioBroker 主机只能将一个桥接器或设备与 Alexa 配对!此选择决定哪个桥接器将与 Alexa 系统配对。", "Instance is not alive": "实例不存在", "Interface": "界面", "Logging": "日志记录", @@ -78,6 +84,8 @@ "Matter Bridges Infotext": "Matter Bridges 可以包含多个设备,是将 ioBroker 设备纳入 Matter 兼容生态系统的最简单方法。桥接器投入使用后,也可以添加或删除桥接器中包含的设备。桥接器投入控制器使用后,某些设备属性无法更改。\n\n当您在 ioBroker.pro 帐户中拥有至少一个助手许可证时,您还可以创建多个桥接器,以便最好地构建您的设备。\n\n请注意:由于 Amazon Alexa 系统的限制,每个 ioBroker 主机只能将一个桥接器或设备与 Alexa 配对!", "Matter Controller BLE Dialog Infotext": "要配对使用 WLAN 或 Thread 进行通信的设备,您需要提供 WLAN 或 Thread 凭据。\n然后,这些凭据将在调试期间提交给设备。\n如果设备已在其他生态系统中调试并已在网络中,则无需执行此操作。", "Matter Controller Infotext": "使用“控制器”功能将 Matter 兼容设备集成到 ioBroker 中。\n您可以发现和调试设备,然后对其进行管理。设备的数据将作为状态显示在 ioBroker 对象选项卡中。\n控制器功能默认处于禁用状态,可以使用以下开关启用。", + "Matter requires enabled IPv6 protocol on selected interface. No IPv6 was found on your system!": "问题需要在所选接口上启用 IPv6 协议。您的系统上未找到 IPv6!", + "Matter requires enabled IPv6 protocol on selected interface. Some IPv6 was found on your system.": "问题需要在所选接口上启用 IPv6 协议。您的系统上发现了一些 IPv6。", "Name": "姓名", "Network configuration": "网络配置", "New bridge": "新桥", @@ -93,6 +101,7 @@ "Options": "选项", "Pairing Info Text": "在您的 IP 网络中发现设备。\n请确保 ioBroker 主机可以在网络和要发现的设备的网络中自由发送和接收 UDP 消息。\n如果需要,请将设备重置为出厂设置或关闭电源循环。", "Pairing Info Text BLE": "在您的 IP 网络中和通过 BLE 发现设备。\n请确保 ioBroker 主机可以在网络和要发现的设备的网络中自由发送和接收 UDP 消息。\n如果需要,请将设备重置为出厂设置或关闭电源循环。", + "Password repeat": "密码重复", "Please confirm": "请确认", "Please scan this QR-Code with the App of the ecosystem you want to pair it to or use the below printed setup code.": "请使用您想要配对的生态系统的应用程序扫描此二维码,或使用下面打印的设置代码。", "Product ID": "产品编号", @@ -102,6 +111,7 @@ "Re-Announce": "Re-announce", "Reconnect to backend": "重新连接到后端", "Required": "必需的", + "Requirements: add via QR Code": "前提条件:Matter 设备必须已委托给另一个 Matter 系统(例如 Google、Apple、Alexa 等)。在这里,您必须输入二维码配对码或扫描 Matter 生态系统(例如 Google Home)在应用程序中为此 Matter 设备提供的二维码。", "Reset": "重置", "Reset device or bridge": "重置设备或桥接器", "Reset it at least to defaults": "最后恢复默认设置", @@ -115,7 +125,9 @@ "Show QR Code for commissioning": "显示二维码进行调试", "Show additional information": "显示更多信息", "Show error": "显示错误", + "Show readme page": "显示自述文件页面", "Show unsupported devices": "显示不支持的设备", + "Show welcome dialog": "显示欢迎对话框", "Status": "地位", "Stop": "停止", "Successfully re-announced": "成功重播!", @@ -126,12 +138,15 @@ "Thread credentials": "线程凭据", "Thread network name": "Thread network name", "Thread operational dataset": "Thread operational dataset", + "To commission/connect matter devices with ioBroker controller use better ioBroker.visu app:": "要使用 ioBroker 控制器调试/连接物质设备,请使用更好的 ioBroker.visu 应用程序:", "To use a Matter bridge or device options with more than 5 devices please enter valid ioBroker.pro Cloud credentials with at least an active Assistant license.": "要使用 Matter 桥或具有 5 个以上设备的设备选项,请输入有效的 ioBroker.pro 云凭证以及至少有效的助手许可证。", "Unselect all rooms": "取消选择所有房间", "Use last value for ON": "通过 ON 使用最后一个值", "Value": "价值", "Vendor ID": "供应商ID", "WLAN credentials": "WLAN 凭证", + "Warning about 15 devices": "为了避免在配对此桥时出现问题,请考虑立即配对,然后再添加更多设备", + "Welcome to Matter!": "欢迎来到 Matter!", "WiFi SSID": "无线网络名称", "WiFi password": "WiFi密码", "You need ioBroker.pro assistant or remote subscription to have more than 5 devices in bridge": "您需要 ioBroker.pro 助手或远程订阅才能在桥接中拥有超过 5 个设备", @@ -170,4 +185,4 @@ "weatherForecast": "天气预报", "window": "窗户", "windowTilt": "倾斜窗户" -} +} \ No newline at end of file diff --git a/src-admin/src/types.d.ts b/src-admin/src/types.d.ts index d127f356..b34258c2 100644 --- a/src-admin/src/types.d.ts +++ b/src-admin/src/types.d.ts @@ -143,7 +143,7 @@ export interface ConnectionInfo { export interface NodeStateResponse { status: NodeStates; - error?: boolean; + error?: boolean | string[]; qrPairingCode?: string; manualPairingCode?: string; connectionInfo?: ConnectionInfo[]; diff --git a/src/matter/BaseServerNode.ts b/src/matter/BaseServerNode.ts index 22f9304b..14806dbc 100644 --- a/src/matter/BaseServerNode.ts +++ b/src/matter/BaseServerNode.ts @@ -70,7 +70,8 @@ export abstract class BaseServerNode implements GeneralNode { }; // TODO: @Apollon77. Set this flag to true if error flag should be shown - // result.error = true; + // result.error = true; if the error is related to bridge + // or ['UUID1', 'UUID2'] if the error is related to a specific device // Device is not commissioned, so show QR code if (!this.serverNode.lifecycle.isCommissioned) {