Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
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

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    147

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

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

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

Scheduled Pinned Locked Moved Skripten / Logik
20 Posts 8 Posters 5.7k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Sirius_77
    wrote on last edited by
    #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 Reply Last reply
    0
    • BuZZyB Offline
      BuZZyB Offline
      BuZZy
      wrote on last edited by
      #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 Reply Last reply
      0
      • S Offline
        S Offline
        Sirius_77
        wrote on last edited by
        #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 Reply Last reply
        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 Offline
          D3ltoroxpD Offline
          D3ltoroxp
          wrote on last edited by
          #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 Reply Last reply
          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
            wrote on last edited by
            #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 Reply Last reply
            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
              wrote on last edited by
              #16

              @iobroker_alex

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

              I 1 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                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
                  wrote on last edited by
                  #18

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

                  B 1 Reply Last reply
                  0
                  • B bishop

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

                    B Offline
                    B Offline
                    bishop
                    wrote on last edited by 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 Reply Last reply
                    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
                      wrote on last edited by 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 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      513

                      Online

                      32.7k

                      Users

                      82.4k

                      Topics

                      1.3m

                      Posts
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Home
                      • Recent
                      • Tags
                      • Unread 0
                      • Categories
                      • Unreplied
                      • Popular
                      • GitHub
                      • Docu
                      • Hilfe