[GELÖST] Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Selter
Beiträge: 73
Registriert: 9. Mär 2018 16:06
Answers: 0
Wohnort: Bremen

[GELÖST] Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von Selter »

Hallo zusammen,

ich hoffe, hier kann mir jemand weiterhelfen.

Ich würde gerne eine zentrale Pushover-Rule habe, die aus anderen Rules mittels

Code: Alles auswählen

PushoverMessage.postUpdate([Value])
getriggert wird und je nach [Value] die entsprechende Nachricht versendet.

Code: Alles auswählen

rule "Pushover Master"
when
    Item PushoverMessage received update
then
    logInfo("PUSHOVERMASTER","Rule getriggert")
    if (PushoverMessage.state == 1) {
            logInfo("PUSHOVERMASTER","Washer is FINISHED as it was ACTIVE before - POMASTER")
            val actions = getActions("pushover", "pushover:pushover-account:soundBike")
            actions.sendHtmlMessage("Washer is FINISHED as it was ACTIVE before - POMASTER", "openHAB3")
    }
    if (PushoverMessage.state == 2) {
            logInfo("PUSHOVERMASTER","Dishwasher is FINISHED as it was ACTIVE before - POMASTER")
            val actions = getActions("pushover", "pushover:pushover-account:soundBike")
            actions.sendHtmlMessage("Dishwasher is FINISHED as it was ACTIVE before - POMASTER", "openHAB3")
    }
    else {
        return
    }

end
Leider bekomme ich keine Nachrichten, sondern im Log einen Fehler:

Code: Alles auswählen

[INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'PushoverMessage' changed from 2 to 1
[INFO ] [hab.core.model.script.PUSHOVERMASTER] - Rule getriggert
[INFO ] [hab.core.model.script.PUSHOVERMASTER] - Washer is FINISHED as it was ACTIVE before - POMASTER
[ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'pushovermaster-1' failed: null in pushovermaster
Zuletzt geändert von Selter am 23. Mär 2023 19:32, insgesamt 1-mal geändert.
openHAB 3.2 in einer Debian-VM mit openHABian unter Proxmox 8.3.3 auf Intel NUC 5i3ryh // WiFi (UniFi-APs) + Aqara Gateway + Zigbee2MQTT@SLZB-06 + Aeon Z-Wave // viele Shellies / Sonoffs mit Tasmota / viele Aqara Sensoren über Gateway / diverse Sensoren über Z2M // Grafana (InfluxDB)

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

Re: Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von udo1toni »

Mit Pushover kenne ich mich nicht aus, aber mit Rules :)

Etwas eleganter:

Code: Alles auswählen

rule "Pushover Master"
when
    Item PushoverMessage received update
then
    val poAction = getActions("pushover", "pushover:pushover-account:soundBike")
    logInfo("pushover","Rule getriggert")
    switch(PushoverMessage.state.toString) {
        case "1" : {
            logInfo("pushover","Washer is FINISHED as it was ACTIVE before - POMASTER")
            poAction.sendHtmlMessage("Washer is FINISHED as it was ACTIVE before - POMASTER", "openHAB3")
        }
        case "2" : {
            logInfo("pushover","Dishwasher is FINISHED as it was ACTIVE before - POMASTER")
            poAction.sendHtmlMessage("Dishwasher is FINISHED as it was ACTIVE before - POMASTER", "openHAB3")
        }
        default: {
            logInfo("pushover","Message Value not acceptable: {}",PushoverMessage.state)
        }
    }
end
Du kannst beliebig viele case - Blöcke einbauen. default wird ausgeführt, wenn kein vorheriger Block zutrifft.

Das return in Deinem Code ist so nicht zulässig. Vermutlich ist dies der Grund für die null-Message. Warum allerdings das Pushover nicht funktioniert, ist damit noch nicht geklärt. Ich gehe davon aus, dass das Binding so weit korrekt eingerichtet ist?

Ach so... Es reicht, getActions zu Beginn der Rule auszuführen (anders sieht es aus, wenn Du NAchriten verzögert senden willst, also mit einem Timer arbeitest - das ist hier aber nicht der Fall)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von int5749 »

Ich habe den Aufruf

Code: Alles auswählen

actions.sendHtmlMessage("Washer is FINISHED as it was ACTIVE before - POMASTER", "openHAB3")
gerade einmal bei mir getestet und dieser funktioniert.

Da der Fehler nach dem Log-Eintrag erfolgt, vermute ich einen Fehler im Pushover-Thing.
Denn wenn getActions einnen Fehler liefert, bleibt actions = null

Viele Grüße
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Selter
Beiträge: 73
Registriert: 9. Mär 2018 16:06
Answers: 0
Wohnort: Bremen

Re: Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von Selter »

Ich komme hier immer noch nicht weiter ...

Diese Rule z.B. funktioniert:

Code: Alles auswählen

rule "Flutsensor Keller Entfeuchter"                                               
    when
        Item KE_s_xflut2_leak changed to ON
    then
        val actions = getActions("pushover", "pushover:pushover-account:soundMechanical")
        actions.sendHtmlMessage("<font color='blue'>Keller: Luftentfeuchter - Tank voll</font>", "openHAB3") 
        
		logInfo("FLUTSENSOR", "--> Keller: Luftentfeuchter - Tank voll")
        
		Thread::sleep(100)
        val telegramAction = getActions("telegram","telegram:telegramBot:dirk")
        telegramAction.sendTelegram("Keller: Luftentfeuchter - Tank voll")
end
Der Pushover-Aufruf ist hier doch nahezu identisch.
openHAB 3.2 in einer Debian-VM mit openHABian unter Proxmox 8.3.3 auf Intel NUC 5i3ryh // WiFi (UniFi-APs) + Aqara Gateway + Zigbee2MQTT@SLZB-06 + Aeon Z-Wave // viele Shellies / Sonoffs mit Tasmota / viele Aqara Sensoren über Gateway / diverse Sensoren über Z2M // Grafana (InfluxDB)

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

Re: Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von udo1toni »

Na ja, aber das ist ein anderes Thing als oben.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Selter
Beiträge: 73
Registriert: 9. Mär 2018 16:06
Answers: 0
Wohnort: Bremen

Re: Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von Selter »

Ich danke Euch!!!
Tatsächlich gab es das Thing nicht ... jetzt funktioniert es

Code: Alles auswählen

Thing pushover:pushover-account:soundBike		[ apikey="xxxxxx", user="yyyyyy", sound="bike" ]
openHAB 3.2 in einer Debian-VM mit openHABian unter Proxmox 8.3.3 auf Intel NUC 5i3ryh // WiFi (UniFi-APs) + Aqara Gateway + Zigbee2MQTT@SLZB-06 + Aeon Z-Wave // viele Shellies / Sonoffs mit Tasmota / viele Aqara Sensoren über Gateway / diverse Sensoren über Z2M // Grafana (InfluxDB)

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

Re: [GELÖST] Pushover Master Rule für senden von Nachrichten aus verschiedenen Rules

Beitrag von udo1toni »

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

Antworten