Hauptmenü

NAS_Control

Begonnen von Dietmar63, 16 Januar 2013, 22:51:50

Vorheriges Thema - Nächstes Thema

Dietmar63

und du bekommst auch die regeläßigen busy-zeilen?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Ja. Alle 120 Sekunden.

2013.01.30 10:49:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:51:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:53:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:55:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:57:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:59:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:01:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:03:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:05:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:07:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:09:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:11:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:13:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:15:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:17:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:19:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:21:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy

Grüße,
 Matthias

Dietmar63

noch Probleme gehabt?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Hallo und danke der Nachfrage,

folgende Erkenntnisse (nachdem ich in das WOL.pm Modul eingestiegen war):

1. ich verstehe zwar nicht viel von PERL, aber ich vermute mit der Zeile
 if (`ping -c 1 $ip` =~ m/100/) {
im WOL.pm wird nach "100" in der Antwort des Pings gesucht, wie sie z.B. bei "100% packet loss" vorkommt und daraus geschlossen, dass das Gerät nicht online ist (isRunning = false).
Da mein NAS die IP 192.168.10.100 hat, enthält eine Ping-Antwort in meinem Fall immer die Zeichenfolge "100", auch wenn ich 0% packet loss habe, da die "100" ja in meiner IP vorkommt:


# ping -c 1 192.168.10.100
PING 192.168.10.100 (192.168.10.100): 56 data bytes
64 bytes from 192.168.10.100: seq=0 ttl=64 time=0.668 ms

--- 192.168.10.100 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.668/0.668/0.668 ms


Deswegen wurde mein Gerät immer als isRunning=false angezeigt, selbst wenn es angeschaltet war.

Ich habe daher in der WOL.pm die Zeile geändert in:
 if (`ping -c 1 $ip` =~ m/100%/) {

Mit diesem zusätzlichen %-Zeichen funktioniert es bei mir.
Wenn von den PERL-Experten diese Änderung nicht aus anderen Gründen als kritisch erachtet wird, kannst du die vielleicht in das Modul noch übernehmen.

2. Für die Buffalo Linkstation funktioniert es allerdings nur, weil diese per IP-Adresse auch im Sleep-Mode per Ping erreichbar sind (es werden nur die Festplatten abgeschaltet und starten erst wieder durch die WOL Pakete). Vom Prinzip her sollte man mit WOL natürlich auch Geräte über ihre MAC Adresse aufwecken können, die nicht auf Ping's reagieren, z.B. auch Rechner, die erst vom DHCP Server eine zum Zeitpunkt des Weckens noch nicht vorhersehbare IP-Adresse erhalten. Dass ein Gerät auf Pings reagieren muss, um es wecken zu können, ist (außer bei Buffalo NAS) doch eher untypisch.

Daher ist mir unklar, warum mit


    ...  
  if (`ping -c 1 $ip` =~ m/100%/) {
    readingsBulkUpdate   ($hash, "isRunning", "false");
    $hash->{STATE}    = "off";
    ...


der Status des <wol> gleich wieder auf off zurückgesetzt wird, wenn ein Gerät nicht auf Ping antwortet.
Gibt es dafür einen triftigen Grund? Zumal beim Wecken später sowieso die Broadcast-Adresse (255.255.255.255) verwendet wird (UDP-mode), wenn ich die Zeilen in der WOL.pm richtig verstehe.


Wie auch immer, für meine Buffalo Linkstation funktioniert jetzt alles soweit.

Grüße,
 Matthias



P.S.
Zum einfacheren Troubleshooten hätte ich es übrigens praktisch gefunden, wenn neben den Meldungen:
2013-02-07_11:11:49 Linkstation isRunning: false

auch die anderen Log Meldungen bzw. Statusänderungen noch ins gleiche Logfile geschrieben würden, z.B.
2013.02.07 10:41:25 3: WOL set Linkstation on
2013.02.07 10:41:25 3: WOL waking  Linkstation with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.100
2013.02.07 10:41:34 3: WOL set Linkstation off

Vielleicht sollte auch wie beim alten WOL Modul der STATE zusätzlich noch als Reading mitgeführt werden? Dann kämen doch die on und off Einträge automatisch mit in das <wol>-Logfile, oder?

maeb3

Ach ja,
am Anfang im Modul in der Initialize Routine hatte ich noch die  "$readingFnAttributes;" eingefügt, damit man über "event-on-change-reading" einstellen kann, dass der Log-Eintrag
2013-02-07_11:11:49 <wol> isRunning: false
alle 900 Sekunden nur eingetragen wird, wenn sich der Zustand im Vergleich zu vorher ändert.

sub WOL_Initialize($)
{
  my ($hash) = @_;

  $hash->{SetFn}     = "WOL_Set";
  $hash->{DefFn}     = "WOL_Define";
  $hash->{UndefFn}   = "WOL_Undef";
  $hash->{AttrList}  = "loglevel:0,1,2,3,4,5,6 ".
                        $readingFnAttributes;
}


Vielleicht kann das auch nochmal jemand auf Syntax/Korrektheit prüfen und dann könnte man es evt. auch noch mit ins Modul nehmen.

Grüße,
 Matthias

Hoeness

Hallo,

ich absoluter Neuling im Bereich Fhem.
Habe es auf meiner Fritzbox am laufen.

Da ich auch eine Buffalo Linksation besitze bin ich natürlich an dem Modul Interessiert.
Könnt Ihr mir weiterhelfen ;-)

Dietmar63

Ich habe die Funktion in WOL eingebaut, damit wir nicht zu viele Module entwickeln . Schicke ich dir morgen abend zu. Ich habe heute keinen Zugriff auf mein fhem.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

anbei das von mir erweiterte WOL.
Bei mir läuft folgende Definition:


define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 240 UDP
attr   NAS                    room Wohnzimmer
attr   NAS                    event-on-change-reading isRunning, STATE




Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

hier die neue Version von 98_WOL.pm mit nas_control-Unterstützung für Buffalo.

Mit Version 5.4 wurde eine Erweiterung fällig.
Es wird auch das Attribut shutdownCmd unterstützt - allerdings muss man es nicht angeben.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

@ Thomas

Funzt es?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

TJ

Hallo Dietmar,

leider nicht, ich habe EW und UDP ausprobiert.
Ich versuche mal mit Wireshark mitzuschreiben was über das Netzwerk gesendet wird.

Gruß Thomas

Dietmar63

@Thomas:

bekommst du folgenden output?


2013.04.14 23:55:53 3: No shutdown command given!
2013.04.14 23:55:53 3: WOL set NAS off
2013.04.14 23:55:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:55:00 3: FS20 set StehlampeTisch off
2013.04.14 23:51:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:47:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:43:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:39:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:35:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:34:19 3: credit is low: 843
2013.04.14 23:31:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:27:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:23:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:19:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:15:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:11:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:07:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:03:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:59:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:55:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:51:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:47:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:43:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:39:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:35:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:31:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:27:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:23:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:19:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:15:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:11:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:07:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:03:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy


Hast du es so definiert:

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 240 UDP

Welche Hardware hast du - eine fb (7270) - bei mir funktioniert es genau so.
Ich musste zwar eine Anpassung wg. 5.4 vornehmen - war aber nicht kompliziert.

zum Wecken funktioniert bei mir auch:

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.255 240 UDP
Die Magicpakete werden dann an alle Rechner des ganzen Netzwerks geschickt und nur der Rechner mit der passenden MAC wird geweckt. Dann funktioniert der ping zur Überprüfung der Aktivität nicht - Bei Buffalo Nas ist das sowieso überflüssig, weil das Nas eh pingbar bleibt.

In diesem Thread gibt es einige positive Beispiele - es war immer ein FB als fhem-host im Einsatz.

Ich übelege übrigens noch die beiden Parameter "240 UDP" zu tauschen dann kann man den <mode> wählen ohne den Repeatmodus für Buffalo auswählen zu müssen.

Was haltet Ihr davon?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

HardyCGN

PROBLEM unten GELÖST: Update von 5.3 nach 5.4 hat geholfen.

Hallo,

beim Laden des Moduls erhalte ich immer folgende Fehlermeldung:

2013.05.09 00:34:38 1: reload: Error:Modul 98_WOL deactivated:
 Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_WOL.pm line 36, <$fh> line 49.

2013.05.09 00:34:38 0: Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_WOL.pm line 36, <$fh> line 49.

Woran kann das liegen? Habe leider noch eine Ahnung von Perl.

FHEM 5.3 läuft auf einer FB7390 und die 98_WOL.pm habe ich über den Windows Explorer direkt in ./FHEM auf der FB gespeichert.

Danke & lg
Michael

Chris8888

Hallo,

ich versuche analog zu eurer Buffalo-NAS meine QNAP-NAS per WOL aufzuwecken.
Leider scheitert schon der Aufruf des Kommandos mit einer Fehlermeldung im Log:

LOG:
2013.06.01 12:59:08 2: WOL set qnap on
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: WOL waking qnap


Im Einsatz ist eine Fritz 7390 mit der neusten DEV 5.4
FHEM läuft als root.

Hat jemand eine Idee?

Danke!

Gruß
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

Poste bitte deine Definition
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm