Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • 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. Drucker über Anwesenheit steuern MQTT

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    949

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Drucker über Anwesenheit steuern MQTT

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
15 Beiträge 3 Kommentatoren 896 Aufrufe 3 Watching
  • Ä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.
  • CodierknechtC Codierknecht

    @balu-0
    Das sind 2 Trigger auf den gleichen State.
    Das kann man vereinfachen:

    489685ef-cf49-4557-b8ff-29ce202fc55f-grafik.png

    1. Verwende besser timeouts statt der Verzögerung beim "steuere". Damit hat man mehr Kontrolle.
    2. Die Dose bekommt als Wert einfach den Status der Anwesenheit. Diesen Wert kennt der Trigger bereits.
    B Offline
    B Offline
    Balu 0
    schrieb am zuletzt editiert von Balu 0
    #3

    @codierknecht
    Danke für deine Antwort

    Ich verstehe nicht,
    " steuere mit wert "
    Woher weiß er welcher wert ? ( weil es in der klammer drin ist ? )

    Und wie differenziert er das nur beim einschalten Verzögerung da ist ?

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • B Balu 0

      @codierknecht
      Danke für deine Antwort

      Ich verstehe nicht,
      " steuere mit wert "
      Woher weiß er welcher wert ? ( weil es in der klammer drin ist ? )

      Und wie differenziert er das nur beim einschalten Verzögerung da ist ?

      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von Codierknecht
      #4

      @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

      Woher weiß er welcher wert ?

      Der Trigger weiß ja, auf welchen Wert der auslösende State gerade gewechselt hat.
      Bei "Anwesend" ist der true - anderenfalls false
      Den Block "Wert" findest Du unter "Trigger".

      Und wie differenziert er das nur beim einschalten Verzögerung da ist ?

      OK - übersehen.
      Dann sieht das etwas anders aus:

      407da3af-9806-41cf-962e-ff37940b5745-grafik.png

      Ich habe hier zum Steuern Wahr/Falsch verwendet - das ist letzendlich für Laien etwas besser lesbar.

      Hier noch etwas Lesestoff:
      https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      B 2 Antworten Letzte Antwort
      1
      • B Balu 0

        Hallo liebe Logiker.
        Ich habe folgendes Skript erstellt.:
        Unbenannt.PNG

        Ich möchte wenn der anwesenheitsdatenpunkt auf True geht mit Verzögerung den Drucker über n zwischen Stecker mit Verzögerung einschalten.

        Und andersrum für aus.
        Kann ich das so machen oder übersehe ich was ?

        Danke Grüße
        Balu

        MartinPM Online
        MartinPM Online
        MartinP
        schrieb am zuletzt editiert von MartinP
        #5

        @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

        geht mit Verzögerung den Drucker über n zwischen Stecker mit Verzögerung einschalten

        Etwas Offtopic: Ist das ein Laserdrucker?

        Bei Tintenstrahldrucker ist das nicht ratsam! Die sollte man immer im Standby belassen, so ärgerlich das auch für die Stromrechnung und den Tintenverbrauch ist. Bei längerer Inaktivität "pinkeln" die ein paar Tropfen Tinte in das Vorratskissen im Drucker, um das Eintrocknen der Düsen zu verhindern.
        Eingetrocknete Düsen sind aber deutlich teurer, als das bisschen Strom und Tinte ...

        Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
        Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
        Linux pve 6.8.12-16-pve
        6 GByte RAM für den Container
        Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
        Remote-Access über Wireguard der Fritzbox

        B 1 Antwort Letzte Antwort
        1
        • CodierknechtC Codierknecht

          @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

          Woher weiß er welcher wert ?

          Der Trigger weiß ja, auf welchen Wert der auslösende State gerade gewechselt hat.
          Bei "Anwesend" ist der true - anderenfalls false
          Den Block "Wert" findest Du unter "Trigger".

          Und wie differenziert er das nur beim einschalten Verzögerung da ist ?

          OK - übersehen.
          Dann sieht das etwas anders aus:

          407da3af-9806-41cf-962e-ff37940b5745-grafik.png

          Ich habe hier zum Steuern Wahr/Falsch verwendet - das ist letzendlich für Laien etwas besser lesbar.

          Hier noch etwas Lesestoff:
          https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

          B Offline
          B Offline
          Balu 0
          schrieb am zuletzt editiert von
          #6

          @codierknecht said in Drucker über Anwesenheit steuern MQTT:

          @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

          Woher weiß er welcher wert ?

          Hier noch etwas Lesestoff:
          https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

          Super danke !

          Lesestoff hab ich genutzt für mein Skript 😁

          1 Antwort Letzte Antwort
          0
          • MartinPM MartinP

            @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

            geht mit Verzögerung den Drucker über n zwischen Stecker mit Verzögerung einschalten

            Etwas Offtopic: Ist das ein Laserdrucker?

            Bei Tintenstrahldrucker ist das nicht ratsam! Die sollte man immer im Standby belassen, so ärgerlich das auch für die Stromrechnung und den Tintenverbrauch ist. Bei längerer Inaktivität "pinkeln" die ein paar Tropfen Tinte in das Vorratskissen im Drucker, um das Eintrocknen der Düsen zu verhindern.
            Eingetrocknete Düsen sind aber deutlich teurer, als das bisschen Strom und Tinte ...

            B Offline
            B Offline
            Balu 0
            schrieb am zuletzt editiert von
            #7

            @martinp said in Drucker über Anwesenheit steuern MQTT:

            @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

            geht mit Verzögerung den Drucker über n zwischen Stecker mit Verzögerung einschalten

            Etwas Offtopic: Ist das ein Laserdrucker?

            Bei Tintenstrahldrucker ist das nicht ratsam! Die sollte man immer im Standby belassen, so ärgerlich das auch für die Stromrechnung und den Tintenverbrauch ist. Bei längerer Inaktivität "pinkeln" die ein paar Tropfen Tinte in das Vorratskissen im Drucker, um das Eintrocknen der Düsen zu verhindern.
            Eingetrocknete Düsen sind aber deutlich teurer, als das bisschen Strom und Tinte ...

            Das ist interessant wusste ich noch nicht.

            Den Aufwand mache ich mir weil :
            Multifunktionsdrucker, 160 kg
            Laser, brauche noch 2 Jahre bis die Toner lehr sind

            MartinPM 1 Antwort Letzte Antwort
            0
            • B Balu 0

              @martinp said in Drucker über Anwesenheit steuern MQTT:

              @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

              geht mit Verzögerung den Drucker über n zwischen Stecker mit Verzögerung einschalten

              Etwas Offtopic: Ist das ein Laserdrucker?

              Bei Tintenstrahldrucker ist das nicht ratsam! Die sollte man immer im Standby belassen, so ärgerlich das auch für die Stromrechnung und den Tintenverbrauch ist. Bei längerer Inaktivität "pinkeln" die ein paar Tropfen Tinte in das Vorratskissen im Drucker, um das Eintrocknen der Düsen zu verhindern.
              Eingetrocknete Düsen sind aber deutlich teurer, als das bisschen Strom und Tinte ...

              Das ist interessant wusste ich noch nicht.

              Den Aufwand mache ich mir weil :
              Multifunktionsdrucker, 160 kg
              Laser, brauche noch 2 Jahre bis die Toner lehr sind

              MartinPM Online
              MartinPM Online
              MartinP
              schrieb am zuletzt editiert von
              #8

              @balu-0 Bei Lasern ist das komplett Abschalten kein Problem... Hätte auch mal einen gebrauchten Epson Farblaser von 2007. Standby-Verbrauch 15W... Da war auch eine Schaltsteckdose dazwischen...
              Irgendwann war er dann komplett Altersschwach, und hatte bei 2 von 3 Einschaltvorgängen einen Selbsttest Fehler, den man weg drücken musste...

              Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
              Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
              Linux pve 6.8.12-16-pve
              6 GByte RAM für den Container
              Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
              Remote-Access über Wireguard der Fritzbox

              1 Antwort Letzte Antwort
              1
              • CodierknechtC Codierknecht

                @balu-0 sagte in Drucker über Anwesenheit steuern MQTT:

                Woher weiß er welcher wert ?

                Der Trigger weiß ja, auf welchen Wert der auslösende State gerade gewechselt hat.
                Bei "Anwesend" ist der true - anderenfalls false
                Den Block "Wert" findest Du unter "Trigger".

                Und wie differenziert er das nur beim einschalten Verzögerung da ist ?

                OK - übersehen.
                Dann sieht das etwas anders aus:

                407da3af-9806-41cf-962e-ff37940b5745-grafik.png

                Ich habe hier zum Steuern Wahr/Falsch verwendet - das ist letzendlich für Laien etwas besser lesbar.

                Hier noch etwas Lesestoff:
                https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

                B Offline
                B Offline
                Balu 0
                schrieb am zuletzt editiert von
                #9

                @codierknecht

                Sorry muss dich weiter Löchern...

                Mein Anwesenheitspunkt ist True wenn anwesend und False wenn abwesend.

                Wenn anwesenheitsdatenpunkt True dann soll auch Drucker Datenpunt True sein.
                und das selbe mit False.

                Wie unterscheidet dieses skript das ?
                Wie gleicht es ab ob der status true ist und stellt nur dann aud true ?

                Danke Grüße
                Balu

                MartinPM 1 Antwort Letzte Antwort
                0
                • B Balu 0

                  @codierknecht

                  Sorry muss dich weiter Löchern...

                  Mein Anwesenheitspunkt ist True wenn anwesend und False wenn abwesend.

                  Wenn anwesenheitsdatenpunkt True dann soll auch Drucker Datenpunt True sein.
                  und das selbe mit False.

                  Wie unterscheidet dieses skript das ?
                  Wie gleicht es ab ob der status true ist und stellt nur dann aud true ?

                  Danke Grüße
                  Balu

                  MartinPM Online
                  MartinPM Online
                  MartinP
                  schrieb am zuletzt editiert von
                  #10

                  @balu-0 Das war mir auch erst nicht klar, als ich mit der Blockly Programmierung angefangen habe.. im obigen Schnipsel wird "falls <Wert>" verwendet, das ist der Wert des Objektes, das den Trigger ausgelöst hat... Also Fallunterscheidung ob Anwesenheit False (sonst) oder True (mache)

                  block

                  Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                  Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                  Linux pve 6.8.12-16-pve
                  6 GByte RAM für den Container
                  Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                  Remote-Access über Wireguard der Fritzbox

                  B 1 Antwort Letzte Antwort
                  1
                  • MartinPM MartinP

                    @balu-0 Das war mir auch erst nicht klar, als ich mit der Blockly Programmierung angefangen habe.. im obigen Schnipsel wird "falls <Wert>" verwendet, das ist der Wert des Objektes, das den Trigger ausgelöst hat... Also Fallunterscheidung ob Anwesenheit False (sonst) oder True (mache)

                    block

                    B Offline
                    B Offline
                    Balu 0
                    schrieb am zuletzt editiert von
                    #11

                    @martinp

                    also es läuft aber ich steig immer noch nicht durch :-(

                    Ist dann der wert, der zu dem Zeitpunkt wo ich das skript aktiviere der wert aus dem anwesenheitsdatenpunkt der der herangezogen wird?

                    Er macht ja :
                    "Mache Sonst"

                    Welcher wert ist mache und welcher sonst,
                    bzw könnte der wert auch false sein und er stellt auf true,
                    und sonst
                    auf auf false ?

                    MartinPM 1 Antwort Letzte Antwort
                    0
                    • B Balu 0

                      @martinp

                      also es läuft aber ich steig immer noch nicht durch :-(

                      Ist dann der wert, der zu dem Zeitpunkt wo ich das skript aktiviere der wert aus dem anwesenheitsdatenpunkt der der herangezogen wird?

                      Er macht ja :
                      "Mache Sonst"

                      Welcher wert ist mache und welcher sonst,
                      bzw könnte der wert auch false sein und er stellt auf true,
                      und sonst
                      auf auf false ?

                      MartinPM Online
                      MartinPM Online
                      MartinP
                      schrieb am zuletzt editiert von MartinP
                      #12

                      @balu-0 Der Trigger wird ausgelöst, wenn sich der Wert des Objektes ändert. Und der aktuelle Wert kann über "Wert" abgefragt werden ...
                      Das Ding hat ein Auswahlmenu, und man kann auch "vorherigen Wert" und einiges andere abfragen....

                      Bei MultiTriggern ist die "Name" Abfrage "wer hat getriggert" interessant.
                      Es gibt so viele Varianten zur Auswahl dass das Auswahlmenu einen Scrollbalken hat

                      bb676487-0a3f-4cc2-83f2-e6822d417f66-grafik.png
                      0ab0ba5b-0e26-4baf-be41-9f61594f5909-grafik.png
                      d4e8bef2-5933-4a49-b86b-b603cc137881-grafik.png
                      9c2b6983-9187-4586-80f5-bbb708a0a86b-grafik.png

                      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                      Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                      Linux pve 6.8.12-16-pve
                      6 GByte RAM für den Container
                      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                      Remote-Access über Wireguard der Fritzbox

                      B 1 Antwort Letzte Antwort
                      1
                      • MartinPM MartinP

                        @balu-0 Der Trigger wird ausgelöst, wenn sich der Wert des Objektes ändert. Und der aktuelle Wert kann über "Wert" abgefragt werden ...
                        Das Ding hat ein Auswahlmenu, und man kann auch "vorherigen Wert" und einiges andere abfragen....

                        Bei MultiTriggern ist die "Name" Abfrage "wer hat getriggert" interessant.
                        Es gibt so viele Varianten zur Auswahl dass das Auswahlmenu einen Scrollbalken hat

                        bb676487-0a3f-4cc2-83f2-e6822d417f66-grafik.png
                        0ab0ba5b-0e26-4baf-be41-9f61594f5909-grafik.png
                        d4e8bef2-5933-4a49-b86b-b603cc137881-grafik.png
                        9c2b6983-9187-4586-80f5-bbb708a0a86b-grafik.png

                        B Offline
                        B Offline
                        Balu 0
                        schrieb am zuletzt editiert von Balu 0
                        #13

                        @martinp
                        Ich glaub jetzt hab ichs verstanden.

                        Das Skripten verinnerliche ich nur sehr langsam :-)

                        Danke euch !!

                        CodierknechtC 1 Antwort Letzte Antwort
                        0
                        • B Balu 0

                          @martinp
                          Ich glaub jetzt hab ichs verstanden.

                          Das Skripten verinnerliche ich nur sehr langsam :-)

                          Danke euch !!

                          CodierknechtC Online
                          CodierknechtC Online
                          Codierknecht
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #14

                          @balu-0
                          Ich hole nochmal etwas weiter aus, da das immer wieder zu Verständnisproblemen führt.

                          Ich nehme dazu mal reines JS. Damit kann man es besser erklären und ich spare mir die ganzen Screenshots.

                          Ein "Falls" in Blockly entspricht ja letztlich einem if in JS (und anderen Sprachen. ob C, C++, C#, PHP usw. - funzt überall gleich).

                          Ein klassischer Ausdruck wäre sowas hier:

                          if (var == 42)
                          if (txt == 'blubb')
                          

                          usw.

                          Der Punkt ist:
                          Das was hinter dem if steht, muss als Ganzes entweder Wahr oder Falsch werden.
                          Für Zeile 1 bedeutet das: Der Ausdruck in Klammern wird Wahr, wenn die Variable var den Wert 42 enthält.
                          In Zeile 2 wird der Ausdruck Wahr, wenn in txt der Text blubb enthalten ist.

                          Soweit hoffentlich klar?

                          Interessant wird's, wenn man mit bool'schen Variablen arbeitet, die selbst nur die Werte "Wahr" oder "Falsch" enthalten können. Also entweder true oder false;

                          Auswerten könnte man das so:

                          if (boolvar == true)
                          

                          Das wäre aber doppelt gemoppelt. In boolvar steht ja bereits ein "bool'scher" (Wahrheits-) Wert.
                          Dann kann man das auch gleich so schreiben:

                          if (boolvar)
                          

                          Für Blockly bedeutet das:
                          Ein "Falls Wert = Wahr" ist semantisch das Gleiche wie ein "Falls Wert" ... wenn "Wert" nur "Wahr" oder "Falsch" sein kann.

                          Bezogen auf Blockly habe ich das hier bereits erläutert:
                          https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/8

                          Ich hoffe, das war jetzt verständlich?

                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                          HmIP|ZigBee|Tasmota|Unifi
                          Zabbix Certified Specialist
                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                          B 1 Antwort Letzte Antwort
                          0
                          • CodierknechtC Codierknecht

                            @balu-0
                            Ich hole nochmal etwas weiter aus, da das immer wieder zu Verständnisproblemen führt.

                            Ich nehme dazu mal reines JS. Damit kann man es besser erklären und ich spare mir die ganzen Screenshots.

                            Ein "Falls" in Blockly entspricht ja letztlich einem if in JS (und anderen Sprachen. ob C, C++, C#, PHP usw. - funzt überall gleich).

                            Ein klassischer Ausdruck wäre sowas hier:

                            if (var == 42)
                            if (txt == 'blubb')
                            

                            usw.

                            Der Punkt ist:
                            Das was hinter dem if steht, muss als Ganzes entweder Wahr oder Falsch werden.
                            Für Zeile 1 bedeutet das: Der Ausdruck in Klammern wird Wahr, wenn die Variable var den Wert 42 enthält.
                            In Zeile 2 wird der Ausdruck Wahr, wenn in txt der Text blubb enthalten ist.

                            Soweit hoffentlich klar?

                            Interessant wird's, wenn man mit bool'schen Variablen arbeitet, die selbst nur die Werte "Wahr" oder "Falsch" enthalten können. Also entweder true oder false;

                            Auswerten könnte man das so:

                            if (boolvar == true)
                            

                            Das wäre aber doppelt gemoppelt. In boolvar steht ja bereits ein "bool'scher" (Wahrheits-) Wert.
                            Dann kann man das auch gleich so schreiben:

                            if (boolvar)
                            

                            Für Blockly bedeutet das:
                            Ein "Falls Wert = Wahr" ist semantisch das Gleiche wie ein "Falls Wert" ... wenn "Wert" nur "Wahr" oder "Falsch" sein kann.

                            Bezogen auf Blockly habe ich das hier bereits erläutert:
                            https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/8

                            Ich hoffe, das war jetzt verständlich?

                            B Offline
                            B Offline
                            Balu 0
                            schrieb am zuletzt editiert von Balu 0
                            #15

                            @codierknecht said in Drucker über Anwesenheit steuern MQTT:

                            Das wäre aber doppelt gemoppelt. In boolvar steht ja bereits ein "bool'scher" (Wahrheits-) Wert.
                            Dann kann man das auch gleich so schreiben:

                            ok das ist der Grund warum in speziell diesem Skript falls als war definiert ist ?

                            Ich hoffe, das war jetzt verständlich?

                            Jedenfalls bleibt immer n bisschen was hängen !

                            Nur Interesse halber,
                            mein Skript oben ist nicht falsch nur umständlich ? ( also es würde funktionieren ? )

                            Grüße
                            Balu

                            Danke euch !!!

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            591

                            Online

                            32.6k

                            Benutzer

                            82.2k

                            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