Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [gelöst]Telegrammeldung von Trashschedule optimieren.

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    333

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    300

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    929

[gelöst]Telegrammeldung von Trashschedule optimieren.

Geplant Angeheftet Gesperrt Verschoben Blockly
8 Beiträge 4 Kommentatoren 521 Aufrufe 4 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    marsmännchen
    schrieb am zuletzt editiert von marsmännchen
    #1

    Hallo zusammen, könnte mir bitte jemand helfen die Telegrammeldung für Trashschedule zu optimieren?
    Ich habe schon diverse Ansätze versucht, aber wirklich optimal läuft es nicht.
    Ich hätte eigentlich vor das ich immer um die selbe Zeit, einen Tag vor der Abholung des Mülls eine Meldung bekomme.
    Mit meinem jetzigen Blockly kommen die Meldungen manchmal Tage vorher.
    Hier mein derzeitiger Versuch:

    <block xmlns="https://developers.google.com/blockly/xml" type="on" id="t8XcQD=K=;EfgO^e!1SL" x="-887" y="-787">
      <field name="OID">trashschedule.0.next.daysLeft</field>
      <field name="CONDITION">ne</field>
      <field name="ACK_CONDITION"></field>
      <statement name="STATEMENT">
        <block type="controls_if" id="Lz;jQDzue4}XxtytDlem">
          <mutation else="1"></mutation>
          <value name="IF0">
            <block type="logic_compare" id="|hw%-tICS=ims$*XU!L5">
              <field name="OP">EQ</field>
              <value name="A">
                <block type="get_value" id="woP:-I}BUE@fW+ywquwz">
                  <field name="ATTR">val</field>
                  <field name="OID">trashschedule.0.next.daysLeft</field>
                </block>
              </value>
              <value name="B">
                <block type="math_number" id="%8SI|_q0A45LzcW%t^m_">
                  <field name="NUM">1</field>
                </block>
              </value>
            </block>
          </value>
          <statement name="DO0">
            <block type="variables_set" id="p1a:Uv{R,sA8S@ZDAg}r">
              <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
              <value name="VALUE">
                <block type="logic_boolean" id=",WR,Tk%L-*sIotfHA![C">
                  <field name="BOOL">TRUE</field>
                </block>
              </value>
              <next>
                <block type="debug" id="0D/?EUVLHzZI{KfN4:Np">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="?p}S!E#D(za#}@jAKmbH">
                      <field name="TEXT">Trashcount1 jetzt true</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="timeouts_wait" id="G@aI4P3VczBI{Zl$QBu3">
                      <field name="DELAY">1000</field>
                      <field name="UNIT">ms</field>
                      <next>
                        <block type="controls_if" id="m~0),0RvqSO@132OS5-f">
                          <value name="IF0">
                            <block type="logic_compare" id="]Mur=C+IBMv|8]8Z#+XF">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="variables_get" id="-M{RE25nd+_$Ty;#(zn{">
                                  <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="a,cRD~kF:)2|jYLLF[6+">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="schedule" id="s!m%%kOoHhF5.}iQv|Z$">
                              <field name="SCHEDULE">0 13 * * *</field>
                              <statement name="STATEMENT">
                                <block type="telegram" id="EaRI$:HAH]Pt3SV=V`Uu">
                                  <field name="INSTANCE"></field>
                                  <field name="LOG"></field>
                                  <field name="SILENT">FALSE</field>
                                  <field name="PARSEMODE">default</field>
                                  <value name="MESSAGE">
                                    <shadow type="text">
                                      <field name="TEXT">text</field>
                                    </shadow>
                                    <block type="text_join" id="j8V[;nSW41UYoXMuSHm6">
                                      <mutation items="2"></mutation>
                                      <value name="ADD0">
                                        <block type="text" id="x7z[2@Vbcjl7O6hUqkhI">
                                          <field name="TEXT">Abholung von</field>
                                        </block>
                                      </value>
                                      <value name="ADD1">
                                        <block type="get_value" id="6!0kMwM+36X5-O:K@HGU">
                                          <field name="ATTR">val</field>
                                          <field name="OID">trashschedule.0.next.typesText</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="USERNAME">
                                    <block type="text" id="CVyrGKS|1jNiCUE;u(Gl">
                                      <field name="TEXT">Patrick</field>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </statement>
          <statement name="ELSE">
            <block type="variables_set" id="0p]L[d0uuNkIyM|Zf@$C">
              <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
              <value name="VALUE">
                <block type="logic_boolean" id="ZI1y5B-I}H:OTadgfoB%">
                  <field name="BOOL">FALSE</field>
                </block>
              </value>
              <next>
                <block type="debug" id="LcRtR=|5=[BpNDz4@Bne">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="/qh*2QTKEn)YH)3970dU">
                      <field name="TEXT">Trashmeldung_1 jetzt false</field>
                    </shadow>
                  </value>
                </block>
              </next>
            </block>
          </statement>
        </block>
      </statement>
    </block>
    

    Blockly1.PNG

    Gruß
    Patrick

    Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
    Wago PFC200 mit Dali Lichtsteuerung.

    C 1 Antwort Letzte Antwort
    0
    • M marsmännchen

      Hallo zusammen, könnte mir bitte jemand helfen die Telegrammeldung für Trashschedule zu optimieren?
      Ich habe schon diverse Ansätze versucht, aber wirklich optimal läuft es nicht.
      Ich hätte eigentlich vor das ich immer um die selbe Zeit, einen Tag vor der Abholung des Mülls eine Meldung bekomme.
      Mit meinem jetzigen Blockly kommen die Meldungen manchmal Tage vorher.
      Hier mein derzeitiger Versuch:

      <block xmlns="https://developers.google.com/blockly/xml" type="on" id="t8XcQD=K=;EfgO^e!1SL" x="-887" y="-787">
        <field name="OID">trashschedule.0.next.daysLeft</field>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <statement name="STATEMENT">
          <block type="controls_if" id="Lz;jQDzue4}XxtytDlem">
            <mutation else="1"></mutation>
            <value name="IF0">
              <block type="logic_compare" id="|hw%-tICS=ims$*XU!L5">
                <field name="OP">EQ</field>
                <value name="A">
                  <block type="get_value" id="woP:-I}BUE@fW+ywquwz">
                    <field name="ATTR">val</field>
                    <field name="OID">trashschedule.0.next.daysLeft</field>
                  </block>
                </value>
                <value name="B">
                  <block type="math_number" id="%8SI|_q0A45LzcW%t^m_">
                    <field name="NUM">1</field>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO0">
              <block type="variables_set" id="p1a:Uv{R,sA8S@ZDAg}r">
                <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
                <value name="VALUE">
                  <block type="logic_boolean" id=",WR,Tk%L-*sIotfHA![C">
                    <field name="BOOL">TRUE</field>
                  </block>
                </value>
                <next>
                  <block type="debug" id="0D/?EUVLHzZI{KfN4:Np">
                    <field name="Severity">log</field>
                    <value name="TEXT">
                      <shadow type="text" id="?p}S!E#D(za#}@jAKmbH">
                        <field name="TEXT">Trashcount1 jetzt true</field>
                      </shadow>
                    </value>
                    <next>
                      <block type="timeouts_wait" id="G@aI4P3VczBI{Zl$QBu3">
                        <field name="DELAY">1000</field>
                        <field name="UNIT">ms</field>
                        <next>
                          <block type="controls_if" id="m~0),0RvqSO@132OS5-f">
                            <value name="IF0">
                              <block type="logic_compare" id="]Mur=C+IBMv|8]8Z#+XF">
                                <field name="OP">EQ</field>
                                <value name="A">
                                  <block type="variables_get" id="-M{RE25nd+_$Ty;#(zn{">
                                    <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_boolean" id="a,cRD~kF:)2|jYLLF[6+">
                                    <field name="BOOL">TRUE</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="schedule" id="s!m%%kOoHhF5.}iQv|Z$">
                                <field name="SCHEDULE">0 13 * * *</field>
                                <statement name="STATEMENT">
                                  <block type="telegram" id="EaRI$:HAH]Pt3SV=V`Uu">
                                    <field name="INSTANCE"></field>
                                    <field name="LOG"></field>
                                    <field name="SILENT">FALSE</field>
                                    <field name="PARSEMODE">default</field>
                                    <value name="MESSAGE">
                                      <shadow type="text">
                                        <field name="TEXT">text</field>
                                      </shadow>
                                      <block type="text_join" id="j8V[;nSW41UYoXMuSHm6">
                                        <mutation items="2"></mutation>
                                        <value name="ADD0">
                                          <block type="text" id="x7z[2@Vbcjl7O6hUqkhI">
                                            <field name="TEXT">Abholung von</field>
                                          </block>
                                        </value>
                                        <value name="ADD1">
                                          <block type="get_value" id="6!0kMwM+36X5-O:K@HGU">
                                            <field name="ATTR">val</field>
                                            <field name="OID">trashschedule.0.next.typesText</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <value name="USERNAME">
                                      <block type="text" id="CVyrGKS|1jNiCUE;u(Gl">
                                        <field name="TEXT">Patrick</field>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </statement>
            <statement name="ELSE">
              <block type="variables_set" id="0p]L[d0uuNkIyM|Zf@$C">
                <field name="VAR" id="SZ@d*V6/{UJ=e_2/$VLV">trashcount1</field>
                <value name="VALUE">
                  <block type="logic_boolean" id="ZI1y5B-I}H:OTadgfoB%">
                    <field name="BOOL">FALSE</field>
                  </block>
                </value>
                <next>
                  <block type="debug" id="LcRtR=|5=[BpNDz4@Bne">
                    <field name="Severity">log</field>
                    <value name="TEXT">
                      <shadow type="text" id="/qh*2QTKEn)YH)3970dU">
                        <field name="TEXT">Trashmeldung_1 jetzt false</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
          </block>
        </statement>
      </block>
      

      Blockly1.PNG

      Gruß
      Patrick

      C Offline
      C Offline
      Chrunchy
      schrieb am zuletzt editiert von
      #2

      @marsmännchen Trigger in Trigger ist keine gute Idee.
      Warum so kompliziert?

      Jeden Tag um 13 Uhr ausführen, wenn Next Days left = 1, dann Nachricht.

      Gruß Chrunchy

      A 1 Antwort Letzte Antwort
      0
      • C Chrunchy

        @marsmännchen Trigger in Trigger ist keine gute Idee.
        Warum so kompliziert?

        Jeden Tag um 13 Uhr ausführen, wenn Next Days left = 1, dann Nachricht.

        A Online
        A Online
        Ahnungsbefreit
        schrieb am zuletzt editiert von
        #3

        @marsmännchen So sieht das bei mir aus, gleiche Logik wie von @Chrunchy erwähnt:
        e5a22fa4-e84d-4396-9883-54d09f20cb33-image.png

        Ich habe Telegram, Pushover und Alexa Meldungen intergriert. Welche davon genutzt werden (egal in welchem Script), steuere ich über drei Datenpunkte.

        Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          marsmännchen
          schrieb am zuletzt editiert von
          #4

          Vielen Dank, ich werde das so versuchen.
          Warum so kompliziert? Puh, fragt mich nicht, ich weiß es nicht mehr. Das war eine Variante von vielen welche nie richtig funktionierte. Aber Trigger in Trigger vermeiden ist schon mal eine gute Erinnerung.
          Gruß
          Patrick

          Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
          Wago PFC200 mit Dali Lichtsteuerung.

          AsgothianA 1 Antwort Letzte Antwort
          0
          • M marsmännchen

            Vielen Dank, ich werde das so versuchen.
            Warum so kompliziert? Puh, fragt mich nicht, ich weiß es nicht mehr. Das war eine Variante von vielen welche nie richtig funktionierte. Aber Trigger in Trigger vermeiden ist schon mal eine gute Erinnerung.
            Gruß
            Patrick

            AsgothianA Offline
            AsgothianA Offline
            Asgothian
            Developer
            schrieb am zuletzt editiert von Asgothian
            #5

            @marsmännchen sagte in Telegrammeldung von Trashschedule optimieren.:

            Aber Trigger in Trigger vermeiden ist schon mal eine gute Erinnerung.
            Gruß

            Ich kann nur jedem Empfehlen sich für die "Trigger" und "Zeitplan" Bausteine das folgende Modell zu merken:

            • Das System hält eine Liste von Bedingungen die automatisch überwacht werden. Sobald eine der Bedingungen zutrifft werden die an diese Bedingung geknüpften Bausteine ausgeführt.
            • Der Trigger (und Zeitplan) Baustein trägt eine Bedingung in diese Liste ein und gibt dieser Bedingung die umschlossenen Bausteine mit.
            • Wenn ein Skript angehalten wird (und nur dann) werden alle von diesem Skript in die Liste eingetragenen Bedingungen entfernt.

            Daraus ergibt sich direkt warum "Trigger im Trigger" mist sind.

            Code-technisch sind die Trigger viel effizienter abgebildet als das in diesem Modell der Fall ist. Aber als Analogie zum Verständnis funktioniert diese Ansicht durchaus.

            A.

            ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
            "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

            1 Antwort Letzte Antwort
            1
            • M Offline
              M Offline
              marsmännchen
              schrieb am zuletzt editiert von
              #6

              @ahnungsbefreit
              Was aber bewirkt folgendes:
              blockly2.PNG

              Falls Wert von Objekt ID "Telegram"

              Was ist die Objekt ID Telegram? Woher hast du die? Habe zwar Telegram Adapter aber nur einen Ordner "Telegram"
              MfG
              Patrick

              Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
              Wago PFC200 mit Dali Lichtsteuerung.

              A 1 Antwort Letzte Antwort
              0
              • M marsmännchen

                @ahnungsbefreit
                Was aber bewirkt folgendes:
                blockly2.PNG

                Falls Wert von Objekt ID "Telegram"

                Was ist die Objekt ID Telegram? Woher hast du die? Habe zwar Telegram Adapter aber nur einen Ordner "Telegram"
                MfG
                Patrick

                A Online
                A Online
                Ahnungsbefreit
                schrieb am zuletzt editiert von
                #7

                @marsmännchen das meinte ich mit der Aussage oben

                Welche davon genutzt werden (egal in welchem Script), steuere ich über drei Datenpunkte.

                Du kannst also den "Falls Wert vom Objekt ID Telegram" Teil einfach weglassen und direkt die Ausgabe auf telegram machen.

                Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

                M 1 Antwort Letzte Antwort
                1
                • A Ahnungsbefreit

                  @marsmännchen das meinte ich mit der Aussage oben

                  Welche davon genutzt werden (egal in welchem Script), steuere ich über drei Datenpunkte.

                  Du kannst also den "Falls Wert vom Objekt ID Telegram" Teil einfach weglassen und direkt die Ausgabe auf telegram machen.

                  M Offline
                  M Offline
                  marsmännchen
                  schrieb am zuletzt editiert von
                  #8

                  @ahnungsbefreit
                  Das sag ich aber mal herzlichen Dank an euch!
                  Funktioniert diesmal wie es soll. Die Logik von dem Blockly ist mir manchmal echt ein Rätsel.

                  Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                  Wago PFC200 mit Dali Lichtsteuerung.

                  1 Antwort Letzte Antwort
                  0

                  Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                  Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                  Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                  Registrieren Anmelden
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  539

                  Online

                  32.8k

                  Benutzer

                  82.8k

                  Themen

                  1.3m

                  Beiträge
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Anmelden

                  • Du hast noch kein Konto? Registrieren

                  • Anmelden oder registrieren, um zu suchen
                  • Erster Beitrag
                    Letzter Beitrag
                  0
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe