Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Z-Wave JS UI integration #1982

Merged
merged 14 commits into from Jan 12, 2024
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions front/src/components/app.jsx
Expand Up @@ -143,6 +143,11 @@ import TuyaDiscoverPage from '../routes/integration/all/tuya/discover-page';
import SonosDevicePage from '../routes/integration/all/sonos/device-page';
import SonosDiscoveryPage from '../routes/integration/all/sonos/discover-page';

// ZWaveJS-UI integration
import ZwaveJSUIDevicePage from '../routes/integration/all/zwavejs-ui/device-page';
import ZwaveJSUIDiscoveryPage from '../routes/integration/all/zwavejs-ui/discover-page';
import ZwaveJSUISetupPage from '../routes/integration/all/zwavejs-ui/setup-page';

// MELCloud integration
import MELCloudPage from '../routes/integration/all/melcloud/device-page';
import MELCloudEditPage from '../routes/integration/all/melcloud/edit-page';
Expand Down Expand Up @@ -282,6 +287,10 @@ const AppRouter = connect(
<SonosDevicePage path="/dashboard/integration/device/sonos" />
<SonosDiscoveryPage path="/dashboard/integration/device/sonos/discover" />

<ZwaveJSUIDevicePage path="/dashboard/integration/device/zwavejs-ui" />
<ZwaveJSUIDiscoveryPage path="/dashboard/integration/device/zwavejs-ui/discover" />
<ZwaveJSUISetupPage path="/dashboard/integration/device/zwavejs-ui/setup" />

<MELCloudPage path="/dashboard/integration/device/melcloud" />
<MELCloudEditPage path="/dashboard/integration/device/melcloud/edit/:deviceSelector" />
<MELCloudDiscoverPage path="/dashboard/integration/device/melcloud/discover" />
Expand Down
56 changes: 56 additions & 0 deletions front/src/config/i18n/de.json
Expand Up @@ -943,6 +943,62 @@
"conflictError": "Das aktuelle Gerät ist bereits in Gladys vorhanden."
}
},
"zwavejs-ui": {
"title": "ZWave JS UI",
"description": "Steuern Sie Ihre Geräte in Z-Wave JS UI",
"deviceTab": "Geräte",
"discoverTab": "Z-Wave JS UI Entdeckung",
"setupTab": "Konfiguration",
"documentation": "Z-Wave JS UI Dokumentation",
"discoverDeviceDescr": "Automatisches Scannen der Z-Wave JS UI Geräte",
"nameLabel": "Gerätename",
"namePlaceholder": "Geben Sie den Namen Ihres Geräts ein",
"noFeaturesHandled": "Dieses Gerät wird noch nicht von Gladys unterstützt. Bitte reichen Sie es ein, damit es hinzugefügt werden kann!",
"featuresLabel": "Funktionen",
"roomLabel": "Raum",
"saveButton": "Speichern",
"alreadyCreatedButton": "Bereits erstellt",
"deleteButton": "Löschen",
"alphaWarning": "Diese Integration ist eine Alpha-Version und unterstützt derzeit nur ein Gerät: den Türöffnungssensor von Fibaro. Wir sind dankbar für jede Unterstützung bei der Integration weiterer Geräte!",
"device": {
"title": "Z-Wave JS UI Geräte in Gladys",
"editButton": "Bearbeiten",
"noDeviceFound": "Kein Z-Wave JS UI Gerät gefunden.",
"featuresLabel": "Funktionen"
},
"discover": {
"title": "Auf Ihrer Z-Wave JS UI Instanz erkannte Geräte",
"description": "Z-Wave JS UI Geräte werden automatisch erkannt. Achtung, hier werden nur Geräte mit einem Namen und einem \"Standort\" angezeigt. Wenn Sie diese Einstellungen bearbeiten, müssen Sie das Gerät in Gladys erneut verbinden.",
"error": "Fehler beim Erkennen von Z-Wave JS UI Geräten. Ist Ihr MQTT-Broker gut erreichbar und verfügbar?",
"noDeviceFound": "Kein Z-Wave JS UI Gerät wurde erkannt.",
"errorWhileScanning": "Fehler bei der Erkennung aufgetreten.",
"scan": "Scannen"
},
"setup": {
"title": "Konfiguration",
"description": "Sie müssen Gladys mit dem MQTT-Broker verbinden, mit dem Ihre Z-Wave JS UI Instanz verbunden ist. Diese Integration richtet sich an Benutzer, die bereits Z-Wave-Geräte haben. Wenn Sie gerade mit Ihrer Installation beginnen, empfehlen wir Ihnen, den Zigbee-Protokoll zu verwenden.",
"zwaveJsUiConfigurationTitle": "Z-Wave JS UI konfigurieren",
"zwaveJsUiConfigurationMqttDescription": "Auf der Z-Wave JS UI Seite müssen Sie das Feld \"Name\" im Abschnitt \"MQTT\" mit \"zwave-js-ui\" ausfüllen, sonst wird das Präfix einiger MQTT-Themen falsch sein.",
"zwaveJsUiConfigurationGatewayDescription": "Füllen Sie anschließend den Abschnitt \"Gateway\" mit diesen genauen Einstellungen aus:",
"mqttConfigurationTitle": "MQTT-Server konfigurieren",
"urlLabel": "Broker-URL",
"urlPlaceholder": "z. B. mqtt://[broker-mqtt-Adresse]:[Port]",
"userLabel": "Benutzername",
"userPlaceholder": "Geben Sie den Benutzernamen des MQTT-Brokers ein",
"passwordLabel": "Passwort",
"passwordPlaceholder": "Geben Sie das Passwort des MQTT-Brokers ein",
"saveLabel": "Konfiguration speichern",
"error": "Fehler beim Speichern der Konfiguration aufgetreten.",
"connecting": "Konfiguration gespeichert. Verbindung zum MQTT-Broker wird hergestellt...",
"connected": "Erfolgreich mit dem MQTT-Broker verbunden!",
"notConnected": "Fehler bei der Verbindung, bitte überprüfen Sie Ihre Konfiguration."
},
"error": {
"defaultError": "Fehler beim Speichern des Geräts aufgetreten.",
"defaultDeletionError": "Fehler beim Löschen des Geräts aufgetreten.",
"conflictError": "Das aktuelle Gerät ist bereits in Gladys."
}
},
"melcloud": {
"title": "MELCloud",
"description": "Steuere deine MELCloud-Geräte (funktioniert über die Cloud.)",
Expand Down
56 changes: 56 additions & 0 deletions front/src/config/i18n/en.json
Expand Up @@ -945,6 +945,62 @@
"conflictError": "The current device is already in Gladys."
}
},
"zwavejs-ui": {
"title": "ZWave JS UI",
"description": "Control your devices in Z-Wave JS UI",
"deviceTab": "Devices",
"discoverTab": "Z-Wave JS UI Discovery",
"setupTab": "Configuration",
"documentation": "Z-Wave JS UI Documentation",
"discoverDeviceDescr": "Automatically scan for Z-Wave JS UI devices",
"nameLabel": "Device Name",
"namePlaceholder": "Enter your device name",
"noFeaturesHandled": "This device is not yet supported by Gladys; feel free to submit it for inclusion!",
"featuresLabel": "Features",
"roomLabel": "Room",
"saveButton": "Save",
"alreadyCreatedButton": "Already Created",
"deleteButton": "Delete",
"alphaWarning": "This integration is in alpha and currently only supports one device: The Fibaro Door/Window sensor. We welcome any assistance to integrate other devices!",
"device": {
"title": "Z-Wave JS UI Devices in Gladys",
"editButton": "Edit",
"noDeviceFound": "No Z-Wave JS UI devices found.",
"featuresLabel": "Features"
},
"discover": {
"title": "Devices detected on your Z-Wave JS UI instance",
"description": "Z-Wave JS UI devices are automatically discovered. Note that only devices with a name and a 'location' are displayed here. If you edit these settings, you will need to re-pair the device in Gladys.",
"error": "Error discovering Z-Wave JS UI devices. Is your MQTT broker available and accessible?",
"noDeviceFound": "No Z-Wave JS UI devices were discovered.",
"errorWhileScanning": "An error occurred during discovery.",
"scan": "Scan"
},
"setup": {
"title": "Configuration",
"description": "You must connect Gladys to the MQTT broker to which your Z-Wave JS UI instance is connected. This integration is for users who already have Z-Wave devices. If you are starting your installation, we recommend using the Zigbee protocol.",
"zwaveJsUiConfigurationTitle": "Configure Z-Wave JS UI",
"zwaveJsUiConfigurationMqttDescription": "On the Z-Wave JS UI side, you need to fill in the \"Name\" field in \"MQTT\" with \"zwave-js-ui,\" otherwise, the prefix for some MQTT topics will be incorrect.",
"zwaveJsUiConfigurationGatewayDescription": "Next, please fill in the \"Gateway\" section with these exact parameters:",
"mqttConfigurationTitle": "Configure MQTT Server",
"urlLabel": "Broker URL",
"urlPlaceholder": "Ex: mqtt://[mqtt-broker-address]:[port]",
"userLabel": "Username",
"userPlaceholder": "Enter the MQTT broker username",
"passwordLabel": "Password",
"passwordPlaceholder": "Enter the MQTT broker password",
"saveLabel": "Save Configuration",
"error": "An error occurred while saving the configuration.",
"connecting": "Configuration saved. Connecting to the MQTT broker...",
"connected": "Successfully connected to the MQTT broker!",
"notConnected": "Error connecting. Please check your configuration."
},
"error": {
"defaultError": "An error occurred while saving the device.",
"defaultDeletionError": "An error occurred while deleting the device.",
"conflictError": "The current device is already in Gladys."
}
},
"melcloud": {
"title": "MELCloud",
"description": "Control your MELCloud devices (works with the cloud)",
Expand Down
56 changes: 56 additions & 0 deletions front/src/config/i18n/fr.json
Expand Up @@ -1074,6 +1074,62 @@
"conflictError": "L'appareil actuel est déjà dans Gladys."
}
},
"zwavejs-ui": {
"title": "ZWave JS UI",
"description": "Contrôler vos appareils dans Z-Wave JS UI",
"deviceTab": "Appareils",
"discoverTab": "Découverte Z-Wave JS UI",
"setupTab": "Configuration",
"documentation": "Documentation Z-Wave JS UI",
"discoverDeviceDescr": "Scanner automatiquement les appareils Z-Wave JS UI",
"nameLabel": "Nom de l'appareil",
"namePlaceholder": "Entrez le nom de votre appareil",
"noFeaturesHandled": "Cet appareil n'est pas encore géré par Gladys, n'hésitez pas à nous le soumettre pour qu'il soit ajouté !",
"featuresLabel": "Fonctionnalités",
"roomLabel": "Pièce",
"saveButton": "Sauvegarder",
"alreadyCreatedButton": "Déjà créé",
"deleteButton": "Supprimer",
"alphaWarning": "Cette intégration est une alpha et ne gère pour l'instant qu'un seul appareil: Le capteur d'ouverture de porte Fibaro. Nous sommes preneur de toute aide pour intégrer d'autres appareils !",
"device": {
"title": "Appareils Z-Wave JS UI dans Gladys",
"editButton": "Editer",
"noDeviceFound": "Aucun appareil Z-Wave JS UI trouvé.",
"featuresLabel": "Fonctionnalités"
},
"discover": {
"title": "Appareils détectés sur votre instance Z-Wave JS UI",
"description": "Les appareils Z-Wave JS UI sont automatiquement découverts. Attention, seuls les appareils avec un nom et une \"location\" sont affichés ici. Si vous éditez ces paramètres, vous devrez réappairer l'appareil dans Gladys.",
"error": "Erreur de découverte des appareils Z-Wave JS UI. Est-ce que votre broker MQTT est bien disponible et accessible ?",
"noDeviceFound": "Aucun appareil Z-Wave JS UI n'a été découvert.",
"errorWhileScanning": "Une erreur est survenue lors de la découverte.",
"scan": "Scanner"
},
"setup": {
"title": "Configuration",
"description": "Vous devez connecter Gladys au broker MQTT auquel est connecté votre instance Z-Wave JS UI. Cette intégration s'adresse à un public qui a déjà des appareils Z-Wave. Si vous commencez votre installation, nous vous recommandons de passer par le protocole Zigbee.",
"zwaveJsUiConfigurationTitle": "Configurer Z-Wave JS UI",
"zwaveJsUiConfigurationMqttDescription": "Côté Z-Wave JS UI, vous devez remplir dans \"MQTT\" le champ \"Name\" par \"zwave-js-ui\" sinon le préfix de certains topic MQTT ne sera pas bon.",
"zwaveJsUiConfigurationGatewayDescription": "Ensuite, veuillez remplir la section \"Gateway\" avec ces paramètres exactement :",
"mqttConfigurationTitle": "Configurer le serveur MQTT",
"urlLabel": "URL du broker",
"urlPlaceholder": "Ex: mqtt://[adresse-broker-mqtt]:[port]",
"userLabel": "Nom d'utilisateur",
"userPlaceholder": "Entrez le nom d'utilisateur du broker MQTT",
"passwordLabel": "Mot de passe",
"passwordPlaceholder": "Entrez le mot de passe du broker MQTT",
"saveLabel": "Sauvegarder la configuration",
"error": "Une erreur s'est produite lors de l'enregistrement de la configuration.",
"connecting": "Configuration enregistrée. Connexion au broker MQTT en cours...",
"connected": "Connecté au broker MQTT avec succès !",
"notConnected": "Erreur lors de la connexion, veuillez vérifier votre configuration."
},
"error": {
"defaultError": "Une erreur s'est produite lors de l'enregistrement de l'appareil.",
"defaultDeletionError": "Une erreur s'est produite lors de la suppression de l'appareil.",
"conflictError": "L'appareil actuel est déjà dans Gladys."
}
},
"melcloud": {
"title": "MELCloud",
"description": "Contrôler vos appareils MELCloud",
Expand Down
5 changes: 5 additions & 0 deletions front/src/config/integrations/devices.json
Expand Up @@ -78,5 +78,10 @@
"key": "sonos",
"link": "sonos",
"img": "/assets/integrations/cover/sonos.jpg"
},
{
"key": "zwavejs-ui",
"link": "zwavejs-ui",
"img": "/assets/integrations/cover/zwave-js-ui.jpg"
}
]