• 10 dec 2017: forum version update. In case of issues use this topic.
  • 30 nov 2017: pilight moved servers. In case of issues use this topic.
Hello There, Guest! Login Register


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Rule based sending ot reliable
#1
Hi there,

I got a lot of lights controlled via sunset and sunrise.

Since rewrite Backports, this is no longer reliable, because rules are executed and status in webgui is correct, but the sockets don‘t switch.

To sum up, it seems, that rulebased sending is really unreliable and it‘s not in the code or rules, because Webgui is correct. If I switch manually, everything works.

Is there a chance to fire the sender twice, if a rule triggers?

At the moment my home automation is more than unreliable.

Thanks,

Alex
 
Reply
#2
Always post your config.
 
Reply
#3
As mentioned before, this isnt a config issue. Webgui always shows the expected state of the devices.
 
Reply
#4
As mentioned before, always post your config Wink
 
Reply
#5
We had that discussion before. Rule based commands are fired in a sequence and based on your setup there is the issue that some remote devices have not recovered from a previous command sequence and are not yet ready to accept a new command. Adding a pause between commands does help.
Another issue is that the default parameter of repeating a command more than 4 times is not standard behavior, e.q. reception of RF data is exceeding expected durations, some devices require a certain period of RF silence before being ready for accepting new data pulses.


Gesendet von iPhone mit Tapatalk
 
Reply
#6
Hi Curlymo,

attached you will find my config.

I would really apreciate it, if you tell me how to improve my config to make it reliable.

At the Moment, it is a really mess.

Code:
{
    "devices": {
        "1bmp180": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "bmp180" ],
            "id": [{
                "id": "0x77",
                "i2c-path": "/dev/i2c-1"
            }],
            "temperature": 31.6,
            "pressure": 1001.3,
            "oversampling": 1
        },
        "sonne": {
            "protocol": [ "sunriseset" ],
            "id": [{
                "longitude": 13.15,
                "latitude": 52.66
            }],
            "sunrise": 7.46,
            "sunset": 16.03,
            "sun": "rise"
        },
        "zeit": {
            "protocol": [ "datetime" ],
            "id": [{
                "longitude": 13.15,
                "latitude": 52.66
            }],
            "year": 2017,
            "month": 11,
            "day": 25,
            "hour": 13,
            "minute": 13,
            "second": 47,
            "weekday": 7,
            "dst": 0
        },
        "test": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 201
            }],
            "state": "off"
        },
        "pool": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 202
            }],
            "state": "on"
        },
        "Weihnachten": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 203
            }],
            "state": "on"
        },
        "Home": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 204
            }],
            "state": "on"
        },
        "webcam1": {
            "protocol": [ "generic_webcam" ],
            "id": [{
                "id": 100
            }],
            "url": "http://xxx.de:12346/GetData.cgi?Status=0"
        },
        "webcam2": {
            "protocol": [ "generic_webcam" ],
            "id": [{
                "id": 100
            }],
            "url": "http://xxx.de:12345/GetData.cgi?Status=0"
        },
        "Poollicht": {
            "uuid": "0000-74-da-38-382f5f",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 31,
                "unitcode": 1
            }],
            "state": "off"
        },
        "Poolpumpe": {
            "uuid": "0000-74-da-38-382f5f",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 31,
                "unitcode": 2
            }],
            "state": "on"
        },
        "Poolheizung": {
            "uuid": "0000-74-da-38-382f5f",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 31,
                "unitcode": 4
            }],
            "state": "on"
        },
        "label0": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 100
            }],
            "label": "Warm",
            "color": "black"
        },
        "label1": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 101
            }],
            "label": "ja",
            "color": "black"
        },
        "label2": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 102
            }],
            "label": "ja",
            "color": "black"
        },
        "Alex": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 301
            }],
            "state": "on"
        },
        "Gritt": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 302
            }],
            "state": "on"
        },
        "Pascal": {
            "protocol": [ "generic_switch" ],
            "id": [{
                "id": 303
            }],
            "state": "on"
        },
        "Stern": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 27,
                "unitcode": 1
            }],
            "state": "off"
        },
        "LED-Schlauch": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 27,
                "unitcode": 2
            }],
            "state": "off"
        },
        "Fernseher": {
            "protocol": [ "ping" ],
            "id": [{
                "ip": "192.168.1.30"
            }],
            "state": "connected"
        },
        "HandyA": {
            "protocol": [ "ping" ],
            "id": [{
                "ip": "192.168.1.58"
            }],
            "state": "connected"
        },
        "HandyG": {
            "protocol": [ "ping" ],
            "id": [{
                "ip": "192.168.1.52"
            }],
            "state": "connected"
        },
        "HandyP": {
            "protocol": [ "ping" ],
            "id": [{
                "ip": "192.168.1.80"
            }],
            "state": "connected"
        },
        "Fernsehlicht": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 30,
                "unitcode": 1
            }],
            "state": "on"
        },
        "Nachtlicht": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 29,
                "unitcode": 1
            }],
            "state": "off"
        },
        "aqlicht": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 23,
                "unitcode": 1
            }],
            "state": "on"
        },
        "aqluft": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 23,
                "unitcode": 2
            }],
            "state": "on"
        },
        "keller_kino": {
            "uuid": "0000-74-da-38-3ed605",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 28,
                "unitcode": 1
            }],
            "state": "off"
        },
        "keller_wama": {
            "uuid": "0000-74-da-38-3ed605",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 28,
                "unitcode": 2
            }],
            "state": "off"
        },
        "keller_ha": {
            "uuid": "0000-74-da-38-3ed605",
            "protocol": [ "elro_800_switch" ],
            "id": [{
                "systemcode": 28,
                "unitcode": 4
            }],
            "state": "on"
        },
        "sensor_kino": {
            "protocol": [ "tfa30" ],
            "id": [{
                "id": 71
            }],
            "temperature": 20.0,
            "humidity": 81.0
        },
        "sensor_wama": {
            "protocol": [ "tfa30" ],
            "id": [{
                "id": 63
            }],
            "temperature": 20.5,
            "humidity": 60.0
        },
        "sensor_ha": {
            "protocol": [ "tfa30" ],
            "id": [{
                "id": 24
            }],
            "temperature": 22.1,
            "humidity": 15.0
        },
        "weather1": {
            "protocol": [ "tfa30" ],
            "id": [{
                "id": 50
            }],
            "temperature": 10.8,
            "humidity": 83.0
        },
        "indoor1": {
            "protocol": [ "tfa" ],
            "id": [{
                "id": 110,
                "channel": 2
            }],
            "temperature": 22.88,
            "humidity": 57.00,
            "battery": 1
        },
        "indoor2": {
            "protocol": [ "tfa" ],
            "id": [{
                "id": 100,
                "channel": 1
            }],
            "temperature": 26.16,
            "humidity": 73.00,
            "battery": 1
        },
        "indoor3": {
            "protocol": [ "tfa30" ],
            "id": [{
                "id": 57
            }],
            "temperature": 22.6,
            "humidity": 65.0
        },
        "schrank": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "dht22" ],
            "id": [{
                "gpio": 2
            }],
            "humidity": 38.5,
            "temperature": 27.0,
            "poll-interval": 5
        },
        "rpi": {
            "uuid": "0000-b8-27-eb-074060",
            "protocol": [ "cpu_temp" ],
            "id": [{
                "id": 1
            }],
            "temperature": 51.540,
            "poll-interval": 10
        },
        "LBL_keller_kino": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 400
            }],
            "label": "27.10.2017 09:23",
            "color": "black"
        },
        "LBL_keller_wama": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 401
            }],
            "label": "27.10.2017 09:21",
            "color": "black"
        },
        "LBL_keller_ha": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 402
            }],
            "label": "27.10.2017 09:23",
            "color": "black"
        },
        "LBL_weather1": {
            "protocol": [ "generic_label" ],
            "id": [{
                "id": 4103
            }],
            "label": "27.10.2017 09:21",
            "color": "black"
        }
    },
    "rules": {
        "dev-tv-check-on": {
            "rule": "IF sonne.sun == set AND Fernseher.state == connected THEN switch DEVICE Fernsehlicht TO on",
            "active": 1
        },
        "dev-tv-check-off": {
            "rule": "IF Fernseher.state == disconnected THEN switch DEVICE Fernsehlicht TO off AFTER 1 MINUTE",
            "active": 1
        },
        "alex-home": {
            "rule": "IF HandyA.state == connected THEN switch DEVICE Alex TO on",
            "active": 1
        },
        "alex-weg": {
            "rule": "IF HandyA.state == disconnected THEN switch DEVICE Alex TO off AFTER 16 MINUTE",
            "active": 1
        },
        "gritt-home": {
            "rule": "IF HandyG.state == connected THEN switch DEVICE Gritt TO on",
            "active": 1
        },
        "gritt-weg": {
            "rule": "IF HandyG.state == disconnected THEN switch DEVICE Gritt TO off AFTER 16 MINUTE",
            "active": 1
        },
        "pascal-home": {
            "rule": "IF HandyP.state == connected THEN switch DEVICE Pascal TO on",
            "active": 1
        },
        "pascal-weg": {
            "rule": "IF HandyP.state == disconnected THEN switch DEVICE Pascal TO off AFTER 16 MINUTE",
            "active": 1
        },
        "home-ja": {
            "rule": "IF Alex.state == on OR Gritt.state == on OR Pascal.state == on THEN switch DEVICE Home TO on AND label DEVICE label2 TO ja",
            "active": 1
        },
        "home-nein": {
            "rule": "IF Alex.state == off AND Gritt.state == off AND Pascal.state == off THEN switch DEVICE Home TO off AND label DEVICE label2 TO nein",
            "active": 1
        },
        "messaging-alarm": {
            "rule": "IF rpi.temperature > 59 THEN pushover TITLE Serverschrank MESSAGE Temperatur-Alarm TOKEN xxxxxx USER xxxxxx",
            "active": 1
        },
        "messaging-test": {
            "rule": "IF test.state == on THEN pushover TITLE Raspberry MESSAGE Funktionstest TOKEN xxxxxx USER xxxxxx AND switch DEVICE test TO off",
            "active": 1
        },
        "weihnachten": {
            "rule": "IF ((zeit.month == 11 AND zeit.day >= 25) OR (zeit.month == 12) OR (zeit.month == 1 AND zeit.day <= 6)) THEN switch DEVICE Weihnachten TO on AND label DEVICE label1 TO ja",
            "active": 1
        },
        "weihnachten-label-off": {
            "rule": "IF ((zeit.month == 11 AND zeit.day < 25) OR (zeit.month == 1 AND zeit.day > 6)) THEN switch DEVICE Weihnachten TO off AND label DEVICE label1 TO nein",
            "active": 1
        },
        "christmas-schlauch-frueh": {
            "rule": "IF (zeit.hour > 5 AND sonne.sun == set) AND Weihnachten.state == on THEN switch DEVICE LED-Schlauch TO on",
            "active": 1
        },
        "christmas-stern-frueh": {
            "rule": "IF (zeit.hour > 5 AND sonne.sun == set) AND Weihnachten.state == on THEN switch DEVICE Stern TO on",
            "active": 1
        },
        "christmas-aus-frueh": {
            "rule": "IF (Stern.state == on OR LED-Schlauch.state == on) AND sonne.sun == rise THEN switch DEVICE LED-Schlauch TO off AND switch DEVICE Stern TO off",
            "active": 1
        },
        "christmas-schlauch-spaet": {
            "rule": "IF ((sonne.sunset == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND Weihnachten.state == on THEN switch DEVICE LED-Schlauch TO on FOR 300 MINUTE",
            "active": 1
        },
        "christmas-stern-spaet": {
            "rule": "IF ((sonne.sunset == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND Weihnachten.state == on THEN switch DEVICE Stern TO on FOR 300 MINUTE",
            "active": 1
        },
        "nachtlicht-ein": {
            "rule": "IF sonne.sun == set AND Home.state == on THEN switch DEVICE Nachtlicht TO on",
            "active": 1
        },
        "nachtlicht-aus": {
            "rule": "IF sonne.sun == rise THEN switch DEVICE Nachtlicht TO off",
            "active": 1
        },
        "pool-heizung": {
            "rule": "IF (((zeit.hour > 13 AND zeit.hour <= 19) AND weather1.temperature >= 23) AND zeit.minute == 0 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolheizung TO on FOR 59 MINUTE",
            "active": 1
        },
        "pool-kalt": {
            "rule": "IF (((zeit.hour > 7 AND zeit.hour <= 21) AND weather1.temperature <= 19) AND zeit.minute == 0 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolpumpe TO on FOR 10 MINUTE AND label DEVICE label0 TO Kalt",
            "active": 1
        },
        "pool-kalt1": {
            "rule": "IF (((zeit.hour >= 7 AND zeit.hour < 21) AND weather1.temperature <= 19) AND zeit.minute == 30 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolpumpe TO on FOR 10 MINUTE AND label DEVICE label0 TO Kalt",
            "active": 1
        },
        "pool-normal": {
            "rule": "IF (((zeit.hour > 7 AND zeit.hour <= 21) AND weather1.temperature > 19 AND weather1.temperature <= 25) AND zeit.minute == 0 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolpumpe TO on FOR 20 MINUTE AND label DEVICE label0 TO Normal",
            "active": 1
        },
        "pool-normal1": {
            "rule": "IF (((zeit.hour >= 7 AND zeit.hour < 21) AND weather1.temperature > 19 AND weather1.temperature <= 25) AND zeit.minute == 30 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolpumpe TO on FOR 20 MINUTE AND label DEVICE label0 TO Normal",
            "active": 1
        },
        "pool-warm": {
            "rule": "IF (((zeit.hour > 7 AND zeit.hour < 21) AND weather1.temperature > 25) AND zeit.minute == 0 AND zeit.second == 0) AND pool.state == on THEN switch DEVICE Poolpumpe TO on FOR 59 MINUTE AND label DEVICE label0 TO Warm",
            "active": 1
        },
        "pool-aus": {
            "rule": "IF ((zeit.hour == 22) AND zeit.minute == 10 AND zeit.second == 0) THEN switch DEVICE Poolpumpe TO off",
            "active": 1
        },
        "aqluft_frueh": {
            "rule": "IF ((zeit.hour >= 7 AND zeit.hour < 10) AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE aqluft TO on FOR 10 MINUTE AFTER 1 SECOND",
            "active": 1
        },
        "aqluft_spaet": {
            "rule": "IF ((zeit.hour >= 18 AND zeit.hour < 20) AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE aqluft TO on FOR 10 MINUTE AFTER 1 SECOND",
            "active": 1
        },
        "aqlicht_frueh": {
            "rule": "IF (zeit.hour == 7 AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE aqlicht TO on FOR 100 MINUTE AFTER 1 SECOND",
            "active": 1
        },
        "aqllicht_spaet": {
            "rule": "IF (zeit.hour == 18 AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE aqlicht TO on FOR 120 MINUTE AFTER 1 SECOND",
            "active": 1
        },
        "keller_morgens_kino": {
            "rule": "IF (((sonne.sunrise == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND weather1.temperature < sensor_kino.temperature) THEN switch DEVICE keller_kino TO on FOR 40 MINUTE",
            "active": 1
        },
        "keller_mittags_kino": {
            "rule": "IF ((zeit.hour == 13 AND zeit.minute == 0 AND zeit.second == 0) AND weather1.humidity < sensor_kino.humidity) THEN switch DEVICE keller_kino TO on FOR 20 MINUTE",
            "active": 1
        },
        "keller_abends_kino": {
            "rule": "IF (((sonne.sunset == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND weather1.temperature < sensor_kino.temperature) THEN switch DEVICE keller_kino TO on FOR 20 MINUTE",
            "active": 1
        },
        "keller_morgens_wama": {
            "rule": "IF (((sonne.sunrise == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND weather1.temperature < sensor_wama.temperature) THEN switch DEVICE keller_wama TO on FOR 40 MINUTE AFTER 40 MINUTE",
            "active": 1
        },
        "keller_mittags_wama": {
            "rule": "IF ((zeit.hour == 13 AND zeit.minute == 20 AND zeit.second == 0) AND weather1.humidity < sensor_wama.humidity) THEN switch DEVICE keller_wama TO on FOR 20 MINUTE",
            "active": 1
        },
        "keller_abends_wama": {
            "rule": "IF ((sonne.sunset == (zeit.hour + (zeit.minute / 100)) AND zeit.second == 0) AND weather1.temperature < sensor_kino.temperature) THEN switch DEVICE keller_wama TO on FOR 20 MINUTE AFTER 20 MINUTE",
            "active": 1
        },
        "keller_morgens_ha": {
            "rule": "IF (((sonne.sunrise == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND weather1.temperature < sensor_ha.temperature) THEN switch DEVICE keller_ha TO on FOR 40 MINUTE AFTER 80 MINUTE",
            "active": 1
        },
        "keller_mittags_ha": {
            "rule": "IF ((zeit.hour == 13 AND zeit.minute == 40 AND zeit.second == 0) AND weather1.humidity < sensor_ha.humidity) THEN switch DEVICE keller_ha TO on FOR 20 MINUTE",
            "active": 1
        },
        "keller_abends_ha": {
            "rule": "IF (((sonne.sunset == (zeit.hour + (zeit.minute / 100))) AND zeit.second == 0) AND weather1.temperature < sensor_ha.temperature) THEN switch DEVICE keller_ha TO on FOR 20 MINUTE AFTER 40 MINUTE",
            "active": 1
        },
        "keller_kino-ein": {
            "rule": "IF (zeit.hour == 7 AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE keller_kino TO on FOR 120 MINUTE",
            "active": 0
        },
        "keller_wama-ein": {
            "rule": "IF (zeit.hour == 7 AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE keller_wama TO on FOR 120 MINUTE AFTER 120 MINUTE",
            "active": 0
        },
        "keller_ha-ein": {
            "rule": "IF (zeit.hour == 7 AND zeit.minute == 0 AND zeit.second == 0) THEN switch DEVICE keller_ha TO on FOR 120 MINUTE AFTER 240 MINUTE",
            "active": 0
        },
        "keller_kino_update": {
            "rule": "IF tfa30.id == 71 THEN label DEVICE LBL_keller_kino TO DATE_FORMAT(zeit, %d.%m.%Y %H:%M)",
            "active": 1
        },
        "keller_wama_update": {
            "rule": "IF tfa30.id == 63 THEN label DEVICE LBL_keller_wama TO DATE_FORMAT(zeit, %d.%m.%Y %H:%M)",
            "active": 1
        },
        "keller_ha_update": {
            "rule": "IF tfa30.id == 24 THEN label DEVICE LBL_keller_ha TO DATE_FORMAT(zeit, %d.%m.%Y %H:%M)",
            "active": 1
        },
        "weather1_update": {
            "rule": "IF tfa30.id == 50 THEN label DEVICE LBL_weather1 TO DATE_FORMAT(zeit, %d.%m.%Y %H:%M)",
            "active": 1
        },
        "sz_klima": {
            "rule": "IF ((zeit.hour == 19 AND zeit.minute == 0 AND zeit.second == 0) AND (indoor3.temperature > 23) AND (weather1.temperature <= (indoor3.temperature - 3))) THEN pushover TITLE Schlafzimmer MESSAGE Lüften TOKEN xxxxxx USER xxxxxx",
            "active": 1
        },
        "sz_lueften": {
            "rule": "IF ((zeit.hour == 19 AND zeit.minute == 0 AND zeit.second == 0) AND ((indoor3.temperature - 2) <= weather1.temperature)) THEN pushover TITLE Schlafzimmer MESSAGE Kühlen TOKEN xxxxxx USER xxxxxx",
            "active": 1
        }
    },
    "gui": {
        "sonne": {
            "name": "Sonne",
            "group": [ "Haus" ],
            "media": [ "all" ]
        },
        "weather1": {
            "name": "Aussentemperatur",
            "group": [ "Haus" ],
            "media": [ "all" ]
        },
        "1bmp180": {
            "name": "Luftdruck",
            "group": [ "Haus" ],
            "media": [ "all" ],
            "show-temperature": 0
        },
        "LBL_weather1": {
            "name": "Aktualisiert",
            "group": [ "Haus" ],
            "media": [ "all" ]
        },
        "webcam2": {
            "name": "Vorne",
            "group": [ "Haus" ]
        },
        "webcam1": {
            "name": "Garten",
            "group": [ "Haus" ]
        },
        "keller_kino": {
            "name": "Ventilator Kino",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "sensor_kino": {
            "name": "Fühler Kino",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "LBL_keller_kino": {
            "name": "Aktualisiert",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "keller_wama": {
            "name": "Ventilator Waschmaschiene",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "sensor_wama": {
            "name": "Fühler Waschmaschiene",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "LBL_keller_wama": {
            "name": "Aktualisiert",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "keller_ha": {
            "name": "Ventilator HA",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "sensor_ha": {
            "name": "Fühler HA",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "LBL_keller_ha": {
            "name": "Aktualisiert",
            "group": [ "Keller" ],
            "media": [ "all" ]
        },
        "pool": {
            "name": "Pool-Hauptschalter",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "label0": {
            "name": "Pumpenschema",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Poolpumpe": {
            "name": "Filter Pumpe",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Poollicht": {
            "name": "Beleuchtung",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Poolheizung": {
            "name": "Heizung",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "label1": {
            "name": "Weihnachtsmodus",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Weihnachten": {
            "name": "Weihnachten",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "LED-Schlauch": {
            "name": "Hausbeleuchtung LED",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Stern": {
            "name": "Stern Vorne",
            "group": [ "Aussen" ],
            "media": [ "all" ]
        },
        "Nachtlicht": {
            "name": "Nachtlicht",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "Fernsehlicht": {
            "name": "Fernsehbeleuchtung",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "aqlicht": {
            "name": "Aquariumbeleuchtung",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "aqluft": {
            "name": "Aquariumbelüftung",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "indoor1": {
            "name": "Wohnzimmer",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "indoor2": {
            "name": "Küche",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "indoor3": {
            "name": "Schlafzimmer",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "label2": {
            "name": "Jemand zu Hause",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "Alex": {
            "name": "Alex",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "Gritt": {
            "name": "Gritt",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "Pascal": {
            "name": "Pascal",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "schrank": {
            "name": "Serverschrank",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "rpi": {
            "name": "CPU Temperatur",
            "group": [ "System" ],
            "media": [ "all" ]
        },
        "test": {
            "name": "Pushover-Test",
            "group": [ "System" ],
            "media": [ "all" ]
        }
    },
    "settings": {
        "log-level": 6,
        "pid-file": "/var/run/pilight.pid",
        "log-file": "/var/log/pilight.log",
        "webserver-enable": 1,
        "webserver-root": "/usr/local/pilight/webgui",
        "webserver-http-port": 5001,
        "webserver-cache": 1,
        "port": 5000,
        "gpio-platform": "raspberrypi3"
    },
    "hardware": {
        "433gpio": {
            "sender": 0,
            "receiver": 1
        }
    },
    "registry": {
        "pilight": {
            "firmware": {
                "version": 3,
                "lpf": 80,
                "hpf": 16000
            },
            "version": {
                "current": "7.0"
            }
        },
        "webserver": {
            "ssl": {
                "certificate": {
                    "secure": 0,
                    "location": "/etc/pilight/pilight.pem"
                }
            }
        }
    }
}
 
Reply
#7
What i would do is making sure that devices don't switch exactly at the same time. So check at each event what devices change in the webgui and add a little delay so each device switches one after another.

E.g., these rules are possibly conflicting each other.

1. dev-tv-check-on
2. christmas-schlauch-frueh
3. christmas-stern-frueh

Leave the first as is.
Change the second to:
Code:
IF (zeit.hour > 5 AND sonne.sun == set) AND Weihnachten.state == on THEN switch DEVICE LED-Schlauch TO on AFTER 1 SECOND
Change the third to:
Code:
IF (zeit.hour > 5 AND sonne.sun == set) AND Weihnachten.state == on THEN switch DEVICE Stern TO on AFTER 2 SECOND

In this case the rule are exected at the same time, but the devices are not switched at the same time, but each with a 1 second delay. It is possible that you need a bigger delay that this.
 
Reply
#8
Did it. I will tell, if it helped.
 
Reply
  


Possibly Related Threads...
Thread Author Replies Views Last Post
  Time based calculations wo_rasp 7 2,811 03-19-2016, 01:28 AM
Last Post: wo_rasp

Forum Jump:


Browsing: 1 Guest(s)