openHASP Trigger Problem nach openHAB 5.0 Update

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
mejdan
Beiträge: 4
Registriert: 18. Feb 2020 05:19
Answers: 0

openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von mejdan »

Hallo Gemeinde! 👋
Ich benötige bitte eure Hilfe. Vor kurzer Zeit bin ich von openHAB 4.3 auf openHAB 5.0 umgestiegen in der Hoffnung, dass alles reibungslos funktioniert - leider habe ich mich getäuscht! 😅
Problem mit openHASP Triggern
In openHAB 4.3 hatte ich folgenden Trigger verwendet:

Code: Alles auswählen

Type publishTrigger : terasaplatta_State_Event [
    stateTopic="hasp/terasaplatta/state/#", 
    separator="#" 
]
In openHAB 5.0 verwende ich jetzt:

Code: Alles auswählen

Type trigger : terasaplatta_State_Event [
    stateTopic="hasp/terasaplatta/state/#", 
    separator="#" 
]
Das Problem
MQTT Explorer zeigt mir:

Code: Alles auswählen

hasp/terasaplatta/state/p2b20 {"event":"up"}
openHAB Log Viewer zeigt nur:

Code: Alles auswählen

[INFO ] [openhab.event.ChannelTriggeredEvent ] - mqtt:topic:MQTT:terasaplatta:terasaplatta_State_Event triggered off
[INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'terasaplatta_Idle' changed from long to off
[INFO ] [openhab.event.ChannelTriggeredEvent ] - mqtt:topic:MQTT:terasaplatta:terasaplatta_State_Event triggered {"event":"down"}
[INFO ] [openhab.event.ChannelTriggeredEvent ] - mqtt:topic:MQTT:terasaplatta:terasaplatta_State_Event triggered {"event":"up"}
➡️ Das "p2b20" wird nicht übertragen!
Meine Bridge-Konfiguration
Ich habe beide Varianten ausprobiert:

Code: Alles auswählen

Bridge mqtt:broker:terasaplatta "terasaplatta" (mqtt:broker:MQTT) {
    Channels:
        Type publishTrigger : terasaplatta_State_Event [
            stateTopic="hasp/terasaplatta/state/#", 
            separator="#" 
        ]
        Type trigger : terasaplatta_State_Event [
            stateTopic="hasp/demo_plate/state/+/+/event" 
        ]
}
Meine Frage
Hat jemand ähnliche Probleme gehabt oder kann mir weitere Tipps geben, wie ich die vollständigen MQTT Topics (inkl. "p2b20") in openHAB 5.0 erhalten kann?
Vielen Dank im Voraus für eure Hilfe! 🙏

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

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von udo1toni »

Eventuell bringst Du da was durcheinander... publishTrigger ist der einzig erlaubte Channeltyp in der Bridge.
Selbstverständlich müssen pro Bridge alle publishTrigger Channel eine eindeutige UID haben.
Die Bridge muss die Konfiguration des Brokers beinhalten, Du hast jedoch die Bridge als "Child" der "echten" Bridge angelegt.
Korrekt z.B. so:

Code: Alles auswählen

Thing mqtt:broker:mosquitto "Mosquitto" @ "mqtt" [
		host="192.168.178.55", // IP des Brokers
		port=1883, // der Port
		clientID="openHAB5",
		lwtMessage="Offline", 
		lwtTopic="openHAB5/system/LWT", 
		birthMessage="Online", 
		birthTopic="openHAB5/system/LWT", 
		shutdownMessage="Offline", 
		shutdownTopic="openHAB5/system/LWT"
	] {
	Channels:
		Type publishTrigger : received "Received" [stateTopic="$SYS/broker/load/bytes/received/#", separator="#"]
		Type publishTrigger : sent "Sent" [stateTopic="$SYS/broker/load/bytes/sent/#", separator="#"]
}
liefert dann z.B.

Code: Alles auswählen

openhab.event.ChannelTriggeredEvent	mqtt:broker:mosquitto:received triggered $SYS/broker/load/bytes/received/1min#107202.02
openhab.event.ChannelTriggeredEvent	mqtt:broker:mosquitto:received triggered $SYS/broker/load/bytes/received/5min#103989.13
openhab.event.ChannelTriggeredEvent	mqtt:broker:mosquitto:received triggered $SYS/broker/load/bytes/received/15min#103513.23
Unterhalb eines MQTT Things kann man auch Trigger Channel anlegen, dort aber eben kein publishTrigger, und entsprechend kann man dort auch nicht auf das Topic zugreifen.
openHAB5.0.1 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.6, LXC)

mejdan
Beiträge: 4
Registriert: 18. Feb 2020 05:19
Answers: 0

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von mejdan »

Sehr geehrter Herr Toni,
vielen Dank für Ihre schnelle Antwort und die Klärung!
Leider komme ich noch immer nicht mit der Bridge zurecht. Das ist meine Haupt-Bridge mit mehreren Things:

Code: Alles auswählen

Bridge mqtt:broker:MQTT "HauptBroker_MQTT" 
[
  host="localhost",
  port=1883,
  secure=false,
  username="user",
  password="mmmeee",
  clientID="openhab",
  qos=1,
  retainMessages=true
]
{
    Thing topic shellyem3 "Shelly EM3" @ "Shelly Devices" 
    {
      Channels:
        Type number : EM_L1_power "Wati"      [ stateTopic="shellies/shellyem3/emeter/0/power" ]
        Type number : EM_L1_voltage "Voltage" [ stateTopic="shellies/shellyem3/emeter/0/voltage" ]
        Type number : EM_L1_current "Current" [ stateTopic="shellies/shellyem3/emeter/0/current" ]
    }
    und so weiter...
}
Wenn ich jetzt mein neues Thing - in dem Fall ein Terasdisplay mit HASPmota Firmware - in eine neue "terasdisplay.thing" Datei einfügen will, so wie ich es bisher in openHAB 4.0 gemacht habe, funktioniert es nicht mehr. Über ein Jahr lang hat das problemlos funktioniert.
Hier mein bisheriges Beispiel:

Code: Alles auswählen

// terasdisplay.thing
Thing mqtt:topic:terasaplatta_event "terasaplatta Events" (mqtt:broker:MQTT) {
    Channels:
       Type publishTrigger  : terasaplatta_State_Event [ stateTopic="hasp/+/terasaplatta/#", separator="#"]
}

Thing topic "terasaplattaMonitorBroker" (mqtt:broker:MQTT)
{
    Channels:
        // Command Channels
        Type number : terasaplatta_Backlight_Brightness [ stateTopic="hasp/terasaplatta/state/dim", commandTopic="hasp/terasaplatta/command/dim", formatBeforePublish="%.0f" ]
        Type switch : terasaplatta_Reboot               [ commandTopic="hasp/terasaplatta/command/reboot", postCommand=false ]
        Type number : terasaplatta_Page_Current         [ commandTopic="hasp/terasaplatta/command/page", stateTopic="hasp/terasaplatta/state/page", formatBeforePublish="%.0f" ]
        Type string : terasaplatta_Command              [ commandTopic="hasp/terasaplatta/command" ]
        Type string : terasaplatta_Command_CLEARPAGE    [ commandTopic="hasp/terasaplatta/command/clearpage" ]
        Type string : terasaplatta_Command_JSON         [ commandTopic="hasp/terasaplatta/command/json" ]
        Type string : terasaplatta_Command_JSONL        [ commandTopic="hasp/terasaplatta/command/jsonl" ]
        
        // Status Channels
        Type switch : terasaplatta_LWT                  [ stateTopic="hasp/terasaplatta/LWT", transformationPattern="MAP:lwt.map" ]
}
Und hier meine dazugehörige Rule:

Code: Alles auswählen

rule "HASP Button Trigger"
when
Channel "mqtt:topic:MQTT:terasaplatta_event:terasaplatta_State_Event" triggered
then
    logInfo("MQTT_DEBUG", "Rule triggered! Received event: " + receivedEvent.toString)
    
    // Ihre bestehende Logik hier...
    terasmonitor_aktiv.postUpdate(terasmonitor_aktiv.state)
    val topic = receivedEvent.toString.split("#").get(0)
    val payload = receivedEvent.substring(topic.length + 1)
    val topicvalue = topic.split("/").get(topic.split("/").size - 1)
    
    logInfo("MQTT_DEBUG", "Topic: " + topic)
    logInfo("MQTT_DEBUG", "Payload: " + payload)
    logInfo("MQTT_DEBUG", "Topic value: " + topicvalue)
    
    val jsonkey = transform("JS", "json_demo_key.js", payload)
    val jsonvalue = transform("JSONPATH", "$." + jsonkey, payload).toString.toUpperCase
    
    // Rest Ihrer Logik...
    if (topicvalue.contains("p") && topicvalue.contains("b"))
     {
        val split1 = topicvalue.split("b")
        val split2 = split1.get(0).split("p")

        if (split2.length > 1 && split1.length > 1) 
        {
            val eventpage = split2.get(1)
            val eventbutton = split1.get(1)

            switch (eventpage) {
                case '1': {
                    switch (eventbutton) {
                        case '2':  if (jsonkey == "event" && jsonvalue == "UP") toggleItem.apply(Tisch)
                        usw...................
end
Jetzt in openHAB 5.0 schlägt das mit einem Fehler, und ich komme nicht weiter!
Bitte entschuldigen Sie meine Unklarheiten und ich bedanke mich für Ihre Geduld und die Zeit, die Sie sich nehmen!
Mit freundlichen Grüßen

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

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von udo1toni »

mejdan hat geschrieben: 21. Aug 2025 07:51 Sehr geehrter Herr Toni,
Ach, bitte Udo, wir sind hier eigentlich alle beim Du, ob wir uns nun näher kennen oder nicht...

Die Bridge muss so aussehen:

Code: Alles auswählen

Bridge mqtt:broker:MQTT "HauptBroker_MQTT" [
    host="localhost",
    port=1883,
    secure=false,
    username="user",
    password="mmmeee",
    clientID="openhab",
    qos=1,
    retainMessages=true
    ] {
    Thing topic shellyem3 "Shelly EM3" @ "Shelly Devices" 
        {
        Channels:
            Type number : EM_L1_power "Wati"      [ stateTopic="shellies/shellyem3/emeter/0/power" ]
            Type number : EM_L1_voltage "Voltage" [ stateTopic="shellies/shellyem3/emeter/0/voltage" ]
            Type number : EM_L1_current "Current" [ stateTopic="shellies/shellyem3/emeter/0/current" ]
        }
    // und so weiter...
    // letzte Zeilen der Bridge (alle untergeordneten Things sind obendrüber, ab hier nur noch publishTrigger)
    Type publishTrigger  : terasaplatta_State_Event [ stateTopic="hasp/+/terasaplatta/#", separator="#"]
}
Das sieht etwas komisch aus :) ist aber die einzige Variante, wie man die Things als Kinder definieren kann. Alternativ die Things getrennt definieren:

Code: Alles auswählen

Bridge mqtt:broker:MQTT "HauptBroker_MQTT" [
    host="localhost",
    port=1883,
    secure=false,
    username="user",
    password="mmmeee",
    clientID="openhab",
    qos=1,
    retainMessages=true
    ] {
    Channels:
        Type publishTrigger  : terasaplatta_State_Event [ stateTopic="hasp/+/terasaplatta/#", separator="#"]
    }
// Bridge fertig, deshalb alle nachfolgenden Things als unabhängige Geräte
Thing mqtt:topic:MQTT:shellyem3 "Shelly EM3" @ "Shelly Devices" (mqtt:broker:MQTT) 
    {
    Channels:
        Type number : EM_L1_power "Wati"      [ stateTopic="shellies/shellyem3/emeter/0/power" ]
        Type number : EM_L1_voltage "Voltage" [ stateTopic="shellies/shellyem3/emeter/0/voltage" ]
        Type number : EM_L1_current "Current" [ stateTopic="shellies/shellyem3/emeter/0/current" ]
    }
    // nächstes Thing, unabhängig von der Bridge definiert
Das Schlüsselwort Channels: kann auch entfallen. Die Formatierung (Zeilenumbrüche, Leerzeichen) ist "beliebig", naturgemäß sollte man eine Form wählen, die gut lesbar ist und Zusammenhänge erkennen lässt.

Noch ein kleiner Tipp: die UIDs (ebenso wie die Itemnamen) sollten möglichst kurz gewählt werden. Die Namen sind case-sensitive, im Beispiel wäre z.B. trigger als Channel ausreichend, wenn es mehrere publishTrigger geben solle z.B. triggerTerasaplatta, das ergäbe dann mqtt:broker:MQTT:triggerTerasaplatta als Triggering Channel, was eindeutig genug sein sollte.
Jeder mqtt Channel enthält ankommend einen Status, jeder Trigger löst ein Event aus, beide Begriffe sind also unnötig. Aber nicht jeder mqtt Channel ist vom Typ trigger, das könnte man also eher zur Unterscheidung von anderen Channels verwenden. Allerdings sind alle mqtt Channel, welche nicht unmittelbar zur Bridge gehören automatisch Teil eines anderen Things und somit heißt die UID immer mqtt:topic:<brokername>:<thing>:<channel>, entsprechend könnte man auch gut noch auf den trigger Wortteil verzichten :)

In der Kürze liegt die Würze, immer dran denken, dass Du die UIDs immer hinschreiben musst, wenn Du Bezug darauf nehmen willst. Du kannst UIDs nicht nachträglich ändern (nun ja, über Textdefinition schon, aber streng genommen löschst Du die UID und erzeugst eine neue), lange UIDs können also schnell nervig sein. So viel Inhalt wie nötig, aber so kurz wie möglich...
openHAB5.0.1 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.6, LXC)

mejdan
Beiträge: 4
Registriert: 18. Feb 2020 05:19
Answers: 0

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von mejdan »

Hallo Thoni,

erstmal vielen Dank für deine guten Tipps und Vorschläge!
Ihr seid für mich wirklich das beste Team. Ich beobachte euch schon länger still mit und habe in dieser Zeit sehr viel von euch gelernt und zuhause umgesetzt.

Registriert bin ich seit dem 18.02.2020, bisher aber eher als stiller Leser.

Mein Problem

Ich besitze drei Stück 7"-Monitore mit haspMota-Firmware, die in den letzten zwei Jahren in Verbindung mit openHAB 4.3 wirklich gute Dienste geleistet haben.
Zusätzlich habe ich noch ca. 30 weitere Geräte (Shelly, Sonoff von 1 bis 16 Kanälen usw.), mit denen ich sehr zufrieden war – bis zum Update von openHAB 4.3 auf 5.0 auf meinem Raspberry Pi 4.

Ich habe die Konfiguration so umgesetzt, wie von dir vorgeschlagen.
Allerdings sehe ich nun im Log, dass mein Thing ständig von ONLINE nach OFFLINE wechselt – und wieder zurück.

Mein Thing mit Haupt broker:

Code: Alles auswählen

Bridge mqtt:broker:MQTT "HauptBroker_MQTT" [
    host="localhost",
    port=1883,
    secure=false,
    username="user",
    password="mmmeee",
    clientID="openhab",
    qos=1,
    retainMessages=true
] {
    Thing topic terasaplatta_control "Terasaplatta Control" {
        Channels:
            Type number : terasaplatta_Backlight_Brightness [ stateTopic="hasp/terasaplatta/state/dim", commandTopic="hasp/terasaplatta/command/dim", formatBeforePublish="%.0f" ]
            Type switch : terasaplatta_Reboot               [ commandTopic="hasp/terasaplatta/command/reboot", postCommand=false ]
            Type number : terasaplatta_Page_Current         [ commandTopic="hasp/terasaplatta/command/page", stateTopic="hasp/terasaplatta/state/page", formatBeforePublish="%.0f" ]
            ...
    }
    Thing topic garagemonitor_control "garagemonitor Control" {
        Channels:
        Type number : garagemonitor_Backlight_Brightness          [ stateTopic="hasp/garagemonitor/state/dim", commandTopic="hasp/garagemonitor/command/dim" , formatBeforePublish="%.0f" ]
        Type switch : garagemonitor_Reboot                        [ commandTopic="hasp/garagemonitor/command/reboot" , postCommand=false ]
        Type number : garagemonitor_Page_Current                  [ commandTopic="hasp/garagemonitor/command/page", stateTopic="hasp/garagemonitor/state/page", formatBeforePublish="%.0f" ]
        Type string : garagemonitor_Command                       [ commandTopic="hasp/garagemonitor/command" ]
        }
        usw.....
        
        
     Type publishTrigger : garagemonitor_State_Event [ stateTopic="hasp/+/garagemonitor/state/#", separator="#" ]   
    Type publishTrigger : terasaplatta_State_Event [ stateTopic="hasp/+/terasaplatta/#", separator="#" ]
}
Mein .item

Code: Alles auswählen

Number    terasaplatta_Backlight_Brightness    "Terasaplatta Backlight Brightness [%.0f]"    {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Backlight_Brightness"}
Switch    terasaplatta_LWT                     "Terasaplatta Connection Status [%s]"         {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_LWT"}
Switch    terasaplatta_Reboot                  "Terasaplatta Reboot [%s]"                    {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Reboot" , expire="5s,state=OFF"}
String    terasaplatta_Idle                    "Terasaplatta Idle State [%s]"                {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Idle"}
String    terasaplatta_Status                  "Terasaplatta - Status [%s]"                  {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Status"}
String    terasaplatta_ESPVersion              "Terasaplatta - ESP Version [%s]"             {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_ESPVersion"}
Number    terasaplatta_ESPUptime               "Terasaplatta - ESP Uptime [%d secs]"         {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_ESPUptime"}
String    terasaplatta_SSID                    "Terasaplatta - SSID[%s]"                     {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_SSID"}
Number    terasaplatta_SignalStrength          "Terasaplatta - Signal Strength [%d dbm]"     {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_SignalStrength"}
String    terasaplatta_HaspIP                  "Terasaplatta - HASP IP [%s]"                 {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_HaspIP"}
Number    terasaplatta_HeapFree                "Terasaplatta - Heap Free [%d]"               {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_HeapFree"}
Number    terasaplatta_HeapFrag                "Terasaplatta - Heap Frag [%d]"               {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_HeapFrag"}
String    terasaplatta_ESPCore                 "Terasaplatta - ESP Core [%s]"                {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_ESPCore"}
String    terasaplatta_ESPUpdate               "Terasaplatta - ESP Update Available [%s]"    {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_ESPUpdate"}
Number    terasaplatta_Page                    "Terasaplatta - Page [%d]"                    {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Page"}
Number    terasaplatta_NumPages                "Terasaplatta - Total Pages [%d]"             {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_NumPages"}
String    terasaplatta_TftDriver               "Terasaplatta - TFT Driver [%s]"              {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_TftDriver"}
Number    terasaplatta_TFTWidth                "Terasaplatta - TFT Width [%d]"               {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_TFTWidth"}
Number    terasaplatta_TFTHeight               "Terasaplatta - TFT Height [%d]"              {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_TFTHeight"}
Number    terasaplatta_Page_Current            "Terasaplatta - Current Page [%.0f]"          {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Page_Current"}
String    terasaplatta_Command                 "Terasaplatta Command [%s]"                   {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Command"}
String    terasaplatta_Command_CLEARPAGE       "Terasaplatta CLEARPAGE [%s]"                 {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Command_CLEARPAGE"}
String    terasaplatta_Command_JSON            "Terasaplatta JSON Command [%s]"              {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Command_JSON"}
String    terasaplatta_Command_JSONL           "Terasaplatta JSONL Command [%s]"             {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_Command_JSONL"}
Switch    terasaplatta_Refresh                 "Terasaplatta Refresh"                        {expire="5s,command=OFF"}
String    terasaplatta_State                   "Terasaplatta State [%s]"                     {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State"}
String    terasaplatta_State_JSON              "Terasaplatta JSON State [%s]"                {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State_JSON"}
String    terasaplatta_State_JSON_Value        "Terasaplatta JSON State Value [%s]"          {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State_JSON_Value"}
Number    terasaplatta_State_JSON_Id           "Terasaplatta Object ID [%.0f]"               {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State_JSON_Id"}
Number    terasaplatta_State_JSON_Page         "Terasaplatta Event Page [%.0f]"              {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State_JSON_Page"}
String    terasaplatta_State_JSON_Event        "Terasaplatta JSON State Event [%s]"          {channel="mqtt:topic:MQTT:terasaplatta_control:terasaplatta_State_JSON_Event"}
Switch    terasmonitor_aktiv                   "Monitor Aktivieren"
Switch    terasamonitor_sahat                  "Monitor sahat"
Mein Rule

Code: Alles auswählen

rule "terasaplatta_triger"
when
    Channel "mqtt:topic:MQTT:terasaplatta_State_Event" triggered
then
    val rawPayload = receivedEvent.toString
    logInfo("HASP.terasaplatta_triger", "RAW payload={}", rawPayload)

    if (rawPayload.contains("#")) {
        val parts = rawPayload.split("#")
        val topic = parts.get(0)  
        val payload = parts.get(1) 
        val topicParts = topic.split("/")
        val topicvalue = topicParts.get(topicParts.length - 1)  
        val jsonkey = transform("JS", "json_demo_key.js", payload)
        val jsonvalue = transform("JSONPATH", "$." + jsonkey, payload).toString.toUpperCase
        ...
    } else {
        logWarn("HASP.terasaplatta_triger", "Unerwartetes Format: {}", rawPayload)
    }
end

Problem im Log

Code: Alles auswählen

Thing 'mqtt:topic:MQTT:terasaplatta_control' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE)
Thing 'mqtt:topic:MQTT:terasaplatta_control' changed from OFFLINE (BRIDGE_OFFLINE) to ONLINE

Das wiederholt sich ständig – mein Gerät springt also permanent zwischen ONLINE und OFFLINE.

👉 Meine Frage:
Wo könnte hier der Fehler liegen?
Hat jemand eine Idee, warum das Gerät ständig die Verbindung verliert?

Vielen Dank schon mal für eure Unterstützung! 🙏

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

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von udo1toni »

Das hier:

Code: Alles auswählen

Channel "mqtt:topic:MQTT:terasaplatta_State_Event" triggered
ist falsch. Es muss (laut Deiner Konfiguration) so heißen:

Code: Alles auswählen

Channel "mqtt:broker:MQTT:terasaplatta_State_Event" triggered
Merke: Du hast kein Thing (:topic:) mit der UID terasaplatta_State_Event, sondern eine Bridge mit einem untergeordneten Channel mit der UID terasaplatta_State_Event.

Allerdings sollte deshalb nicht die Bridge offline und online gehen. Eventuell hast Du noch andere Fehler in der Definition. Schau am besten in die Main UI in jedes mqtt Thing (incl. Bridge), ob dort alles so aussieht, wie Du es haben willst.
Grundsätzlich stimmt das Format, das habe ich bei mir verifiziert. Bei mir wechselt die Bridge auch nicht ständig zwischen online und offline
Ich habe hier 51 mqtt Clients incl. openHAB, ein Teil davon ist allerdings momentan offline (ausgesteckte Zwischenstecker), aber mein mosquitto steht unter Dampf :) da würden Ausfälle sofort auffallen.
openHAB5.0.1 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.6, LXC)

mejdan
Beiträge: 4
Registriert: 18. Feb 2020 05:19
Answers: 0

Re: openHASP Trigger Problem nach openHAB 5.0 Update

Beitrag von mejdan »

Vielen Dank für die Unterstützung! 🙏
Sehr geehrter Herr Toni und liebe Gemeinde,
vielen herzlichen Dank für eure schnelle und vor allem professionelle Unterstützung und Hilfe!
Es hat alles geklappt und funktioniert nun genau wie gewünscht.
Eure Expertise und die hilfsbreite Community machen openHAB zu einer wirklich großartigen Plattform.
Nochmals vielen Dank! ✅
Mit freundlichen Grüßen

Antworten