iobroker.motioneye 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 skvarel <skvarel@inventwo.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,131 @@
1
+ ![Logo](admin/motioneye-logo.svg)
2
+
3
+ # ioBroker adapter for MotionEye
4
+
5
+ ![Number of Installations](https://iobroker.live/badges/motioneye-installed.svg)
6
+ ![Current version in stable repository](https://iobroker.live/badges/motioneye-stable.svg)
7
+ [![NPM Version](https://nodei.co/npm/iobroker.motioneye.svg?style=shields&data=v,u,d&color=orange)](https://www.npmjs.com/package/iobroker.motioneye)
8
+ [![Downloads](https://img.shields.io/npm/dm/iobroker.motioneye.svg)](https://www.npmjs.com/package/iobroker.motioneye)
9
+
10
+ [![COMMUNITY](https://img.shields.io/badge/community%20-ioBroker%20|%20forum-blue.svg)](https://forum.iobroker.net/)
11
+ [![MAINTAINER](https://img.shields.io/badge/maintainer-skvarel%20@%20inventwo-yellowgreen.svg)](https://github.com/skvarel)
12
+ [![AI](https://img.shields.io/badge/ai%20assisted-cursor-blue.svg)](https://github.com/inventwo/ioBroker.motioneye/blob/main/.cursor/iobroker-adapter.mdc)
13
+
14
+ [![Paypal Donation](https://img.shields.io/badge/paypal-donate%20|%20spenden-green.svg)](https://www.paypal.com/donate/?hosted_button_id=7W6M3TFZ4W9LW)
15
+
16
+ ---
17
+
18
+ ## What this adapter does
19
+
20
+ Connect MotionEye cameras to ioBroker for motion detection, snapshots, and live streams. Control detection modes (`off` / `still` / `sharp`) from ioBroker or VIS and provide `streamUrl` HTML for inventwo/VIS2 widgets — no simple-api required for webhooks.
21
+
22
+ > **Status:** Phase 2 — snapshot, stream, streamPulse, and `streamUrl` HTML for inventwo/VIS widgets. Phase 1 covers modes, webhooks, and MotionEye sync.
23
+
24
+ ## Features
25
+
26
+ - User-defined camera names in ioBroker (independent of MotionEye labels)
27
+ - Dynamic channels under `motioneye.0.<Name>.*`
28
+ - Built-in webhook server — no simple-api dependency
29
+ - MotionEye Config API sync for modes and webhook URLs
30
+ - `info.connection` — instance shows when MotionEye is unreachable
31
+ - Stream sibling relink after VIS re-render (multi-camera dashboards)
32
+
33
+ ## Data Points
34
+
35
+ ### Per camera (`motioneye.0.<Name>.*`)
36
+
37
+ | State | Type | Read | Write | Description |
38
+ |-------|------|------|-------|-------------|
39
+ | `mode` | value | yes | yes | `off` / `still` / `sharp` |
40
+ | `motion` | indicator | yes | yes | Motion detected (auto-reset) |
41
+ | `snapshot` | button | no | yes | Trigger snapshot |
42
+ | `stream` | switch | yes | yes | Live MJPEG stream on/off |
43
+ | `streamPulse` | button | no | yes | Stream on briefly (auto-off) |
44
+ | `streamUrl` | text | yes | no | HTML `<img>` for inventwo widget |
45
+ | `status` | text | yes | no | Last sync status |
46
+ | `lastAction` | text | yes | no | Last API action |
47
+ | `webhookUrl` | url | yes | no | URL written to MotionEye |
48
+ | `motionEyeId` | value | yes | no | MotionEye camera ID |
49
+ | `motionEyeName` | text | yes | no | Original name in MotionEye |
50
+
51
+ ### Instance (`motioneye.0.info.*`)
52
+
53
+ | State | Type | Description |
54
+ |-------|------|-------------|
55
+ | `info.connection` | boolean | MotionEye reachable |
56
+ | `info.camerasOnline` | number | Enabled cameras found in MotionEye |
57
+ | `info.lastSync` | text | Last status poll timestamp |
58
+
59
+ ## Installation
60
+
61
+ 1. Install the adapter from the ioBroker admin interface (or clone this repo and use the dev-server)
62
+ 2. Create a new instance
63
+ 3. Configure **Settings**: MotionEye host, ports, credentials (optional), webhook host
64
+ 4. Add cameras on the **Cameras** tab (display name + MotionEye ID)
65
+ 5. Save and restart the instance — datapoints are created and webhook URLs are written to MotionEye
66
+
67
+ ### Camera modes
68
+
69
+ | Mode | Motion detection | Video recording | Webhook |
70
+ |------|------------------|-----------------|---------|
71
+ | `off` | no | no | no |
72
+ | `still` | yes | no | yes |
73
+ | `sharp` | yes | motion-triggered MP4 | yes |
74
+
75
+
76
+ ## Configuration
77
+
78
+ | Option | Default | Description |
79
+ |--------|---------|-------------|
80
+ | `motionHost` | *(empty)* | MotionEye server hostname or IP (required) |
81
+ | `motionPort` | `7999` | Motion HTTP API (snapshots) |
82
+ | `motionEyePort` | `8765` | MotionEye config API |
83
+ | `motionEyeUser` | `admin` | MotionEye login user |
84
+ | `motionEyePassword` | *(empty)* | MotionEye password (plain text, stored encrypted) |
85
+ | `webhookHost` | *(required)* | ioBroker host IP or hostname reachable from MotionEye (used in webhook URLs) |
86
+ | `webhookPort` | `8090` | Built-in webhook listener port |
87
+ | `motionResetMs` | `15000` | Auto-reset for `.motion` after webhook |
88
+ | `statusPollIntervalSec` | `300` | MotionEye status poll interval |
89
+
90
+ ## Support
91
+
92
+ If you like our work and would like to support us, we appreciate any donation.
93
+ (This link leads to our PayPal account and is not affiliated with ioBroker.)
94
+
95
+ [![Donate](img/support.png)](https://www.paypal.com/donate?hosted_button_id=7W6M3TFZ4W9LW)
96
+
97
+ ## Changelog
98
+
99
+ <!--
100
+ ### **WORK IN PROGRESS**
101
+ -->
102
+
103
+ ### 0.0.1 (2026-06-21)
104
+ - (skvarel) Initial development release
105
+
106
+ ## Older changes
107
+ - [CHANGELOG_OLD.md](CHANGELOG_OLD.md)
108
+
109
+ ## License
110
+
111
+ MIT License
112
+
113
+ Copyright (c) 2026 skvarel <skvarel@inventwo.com>
114
+
115
+ Permission is hereby granted, free of charge, to any person obtaining a copy
116
+ of this software and associated documentation files (the "Software"), to deal
117
+ in the Software without restriction, including without limitation the rights
118
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
119
+ copies of the Software, and to permit persons to whom the Software is
120
+ furnished to do so, subject to the following conditions:
121
+
122
+ The above copyright notice and this permission notice shall be included in all
123
+ copies or substantial portions of the Software.
124
+
125
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
126
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
127
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
128
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
129
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
130
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
131
+ SOFTWARE.
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Snapshot-Grundprofil beim Adapter-Start setzen",
3
+ "camera_defaultMode": "Standardmodus",
4
+ "camera_enabled": "Aktiv",
5
+ "camera_id": "Interne ID",
6
+ "camera_id_help": "Stabiler Schlüssel für Webhooks (z. B. auffahrt). Lass leer, um aus dem Namen abzuleiten.",
7
+ "camera_id_placeholder": "auto aus Name",
8
+ "camera_motionEyeId": "MotionEye-ID",
9
+ "camera_motionEyeId_help": "Numerische Kamera-ID aus MotionEye (/config/list)",
10
+ "camera_name": "Anzeigename",
11
+ "camera_name_help": "ioBroker-Kanalname — unabhängig vom MotionEye-Namen",
12
+ "cameras_info": "Trag jede Kamera ein, die in ioBroker erscheinen soll. Die MotionEye-ID steht in der Web-Oberfläche oder unter /config/list (Port 8765). Nach dem Speichern starte die Adapter-Instanz neu, damit Datenpunkte angelegt und Webhook-URLs in MotionEye geschrieben werden.",
13
+ "cameras_table": "Kameras",
14
+ "defaultMode": "Standardmodus für neue Kameras",
15
+ "disableStreamOnStart": "Videostream beim Adapter-Start ausschalten",
16
+ "header_cameras": "Kamera-Verwaltung",
17
+ "header_connection": "MotionEye-Verbindung",
18
+ "header_stream": "Stream-Optionen",
19
+ "header_timing": "Abfrage & Timeouts",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Aus — keine Erkennung",
22
+ "mode_sharp": "Scharf — Bewegung + Videoaufnahme",
23
+ "mode_still": "Still — nur Bewegungs-Trigger",
24
+ "motionEyePassword": "MotionEye-Passwort",
25
+ "motionEyePassword_help": "Klartext-Passwort wie beim MotionEye-Web-Login. Lass leer, wenn kein Passwort gesetzt ist.",
26
+ "motionEyePort": "MotionEye Config-API-Port",
27
+ "motionEyePort_help": "MotionEye-Konfigurations-API (Standard 8765)",
28
+ "motionEyeUser": "MotionEye-Benutzer",
29
+ "motionHost": "MotionEye-Host",
30
+ "motionHost_help": "IP-Adresse oder Hostname deines MotionEye-Servers",
31
+ "motionPort": "Motion-HTTP-Port",
32
+ "motionPort_help": "Motion-Webcontrol-Port für Snapshots (Standard 7999)",
33
+ "motionResetMs": "Bewegung Auto-Reset (ms)",
34
+ "motionResetMs_help": "Wie lange der .motion-Datenpunkt nach einem Webhook auf true bleibt (Standard 15000)",
35
+ "requestTimeoutMs": "API-Anfrage-Timeout (ms)",
36
+ "statusPollIntervalSec": "Status-Abfrageintervall (Sekunden)",
37
+ "streamAutoOffMs": "Stream-Pulse Auto-Aus (ms)",
38
+ "streamAutoOffMs_help": "Nur für streamPulse — der Stream schaltet nach dieser Dauer wieder aus (0 = nie)",
39
+ "tab_cameras": "Kameras",
40
+ "tab_settings": "Einstellungen",
41
+ "useMotionEyeConfig": "Modi über MotionEye Config-API synchronisieren",
42
+ "useMotionEyeConfig_help": "Wenn aktiv, werden Modus- und Stream-Änderungen in MotionEye geschrieben, damit die Web-Oberfläche mitgeht",
43
+ "webhookBind": "Webhook-Bind-Adresse",
44
+ "webhookBind_help": "Netzwerkschnittstelle für den eingebauten Webhook-Listener (Standard 0.0.0.0)",
45
+ "webhookHost": "ioBroker-Host für Webhooks",
46
+ "webhookHost_help": "IP oder Hostname deines ioBroker-Hosts, von MotionEye aus erreichbar (z. B. 192.168.130.130). Erforderlich — ohne diesen Wert kann der Adapter keine Webhook-URLs nach MotionEye schreiben.",
47
+ "webhookPort": "Webhook-Port",
48
+ "webhookPort_help": "Port für Bewegungs-Webhooks von MotionEye (Standard 8090). Stelle sicher, dass die Firewall eingehenden Traffic erlaubt."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Apply snapshot media profile on adapter start",
3
+ "camera_defaultMode": "Default mode",
4
+ "camera_enabled": "Enabled",
5
+ "camera_id": "Internal ID",
6
+ "camera_id_help": "Stable key for webhooks (e.g. auffahrt). Leave empty to derive from name.",
7
+ "camera_id_placeholder": "auto from name",
8
+ "camera_motionEyeId": "MotionEye ID",
9
+ "camera_motionEyeId_help": "Numeric camera ID from MotionEye (/config/list)",
10
+ "camera_name": "Display name",
11
+ "camera_name_help": "ioBroker channel name — independent of MotionEye label",
12
+ "cameras_info": "Add each camera you want in ioBroker. The MotionEye ID is shown in the MotionEye web UI or via /config/list on port 8765. After saving, restart the adapter instance to create datapoints and write webhook URLs to MotionEye.",
13
+ "cameras_table": "Cameras",
14
+ "defaultMode": "Default mode for new cameras",
15
+ "disableStreamOnStart": "Disable video stream on adapter start",
16
+ "header_cameras": "Camera management",
17
+ "header_connection": "MotionEye Connection",
18
+ "header_stream": "Stream Options",
19
+ "header_timing": "Polling & Timeouts",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Off — no detection",
22
+ "mode_sharp": "Sharp — motion + video recording",
23
+ "mode_still": "Still — motion trigger only",
24
+ "motionEyePassword": "MotionEye password",
25
+ "motionEyePassword_help": "Plain-text password as used for MotionEye web login. Leave empty if no password is set.",
26
+ "motionEyePort": "MotionEye config API port",
27
+ "motionEyePort_help": "MotionEye configuration API (default 8765)",
28
+ "motionEyeUser": "MotionEye username",
29
+ "motionHost": "MotionEye host",
30
+ "motionHost_help": "IP address or hostname of your MotionEye server",
31
+ "motionPort": "Motion HTTP port",
32
+ "motionPort_help": "Motion webcontrol port for snapshots (default 7999)",
33
+ "motionResetMs": "Motion auto-reset (ms)",
34
+ "motionResetMs_help": "How long the .motion state stays true after a webhook (default 15000)",
35
+ "requestTimeoutMs": "API request timeout (ms)",
36
+ "statusPollIntervalSec": "Status poll interval (seconds)",
37
+ "streamAutoOffMs": "Stream pulse auto-off (ms)",
38
+ "streamAutoOffMs_help": "Used by streamPulse only — stream turns off after this duration (0 = never)",
39
+ "tab_cameras": "Cameras",
40
+ "tab_settings": "Settings",
41
+ "useMotionEyeConfig": "Sync modes via MotionEye config API",
42
+ "useMotionEyeConfig_help": "When enabled, mode and stream changes are written to MotionEye so the web UI stays in sync",
43
+ "webhookBind": "Webhook bind address",
44
+ "webhookBind_help": "Network interface for the built-in webhook listener (default 0.0.0.0)",
45
+ "webhookHost": "ioBroker host for webhooks",
46
+ "webhookHost_help": "IP or hostname of your ioBroker host reachable from MotionEye (e.g. 192.168.130.130). Required — without this value the adapter cannot write webhook URLs to MotionEye.",
47
+ "webhookPort": "Webhook port",
48
+ "webhookPort_help": "Port for motion webhooks from MotionEye (default 8090). Ensure firewall allows inbound traffic."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Aplicar perfil de medios de instantánea al iniciar el adaptador",
3
+ "camera_defaultMode": "Modo predeterminado",
4
+ "camera_enabled": "Activado",
5
+ "camera_id": "Identificación interna",
6
+ "camera_id_help": "Clave estable para webhooks (por ejemplo, auffahrt). Déjelo vacío para derivar del nombre.",
7
+ "camera_id_placeholder": "auto desde nombre",
8
+ "camera_motionEyeId": "Identificación de MotionEye",
9
+ "camera_motionEyeId_help": "ID de cámara numérica de MotionEye (/config/list)",
10
+ "camera_name": "Nombre para mostrar",
11
+ "camera_name_help": "Nombre del canal ioBroker: independiente de la etiqueta de MotionEye",
12
+ "cameras_info": "Añade cada cámara que quieras en ioBroker. El ID de MotionEye se muestra en la interfaz de usuario web de MotionEye o a través de /config/list en el puerto 8765. Después de guardar, reinicie la instancia del adaptador para crear puntos de datos y escribir URL de webhook en MotionEye.",
13
+ "cameras_table": "Cámaras",
14
+ "defaultMode": "Modo predeterminado para cámaras nuevas",
15
+ "disableStreamOnStart": "Deshabilitar la transmisión de video al iniciar el adaptador",
16
+ "header_cameras": "Gestión de cámara",
17
+ "header_connection": "Conexión MotionEye",
18
+ "header_stream": "Opciones de transmisión",
19
+ "header_timing": "Sondeo y tiempos de espera",
20
+ "header_webhook": "gancho web",
21
+ "mode_off": "Apagado: sin detección",
22
+ "mode_sharp": "Sharp: movimiento + grabación de vídeo",
23
+ "mode_still": "Aún así, solo disparador por movimiento",
24
+ "motionEyePassword": "Contraseña de MotionEye",
25
+ "motionEyePassword_help": "Contraseña de texto sin formato como la que se utiliza para iniciar sesión en la web de MotionEye. Déjelo vacío si no se establece ninguna contraseña.",
26
+ "motionEyePort": "Puerto API de configuración de MotionEye",
27
+ "motionEyePort_help": "API de configuración de MotionEye (8765 predeterminado)",
28
+ "motionEyeUser": "nombre de usuario de MotionEye",
29
+ "motionHost": "Anfitrión de MotionEye",
30
+ "motionHost_help": "Dirección IP o nombre de host de su servidor MotionEye",
31
+ "motionPort": "Puerto HTTP de movimiento",
32
+ "motionPort_help": "Puerto de control web de movimiento para instantáneas (predeterminado 7999)",
33
+ "motionResetMs": "Restablecimiento automático de movimiento (ms)",
34
+ "motionResetMs_help": "Cuánto tiempo permanece verdadero el estado .motion después de un webhook (predeterminado 15000)",
35
+ "requestTimeoutMs": "Tiempo de espera de solicitud de API (ms)",
36
+ "statusPollIntervalSec": "Intervalo de encuesta de estado (segundos)",
37
+ "streamAutoOffMs": "Apagado automático de pulso de transmisión (ms)",
38
+ "streamAutoOffMs_help": "Usado solo por streamPulse: la transmisión se apaga después de esta duración (0 = nunca)",
39
+ "tab_cameras": "Cámaras",
40
+ "tab_settings": "Ajustes",
41
+ "useMotionEyeConfig": "Modos de sincronización a través de la API de configuración MotionEye",
42
+ "useMotionEyeConfig_help": "Cuando está habilitado, los cambios de modo y transmisión se escriben en MotionEye para que la interfaz de usuario web permanezca sincronizada.",
43
+ "webhookBind": "Dirección de enlace del webhook",
44
+ "webhookBind_help": "Interfaz de red para el oyente de webhook integrado (predeterminado 0.0.0.0)",
45
+ "webhookHost": "Alojamiento ioBroker para webhooks",
46
+ "webhookHost_help": "IP o nombre de host de su host ioBroker accesible desde MotionEye (por ejemplo, 192.168.130.130). Obligatorio: sin este valor, el adaptador no puede escribir URL de webhook en MotionEye.",
47
+ "webhookPort": "Puerto de webhook",
48
+ "webhookPort_help": "Puerto para webhooks en movimiento de MotionEye (8090 predeterminado). Asegúrese de que el firewall permita el tráfico entrante."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Appliquer le profil de support d'instantané au démarrage de l'adaptateur",
3
+ "camera_defaultMode": "Mode par défaut",
4
+ "camera_enabled": "Activé",
5
+ "camera_id": "ID interne",
6
+ "camera_id_help": "Clé stable pour les webhooks (par exemple auffahrt). Laissez vide pour dériver du nom.",
7
+ "camera_id_placeholder": "automatique à partir du nom",
8
+ "camera_motionEyeId": "Identifiant MotionEye",
9
+ "camera_motionEyeId_help": "ID numérique de la caméra de MotionEye (/config/list)",
10
+ "camera_name": "Nom d'affichage",
11
+ "camera_name_help": "Nom du canal ioBroker — indépendant de l'étiquette MotionEye",
12
+ "cameras_info": "Ajoutez chaque caméra de votre choix dans ioBroker. L'ID MotionEye est affiché dans l'interface utilisateur Web de MotionEye ou via /config/list sur le port 8765. Après l'enregistrement, redémarrez l'instance d'adaptateur pour créer des points de données et écrire des URL de webhook sur MotionEye.",
13
+ "cameras_table": "Caméras",
14
+ "defaultMode": "Mode par défaut pour les nouvelles caméras",
15
+ "disableStreamOnStart": "Désactiver le flux vidéo au démarrage de l'adaptateur",
16
+ "header_cameras": "Gestion des caméras",
17
+ "header_connection": "Connexion MotionEye",
18
+ "header_stream": "Options de flux",
19
+ "header_timing": "Sondage et délais d'attente",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Éteint : aucune détection",
22
+ "mode_sharp": "Sharp – mouvement + enregistrement vidéo",
23
+ "mode_still": "Immobile – déclencheur de mouvement uniquement",
24
+ "motionEyePassword": "Mot de passe MotionEye",
25
+ "motionEyePassword_help": "Mot de passe en texte brut utilisé pour la connexion Web MotionEye. Laissez vide si aucun mot de passe n’est défini.",
26
+ "motionEyePort": "Port API de configuration MotionEye",
27
+ "motionEyePort_help": "API de configuration MotionEye (par défaut 8765)",
28
+ "motionEyeUser": "Nom d'utilisateur MotionEye",
29
+ "motionHost": "Hôte MotionEye",
30
+ "motionHost_help": "Adresse IP ou nom d'hôte de votre serveur MotionEye",
31
+ "motionPort": "Port HTTP de mouvement",
32
+ "motionPort_help": "Port Motion WebControl pour les instantanés (7999 par défaut)",
33
+ "motionResetMs": "Réinitialisation automatique du mouvement (ms)",
34
+ "motionResetMs_help": "Combien de temps l'état .motion reste vrai après un webhook (par défaut 15 000)",
35
+ "requestTimeoutMs": "Délai d'expiration de la requête API (ms)",
36
+ "statusPollIntervalSec": "Intervalle d'interrogation d'état (secondes)",
37
+ "streamAutoOffMs": "Arrêt automatique des impulsions de flux (ms)",
38
+ "streamAutoOffMs_help": "Utilisé uniquement par streamPulse — le flux s'éteint après cette durée (0 = jamais)",
39
+ "tab_cameras": "Caméras",
40
+ "tab_settings": "Paramètres",
41
+ "useMotionEyeConfig": "Modes de synchronisation via l'API de configuration MotionEye",
42
+ "useMotionEyeConfig_help": "Lorsqu'ils sont activés, les changements de mode et de flux sont écrits dans MotionEye afin que l'interface utilisateur Web reste synchronisée.",
43
+ "webhookBind": "Adresse de liaison du webhook",
44
+ "webhookBind_help": "Interface réseau pour l'écouteur de webhook intégré (0.0.0.0 par défaut)",
45
+ "webhookHost": "Hôte ioBroker pour les webhooks",
46
+ "webhookHost_help": "IP ou nom d'hôte de votre hôte ioBroker accessible depuis MotionEye (par exemple 192.168.130.130). Obligatoire : sans cette valeur, l'adaptateur ne peut pas écrire d'URL de webhook dans MotionEye.",
47
+ "webhookPort": "Port Webhook",
48
+ "webhookPort_help": "Port pour les webhooks de mouvement de MotionEye (8090 par défaut). Assurez-vous que le pare-feu autorise le trafic entrant."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Applica il profilo multimediale dell'istantanea all'avvio dell'adattatore",
3
+ "camera_defaultMode": "Modalità predefinita",
4
+ "camera_enabled": "Abilitato",
5
+ "camera_id": "ID interno",
6
+ "camera_id_help": "Chiave stabile per webhook (ad es. auffahrt). Lasciare vuoto per derivare dal nome.",
7
+ "camera_id_placeholder": "auto dal nome",
8
+ "camera_motionEyeId": "ID MotionEye",
9
+ "camera_motionEyeId_help": "ID numerico della telecamera da MotionEye (/config/list)",
10
+ "camera_name": "Nome da visualizzare",
11
+ "camera_name_help": "Nome del canale ioBroker: indipendente dall'etichetta MotionEye",
12
+ "cameras_info": "Aggiungi ogni fotocamera che desideri in ioBroker. L'ID MotionEye viene visualizzato nell'interfaccia utente Web MotionEye o tramite /config/list sulla porta 8765. Dopo il salvataggio, riavviare l'istanza dell'adattatore per creare punti dati e scrivere URL webhook su MotionEye.",
13
+ "cameras_table": "Fotocamere",
14
+ "defaultMode": "Modalità predefinita per le nuove fotocamere",
15
+ "disableStreamOnStart": "Disabilita il flusso video all'avvio dell'adattatore",
16
+ "header_cameras": "Gestione della telecamera",
17
+ "header_connection": "Connessione MotionEye",
18
+ "header_stream": "Opzioni di flusso",
19
+ "header_timing": "Polling e timeout",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Spento: nessun rilevamento",
22
+ "mode_sharp": "Nitido: movimento + registrazione video",
23
+ "mode_still": "Ancora: solo trigger di movimento",
24
+ "motionEyePassword": "Password MotionEye",
25
+ "motionEyePassword_help": "Password in testo normale utilizzata per l'accesso Web MotionEye. Lasciare vuoto se non è impostata alcuna password.",
26
+ "motionEyePort": "Porta API di configurazione MotionEye",
27
+ "motionEyePort_help": "API di configurazione MotionEye (predefinito 8765)",
28
+ "motionEyeUser": "Nome utente MotionEye",
29
+ "motionHost": "Ospite di MotionEye",
30
+ "motionHost_help": "Indirizzo IP o nome host del tuo server MotionEye",
31
+ "motionPort": "Porta HTTP di movimento",
32
+ "motionPort_help": "Porta di controllo web del movimento per istantanee (impostazione predefinita 7999)",
33
+ "motionResetMs": "Ripristino automatico del movimento (ms)",
34
+ "motionResetMs_help": "Per quanto tempo lo stato .motion rimane vero dopo un webhook (predefinito 15000)",
35
+ "requestTimeoutMs": "Timeout della richiesta API (ms)",
36
+ "statusPollIntervalSec": "Intervallo di polling dello stato (secondi)",
37
+ "streamAutoOffMs": "Spegnimento automatico impulso flusso (ms)",
38
+ "streamAutoOffMs_help": "Utilizzato solo da streamPulse: lo streaming si interrompe dopo questa durata (0 = mai)",
39
+ "tab_cameras": "Fotocamere",
40
+ "tab_settings": "Impostazioni",
41
+ "useMotionEyeConfig": "Modalità di sincronizzazione tramite API di configurazione MotionEye",
42
+ "useMotionEyeConfig_help": "Quando abilitato, le modifiche alla modalità e allo streaming vengono scritte su MotionEye in modo che l'interfaccia utente Web rimanga sincronizzata",
43
+ "webhookBind": "Indirizzo di associazione del webhook",
44
+ "webhookBind_help": "Interfaccia di rete per il listener webhook integrato (predefinito 0.0.0.0)",
45
+ "webhookHost": "Host ioBroker per webhook",
46
+ "webhookHost_help": "IP o nome host del tuo host ioBroker raggiungibile da MotionEye (ad esempio 192.168.130.130). Obbligatorio: senza questo valore l'adattatore non può scrivere URL webhook su MotionEye.",
47
+ "webhookPort": "Porta del webhook",
48
+ "webhookPort_help": "Porta per webhook di movimento da MotionEye (predefinita 8090). Assicurarsi che il firewall consenta il traffico in entrata."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Pas het snapshot-mediaprofiel toe bij het starten van de adapter",
3
+ "camera_defaultMode": "Standaardmodus",
4
+ "camera_enabled": "Ingeschakeld",
5
+ "camera_id": "Interne identiteitskaart",
6
+ "camera_id_help": "Stabiele sleutel voor webhooks (bijv. auffahrt). Laat leeg om af te leiden van de naam.",
7
+ "camera_id_placeholder": "automatisch vanaf naam",
8
+ "camera_motionEyeId": "MotionEye-ID",
9
+ "camera_motionEyeId_help": "Numerieke camera-ID van MotionEye (/config/list)",
10
+ "camera_name": "Weergavenaam",
11
+ "camera_name_help": "ioBroker-kanaalnaam — onafhankelijk van het MotionEye-label",
12
+ "cameras_info": "Voeg elke gewenste camera toe in ioBroker. De MotionEye-ID wordt weergegeven in de MotionEye-webgebruikersinterface of via /config/list op poort 8765. Start na het opslaan de adapterinstantie opnieuw op om datapunten te maken en webhook-URL's naar MotionEye te schrijven.",
13
+ "cameras_table": "Camera's",
14
+ "defaultMode": "Standaardmodus voor nieuwe camera's",
15
+ "disableStreamOnStart": "Schakel de videostream uit bij het starten van de adapter",
16
+ "header_cameras": "Camerabeheer",
17
+ "header_connection": "MotionEye-verbinding",
18
+ "header_stream": "Stream-opties",
19
+ "header_timing": "Polling en time-outs",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Uit — geen detectie",
22
+ "mode_sharp": "Scherp – beweging + video-opname",
23
+ "mode_still": "Nog steeds - alleen bewegingstrigger",
24
+ "motionEyePassword": "MotionEye-wachtwoord",
25
+ "motionEyePassword_help": "Wachtwoord in platte tekst zoals gebruikt voor MotionEye-webaanmelding. Laat leeg als er geen wachtwoord is ingesteld.",
26
+ "motionEyePort": "MotionEye-configuratie-API-poort",
27
+ "motionEyePort_help": "MotionEye-configuratie-API (standaard 8765)",
28
+ "motionEyeUser": "MotionEye-gebruikersnaam",
29
+ "motionHost": "MotionEye-host",
30
+ "motionHost_help": "IP-adres of hostnaam van uw MotionEye-server",
31
+ "motionPort": "Motion HTTP-poort",
32
+ "motionPort_help": "Motion webcontrol-poort voor snapshots (standaard 7999)",
33
+ "motionResetMs": "Automatische reset door beweging (ms)",
34
+ "motionResetMs_help": "Hoe lang de .motion-status waar blijft na een webhook (standaard 15000)",
35
+ "requestTimeoutMs": "Time-out van API-verzoek (ms)",
36
+ "statusPollIntervalSec": "Status poll-interval (seconden)",
37
+ "streamAutoOffMs": "Automatische uitschakeling van streampuls (ms)",
38
+ "streamAutoOffMs_help": "Alleen gebruikt door streamPulse: de stream wordt na deze duur uitgeschakeld (0 = nooit)",
39
+ "tab_cameras": "Camera's",
40
+ "tab_settings": "Instellingen",
41
+ "useMotionEyeConfig": "Synchronisatiemodi via MotionEye-configuratie-API",
42
+ "useMotionEyeConfig_help": "Indien ingeschakeld, worden modus- en streamwijzigingen naar MotionEye geschreven, zodat de webinterface gesynchroniseerd blijft",
43
+ "webhookBind": "Webhook-bindadres",
44
+ "webhookBind_help": "Netwerkinterface voor de ingebouwde webhook-listener (standaard 0.0.0.0)",
45
+ "webhookHost": "ioBroker-host voor webhooks",
46
+ "webhookHost_help": "IP of hostnaam van uw ioBroker-host bereikbaar vanaf MotionEye (bijvoorbeeld 192.168.130.130). Vereist: zonder deze waarde kan de adapter geen webhook-URL's naar MotionEye schrijven.",
47
+ "webhookPort": "Webhook-poort",
48
+ "webhookPort_help": "Poort voor bewegingswebhooks van MotionEye (standaard 8090). Zorg ervoor dat de firewall inkomend verkeer toestaat."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Zastosuj profil multimediów migawki przy uruchomieniu adaptera",
3
+ "camera_defaultMode": "Tryb domyślny",
4
+ "camera_enabled": "Włączony",
5
+ "camera_id": "Identyfikator wewnętrzny",
6
+ "camera_id_help": "Stabilny klucz dla webhooków (np. auffahrt). Pozostaw puste, aby wywodzić się z nazwy.",
7
+ "camera_id_placeholder": "auto z nazwy",
8
+ "camera_motionEyeId": "Identyfikator MotionEye",
9
+ "camera_motionEyeId_help": "Numeryczny identyfikator kamery z MotionEye (/config/list)",
10
+ "camera_name": "Nazwa wyświetlana",
11
+ "camera_name_help": "Nazwa kanału ioBroker — niezależna od etykiety MotionEye",
12
+ "cameras_info": "Dodaj każdą kamerę, którą chcesz w ioBroker. Identyfikator MotionEye jest wyświetlany w internetowym interfejsie użytkownika MotionEye lub za pośrednictwem pliku /config/list na porcie 8765. Po zapisaniu uruchom ponownie instancję adaptera, aby utworzyć punkty danych i zapisać adresy URL elementu webhook w MotionEye.",
13
+ "cameras_table": "Kamery",
14
+ "defaultMode": "Tryb domyślny dla nowych kamer",
15
+ "disableStreamOnStart": "Wyłącz strumień wideo przy uruchomieniu adaptera",
16
+ "header_cameras": "Zarządzanie kamerą",
17
+ "header_connection": "Połączenie MotionEye",
18
+ "header_stream": "Opcje transmisji",
19
+ "header_timing": "Odpytywanie i limity czasu",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Wyłączona — brak wykrywania",
22
+ "mode_sharp": "Ostry — ruch + nagrywanie wideo",
23
+ "mode_still": "Nadal — tylko wyzwalacz ruchu",
24
+ "motionEyePassword": "Hasło MotionEye",
25
+ "motionEyePassword_help": "Hasło w postaci zwykłego tekstu używane do logowania do sieci MotionEye. Pozostaw puste, jeśli nie ustawiono hasła.",
26
+ "motionEyePort": "Port interfejsu API konfiguracji MotionEye",
27
+ "motionEyePort_help": "Interfejs API konfiguracji MotionEye (domyślnie 8765)",
28
+ "motionEyeUser": "Nazwa użytkownika MotionEye",
29
+ "motionHost": "Gospodarz MotionEye",
30
+ "motionHost_help": "Adres IP lub nazwa hosta serwera MotionEye",
31
+ "motionPort": "Ruchowy port HTTP",
32
+ "motionPort_help": "Port kontroli ruchu internetowego dla migawek (domyślnie 7999)",
33
+ "motionResetMs": "Automatyczne resetowanie ruchu (ms)",
34
+ "motionResetMs_help": "Jak długo stan .motion pozostaje prawdziwy po webhooku (domyślnie 15000)",
35
+ "requestTimeoutMs": "Limit czasu żądania API (ms)",
36
+ "statusPollIntervalSec": "Interwał sondowania stanu (sekundy)",
37
+ "streamAutoOffMs": "Automatyczne wyłączanie impulsu strumieniowego (ms)",
38
+ "streamAutoOffMs_help": "Używany tylko przez streamPulse — strumień wyłącza się po upływie tego czasu (0 = nigdy)",
39
+ "tab_cameras": "Kamery",
40
+ "tab_settings": "Ustawienia",
41
+ "useMotionEyeConfig": "Tryby synchronizacji poprzez interfejs API konfiguracji MotionEye",
42
+ "useMotionEyeConfig_help": "Po włączeniu zmiany trybu i strumienia są zapisywane w MotionEye, dzięki czemu interfejs sieciowy pozostaje zsynchronizowany",
43
+ "webhookBind": "Adres powiązania webhooka",
44
+ "webhookBind_help": "Interfejs sieciowy dla wbudowanego odbiornika webhook (domyślnie 0.0.0.0)",
45
+ "webhookHost": "Host ioBroker dla webhooków",
46
+ "webhookHost_help": "Adres IP lub nazwa hosta Twojego hosta ioBroker osiągalna z MotionEye (np. 192.168.130.130). Wymagane — bez tej wartości adapter nie może zapisywać adresów URL elementu webhook w MotionEye.",
47
+ "webhookPort": "Port webhooka",
48
+ "webhookPort_help": "Port dla webhooków ruchu z MotionEye (domyślnie 8090). Upewnij się, że zapora sieciowa zezwala na ruch przychodzący."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Aplicar perfil de mídia de captura instantânea na inicialização do adaptador",
3
+ "camera_defaultMode": "Modo padrão",
4
+ "camera_enabled": "Habilitado",
5
+ "camera_id": "ID interno",
6
+ "camera_id_help": "Chave estável para webhooks (por exemplo, auffahrt). Deixe em branco para derivar do nome.",
7
+ "camera_id_placeholder": "automático do nome",
8
+ "camera_motionEyeId": "ID do MotionEye",
9
+ "camera_motionEyeId_help": "ID numérico da câmera do MotionEye (/config/list)",
10
+ "camera_name": "Nome de exibição",
11
+ "camera_name_help": "Nome do canal ioBroker – independente do rótulo MotionEye",
12
+ "cameras_info": "Adicione cada câmera desejada no ioBroker. O ID do MotionEye é mostrado na UI da web do MotionEye ou via /config/list na porta 8765. Depois de salvar, reinicie a instância do adaptador para criar pontos de dados e gravar URLs de webhook no MotionEye.",
13
+ "cameras_table": "Câmeras",
14
+ "defaultMode": "Modo padrão para novas câmeras",
15
+ "disableStreamOnStart": "Desative o stream de vídeo na inicialização do adaptador",
16
+ "header_cameras": "Gerenciamento de câmera",
17
+ "header_connection": "Conexão MotionEye",
18
+ "header_stream": "Opções de transmissão",
19
+ "header_timing": "Pesquisas e tempos limites",
20
+ "header_webhook": "Webhook",
21
+ "mode_off": "Desligado – sem detecção",
22
+ "mode_sharp": "Nítido – movimento + gravação de vídeo",
23
+ "mode_still": "Ainda – apenas gatilho de movimento",
24
+ "motionEyePassword": "Senha do MotionEye",
25
+ "motionEyePassword_help": "Senha de texto simples usada para login na web do MotionEye. Deixe em branco se nenhuma senha for definida.",
26
+ "motionEyePort": "Porta da API de configuração do MotionEye",
27
+ "motionEyePort_help": "API de configuração MotionEye (padrão 8765)",
28
+ "motionEyeUser": "Nome de usuário MotionEye",
29
+ "motionHost": "Apresentador MotionEye",
30
+ "motionHost_help": "Endereço IP ou nome de host do seu servidor MotionEye",
31
+ "motionPort": "Porta HTTP de movimento",
32
+ "motionPort_help": "Porta Motion webcontrol para instantâneos (padrão 7999)",
33
+ "motionResetMs": "Redefinição automática de movimento (ms)",
34
+ "motionResetMs_help": "Quanto tempo o estado .motion permanece verdadeiro após um webhook (padrão 15.000)",
35
+ "requestTimeoutMs": "Tempo limite de solicitação de API (ms)",
36
+ "statusPollIntervalSec": "Intervalo de pesquisa de status (segundos)",
37
+ "streamAutoOffMs": "Desligamento automático de pulso de fluxo (ms)",
38
+ "streamAutoOffMs_help": "Usado apenas pelo streamPulse — o stream é desligado após esse período (0 = nunca)",
39
+ "tab_cameras": "Câmeras",
40
+ "tab_settings": "Configurações",
41
+ "useMotionEyeConfig": "Modos de sincronização via API de configuração MotionEye",
42
+ "useMotionEyeConfig_help": "Quando ativado, as alterações de modo e fluxo são gravadas no MotionEye para que a interface da web permaneça sincronizada",
43
+ "webhookBind": "Endereço de ligação do webhook",
44
+ "webhookBind_help": "Interface de rede para o ouvinte de webhook integrado (padrão 0.0.0.0)",
45
+ "webhookHost": "Host ioBroker para webhooks",
46
+ "webhookHost_help": "IP ou nome do host do seu host ioBroker acessível pelo MotionEye (por exemplo, 192.168.130.130). Obrigatório — sem esse valor o adaptador não pode gravar URLs de webhook no MotionEye.",
47
+ "webhookPort": "Porta de webhook",
48
+ "webhookPort_help": "Porta para webhooks de movimento do MotionEye (padrão 8090). Certifique-se de que o firewall permita o tráfego de entrada."
49
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "applyMediaSettingsOnStart": "Применить профиль носителя моментального снимка при запуске адаптера",
3
+ "camera_defaultMode": "Режим по умолчанию",
4
+ "camera_enabled": "Включено",
5
+ "camera_id": "Внутренний идентификатор",
6
+ "camera_id_help": "Стабильный ключ для вебхуков (например, auffahrt). Оставьте пустым, чтобы получить производное от имени.",
7
+ "camera_id_placeholder": "авто от имени",
8
+ "camera_motionEyeId": "Идентификатор MotionEye",
9
+ "camera_motionEyeId_help": "Числовой идентификатор камеры из MotionEye (/config/list)",
10
+ "camera_name": "Отображаемое имя",
11
+ "camera_name_help": "Название канала ioBroker — независимо от метки MotionEye",
12
+ "cameras_info": "Добавьте каждую нужную камеру в ioBroker. Идентификатор MotionEye отображается в веб-интерфейсе MotionEye или через /config/list на порту 8765. После сохранения перезапустите экземпляр адаптера, чтобы создать точки данных и записать URL-адреса веб-перехватчиков в MotionEye.",
13
+ "cameras_table": "Камеры",
14
+ "defaultMode": "Режим по умолчанию для новых камер",
15
+ "disableStreamOnStart": "Отключить видеопоток при запуске адаптера",
16
+ "header_cameras": "Управление камерой",
17
+ "header_connection": "Подключение MotionEye",
18
+ "header_stream": "Параметры потока",
19
+ "header_timing": "Опрос и тайм-ауты",
20
+ "header_webhook": "Вебхук",
21
+ "mode_off": "Выкл. — нет обнаружения",
22
+ "mode_sharp": "Sharp — движение + запись видео",
23
+ "mode_still": "Неподвижно — только триггер движения",
24
+ "motionEyePassword": "Пароль MotionEye",
25
+ "motionEyePassword_help": "Простой текстовый пароль, используемый для входа в систему MotionEye. Оставьте пустым, если пароль не установлен.",
26
+ "motionEyePort": "Порт API конфигурации MotionEye",
27
+ "motionEyePort_help": "API конфигурации MotionEye (по умолчанию 8765)",
28
+ "motionEyeUser": "Имя пользователя MotionEye",
29
+ "motionHost": "Хост MotionEye",
30
+ "motionHost_help": "IP-адрес или имя хоста вашего сервера MotionEye",
31
+ "motionPort": "HTTP-порт движения",
32
+ "motionPort_help": "Порт веб-управления движением для снимков (по умолчанию 7999)",
33
+ "motionResetMs": "Автоматический сброс движения (мс)",
34
+ "motionResetMs_help": "Как долго состояние .motion остается истинным после веб-перехватчика (по умолчанию 15000)",
35
+ "requestTimeoutMs": "Тайм-аут запроса API (мс)",
36
+ "statusPollIntervalSec": "Интервал опроса статуса (секунды)",
37
+ "streamAutoOffMs": "Автоматическое отключение импульса потока (мс)",
38
+ "streamAutoOffMs_help": "Используется только дляstreamPulse — поток отключается по истечении этого времени (0 = никогда)",
39
+ "tab_cameras": "Камеры",
40
+ "tab_settings": "Настройки",
41
+ "useMotionEyeConfig": "Синхронизация режимов через API конфигурации MotionEye",
42
+ "useMotionEyeConfig_help": "Если этот параметр включен, изменения режима и потока записываются в MotionEye, поэтому веб-интерфейс остается синхронизированным.",
43
+ "webhookBind": "Адрес привязки вебхука",
44
+ "webhookBind_help": "Сетевой интерфейс для встроенного прослушивателя веб-перехватчиков (по умолчанию 0.0.0.0)",
45
+ "webhookHost": "хост ioBroker для веб-перехватчиков",
46
+ "webhookHost_help": "IP-адрес или имя вашего хоста ioBroker, доступного из MotionEye (например, 192.168.130.130). Обязательно — без этого значения адаптер не сможет записывать URL-адреса веб-перехватчиков в MotionEye.",
47
+ "webhookPort": "Порт вебхука",
48
+ "webhookPort_help": "Порт для веб-перехватчиков движения от MotionEye (по умолчанию 8090). Убедитесь, что брандмауэр разрешает входящий трафик."
49
+ }