2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-15 22:26:04 +00:00

FULLY: Added screen saver commands

git-svn-id: https://svn.fhem.de/fhem/trunk@16854 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
zap 2018-06-12 06:54:17 +00:00
parent f047ad52d0
commit 1a285be368
2 changed files with 48 additions and 3 deletions

View File

@ -1,5 +1,6 @@
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
# Do not insert empty lines here, update check depends on it.
- feature: 89_FULLY: Added screen saver commands.
- feature: 49_SSCam: V5.0.0, HLS Streaming implemented, new Streamingdevice
based on module 49_SSCamSTRM, some improvements & fixes
- feature: 98_Text2Speech: added Duch language for Google TTS

View File

@ -1,6 +1,6 @@
##############################################################################
#
# 89_FULLY.pm 0.6
# 89_FULLY.pm 0.7
#
# $Id$
#
@ -34,7 +34,7 @@ sub FULLY_Abort ($);
sub FULLY_UpdateReadings ($$);
sub FULLY_Ping ($$);
my $FULLY_VERSION = "0.6";
my $FULLY_VERSION = "0.7";
my $FULLY_TIMEOUT = 4;
my $FULLY_POLL_INTERVAL = 3600;
@ -179,7 +179,8 @@ sub FULLY_Set ($@)
my $name = shift @$a;
my $opt = shift @$a;
my $options = "brightness clearCache:noArg exit:noArg lock:noArg motionDetection:on,off ".
"off:noArg on:noArg on-for-timer restart:noArg unlock:noArg speak url";
"off:noArg on:noArg on-for-timer restart:noArg screenOffTimer screenSaver:start,stop ".
"screenSaverTimer screenSaverURL speak unlock:noArg url";
my $response;
# Fully commands without argument
@ -226,6 +227,37 @@ sub FULLY_Set ($@)
RemoveInternalTimer ($hash, "FULLY_ScreenOff") if ($par eq 'off' || $par eq 'forever');
$hash->{onForTimer} = $par if (defined ($response) && $response ne '');
}
elsif ($opt eq 'screenOffTimer') {
my $value = shift @$a;
return "Usage: set $name $opt {seconds}" if (!defined ($value));
$response = FULLY_Execute ($hash, "setStringSetting",
{ "key" => "timeToScreenOffV2", "value" => "$value" }, 1);
}
elsif ($opt eq 'screenSaver') {
my $state = shift @$a;
return "Usage: set $name $opt { start | stop }" if (!defined ($state));
if ($state eq 'start') {
$response = FULLY_Execute ($hash, "startScreensaver", undef, 1);
}
elsif ($state eq 'stop') {
$response = FULLY_Execute ($hash, "stopScreensaver", undef, 1);
}
else {
return "Usage: set $name $opt { start | stop }";
}
}
elsif ($opt eq 'screenSaverTimer') {
my $value = shift @$a;
return "Usage: set $name $opt {seconds}" if (!defined ($value));
$response = FULLY_Execute ($hash, "setStringSetting",
{ "key" => "timeToScreensaverV2", "value" => "$value" }, 1);
}
elsif ($opt eq 'screenSaverURL') {
my $value = shift @$a;
return "Usage: set $name $opt {URL}" if (!defined ($value));
$response = FULLY_Execute ($hash, "setStringSetting",
{ "key" => "screensaverURL", "value" => "$value" }, 1);
}
elsif ($opt eq 'brightness') {
my $value = shift @$a;
return "Usage: set $name brightness 0-255" if (!defined ($value));
@ -620,6 +652,18 @@ sub FULLY_Ping ($$)
<li><b>set &lt;name&gt; restart</b><br/>
Restart Fully.
</li><br/>
<li><b>set &lt;name&gt; screenOffTimer &lt;seconds&gt;</b><br/>
Turn screen off after some idle seconds, set to 0 to disable timer.
</li><br/>
<li><b>set &lt;name&gt; screenSaver { start | stop }</b><br/>
Start or stop screen saver. Screen saver URL can be set with command <b>set screenSaverURL</b>.
</li><br/>
<li><b>set &lt;name&gt; screenSaverTimer &lt;seconds&gt;</b><br/>
Show screen saver URL after some idle seconds, set to 0 to disable timer.
</li><br/>
<li><b>set &lt;name&gt; screenSaverURL &lt;URL&gt;</b><br/>
Show this URL when screensaver starts, set daydream: for Android daydream or dim: for black.<br/>
</li><br/>
<li><b>set &lt;name&gt; speak &lt;text&gt;</b><br/>
Audio output of <i>text</i>. If <i>text</i> contains blanks it must be enclosed
in double quotes. The text can contain device readings in format [device:reading].