Hallo
ich wollte mich nachdem so ein Beispiel im Buch von Stefan Heinle erwähnt ist, an folgendes wagen.
Mein MediaPi am Fernseher soll zunächst bei Nacht und bei Abwesenheit heruntergefahren werden, um nicht unnötig Strom zu verbrauchen.
Leider bin ich nicht sonderlich weit gekommen. Hauptproblem: Wie binde ich/spreche ich das JSON:RPC aus einem Perl-Plugin an?
Die Befehlssätze waren einfach zu finden, allerdings habe ich noch keine Idee, wie ich diese absetzen kann.
Hat jemand Lust mir hier zu helfen oder eine Idee, wie man das ganze anders/einfacher lösen könnte? Leider unterstützt der Pi ja kein WoL.
Gruß
Tobias
ich wollte mich nachdem so ein Beispiel im Buch von Stefan Heinle erwähnt ist, an folgendes wagen.
Mein MediaPi am Fernseher soll zunächst bei Nacht und bei Abwesenheit heruntergefahren werden, um nicht unnötig Strom zu verbrauchen.
Leider bin ich nicht sonderlich weit gekommen. Hauptproblem: Wie binde ich/spreche ich das JSON:RPC aus einem Perl-Plugin an?
Die Befehlssätze waren einfach zu finden, allerdings habe ich noch keine Idee, wie ich diese absetzen kann.
Hat jemand Lust mir hier zu helfen oder eine Idee, wie man das ganze anders/einfacher lösen könnte? Leider unterstützt der Pi ja kein WoL.
Gruß
Tobias
Code:
###################################################################################### # # Shutdown Pi # V0.1 2017-05-31 # by SirTobiIV - www.knx-user-forum.de # ###################################################################################### ######################### ### BEGIN DEFINITIONS ### ######################### # set cycle time to call plugin $plugin_info{$plugname.'_cycle'} = 300; #define GA's my $PresenceGA = '0/3/2'; #GA for Presence 1 = no one is present my $DayNightGA = '0/3/2'; #GA for Day/Night 1 = night my $PiSwitchOnOffGA = '0/3/3'; #GA to switch on/off power for PI my $PiStatusOnOffGA = '0/3/3'; #GA for Status of PI switching actuator #subscribe plugin to GA's $plugin_subscribe{$PresenceGA}{$plugname} = 1; $plugin_subscribe{$DayNightGA}{$plugname} = 1; $plugin_subscribe{$PiSwitchOnOffGA}{$plugname} = 1; $plugin_subscribe{$PiStatusOnOffGA}{$plugname} = 1; ######################### ### END DEFINITIONS ### ######################### # Start plugin when night-mode is activated or house is in absence-mode if ($msg{'apci'} eq "A_GroupValue_Write") { if ($msg{'dst'} eq $PresenceGA || $msg('dst') eq $DayNightGA { $plugin_info{$plugname.'_SWITCH'} = int($msg{'data'}); } } # Switch off Pi # switching it on is realized by KNX - simply give power to it by switching the actuator on if ($plugin_info{$plugname.'_SWITCH'} == 1) { # JSON RPC switch off command {"jsonrpc":"2.0","method":"System.shutdown"} sleep(60); # wait 60s until switching off the power # knx_write($PiSwitchOnOffGA,1,1); } return;
Kommentar