Akustisches Feedback mit Synology DiskStation: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „Manchmal kann es nützlich sein, eine Rückmeldung zu bekommen, ob ein Tastendruck vom System empfangen wurde bzw. welchen Status das System nach einer Aktion …“) |
Keine Bearbeitungszusammenfassung |
||
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 4: | Zeile 4: | ||
Diese kann immerhin einen langen und einen kurzen Piepton erzeugen - diese unterscheiden sich zwar nicht sehr, aber doch genug, dass man damit Signale geben kann. Hierzu den folgenden Programmcode in <code>99_MyUtils.pm</code> (oder ein beliebiges eigenes Modul) einfügen: | Diese kann immerhin einen langen und einen kurzen Piepton erzeugen - diese unterscheiden sich zwar nicht sehr, aber doch genug, dass man damit Signale geben kann. Hierzu den folgenden Programmcode in <code>99_MyUtils.pm</code> (oder ein beliebiges eigenes Modul) einfügen: | ||
<syntaxhighlight lang="perl">sub beep($) { | |||
# + = Langer Piep | # + = Langer Piep | ||
# - = Kurzer Piep | # - = Kurzer Piep | ||
Zeile 21: | Zeile 21: | ||
} | } | ||
undef; | undef; | ||
}</ | }</syntaxhighlight> | ||
Damit kann man nun "Melodien" ;) piepen lassen, z.B. beim Verlassen des Hauses, um den [[Zuhause-Status]] zu signalisieren. | Damit kann man nun "Melodien" ;) piepen lassen, z.B. beim Verlassen des Hauses, um den [[Zuhause-Status]] zu signalisieren. | ||
< | <syntaxhighlight lang="perl">set HomeStatus 1;; \ | ||
{beep('- + -')};; \ | {beep('- + -')};; \ | ||
... | ... | ||
set HomeStatus 3;; \ | set HomeStatus 3;; \ | ||
{beep('+ + +')};; \</ | {beep('+ + +')};; \</syntaxhighlight> | ||
[[Kategorie:Code Snippets]] |
Aktuelle Version vom 26. Juli 2017, 18:54 Uhr
Manchmal kann es nützlich sein, eine Rückmeldung zu bekommen, ob ein Tastendruck vom System empfangen wurde bzw. welchen Status das System nach einer Aktion hat. Da FS20-LED-Anzeigen vergleichsweise teuer sind (Stand: 10/2012), hier ein Beispiel für Nutzer einer Synology DiskStation (getestet auf DS211j).
Diese kann immerhin einen langen und einen kurzen Piepton erzeugen - diese unterscheiden sich zwar nicht sehr, aber doch genug, dass man damit Signale geben kann. Hierzu den folgenden Programmcode in 99_MyUtils.pm
(oder ein beliebiges eigenes Modul) einfügen:
sub beep($) {
# + = Langer Piep
# - = Kurzer Piep
# anderes = Pause
my($s) = @_;
for(my $i=0;$i<length($s);$i++) {
my $x=substr($s,$i,1);
if($x eq "+") {
# 3 = long beep
system("echo 3 >/dev/ttyS1");
} elsif($x eq "-") {
# 2 = short beep
system("echo 2 >/dev/ttyS1");
}
select(undef, undef, undef, 0.25);
}
undef;
}
Damit kann man nun "Melodien" ;) piepen lassen, z.B. beim Verlassen des Hauses, um den Zuhause-Status zu signalisieren.
set HomeStatus 1;; \
{beep('- + -')};; \
...
set HomeStatus 3;; \
{beep('+ + +')};; \