Wie kann ich zwei OH Versionen miteinander "mergen"?
-
- Beiträge: 251
- Registriert: 31. Jan 2022 06:35
Wie kann ich zwei OH Versionen miteinander "mergen"?
Hallo
Ich habe eine OH Version 4.1.0.M1 bei welcher die Kamera funktioniert. Bei OH Version 4.1.0.M3 funktioniert diese leider nicht. Ich habe es schon auf alle Arten probiert aber ohne Erfolg. Da ich schon mehrere Änderungen in M3 habe würde ich die M1 vorziehen (Kamera funktioniert) und alle Anpassungen aus M3 übernehmen.
Frage:
Was wäre der einfachste Weg die rules, items, things etc auf die M1 zu übertragen bzw. zu mergen? Ich habe von beiden ein Backup.
Danke
Ich habe eine OH Version 4.1.0.M1 bei welcher die Kamera funktioniert. Bei OH Version 4.1.0.M3 funktioniert diese leider nicht. Ich habe es schon auf alle Arten probiert aber ohne Erfolg. Da ich schon mehrere Änderungen in M3 habe würde ich die M1 vorziehen (Kamera funktioniert) und alle Anpassungen aus M3 übernehmen.
Frage:
Was wäre der einfachste Weg die rules, items, things etc auf die M1 zu übertragen bzw. zu mergen? Ich habe von beiden ein Backup.
Danke
- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Das ist nicht vorgesehen.
Du kannst Things, Items und die Links zwischen beiden aus der entsprechenden JSON Datei extrahieren und in der anderen JSON Datei einbauen, allerdings solltest Du schon sehr genau wissen, was Du da tust, denn wenn Du einen noch so kleinen Fehler machst, geht gleich gar nichts mehr. Sprich, mach vorher Sicherungskopien der Dateien, die Du änderst, damit Du zumindest zum alten Stand zurückkehren kannst.
Mit Text-Konfiguration wäre das Ganze übrigens ein Kinderspiel
Du kannst Things, Items und die Links zwischen beiden aus der entsprechenden JSON Datei extrahieren und in der anderen JSON Datei einbauen, allerdings solltest Du schon sehr genau wissen, was Du da tust, denn wenn Du einen noch so kleinen Fehler machst, geht gleich gar nichts mehr. Sprich, mach vorher Sicherungskopien der Dateien, die Du änderst, damit Du zumindest zum alten Stand zurückkehren kannst.
Mit Text-Konfiguration wäre das Ganze übrigens ein Kinderspiel

openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 251
- Registriert: 31. Jan 2022 06:35
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Danke für deine Antwort. In diesem Fall geht es um das IP-camera binding resp. um eine IP Kamera (axis) die einfach unter M3 nicht funktioniert will...
Ich habe in M1 jedoch noch eine funktionierende Kamera welche ich dann "mergen" könnte oder wie du sagst via json File rauskopieren.
Ich habe dazu im File "org.openhab.core.thing.Thing.json" etwas gefunden zu dieser Kamera. Meinst du ich könnte diesen Teil rauskopieren und in M3 einfach einfüen? Reicht es wenn ich nur die Things nehme?
Ich habe in M1 jedoch noch eine funktionierende Kamera welche ich dann "mergen" könnte oder wie du sagst via json File rauskopieren.
Ich habe dazu im File "org.openhab.core.thing.Thing.json" etwas gefunden zu dieser Kamera. Meinst du ich könnte diesen Teil rauskopieren und in M3 einfach einfüen? Reicht es wenn ich nur die Things nehme?
- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Je nachdem, was Du alles übernehmen willst
Es gibt die Things, die Items und die Links zwischen beiden (das liegt daran, dass es zwischen Item und Channel eine n:m Beziehung gibt). Für eine vollständige Übernahme musst Du aus allen drei Dateien die fraglichen Daten extrahieren und ins Pendant übernehmen (und wie gesagt, Du musst dabei höllisch aufpassen, dass Du die vorhandene Struktur nicht zerstörst).
Für ein einzelnes Thing scheint mir der Aufwand nicht gerechtfertigt, die paar Konfigurationswerte lassen sich doch leicht von Hand eintragen.
Oder funktioniert die Kamera ausschließlich per Autodiscovery?

Für ein einzelnes Thing scheint mir der Aufwand nicht gerechtfertigt, die paar Konfigurationswerte lassen sich doch leicht von Hand eintragen.
Oder funktioniert die Kamera ausschließlich per Autodiscovery?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 251
- Registriert: 31. Jan 2022 06:35
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Ja da hast du natürlich auch Recht. Man (ich) würde meinen ein paar Konfig sollten reichen aber der Teufel steckt wohl wieder im Detail. Nun das IP-Camera binding funktioniert da von den zwei IP-Kameras ja eine geht. Die zweite habe ich wie folgt konfiguriert:
bring jedoch den folgenden Fehler:
Hier steht u.a.
ist dies u.U. das Problem?
Das "Kamera Thing" zeigt mir "Online" an. Das "Ping-Binding" auf die Kamera ebenfalls "Online". Ein autosearch brachte kein Erfolg. Wenn ich die URL so wie es im Konfig angegeben ist im Browser eingebe sehe ich das Kamera Livebild. Aber auf dem Widget "image Card" bekomme ich nach der Item Auswahl auf diese Kamera nur ein "leeres" Bild in weiss angezeigt. Wenn ich im gleichen Widget auf die funktionierende Kamera wechsle dann sehe ich das Bild einwandfrei.
Hast du eine Idee was ich noch probieren kann?
Code: Alles auswählen
UID: ipcamera:generic:f6e9f25e69
label: IP Camera EG
thingTypeUID: ipcamera:generic
configuration:
mjpegOptions: -q:v 5 -r 2 -vf scale=640:-2 -update 1
ipAddress: 192.168.178.23
mjpegUrl: http://admin:%3D98P@192.168.178.23/axis-cgi/mjpg/video.cgi?
updateImageWhen: "0"
gifPreroll: 0
ffmpegLocation: c:/ffmpeg/usr/bin/ffmpeg
ipWhitelist: DISABLE
mp4OutOptions: -c:v copy -c:a copy
pollTime: 1000
password: =98Pxq\pviD<
port: 80
snapshotUrl: http://admin:%3D98P@192.168.178.23:80/jpg/image.jpg?size=3
snapshotOptions: -an -vsync vfr -q:v 2 -update 1
gifOutOptions: -r 2 -filter_complex
scale=-2:360:flags=lanczos,setpts=0.5*PTS,split[o1][o2];[o1]palettegen[p];[o2]fifo[o3];[o3][p]paletteuse
hlsOutOptions: -strict -2 -f lavfi -i aevalsrc=0 -acodec aac -vcodec copy
-hls_flags delete_segments -hls_time 2 -hls_list_size 4
username: admin
ffmpegInput: http://admin:%3D98P@192.168.178.23/axis-cgi/mjpg/video.cgi?
location: EG
channels:
bring jedoch den folgenden Fehler:
Code: Alles auswählen
2023-12-02 11:09:03.352 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.thingUpdated()' on 'org.openhab.binding.ipcamera.internal.handler.IpCameraHandler@383756ec': Alias "/ipcamera/f6e9f25e69" was never registered by org.openhab.binding.ipcamera_4.0.0.202303221120 [239]
java.lang.RuntimeException: Alias "/ipcamera/f6e9f25e69" was never registered by org.openhab.binding.ipcamera_4.0.0.202303221120 [239]
at org.ops4j.pax.web.service.internal.HttpServiceEnabled.lambda$doUnregisterServlet$2(HttpServiceEnabled.java:703) ~[?:?]
at org.ops4j.pax.web.service.spi.model.ServerModel.lambda$run$2(ServerModel.java:541) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Suppressed: java.lang.Throwable
at org.ops4j.pax.web.service.spi.model.ServerModel.run(ServerModel.java:535) ~[?:?]
at org.ops4j.pax.web.service.internal.HttpServiceEnabled.doUnregisterServlet(HttpServiceEnabled.java:585) ~[?:?]
at org.ops4j.pax.web.service.internal.HttpServiceEnabled.unregister(HttpServiceEnabled.java:545) ~[?:?]
at org.ops4j.pax.web.service.internal.HttpServiceProxy.unregister(HttpServiceProxy.java:186) ~[?:?]
at org.openhab.binding.ipcamera.internal.servlet.IpCameraServlet.dispose(IpCameraServlet.java:136) ~[?:?]
at org.openhab.binding.ipcamera.internal.servlet.CameraServlet.dispose(CameraServlet.java:283) ~[?:?]
at org.openhab.binding.ipcamera.internal.handler.IpCameraHandler.dispose(IpCameraHandler.java:1863) ~[?:?]
at org.openhab.core.thing.binding.BaseThingHandler.thingUpdated(BaseThingHandler.java:153) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:147) ~[?:?]
at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.IllegalArgumentException: Alias "/ipcamera/f6e9f25e69" was never registered by org.openhab.binding.ipcamera_4.0.0.202303221120 [239]
at org.ops4j.pax.web.service.internal.HttpServiceEnabled.lambda$doUnregisterServlet$2(HttpServiceEnabled.java:612) ~[?:?]
... 8 more
2023-12-02 11:09:18.617 [DEBUG] [amera.internal.servlet.CameraServlet] - GET:/ipcamera.mjpeg, received from 192.168.178.26
Hier steht u.a.
Code: Alles auswählen
Alias "/ipcamera/f6e9f25e69" was never registered by
Das "Kamera Thing" zeigt mir "Online" an. Das "Ping-Binding" auf die Kamera ebenfalls "Online". Ein autosearch brachte kein Erfolg. Wenn ich die URL so wie es im Konfig angegeben ist im Browser eingebe sehe ich das Kamera Livebild. Aber auf dem Widget "image Card" bekomme ich nach der Item Auswahl auf diese Kamera nur ein "leeres" Bild in weiss angezeigt. Wenn ich im gleichen Widget auf die funktionierende Kamera wechsle dann sehe ich das Bild einwandfrei.
Hast du eine Idee was ich noch probieren kann?
- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Wenn Du eine funktionierende Kamera hast, dann zeig doch mal das funktionierende Thing im Vergleich.
Ich nehme an, die beiden Kameras sind baugleich?
Ich nehme an, die beiden Kameras sind baugleich?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 251
- Registriert: 31. Jan 2022 06:35
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Nein die Kameras sind leider unterschiedlich in Hersteller und Typ. Das heisst man kann dies leider nicht vergleichen 

- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Ah, schade. Aber im alten System funktionieren beide Kameras? Und die Konfiguration von oben ist die aus dem Altsystem, oder aus dem Neusystem?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 251
- Registriert: 31. Jan 2022 06:35
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Die Konfiguration ist aus dem Neusystem. Nun ich habe jetzt von dem alten System unter Things -> Code de IP-camera welche funktioniert das ganze per einfügen im Neusystem wieder zum laufen gekriegt
Wieso es nur so funktioniert hat kann ich nicht sagen aber freue mich dass es wieder am laufen ist!
Vielen Dank für die Unterstützung

Wieso es nur so funktioniert hat kann ich nicht sagen aber freue mich dass es wieder am laufen ist!
Vielen Dank für die Unterstützung
- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Wie kann ich zwei OH Versionen miteinander "mergen"?
Das wäre dann mein nächster Vorschlag gewesen...
Prima dass Du es selbst hinbekommen hast!

openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet