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. [gelöst] WOL als Magicpaket an NAS per Blockly-Script

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.5k

[gelöst] WOL als Magicpaket an NAS per Blockly-Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
20 Beiträge 8 Kommentatoren 5.4k Aufrufe 5 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.
  • S Offline
    S Offline
    Sirius_77
    schrieb am zuletzt editiert von
    #9

    Vielen Dank für die Antwort

    Ich hab es immerhin hinbekommen, dass das NAS einmalig hochfährt, wenn ich die Hue-Lampe anschalte.

    Mein Problem war, dass der pi nicht per Netzwerkkabel, sondern nur per WLAN verbunden war ;)

    Was mir fehlt, ist die regelmäßige Überprüfung, ob die Lampe noch auf True steht und wenn ja, dann die Funktion, die das Paket sendet.
    3768_ae774572-ad89-4ce5-a95a-bd1f4e84e55d.jpeg

    Vorhanden ist:

    • Raspberry 3

    • Harmony Hub

    • Philips Hue - Basis

    • Smartwares HomeWizard - Basis

    • Amazon Echo + Dot inkl. Alexa

    • Ifttt-Integration

    1 Antwort Letzte Antwort
    0
    • BuZZyB Offline
      BuZZyB Offline
      BuZZy
      schrieb am zuletzt editiert von
      #10

      Es ist einfacher wenn du dein Script hier rein kopierst, anstatt ein Screenshot zu machen.

      .. Sonst müssen wir immer so viel abtippen.. :P

      Gruß

      1 Antwort Letzte Antwort
      0
      • S Offline
        S Offline
        Sirius_77
        schrieb am zuletzt editiert von
        #11

        O. k., mache ich später. Bin gerade nur mit dem Handy online. Da ließ es sich nicht rauskopieren :(

        Aber schon mal vielen Dank.

        Vorhanden ist:

        • Raspberry 3

        • Harmony Hub

        • Philips Hue - Basis

        • Smartwares HomeWizard - Basis

        • Amazon Echo + Dot inkl. Alexa

        • Ifttt-Integration

        1 Antwort Letzte Antwort
        0
        • BuZZyB Offline
          BuZZyB Offline
          BuZZy
          schrieb am zuletzt editiert von
          #12

          Kein Problem, war in deinem Fall jetzt nicht so viel Code..

          Hier mal mein Vorschlag:

          var wol = require('wake_on_lan');
          var Zeitplan = null;
          function WOLSenden() {
          	if (getState('hue.0.Philips_hue.Lichtbox.on').val === true) {
          		wol.wake("4C:...:48");
          	} else {
          		clearSchedule(Zeitplan);
          		log('Lichtbox aus. Zeitplan gelöscht - warte wieder auf Lichtbox an.');
          	}
          }
          
          on({id: "hue.0.Philips_hue.Lichtbox.on", val: true}, function (obj) {
          	log('Lichtbox an. Sende alle 60 Sekunden WOL Paket.');
          	Zeitplan = schedule("* * * * *", WOLSenden);
          });
          

          Musst deine MAC Adresse noch in Zeile 5 eintragen. ("4C:…:48") habe ich jetzt mal als Platzhalter eingetragen.

          Gruß

          D3ltoroxpD 1 Antwort Letzte Antwort
          0
          • S Offline
            S Offline
            Sirius_77
            schrieb am zuletzt editiert von
            #13

            @BuZZy und alle die sich an der Diskussion beteiligt haben:

            Vielen Dank! Nun läuft das Script genauso, wie ich mir das vorgestellt habe!

            In diesem Sinne: Gute Nacht :)

            Vorhanden ist:

            • Raspberry 3

            • Harmony Hub

            • Philips Hue - Basis

            • Smartwares HomeWizard - Basis

            • Amazon Echo + Dot inkl. Alexa

            • Ifttt-Integration

            1 Antwort Letzte Antwort
            0
            • BuZZyB BuZZy

              Kein Problem, war in deinem Fall jetzt nicht so viel Code..

              Hier mal mein Vorschlag:

              var wol = require('wake_on_lan');
              var Zeitplan = null;
              function WOLSenden() {
              	if (getState('hue.0.Philips_hue.Lichtbox.on').val === true) {
              		wol.wake("4C:...:48");
              	} else {
              		clearSchedule(Zeitplan);
              		log('Lichtbox aus. Zeitplan gelöscht - warte wieder auf Lichtbox an.');
              	}
              }
              
              on({id: "hue.0.Philips_hue.Lichtbox.on", val: true}, function (obj) {
              	log('Lichtbox an. Sende alle 60 Sekunden WOL Paket.');
              	Zeitplan = schedule("* * * * *", WOLSenden);
              });
              

              Musst deine MAC Adresse noch in Zeile 5 eintragen. ("4C:…:48") habe ich jetzt mal als Platzhalter eingetragen.

              Gruß

              D3ltoroxpD Online
              D3ltoroxpD Online
              D3ltoroxp
              schrieb am zuletzt editiert von
              #14

              @BuZZy said in [gelöst] WOL als Magicpaket an NAS per Blockly-Script:

              Kein Problem, war in deinem Fall jetzt nicht so viel Code..

              Hier mal mein Vorschlag:

              var wol = require('wake_on_lan');
              var Zeitplan = null;
              function WOLSenden() {
              	if (getState('hue.0.Philips_hue.Lichtbox.on').val === true) {
              		wol.wake("4C:...:48");
              	} else {
              		clearSchedule(Zeitplan);
              		log('Lichtbox aus. Zeitplan gelöscht - warte wieder auf Lichtbox an.');
              	}
              }
              
              on({id: "hue.0.Philips_hue.Lichtbox.on", val: true}, function (obj) {
              	log('Lichtbox an. Sende alle 60 Sekunden WOL Paket.');
              	Zeitplan = schedule("* * * * *", WOLSenden);
              });
              

              Musst deine MAC Adresse noch in Zeile 5 eintragen. ("4C:…:48") habe ich jetzt mal als Platzhalter eingetragen.

              Gruß

              Ich versuche mich hier mal. Vllt wird es ja noch gelesen.

              Ich habe ihn mal so abgeändert. Will per Cron zu bestimmten Zeiten den Server wecken, das würde ich mit nem Blockly realisieren.

              var wol = require('wake_on_lan');
              function WOLSenden() {
              	if (getState('0_userdata.0.Keller.Medienserver_aufwecken').val === true) {
              		wol.wake("a8:a1:59:02:f1:34");
              		log("WOL Paket an Medienserver gesendet", "info");
              	}
              }
              );
              

              Leider stimmt hier die Syntax noch nicht ganz. Kann mir da einer helfen ? Irgendwo muss noch ein ( hin.

              I 1 Antwort Letzte Antwort
              0
              • D3ltoroxpD D3ltoroxp

                @BuZZy said in [gelöst] WOL als Magicpaket an NAS per Blockly-Script:

                Kein Problem, war in deinem Fall jetzt nicht so viel Code..

                Hier mal mein Vorschlag:

                var wol = require('wake_on_lan');
                var Zeitplan = null;
                function WOLSenden() {
                	if (getState('hue.0.Philips_hue.Lichtbox.on').val === true) {
                		wol.wake("4C:...:48");
                	} else {
                		clearSchedule(Zeitplan);
                		log('Lichtbox aus. Zeitplan gelöscht - warte wieder auf Lichtbox an.');
                	}
                }
                
                on({id: "hue.0.Philips_hue.Lichtbox.on", val: true}, function (obj) {
                	log('Lichtbox an. Sende alle 60 Sekunden WOL Paket.');
                	Zeitplan = schedule("* * * * *", WOLSenden);
                });
                

                Musst deine MAC Adresse noch in Zeile 5 eintragen. ("4C:…:48") habe ich jetzt mal als Platzhalter eingetragen.

                Gruß

                Ich versuche mich hier mal. Vllt wird es ja noch gelesen.

                Ich habe ihn mal so abgeändert. Will per Cron zu bestimmten Zeiten den Server wecken, das würde ich mit nem Blockly realisieren.

                var wol = require('wake_on_lan');
                function WOLSenden() {
                	if (getState('0_userdata.0.Keller.Medienserver_aufwecken').val === true) {
                		wol.wake("a8:a1:59:02:f1:34");
                		log("WOL Paket an Medienserver gesendet", "info");
                	}
                }
                );
                

                Leider stimmt hier die Syntax noch nicht ganz. Kann mir da einer helfen ? Irgendwo muss noch ein ( hin.

                I Offline
                I Offline
                iobroker_Alex
                schrieb am zuletzt editiert von
                #15

                @D3ltoroxp
                Du willst das so umbauen, dass es nur per Trigger Zeit funktioniert.
                Dann so (Blockly Import):

                <xml xmlns="https://developers.google.com/blockly/xml">
                  <block type="procedures_defcustomnoreturn" id="~?-s4u{p:Gmy-!.0S;v)" x="113" y="113">
                    <mutation statements="false"></mutation>
                    <field name="NAME">WOL</field>
                    <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjJjOmY0OjMyOjY4OmU4OmU4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCBCYWNrdXAgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  </block>
                  <block type="schedule" id="Q|dM3{{#86o0,!{@[s=O" x="63" y="212">
                    <field name="SCHEDULE">55 1 * * *</field>
                    <statement name="STATEMENT">
                      <block type="procedures_callcustomnoreturn" id="Yye~VU]8!L{l#{yWjgZy">
                        <mutation name="WOL"></mutation>
                      </block>
                    </statement>
                  </block>
                </xml>
                <xml xmlns="https://developers.google.com/blockly/xml">
                  <block type="procedures_defcustomnoreturn" id="~?-s4u{p:Gmy-!.0S;v)" x="113" y="113">
                    <mutation statements="false"></mutation>
                    <field name="NAME">WOL</field>
                    <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjJjOmY0OjMyOjY4OmU4OmU4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCBCYWNrdXAgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  </block>
                  <block type="schedule" id="Q|dM3{{#86o0,!{@[s=O" x="63" y="212">
                    <field name="SCHEDULE">55 1 * * *</field>
                    <statement name="STATEMENT">
                      <block type="procedures_callcustomnoreturn" id="Yye~VU]8!L{l#{yWjgZy">
                        <mutation name="WOL"></mutation>
                      </block>
                    </statement>
                  </block>
                </xml>
                

                Alternativ nimm statt des Cron-Triggers deinen Datenpunkt '0_userdata.0.Keller.Medienserver_aufwecken'

                B 1 Antwort Letzte Antwort
                1
                • I iobroker_Alex

                  @D3ltoroxp
                  Du willst das so umbauen, dass es nur per Trigger Zeit funktioniert.
                  Dann so (Blockly Import):

                  <xml xmlns="https://developers.google.com/blockly/xml">
                    <block type="procedures_defcustomnoreturn" id="~?-s4u{p:Gmy-!.0S;v)" x="113" y="113">
                      <mutation statements="false"></mutation>
                      <field name="NAME">WOL</field>
                      <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjJjOmY0OjMyOjY4OmU4OmU4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCBCYWNrdXAgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                      <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    </block>
                    <block type="schedule" id="Q|dM3{{#86o0,!{@[s=O" x="63" y="212">
                      <field name="SCHEDULE">55 1 * * *</field>
                      <statement name="STATEMENT">
                        <block type="procedures_callcustomnoreturn" id="Yye~VU]8!L{l#{yWjgZy">
                          <mutation name="WOL"></mutation>
                        </block>
                      </statement>
                    </block>
                  </xml>
                  <xml xmlns="https://developers.google.com/blockly/xml">
                    <block type="procedures_defcustomnoreturn" id="~?-s4u{p:Gmy-!.0S;v)" x="113" y="113">
                      <mutation statements="false"></mutation>
                      <field name="NAME">WOL</field>
                      <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjJjOmY0OjMyOjY4OmU4OmU4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCBCYWNrdXAgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                      <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    </block>
                    <block type="schedule" id="Q|dM3{{#86o0,!{@[s=O" x="63" y="212">
                      <field name="SCHEDULE">55 1 * * *</field>
                      <statement name="STATEMENT">
                        <block type="procedures_callcustomnoreturn" id="Yye~VU]8!L{l#{yWjgZy">
                          <mutation name="WOL"></mutation>
                        </block>
                      </statement>
                    </block>
                  </xml>
                  

                  Alternativ nimm statt des Cron-Triggers deinen Datenpunkt '0_userdata.0.Keller.Medienserver_aufwecken'

                  B Offline
                  B Offline
                  bishop
                  schrieb am zuletzt editiert von
                  #16

                  @iobroker_alex

                  mach ich etwas falsch! ich bekomme eine riesen Fehlermeldung wenn ich das blockly importieren möchte?

                  I 1 Antwort Letzte Antwort
                  0
                  • B bishop

                    @iobroker_alex

                    mach ich etwas falsch! ich bekomme eine riesen Fehlermeldung wenn ich das blockly importieren möchte?

                    I Offline
                    I Offline
                    iobroker_Alex
                    schrieb am zuletzt editiert von
                    #17

                    @bishop hey, ja das stimmt ich kann es auch nicht mehr importieren. Habe es gerade versucht nochmal ähnlich nachzustellen. Denke das hilft dir schon: Versuch das mal zu importieren (meine IP hinter der MAC die ich wecken möchte ist 10.4.4.12):

                    <xml xmlns="https://developers.google.com/blockly/xml">
                      <block type="procedures_defcustomnoreturn" id="l9BOg[,wM.v6?aXF.)}%" x="138" y="162">
                        <mutation statements="false"></mutation>
                        <field name="NAME">WOL 10.4.4.12</field>
                        <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjcwOjg1OmMyOjdkOjg2OmI4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCAxMC40LjQuMTIgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                        <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                      </block>
                      <block type="schedule" id="c|=|72$oDp1Mr+3%l/_[" x="88" y="238">
                        <field name="SCHEDULE">50 23 * * *</field>
                        <statement name="STATEMENT">
                          <block type="procedures_callcustomnoreturn" id="LPggi$$EH{^Q[60P+vG/">
                            <mutation name="WOL 10.4.4.12"></mutation>
                          </block>
                        </statement>
                      </block>
                    </xml>
                    
                    B 1 Antwort Letzte Antwort
                    0
                    • I iobroker_Alex

                      @bishop hey, ja das stimmt ich kann es auch nicht mehr importieren. Habe es gerade versucht nochmal ähnlich nachzustellen. Denke das hilft dir schon: Versuch das mal zu importieren (meine IP hinter der MAC die ich wecken möchte ist 10.4.4.12):

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <block type="procedures_defcustomnoreturn" id="l9BOg[,wM.v6?aXF.)}%" x="138" y="162">
                          <mutation statements="false"></mutation>
                          <field name="NAME">WOL 10.4.4.12</field>
                          <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQpmdW5jdGlvbiBXT0xTZW5kZW4oKSB7DQogICAgd29sLndha2UoIjcwOjg1OmMyOjdkOjg2OmI4Iik7DQogICAgbG9nKCJXT0wgUGFrZXQgUHJveG1veCAxMC40LjQuMTIgZ2VzZW5kZXQiLCAiaW5mbyIpOw0KfQ0KV09MU2VuZGVuKCk7</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                        </block>
                        <block type="schedule" id="c|=|72$oDp1Mr+3%l/_[" x="88" y="238">
                          <field name="SCHEDULE">50 23 * * *</field>
                          <statement name="STATEMENT">
                            <block type="procedures_callcustomnoreturn" id="LPggi$$EH{^Q[60P+vG/">
                              <mutation name="WOL 10.4.4.12"></mutation>
                            </block>
                          </statement>
                        </block>
                      </xml>
                      
                      B Offline
                      B Offline
                      bishop
                      schrieb am zuletzt editiert von
                      #18

                      @iobroker_alex
                      ok, dass funktioniert mal!
                      Ich muss noch das installieren oder?

                      B 1 Antwort Letzte Antwort
                      0
                      • B bishop

                        @iobroker_alex
                        ok, dass funktioniert mal!
                        Ich muss noch das installieren oder?

                        B Offline
                        B Offline
                        bishop
                        schrieb am zuletzt editiert von bishop
                        #19

                        Müsste das nicht auch mit

                        https://github.com/iobroker-community-adapters/ioBroker.tr-064#command--commandresult-state
                        

                        zu machen sein?

                        edit:
                        vieleicht kann es jemand brauchen!
                        Im tr-064 adapter unter states DP command das einfügen mit abgeänderter Mac natürlich.

                        {"service": "urn:dslforum-org:service:Hosts:1","action": "X_AVM-DE_WakeOnLANByMACAddress", "params": { "NewMACAddress": "00:00:00:00:00:00"}} 
                        
                        frana120500F 1 Antwort Letzte Antwort
                        0
                        • B bishop

                          Müsste das nicht auch mit

                          https://github.com/iobroker-community-adapters/ioBroker.tr-064#command--commandresult-state
                          

                          zu machen sein?

                          edit:
                          vieleicht kann es jemand brauchen!
                          Im tr-064 adapter unter states DP command das einfügen mit abgeänderter Mac natürlich.

                          {"service": "urn:dslforum-org:service:Hosts:1","action": "X_AVM-DE_WakeOnLANByMACAddress", "params": { "NewMACAddress": "00:00:00:00:00:00"}} 
                          
                          frana120500F Offline
                          frana120500F Offline
                          frana120500
                          schrieb am zuletzt editiert von frana120500
                          #20

                          mit diesem Script (Blockly) hier funktioniert es bei meinem QNAP NAS (MAC Adresse ist entsprechend anzupassen:

                          <block xmlns="https://developers.google.com/blockly/xml" type="procedures_defcustomnoreturn" id="=pqc2E7{zZ+Ut(cA0hJ0" x="588" y="138">
                            <mutation statements="false"></mutation>
                            <field name="NAME">WOL NAS</field>
                            <field name="SCRIPT">dmFyIHdvbCA9IHJlcXVpcmUoJ3dha2Vfb25fbGFuJyk7DQoNCndvbC53YWtlKCcwMDowMDowMDowMDowMDowMCcpOw0KDQp3b2wud2FrZSgnMDA6MDA6MDA6MDA6MDA6MDAnLCBmdW5jdGlvbihlcnJvcikgew0KICBpZiAoZXJyb3IpIHsNCiAgICAvLyBoYW5kbGUgZXJyb3INCiAgfSBlbHNlIHsNCiAgICAvLyBkb25lIHNlbmRpbmcgcGFja2V0cw0KICB9DQp9KTsNCg0KdmFyIG1hZ2ljX3BhY2tldCA9IHdvbC5jcmVhdGVNYWdpY1BhY2tldCgnMDA6MDA6MDA6MDA6MDA6MDAnKTsNCg0K</field>
                            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                          </block>
                          
                          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

                          734

                          Online

                          32.5k

                          Benutzer

                          81.6k

                          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