Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Umstieg von fhem - ein paar grundsätzliche Fragen

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Umstieg von fhem - ein paar grundsätzliche Fragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      ltathome last edited by

      Hallo zusammen - bin neu hier und beim ioBroker - aktuell im Status des ausprobierens.

      In fhem habe ich mich an zwei Themen gewöhnt und wollte mal fragen, wie das mit dem ioBroker geht:

      1. Reguläre Ausdrücke und Notify:

      Wenn irgendein Gerät "battery low" sendet, dann triggert der notify entsprechend - ich wüsste gerne, wie das mit ioBroker geht - da habe ich noch nichts gefunden:

      .*:[Bb]attery:.* { 
          if ($EVENT !~ m/ok/) {
              my $bt = $attr{"$NAME"}{'batterytype'};
              my $al = $attr{"$NAME"}{'alias'};
              Log 3, "$NAME ($al) : Batteriewarnung $EVENT ($bt)";
              if ($al eq "") {
                  $al = $NAME;
              }
              DebianMail($main::emails, 'FHEM Batteriewarnung', "$al sendet \"$EVENT\". $al braucht $bt!");
          }
      }
      
      1. "at" - also Timer:
      *{sunset("REAL","16:00","20:00")} set xyz on
      

      Bei obigem Beispiel kommen verschiedene Dinge zusammen:

      1. Sunset - Sonnenuntergang (REAL) - gibts bei iOBroker auch (Astro - hab ich gesehen)
      2. "16:00" - nicht vor 16:00 und
      3. "20:00" nicht später als 20:00

      Ich habe schedule gesehen - allerdings entweder zu den Astro-Zeiten oder als Cron-Wert, ...
      was ich etwas "unelegant" finde, ist nen schedule jede Minute und dann gegen die Grenzen prüfen.
      Ich würde "variables" Schedule benötigen:

      einmal am Tag den/die Timer setzen zu variablen Zeiten und die genau 1 mal ausführen und dann erneut die Timer setzen.

      Wie geht das?

      1 Reply Last reply Reply Quote 0
      • T
        tl82 last edited by tl82

        Hi @ltathome

        Zu 1.
        Hier mal der Link zur Javascript-Doku:
        https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#on---subscribe-on-changes-or-updates-of-some-state
        Das funktioniert auch im Zusammenhang mit Regulären ausrücken. Da kannst du schon ziemlich viel mit abdecken.

        Alternativ der $-Selector:
        https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#---selector
        Hier kannst du auch nach Räumen oder Rollen triggern.

        Zu 2.
        Du könntest zuerst auf das Astro-Event triggern und dann im zweiten Schritt noch die Zeitspanne eingrenzen.

        Etwa so:

        schedule({astro: 'sunset'}, function () {
            if (!compareTime('16:00', '20:00', 'between')) return;
            //Hier was auch immer erledigen
        });
        

        VG
        Tobi

        L 1 Reply Last reply Reply Quote 0
        • L
          ltathome @tl82 last edited by

          @tl82 Danke.

          Ich habe das Thema "subscribe" gefunden - damit komme ich dahin wo ich hin will.

          Dein Vorschlag mit dem schedule werde ich ausprobieren.

          1 Reply Last reply Reply Quote 0
          • First post
            Last post

          Support us

          ioBroker
          Community Adapters
          Donate
          FAQ Cloud / IOT
          HowTo: Node.js-Update
          HowTo: Backup/Restore
          Downloads
          BLOG

          538
          Online

          31.6k
          Users

          79.4k
          Topics

          1.3m
          Posts

          fhem sunset timer umstieg
          2
          3
          292
          Loading More Posts
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes
          Reply
          • Reply as topic
          Log in to reply
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
          The ioBroker Community 2014-2023
          logo