Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
OpenHAB_Anwender
Beiträge: 7
Registriert: 27. Sep 2019 12:55

Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von OpenHAB_Anwender »

Hallo zusammen,
ich möchte mich erstmal für die vielen nützlichen Beiträge hier bedanken und selbst eine Frage loswerden, die wahrscheinlich für euch recht einfach zu erklären ist. :roll:

thing-Definition:

Code: Alles auswählen

Thing <binding_id>:<type_id>:<thing_id> "Label" @ "Location" [ <parameters> ]
Beschreibung:
Bei einer Fehlersuche wollte ich die type_id von einem Sonos Lautsprecher ändern (von "One" nach "ONE") . Anschließend ist dieser nicht mehr als thing aufgeführt. Das vorherige thing ist durch einen "HANDLER_MISSING_ERROR" nicht mehr erreichbar (siehe folgenden Programmauszug). Ich kann diesen nur wieder als thing erreichen, wenn ich die alte type_id angebe (reboot usw. bringt anscheinend nichts).

Frage: Wie kann man eine einmal festgelegte type_id ändern?

Code: Alles auswählen

2019-10-02 18:46:25.716 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'sonos.things' 
 ==> /var/log/openhab2/events.log <==
2019-10-02 18:46:25.753 [hingStatusInfoChangedEvent] - 'sonos:One:Schlafzimmer' changed from ONLINE to UNINITIALIZED 
==> /var/log/openhab2/openhab.log <==
2019-10-02 18:46:30.771 [WARN ] [core.thing.internal.ThingManagerImpl] - Disposing handler for thing 'sonos:One:Schlafzimmer' takes more than 5000ms.
==> /var/log/openhab2/events.log <==
2019-10-02 18:46:30.811 [hingStatusInfoChangedEvent] - 'sonos:One:Schlafzimmer' changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)
2019-10-02 18:46:50.669 [me.event.ThingUpdatedEvent] - Thing 'hue:0106:1:13' has been updated.
Hier noch ein paar Infos, falls notwendig:
Hardware: Raspberry 4
OH: openHAB 2.4.0-1 (Release Build)
Programmierung: Visual Studio

Vielen Dank im Voraus!

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von udo1toni »

Die Type ID ist im Binding fest definiert. Die möglichen Werte sind in der Dokumentation ersichtlich:
https://www.openhab.org/addons/bindings ... ted-things
When being defined in a *.things file, the specific thing types One, PLAY1, PLAY3, PLAY5, PLAYBAR, PLAYBASE, Beam, CONNECT and CONNECTAMP should be used.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

OpenHAB_Anwender
Beiträge: 7
Registriert: 27. Sep 2019 12:55

Re: Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von OpenHAB_Anwender »

Hallo Udo,
danke für deine Antwort. Ich habe bislang immer die Type-ID genommen, die mit in der Paper UI als als aktive Teilnehmer angezeigt wurden und dies hat bis jetzt immer gut funktioniert.
Type-ID Sonos Lautsprecher.jpg
Kann es mit dem Binding zu einem Problem kommen, wenn als Type-ID "zoneplayer" verwendet wird? Wenn ja, dann würde ich gerne wissen wie ich dies ändern kann. Denn wie beschrieben, kann ich den jeweiligen Lautsprecher nur als aktiven Teilnehmer ("ONLINE") in der Paper UI sehen, wenn ich wieder die gleiche Type-ID angebe. Bei einer Änderung oder einem neuen Namen wird mit der Lautsprecher nicht als "ONLINE" angezeigt. (Eine manuelle Suche hat keinen Erfolg gebracht. Wahrscheinlich könnte ich es manuell anlegen.)

Die eigentliche Ursache für meine Probleme mit meinem Sonos-System scheinen an anderer Stelle zu liegen. Ich habe das Thema nur genauer betrachtet, weil die Verbindung zwischen meinem Raspberry und den Sonos-Lautsprechern unregelmäßig unterbrochen wurden, wenn ich diese über die Basic UI bedient habe. die Lautsprecher haben funktioniert und Musik gespielt, aber die Verbindung brach immer wieder zu allen Geräten ab, wenn ein Radiosender geändert wurde oder ein Lautsprecher gestoppt oder gestartet wurde. Ich habe erst gestern Abend gesehen, dass es bereits in anderen Foren diskutiert wurde und es eine "Bastellösung" für dieses Problem gibt.

https://community.openhab.org/t/oh-2-4- ... in/59253/9

https://community.openhab.org/t/too-muc ... ne/62214/5

In dem Auszug aus dem Log-File ist zu sehen, dass die Lautsprecher alle "offline" gehen und anschließend wieder "online" gehen (...obwohl diese einwandfrei funktionieren).

Code: Alles auswählen

2019-10-03 10:31:29.331 [hingStatusInfoChangedEvent] - 'sonos:One:RINCON_7828CAB5ED8601400' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CAB5ED8601400 is not available in local network.

2019-10-03 10:31:30.415 [me.event.ThingUpdatedEvent] - Thing 'hue:0106:1:13' has been updated.

2019-10-03 10:31:30.427 [hingStatusInfoChangedEvent] - 'sonos:PLAY1:Bad' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CAB5ED8601400 is not available in local network.

2019-10-03 10:31:30.430 [hingStatusInfoChangedEvent] - 'sonos:PLAY5:RINCON_949F3E501BA801400' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3E501BA801400 is not available in local network.

2019-10-03 10:31:30.435 [hingStatusInfoChangedEvent] - 'sonos:PLAY5:RINCON_949F3E500F2A01400' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3E500F2A01400 is not available in local network.

2019-10-03 10:31:30.440 [hingStatusInfoChangedEvent] - 'sonos:One:RINCON_7828CA0EF4FC01400' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CA0EF4FC01400 is not available in local network.

2019-10-03 10:31:31.008 [me.event.ThingUpdatedEvent] - Thing 'hue:0106:1:17' has been updated.

2019-10-03 10:31:55.210 [hingStatusInfoChangedEvent] - 'sonos:zoneplayer:Wohnzimmer' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3EC2C22601400 is not available in local network.

2019-10-03 10:32:29.350 [hingStatusInfoChangedEvent] - 'sonos:One:RINCON_7828CAB5ED8601400' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CAB5ED8601400 is not available in local network. to ONLINE

2019-10-03 10:32:30.448 [hingStatusInfoChangedEvent] - 'sonos:PLAY1:Bad' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CAB5ED8601400 is not available in local network. to ONLINE

2019-10-03 10:32:30.457 [hingStatusInfoChangedEvent] - 'sonos:One:RINCON_7828CA0EF4FC01400' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_7828CA0EF4FC01400 is not available in local network. to ONLINE

2019-10-03 10:32:30.473 [hingStatusInfoChangedEvent] - 'sonos:PLAY5:RINCON_949F3E500F2A01400' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3E500F2A01400 is not available in local network. to ONLINE

2019-10-03 10:32:30.492 [hingStatusInfoChangedEvent] - 'sonos:PLAY5:RINCON_949F3E501BA801400' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3E501BA801400 is not available in local network. to ONLINE

2019-10-03 10:32:48.507 [vent.ItemStateChangedEvent] - Temperature changed from 11.22 to 11.25

2019-10-03 10:32:48.532 [vent.ItemStateChangedEvent] - Temp_Feel changed from 11.22 to 11.25

2019-10-03 10:32:55.227 [hingStatusInfoChangedEvent] - 'sonos:zoneplayer:Wohnzimmer' changed from OFFLINE (COMMUNICATION_ERROR): The Sonos player RINCON_949F3EC2C22601400 is not available in local network. to ONLINE
Wahrscheinlich hat hier im Forum auch noch niemand eine bessere Lösung gefunden, oder vielleicht doch? :idea:
Gruß, Marcus
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von udo1toni »

Ich habe selbst kein Sonos, weshalb ich nur auf die Doku verweisen kann :)

Wenn die Geräte mit Autodiscovery unter der TypID zoneplayer gefunden werden, wird das schon seine Richtigkeit haben.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von peter-pan »

udo1toni hat geschrieben: 3. Okt 2019 14:35 Wenn die Geräte mit Autodiscovery unter der TypID zoneplayer gefunden werden, wird das schon seine Richtigkeit haben.
Aus meiner Sicht ist das genauso, wie Udo dir das beschrieben hat. Bei einem Autodiscovery wird das Thing vom Binding selbst (oder von Autodiscovery) integriert und mit richtigen Parametern versorgt.

Wenn du die .things-Datei selber anlegst, soltest du dich aber nach Möglichkeit an die Konventionen halten wie sie in der Bindig-Doku beschrieben sind
udo1toni hat geschrieben: 2. Okt 2019 23:21 When being defined in a *.things file, the specific thing types One, PLAY1, PLAY3, PLAY5, PLAYBAR, PLAYBASE, Beam, CONNECT and CONNECTAMP should be used
Kann es sein, dass du sowohl per Autodiscovery und per Datei erstellte Things laufen hast ? Das könnte Probleme verursachen.
Wie sieht es den mit den Items aus ? Sind die auch automatisch generiert (Simple-Mode, oder so), oder hast du hier eine Items-Datei ?

Wie sieht denn die Hard- und Software aus ? Welches OH-Release läuft denn bei dir ?

Mein .things sieht so aus:

Code: Alles auswählen

Thing sonos:PLAY1:RINCON_949F3E157B8401400	[udn="RINCON_949F3E157B8401400", refresh=60]		//Arbeitszimmer
Thing sonos:PLAY1:RINCON_5CAAFDC29C0201400	[udn="RINCON_5CAAFDC29C0201400", refresh=60]		//Garten
Thing sonos:PLAY3:RINCON_5CAAFD54DF8801400	[udn="RINCON_5CAAFD54DF8801400", refresh=60]		//Wohnzimmer
Ausschnitt aus .items:

Code: Alles auswählen

//        Arbeitszimmer             
Player AZ_Sonos_Control                     "Player[%s]"                    <music>                   (AZ_Sonos)                {channel="sonos:PLAY1:RINCON_949F3E157B8401400:control", autoupdate="false"}
Switch AZ_Sonos_Mute                        "Mute[%s]"                      <sonos_mute>              (AZ_Sonos)                {channel="sonos:PLAY1:RINCON_949F3E157B8401400:mute", autoupdate="false"}
String AZ_Sonos_CurrentTitle                "Title [%s]"                    <track>                   (AZ_Sonos)                {channel="sonos:PLAY1:RINCON_949F3E157B8401400:currenttitle", autoupdate="false"}
Hast du die Änderungen deines Things, auch entsprechend in den Items vorgenommen ?
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

OpenHAB_Anwender
Beiträge: 7
Registriert: 27. Sep 2019 12:55

Re: Anfängerfrage: Wie kann eine einmal festgelegte "type_id" geändert werden?

Beitrag von OpenHAB_Anwender »

Hallo zusammen,
danke für eure Antworten. Ich konnte leider nicht früher antworten.
Kann es sein, dass du sowohl per Autodiscovery und per Datei erstellte Things laufen hast ? Das könnte Probleme verursachen.
Nein, es sind alle items per Datei erstellt worden. Über die Autodiscovery schaue ich nur nach der TypID - das wars.

Hier meine .things

Code: Alles auswählen

Thing sonos:zoneplayer:Wohnzimmer [udn="RINCON_949F3EC2C22601400", refresh=60, notificationVolume=15]
Thing sonos:PLAY1:Bad             [udn="RINCON_7828CAB5ED8601400", refresh=60, notificationVolume=15]
Thing sonos:One:Schlafzimmer      [udn="RINCON_7828CA0EF4FC01400", refresh=60, notificationVolume=15]
Sonstige Infos standen schon oben in meiner Nachricht:
Hardware: Raspberry 4
OH: openHAB 2.4.0-1 (Release Build)
Programmierung: Visual Studion
Am wahrscheinlichsten halte ich die beschriebene Ursache unter den von mir eingestellten Links:
https://community.openhab.org/t/oh-2-4- ... in/59253/9
https://community.openhab.org/t/too-muc ... ne/62214/5

Dennoch besten Dank EUCH!

Antworten