Hallo zusammen,
ich habe nun eine Version gebaut mit der ich recht zufrieden bin, die SNIPS ohne große Konfiguration benutzt.
define Snips SNIPS SnipsMQTT Wohnzimmer
attr Snips response DefaultError=
NoActiveMediaDevice=
attr Snips userattr wohnzimmer_volume
Ein Dummy device:
define d_snips_dummy dummy
attr d_snips_dummy room Snips
attr d_snips_dummy snipsName Lampe, Licht, Heizung, Temperatur, Steckdose, Waschmaschine, Stehlampe, Deckenlampe, Vitrine, Kino, Leuchte, Rapsi, Denon, Anlage, Verstärker, Musik, Zone, Bluetooth, Leinwand, Radio, Wasserkocher,Rollade, Rollos, Lautstärke
attr d_snips_dummy snipsRoom Haus,überall,Wohnung, Wohnzimmer,Wohnbereich, Bad, Toilette,Wc, Büro,Arbeitszimmer, Erdgeschoss, Draußen, Schlafzimmer, Esszimmer, Bastelzimmer, Keller, Alice, Flur, Waschküche, Terasse, Küche
attr d_snips_dummy userattr snipsChannels:textField-long
attr d_snips_dummy snipsChannels Mediaplayer=Mediaplayer
Mediacenter=Mediacenter
kodi=kodi
xbmc=xbmc
OnlineMusic=OnlineMusic
Online Music=OnlineMusic
heos=heos
internet=internet
Sat=SCbl/Sat
Satellit=SCbl/Sat
Bluetooth=Bluetooth
handy=handy
echo=echo
Einmal Code um das Input rauszuspalten
define ej_SNIPS expandJSON Snips:lastIntentPayload:.\{.*input.*} input
Reaktion auf gesprochenen Text:
define n_Snips_input notify
Snips:input:.* {
$EVENT =~ s/\srein/\sein/g;
fhem("attr talk Snips Snips");
fhem("set talk " . ( split / /, $EVENT, 2 )[1]);
}
Merken das der Text von Snips kam damit nicht alles über Lautsprecher ausgegeben wird.
attr talk userattr Snips
Antworten auf Reaktion von Talk2Fhem
define n_Snips notify talk:answers:.*|talk:err:.*|talk:response:.*|talk:status.*done.* {
my $text = ["Das habe ich nicht verstanden!","Phuu das kann ich noch nicht!","keine Ahnung was du von mir willst.", "Wie bitte?"]->[rand(4)];
if (AttrVal($NAME, "Snips", " ") ne " "){
if ($EVTPART1 eq "done"){
fhem ("set " . AttrVal($NAME, "Snips", " ") . " say alles klar!");
}elsif ($EVTPART0 eq "err:"){
fhem ("set " . AttrVal($NAME, "Snips", " ") . " say " . $text);
}else{
fhem ("set " . AttrVal($NAME, "Snips", " ") . " say " . ( split / /, $EVENT, 2 )[1]);
}
fhem ("deleteattr " . $NAME . " Snips");
}
}
Lautsprecher leise schalten um Sprachbefehl besser zu verstehen.
define n_snips_listening_wohnzimmer notify Snips:listening_wohnzimmer.* {
if ($EVTPART1 == 1 ){
if (ReadingsVal("Denon","zoneMain","") eq "on"){
fhem("attr $NAME wohnzimmer_volume " . ReadingsVal("Denon","volume","40"));
fhem("set Denon volume 20");
}
}else{
fhem("set Denon volume " . AttrVal($NAME, "wohnzimmer_volume", "40"));
fhem("deleteattr $NAME wohnzimmer_volume");
}
}
Shortcuts:
attr Snips shortcuts wir gehen=define a_Snips_tmp at +00:00:00 setreading Snips input wir gehen
interessanter Ansatz, das beobachte ich mal weiter. Wobei ich das vielleicht mal mit https://wiki.fhem.de/wiki/Modul_Babble versuche zu verheiraten.
Gruss
Enno
Zahlen müssen konvertiert werden, SNIPS schickt im input text
so wird aus
fahre die große rollade im wohnzimmer auf siebzig prozent
fahre die große rollade im wohnzimmer auf 70 prozent
installieren:
perl -MCPAN -e 'install Lingua::DEU::Word2Num'
ausgelagert in eine Routine in 99_myT2FUtils.pm:
use Lingua::DEU::Word2Num;
sub clean_talk($){
my $input = "";
my $num = 0;
my @Words = ();
my @EVENTS = ();
my $word = "";
my $word_conv = "";
my $word1 = false;
my $word1_char = "";
my $word1_num = 0;
my $word2 = false;
my $calc_num = 0;
$input = $_[0];
Log 3, "clean_talk: " . $input;
@EVENTS = ( split / /, $input );
if (!defined($EVENTS[0])){
Log 3, "not defined";
push @EVENTS, $input;
}
foreach(@EVENTS) {
$word = "$_";
# $word =~ s/sein/ein/g;
# $word =~ s/rein/ein/g;
# $word =~ s/raus/aus/g;
$word_conv = $word;
$word_conv =~ s/ß/ss/g;
undef $num;
$num = Lingua::DEU::Word2Num::w2n($word_conv);
if ( $word_conv eq "fünfzig" ){
$num = 50;
}
if ( $word_conv eq "fünf" ){
$num = 5;
}
if ( $word_conv eq "zwölf" ){
$num = 12;
}
Log 3, $word . " " . $num;
if ( $word eq "und" && $word1 == true ) {
$word2 = true;
}else{
if ( defined($num) ){
if ( $word1 == true ){
if ( $word2 == true ){
$calc_num = $word1_num + $num;
push @Words, $calc_num;
$word1 = false;
$word2 = false;
}else{
push @Words, $word1_num;
push @Words, $num;
$word1 = false;
}
}else{
$word1 = true;
$word1_num = $num;
$word1_char = $word;
}
}else{
if ( $word1 == true ){
if ( $word2 == true ){
push @Words, $word1_num;
push @Words, "und";
push @Words, $word;
$word1 = false;
$word2 = false;
}else{
push @Words, $word1_num;
push @Words, $word;
$word1 = false;
}
}else{
push @Words, $word;
$word1 = false;
$word2 = false;
}
}
}
}
if ( $word1 == true ){
push @Words, $word1_num;
}
return join(' ', @Words);
}
anpassen am input Notify n_Snips_input.
Snips:input:.* {
fhem("attr talk Snips Snips");
fhem("set talk Snips=" . clean_talk( (split(/ /, $EVENT, 2))[1] ) );
# fhem("set talk Snips=" . clean_talk($EVENT) );
}
Da die Befehle mit Zeitangaben oft falsch verstanden worden sind habe ich einen neuen Skill "FHEM Extension Time" nach Vorlage "FHEM" von Thyraz erstellt und Freigegeben.
Dieser Skill kann zusätzlich zu "FHEM" vom Thyraz hinzugefügt werden.
Hi,
top, klappt prima und ich muss nicht schon wieder alle Geräte neu mit Attributen bestücken ;-) und der Befehl auf Telegram und mit snips ist identisch.
Ein paar Exoten hab ich allerdings, evtl hat dazu einer eine Idee ;-)
Medizin bestätigen
Ein wenig|Etwas|viel| heller oder dunkler
Geht das ohne ein custom intent?
Grüße
Achim
Hallo ahlermi,
ich bin noch absolut neu in dieser Materie.
Nur so für mein Verständnis:
1. Snips generiert einen Textoutput / Satz der dann an Talk2Fhem übergeben wird
2. Talk2Fhem wandelt den Satz und ist die Schnittstelle zu FHEM
Ist das korrekt so?
Kannst Du bitte mal die Gesamtinstallation beschreiben?
z.B. Snips - inwiefern ohne Konfiguration,
wie wird talk2fhem konfiguriert
und wie sieht die Spracheingabe aus, welche Sätze muss man sprechen, damit es funktioniert...
Ich habe noch gar keinen Plan wie ich anfangen soll Snips mit FHEM zu verheiraten..
VG Denis
Zitat von: CBSnake am 10 November 2018, 07:06:53
Hi,
top, klappt prima und ich muss nicht schon wieder alle Geräte neu mit Attributen bestücken ;-) und der Befehl auf Telegram und mit snips ist identisch.
Ein paar Exoten hab ich allerdings, evtl hat dazu einer eine Idee ;-)
Medizin bestätigen
Ein wenig|Etwas|viel| heller oder dunkler
Geht das ohne ein custom intent?
Grüße
Achim
Sowas wie Medizin bestätigen habe ich über die Snips Shortcuts gelöst.
attr shortcuts wir gehen={my_gehen( );}
Heller etc habe ich für Rollladen, also höher, ohne Custom intent.
#Rolladen verändern
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ((\d+) (?:prozent|%|db)|1 wenig|etwas|viel) ((höher|größer|weiter auf|weiter hoch|weiter öffnen|erhöhen|weiter rauf)|(niedriger|kleiner|weiter zu|weiter runter|weiter schließen|verringern|tiefer|runter)|(lauter)|(leiser)) =
(cmd=>{fhem("define at_talk_rollade_" . rand(600) . " at +00:00:02 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $6{integer=>$6, empty=>$5[0,0,3,7,15,empty,7]}")},
answer=>'(( "$7[up,down,up,down]" eq "up") ? "$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $6{integer=>$6, empty=>$5[0,0,3,7,15,empty,7]} $2{/Lautstärke/=>Prozent, else=>Prozent} $2{/Lautstärke/=>lauter, else=>rauf}: " : "$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $6{integer=>$6, empty=>$5[0,0,3,7,15,empty,7]} $2{/Lautstärke/=>Prozent, else=>Prozent} $2{/Lautstärke/=>leiser, else=>runter}: ").T2F_answer("T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*","T2F_types_blind")')
#Rolladen setzen
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && (auf (\d+) (?:prozent|%|db)|(hoch|runter|rauf|zu|auf|leise|laut|stumm))( stellen| setzen| einstellen| ein)?$ =
(cmd=>{fhem("define at_talk_rollade_" . rand(600) . " at +00:00:02 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} $6, else=>$7{true=>$2{/Lautstärke/=>volume 70,/Lüfter/=>250, else=>pct 100}, false=>$2{/Lautstärke/=>volume 0,/Lüfter/=>0, else=>pct 0} } }")},
answer=>'"$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $6{integer=>auf $6 Prozent, else=>$7{true=>$2{/Lautstärke/=>laut, else=>hoch}, false=>$2{/Lautstärke/=>leise, else=>runter} } }: ".T2F_answer("T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*","T2F_types_blind")')
Hallo Denis,
eigentlich steht alles im 1. Post erklärt was alles zu konfigurieren ist damit es funktioniert.
Wichtig ist, dass alle Wörter welche in Talk2Fhem verwendet werden in dem Dummy "d_snips_dummy" definiert sind, damit Snips die Wörter verstehen/erkennen kann. Hierzu habe ich mir ein DOIF gebastelt, welches alle Wörter zusammenstellt und in das Dummy schreibt. Für den Anfang kannst du aber einfach die Wörter händisch in das Dummy schreiben.
Alles andere ist dann die Konfigiration von Talk2Fhem https://wiki.fhem.de/wiki/Modul_Talk2Fhem (https://wiki.fhem.de/wiki/Modul_Talk2Fhem)
Habe die Antworten mal überarbeitet damit die nicht erfolgreiche Meldung einem nicht so auf den Kecks geht :)
Außerdem ein Beispiel für Shortcuts ohne Umweg über eigene Routinen.
Hallo Zusammen,
kann eventuell einer von Euch seine Talk2Fhem Installation posten. Ich stehe da aktuell auf dem Schlauch.
Vor allem komme ich aktuell mit meinen Wünschen in's straucheln.
Ich habe im WZ 5 Lampen. Normalerweise sind Abends 3 davon an (Stehlampe, dimmbare Deckenlampe über der Couch mit 40% und eine weitere). Mit Licht im Wohnzimmer anmachen, sollten also diese 3 eingeschaltet werden.
Wenn wir im WZ essen kommt die vierte über dem Esstisch dazu, und wenn ich etwas zu arbeiten habe wird das volle Programm angemacht, indem auch noch der Deckenfluter dazu kommt, und alle dimmbaren Lampen auf 100% gehen.
Wenn ich aber abends zu Bett gehe, möchte ich natürlich mit Licht im Wohnzimmer ausschalten alle 5 Lampen ausschalten, egal ob sie an waren oder nicht. Lässt sich das irgendwie in Snips und/oder Talk2Fhem reinpressen?
Mein zweites Verständnisproblem - Musik. Die Zentrale ist ein AV Receiver, der sowohl Internetradio abspielt, als auch Medien vom NAS im Keller, als auch in Verbindung mit anderen Geräten CDs, FIRETV, oder DVDs. Lässt sich das irgendwie kombinieren?
Media_Channels wäre bei einem dedizierten Internetradio der Sender - fein, das verstehe ich. Aber bei dem AV Receiver muss ja mit Chanel erstmal der Eingang Internetradio gewählt werden. wie bilde ich dann die nächste Ebene der Sender ab?
Gruß
Andreas
Hallo,
ich wollte das auch mal in die Richtung ausprobieren. Dabei bin ich auf den Ansatz und dem Hier gestoßen.
https://forum.fhem.de/index.php/topic,89548.825.html#ratethis
Und versuche gerade die Vorzüge von beidem zu betrachten. Welche seht Ihr wo?
Gruß
Meck
Talk
Internals:
DEF # <regex> = <command>
# Examples:
timer && (lösche|zurück) = set $NAME cleartimers
ereignis\S* && (lösche|zurück) = set $NAME cleartriggers
( lüften)([?]){0,1}$ = (answer => '{InternalVal("lueftentext","STATE","Ich weiß es nicht")}')
^(wir gehen|ich gehe)( (zur|zu) (\S+))?$ = (cmd=>{my_gehen()})
^(gute nacht|schlaf gut)( (\S+))?$ = (cmd=>{my_nacht()})
^(alles ok)( (\S+))?$ = set myalarmbell off
^(telefon|anruf) (ok|[\w üäö]*erledigt)$ = setreading FritzBox_CM event ok
^wo( (\S+))? robbi$ = (cmd =>{my_AlexaIntent("wo ist robbi")})
^such(\S+)? robbi$ = (cmd =>{my_AlexaIntent("wo ist robbi")})
^((IP|ip)|(\D+)?( (IP|ip))( )?)$ = ( answer => '"Die IP ist: " . ReadingsVal("FritzBox","box_ipExtern","")' )
#Garage
garage\S* (auf|hoch|rauf|zu|runter) = set HM_3A6FFD $1{ true => on, false => off }
#Robbi
robbi\S* (an|ein|aus) = set robbi $1{ true => on, false => off }
#Farben
?(bitte) && (@types_color) && ?(@rooms) && ?(@places) && auf (@colors)( schalten| stellen)?$ =
(cmd=>'set T2F_types_color=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.* RGB $5[@rgb]',
answer=>'"Ich schalte folgende Geräte $DATE auf $5@: ".T2F_answer("T2F_types_color=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.*","T2F_types_color")')
#Wecker
?(bitte) && (@types_wecker) && ?(@rooms) && (auf ((\d+) uhr(?:(?: )(\d+)){0,1})|(aus)\S*)( stellen| setzen| einstellen| ein)?$ =
(cmd=>'set T2F_types_wecker=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).* $8{/aus/=>Aus, empty=>$6$7{integer=>:$7, empty=>:00}}',
answer=>'"ich stelle den Wecker in folgenden Räumen $DATE auf $8{/aus/=>Aus, empty=>$6 Uhr $7{integer=>$7, word=>, else=>}}: ".T2F_answer("T2F_types_wecker=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*","T2F_types_wecker")')
#HEOS Channel
?(bitte) && (@types_heos) && ?(@rooms) && ?(@places) && (@heos_channels) =
(cmd=>'$3{empty=>, else=>set T2F_types_switch=.*Denon.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.* input OnlineMusic; } set T2F_types_heos=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.* channel $5[@heos_channel]',
answer=>'"Ich spiele $DATE Musik von $5 $3{empty=>, else=>im $3}"')
#Denon Input
?(bitte) && (@types_heos) && ?(@rooms) && ?(@places) && (@denon_inputs) =
(cmd=>'set T2F_types_switch=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.* input $5[@denon_input]',
answer=>'"Ich schalte folgende Geräte $DATE auf $5[@denon_input]: ".T2F_answer("T2F_types_switch=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.*","T2F_types_switch")')
#Rolladen verändern
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ?(@places) && ((\d+)(?:[ ]){0,1}(?:prozent|%|db)|1 wenig|etwas|viel) ((höher|größer|weiter auf|weiter hoch|weiter öffnen|erhöhen|weiter rauf)|(niedriger|kleiner|weiter zu|weiter runter|weiter schließen|verringern|tiefer|runter)|(lauter)|(leiser)) =
(cmd=>{fhem("define at_talk_rollade_" . rand(600) . " at +00:00:02 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*:FILTER=T2F_places=.*$5@.* $8[up,down,volumeUp,volumeDown] $7{integer=>$7, empty=>$6[0,0,3,7,15,empty,7]}")},
answer=>'(( "$8[up,down,up,down]" eq "up") ? "$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $7{integer=>$7, empty=>$5[0,0,3,7,15,empty,7]} $2{/Lautstärke/=>Prozent, else=>Prozent} $2{/Lautstärke/=>lauter, else=>rauf}: " : "$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $7{integer=>$7, empty=>$6[0,0,3,7,15,empty,7]} $2{/Lautstärke/=>Prozent, else=>Prozent} $2{/Lautstärke/=>leiser, else=>runter}: ").T2F_answer("T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*:FILTER=T2F_places=.*$5@.*","T2F_types_blind")')
#Rolladen setzen
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ?(@places) && (auf (\d+)(?:[ ]){0,1}(?:prozent|%|db)|(hoch|runter|rauf|zu|auf|leise|laut|stumm))( stellen| setzen| einstellen| ein)?$ =
(cmd=>{fhem("define at_talk_rollade_" . rand(600) . " at +00:00:02 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*:FILTER=T2F_places=.*$5@.* $7{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} $7, empty=>$8{true=>$2{/Lautstärke/=>volume 70,/Lüfter/=>250, else=>pct 100}, false=>$2{/Lautstärke/=>volume 0,/Lüfter/=>0, else=>pct 0} } }")},
answer=>'"$1{/bitte/=>Gern\,} ich fahre die $2 in folgenden Räumen $DATE $7{integer=>auf $7 Prozent, empty=>$8{true=>$2{/Lautstärke/=>laut, else=>hoch}, false=>$2{/Lautstärke/=>leise, else=>runter} } }: ".T2F_answer("T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.*:FILTER=T2F_places=.*$5@.*","T2F_types_blind")')
#Schalter
?(bitte) && ?(@properties) && (@types_switch) && ?(@rooms) && ?(@places) && (\S+)(schalten|machen)?$ =
(cmd=>'set T2F_types_switch=.*$3@.*:FILTER=T2F_rooms=.*($4@).*:FILTER=T2F_properties=.*$2@.*:FILTER=T2F_places=.*$5@.* $6{true=>on, false=>off}',
answer=>'"$AGAIN" ? "dann $DATE wieder $6{true=>ein, false=>aus}" : "$1{/bitte/=>Gern\,} ich schalte folgende Geräte $DATE $6{true=>ein, false=>aus}: ".T2F_answer("T2F_types_switch=.*$3@.*:FILTER=T2F_rooms=.*($4@).*:FILTER=T2F_properties=.*$2@.*:FILTER=T2F_places=.*$5@.*","T2F_types_switch")')
#Licht
##(?:licht|lampe) (\S+ ){0,2}(@rooms) (\S+) = set $2[@lights] $3{ true => on, false => off }
#HEOS Player
?(bitte) && ?(@types_heos) && ?(@rooms) && ?(@places) && (@heos_commands) =
(cmd=>'set T2F_types_heos=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.* $5[@heos_command]',
answer=>'"Ich schalte folgende Geräte $DATE auf $5[@heos_command]: ".T2F_answer("T2F_types_heos=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_places=.*$4@.*","T2F_types_heos")')
#Bescheid
(bescheid|informire mich|benachrichtige mich) = { send_to_all("X","Talk", "Ich sollte bescheid geben$IF") }
#(bescheid|informire mich|benachrichtige mich) = $0{/kevin/=>hiphop,/jaqueline/=>gothik,else=>pop} "Ich sollte bescheid geben$IF"
#Heizung
?(bitte) && (@types_heating) && ?(@rooms) && (auf ((\d+)(?:(?: )(\d+)){0,1} (grad))|auto\S*)( stellen| setzen| einstellen| ein)?$ =
(cmd=>'set T2F_types_heating=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).* $8{/grad/=>desiredTemperature $6$7{integer=>.$7, word=>, else=>}, empty=>desiredTemperature auto}',
answer=>'"$AGAIN" ? "dann $DATE wieder auf Automatik" : "Die Durchschnittstemperatur beträgt dort zur Zeit ".averageTemp("T2F_types_heating=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*")." Grad\n$1{/bitte/=>Gern\,} ich stelle die Heizung in folgenden Räumen $DATE auf $8{/grad/=>$6 $7{integer=>komma $7, word=>, else=>} Grad, else=>Automatik}: ".T2F_answer("T2F_types_heating=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*","T2F_types_heating")')
#Status von etwas
Wie && ?(@properties) && (@types_info) && ?(@rooms) && ?(@places) = (answer=>'T2F_getInfo("T2F_types_info=.*$2@.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$1@.*:FILTER=T2F_places=.*$4@.*","$2@")')
#Zustand
(zustand|status)( \S+)* (\S+) =
( answer => {"Der Status ist ".(Value((devspec2array('a:alias~$3'))[0]) || "unbekannt")} )
FUUID 5c63f980-f33f-6442-f947-b40e2c60cb399870
NAME talk
NR 629
NTFY_ORDER 50-talk
STATE Ready
TYPE Talk2Fhem
READINGS:
2019-08-04 22:19:13 answers Ich schalte folgende Geräte auf stop: Denon im Wohnzimmer
2019-08-05 07:09:16 cmds {my_gehen()}
2019-08-02 23:47:58 err No match: ' im wohnzimmer auf onlinemusic'
2019-02-23 09:11:08 notifies
2019-08-05 07:09:15 origin alexa=
2019-08-05 07:09:16 response Fenster sind alle geschlossen. Fahrzeit zur Arbeit 27 Minuten, Verspätung 2 min. Auf wieder sehen
2019-08-05 07:09:15 set alexa=ich gehe
2019-08-05 07:09:16 status response
helper:
LOG Talk2Fhem Version: 0.6.0c
Decoding Text: alexa=ich gehe
Using User Filter: \bbitte\b,\bauch\b,\bkann\b,\bsoll\b
After correction:
ich gehe
Command part: 'ich gehe'
talk Evaluate search:
ich gehe =~ /wenn .*telefon.*?klingel/i
talk Evaluate search:
ich gehe =~ /wenn .*anruft/i
talk Evaluate search:
ich gehe =~ /wenn .*zuhause/i
talk Evaluate search:
ich gehe =~ /wenn .*alarm.*/i
talk Evaluate search:
ich gehe =~ /wenn .*fenster.*/i
talk Evaluate search:
ich gehe =~ /wenn .*tür.*/i
talk Evaluate search:
ich gehe =~ /wenn .*dunkel.*/i
talk Evaluate search:
ich gehe =~ /wenn .*hell.*/i
talk Evaluate search:
ich gehe =~ /timer && (lösche|zurück)/i
talk Evaluate search:
ich gehe =~ /ereignis\S* && (lösche|zurück)/i
talk Evaluate search:
ich gehe =~ /( lüften)([?]){0,1}$/i
talk Evaluate search:
ich gehe =~ /^(wir gehen|ich gehe)( (zur|zu) (\S+))?$/i
Command after Phrasecheck:
Keylists: $VAR1 = '^\\w+=';
Filled lists: $VAR1 = '^(wir gehen|ich gehe)( (zur|zu) (\\S+))?$';
Words: $VAR1 = 'alexa=';
$VAR2 = 'ich gehe';
$VAR3 = undef;
$VAR4 = undef;
$VAR5 = undef;
Match: ich gehe
Unmatch:
Hit with phrase: qr/^(wir gehen|ich gehe)( (zur|zu) (\S+))?$/i
Handle reaction cmd: {my_gehen()}
Result of cmd: $VAR1 = {
'cmd' => '{my_gehen()}'
};
Executing Command: {my_gehen()}
Pushed: {my_gehen()}
T2F_andwordlist:
&places:
Tür
Steckdose
Tisch
Decke
Esstisch
Hauswand
Haustür
Eingang
Heizung
Draußen
Oben
Feld
Hünern
Nottuln
fällt
&rooms:
Haus|überall|Wohnung
Wohnzimmer|Wohnbereich
BadS*
Toilette|Wc
Büro|Arbeitszimmer
eg|ErdgeschoSS?
Draußen|Garten
Schlafzimmer
Esszimmer
Bastelzimmer
Keller
Alice
Flur
Waschküche
Terasse
Terrasse
Küche
T2F_keywordlist:
colors:
Aus
Schwarz
Dunkles Schiefergrau
Schiefergrau
Helles Schiefergrau
Helles Stahlblau
Mattes Grau
Grau
Dunkelgrau
Silber
Hellgrau
Gainsboro
Rauchiges Weiß
Geisterweiß
Weiß
Schneeweiß
Elfenbein
Blütenweiß
Muschel
Altgold
Leinenfarbe
Antikes Weiß
Mandelweiß
Cremiges Papaya
Beige
Mais
Helles Goldrutengelb
Hellgelb
Chiffongelb
Blasse Goldrutenfarbe
Khaki
Gelb
Gold
Orange
Dunkles Orange
Goldrute
dunkle Goldrutenfarbe
Peru
Schokolade
Sattelbraun
Ocker
Braun
Dunkelrot
Kastanienbraun
Ziegelfarbe
Indischrot
Karmesinrot
Rot
Orangenrot
Tomatenrot
Koralle
Lachs
Helles Korallenrot
Dunkle Lachsfarbe
Helle Lachsfarbe
Sandbraun
Rosiges Braun
Gelbbraun
Grobes Braun
Weizen
Pfirsich
Navajoweiß
Tomatencreme
Rosige Lavenderfarbe
Altrosa
Rosa
Hellrosa
Leuchtendes Rosa
Fuchsie
Magentarot
Tiefrosa
Mittleres Violettrot
Blasses Violettrot
Pflaume
Distel
Lavendelfarbe
Violett
Orchidee
Dunkles Magentarot
Violett
Indigo
Blauviolett
Dunkles Violett
Dunkle Orchideenfarbe
Mittleres Violett
Mittlere Orchideenfarbe
Mittleres Schieferblau
Schieferblau
Dunkles Schieferblau
Mitternachtsblau
Marineblau
Dunkelblau
Mittelblau
Blau
Königsblau
Stahlblau
Kornblumenblau
Dodger-Blau
Tiefes Himmelblau
Helles Himmelblau
Himmelblau
Hellblau
Zyanblau
Blaugrün
Taubenblau
Helles Cyanblau
Aliceblau
Himmelblau
Cremig Pfefferminz
Honigmelone
Aquamarinblau
Türkis
Blasses Türkis
Mittleres Türkis
Dunkles Türkis
Mittleres Aquamarinblau
Helles Seegrün
Dunkles Zyanblau
Entenbraun
Kadettblau
Mittleres Seegrün
Dunkles Seegrün
Hellgrün
Blassgrün
Mittleres Frühlingsgrün
Frühlingsgrün
Zitronengrün
Gelbgrün
Seegrün
Waldgrün
Grün
Dunkelgrün
Olivfarbiges Graubraun
Dunkles Olivgrün
Olivgrün
Dunkles Khaki
Gelbgrün
Hellgrün
Grüngelb
denon_inputs:
Mediaplayer|Mediacenter|kodi|xbmc
OnlineMusic|heos|internet|Musik
Sat|Satellit
Bluetooth|handy|echo
Aux1|firetv|Amazon
heos_channels:
ndr(s)*2
ROCK-FM
Radio Kiepenkerl
wdr(s)*4
Schlager von heute
P!nk Radiosender|Pink
Amy
80|Achziger|80er
Roxette
Unheilig
Creedence Clearwater Revival
J.B.O.|JBO
Guns N Roses
Mumford & Sons|Mumford and Sons
Enya
70|70er|siebziger
Dire Straits
Elvis Presley
Irish & Celtic Folk|Irish Folk|Celtic Folk
Die Ärzte
Country
Montgomery Gentry
Die Prinzen
Pur
Rock-Hits
RADIO BOB
RADIO BOB Classic Rock
Mark Knopfler
heos_commands:
play|los|abspielen
pause|warte|^halt|halt
weiter|nächstes|next|vor
stop\S*
zurück
mengenrollo:
(\d+) (?:prozent|%|db)?
1 wenig
etwas
viel
places:
Tür
Steckdose
Tisch
Decke
Esstisch
Hauswand
Haustür
Eingang
Heizung
Draußen
Oben
Feld
Hünern
Nottuln
fällt
properties:
hell
dunkel
schwach
klein
groß
doof
rooms:
Haus|überall|Wohnung
Wohnzimmer|Wohnbereich
BadS*
Toilette|Wc
Büro|Arbeitszimmer
eg|ErdgeschoSS?
Draußen|Garten
Schlafzimmer
Esszimmer
Bastelzimmer
Keller
Alice
Flur
Waschküche
Terasse
Terrasse
Küche
types_blind:
Rollade
Rolllade
Rolladen
Rollladen
Rollos
Lautstärke
Lüfter
Musik
Anlage
types_color:
Lampe
Licht
types_heating:
Heizung
Heizungen
Temperatur
Wohnzimmer
Schlafzimmer
Bastelzimmer
Flur
Alice
Keller
Bad
types_heos:
Denon
Anlage
Verstärker
Radio
Zone
Musik
types_info:
warm
modus
Betriebsart
VentiS*
Temperatur
lüften
types_switch:
Steckdose
Waschmaschine
Stehlampe
Deckenlampe
Vitrine
Kino
Lampe
Licht
Leuchte
Rapsi
Denon
Anlage
Verstärker
Musik
Zone
Bluetooth
Leinwand
Radio
Wasserkocher
Tannenbaum
Pool
Schummerbeleuchtung
Eckbeleuchtung
Türbeleuchtung
types_wecker:
Wecker
T2F_modwordlist:
denon_input:
Mediaplayer
OnlineMusic
Cbl/Sat
Bluetooth
Aux1
heos_channel:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
heos_command:
play
pause
next
stop
back
lights:
alias=.*licht.*,alias=.*lampe.*
HM_50B996_Sw_01,HM_50B996_Sw_02
rgb:
000000
000000
8FBC8F
708090
778899
B0C4DE
696969
808080
A9A9A9
C0C0C0
D3D3D3
DCDCDC
F5F5F5
F8F8FF
FFFFFF
FFFAFA
FFFFF0
FFFAF0
FFF5EE
FDF5E6
FAF0E6
FAEBD7
FFEBCD
FFEFD5
F5F5DC
FFF8DC
FAFAD2
FFFFE0
FFFACD
EEE8AA
F0E68C
FFFF00
FFD700
FFA500
FF8C00
DAA520
B8860B
CD853F
D2691E
8B4513
A0522D
A52A2A
8B0000
800000
B22222
CD5C5C
DC143C
FF0000
FF4500
FF6347
FF7F50
FA8072
F08080
E9967A
FFA07A
F4A460
BC8F8F
D2B48C
DEB887
F5DEB3
FFDAB9
FFDEAD
FFE4C4
FFF0F5
FFE4E1
FFC0CB
FFB6C1
FF69B4
FF00FF
FF00FF
FF1493
C71585
DB7093
DDA0DD
D8BFD8
E6E6FA
EE82EE
DA70D6
8B008B
800080
4B0082
8A2BE2
9400D3
9932CC
9370DB
BA55D3
7B68EE
6A5ACD
483D8B
191970
000080
00008B
0000CD
0000FF
4169E1
4682B4
6495ED
1E90FF
00BFFF
87CEFA
87CEEB
ADD8E6
00FFFF
00FFFF
B0E0E6
E0FFFF
A0CE00
F0FFFF
F5FFFA
F0FFF0
7FFFD4
40E0D0
AFEEEE
48D1CC
00CED1
66CDAA
20B2AA
008B8B
008080
5F9EA0
3CB371
8FBC8F
90EE90
98FB98
00FA9A
00FF7F
00FF00
32CD32
2E8B57
228B22
008000
006400
6B8E23
556B2F
808000
BDB76B
9ACD32
7FFF00
ADFF2F
rollos:
alias=Rollade.*
st_rolladen_wohnzimmer
HM_54FFE5
HM_54FFE5
HM_54639A
if:
HASH(0x9c10b68)
HASH(0xa6fa280)
HASH(0xa325c70)
HASH(0xa632048)
HASH(0xa72fcc0)
HASH(0xa569b80)
HASH(0x9c0fe30)
HASH(0xa54ffd0)
notifiers:
phrase:
HASH(0xa69ba40)
HASH(0xa6dddb0)
HASH(0xa3ce580)
HASH(0x9eff6e8)
HASH(0x9aa6a78)
HASH(0x9ca8198)
HASH(0xa4aec40)
HASH(0x9c6eb68)
HASH(0x8e57580)
HASH(0x9e11b78)
HASH(0x82f8528)
HASH(0x9ed7e80)
HASH(0xa6d1f90)
HASH(0x9d2b600)
HASH(0xa6dbc68)
HASH(0xa25eb50)
HASH(0xa509f68)
HASH(0xa33e030)
HASH(0xa37f3d0)
HASH(0xa5dda70)
HASH(0x9df8ab8)
HASH(0x9a9eb80)
HASH(0xa5f0b48)
HASH(0x9d59670)
Attributes:
T2F_disableumlautescaping 1
T2F_filter \bbitte\b,\bauch\b,\bkann\b,\bsoll\b
T2F_if wenn .*telefon.*?klingel = [FritzBox_CM:event] eq "ring"
wenn .*anruft = [FritzBox_CM:event] eq "ring"
wenn .*zuhause = [michael:anwesend] eq "on"
wenn .*alarm.* = [st_alarm:state] ne "closed"
wenn .*fenster.* = [st_fenster:state] ne "closed"
wenn .*tür.* = [st_tuer:state] ne "closed"
wenn .*dunkel.* = [dunkel:state] ne "on"
wenn .*hell.* = [dunkel:state] ne "off"
T2F_keywordlist &rooms = Haus|überall|Wohnung, Wohnzimmer|Wohnbereich, Bad\S*, Toilette|Wc, Büro|Arbeitszimmer, eg|Erdgescho\S\S?, Draußen|Garten, Schlafzimmer, Esszimmer, Bastelzimmer, Keller, Alice, Flur, Waschküche, Terasse, Terrasse, Küche
colors = Aus, Schwarz, Dunkles Schiefergrau, Schiefergrau, Helles Schiefergrau, Helles Stahlblau, Mattes Grau, Grau, Dunkelgrau, Silber, Hellgrau, Gainsboro, Rauchiges Weiß, Geisterweiß, Weiß, Schneeweiß, Elfenbein, Blütenweiß, Muschel, Altgold, Leinenfarbe, Antikes Weiß, Mandelweiß, Cremiges Papaya, Beige, Mais, Helles Goldrutengelb, Hellgelb, Chiffongelb, Blasse Goldrutenfarbe, Khaki, Gelb, Gold, Orange, Dunkles Orange, Goldrute, dunkle Goldrutenfarbe, Peru, Schokolade, Sattelbraun, Ocker, Braun, Dunkelrot, Kastanienbraun, Ziegelfarbe, Indischrot, Karmesinrot, Rot, Orangenrot, Tomatenrot, Koralle, Lachs, Helles Korallenrot, Dunkle Lachsfarbe, Helle Lachsfarbe, Sandbraun, Rosiges Braun, Gelbbraun, Grobes Braun, Weizen, Pfirsich, Navajoweiß, Tomatencreme, Rosige Lavenderfarbe, Altrosa, Rosa, Hellrosa, Leuchtendes Rosa, Fuchsie, Magentarot, Tiefrosa, Mittleres Violettrot, Blasses Violettrot, Pflaume, Distel, Lavendelfarbe, Violett, Orchidee, Dunkles Magentarot, Violett, Indigo, Blauviolett, Dunkles Violett, Dunkle Orchideenfarbe, Mittleres Violett, Mittlere Orchideenfarbe, Mittleres Schieferblau, Schieferblau, Dunkles Schieferblau, Mitternachtsblau, Marineblau, Dunkelblau, Mittelblau, Blau, Königsblau, Stahlblau, Kornblumenblau, Dodger-Blau, Tiefes Himmelblau, Helles Himmelblau, Himmelblau, Hellblau, Zyanblau, Blaugrün, Taubenblau, Helles Cyanblau, Aliceblau, Himmelblau, Cremig Pfefferminz, Honigmelone, Aquamarinblau, Türkis, Blasses Türkis, Mittleres Türkis, Dunkles Türkis, Mittleres Aquamarinblau, Helles Seegrün, Dunkles Zyanblau, Entenbraun, Kadettblau, Mittleres Seegrün, Dunkles Seegrün, Hellgrün, Blassgrün, Mittleres Frühlingsgrün, Frühlingsgrün, Zitronengrün, Gelbgrün, Seegrün, Waldgrün, Grün, Dunkelgrün, Olivfarbiges Graubraun, Dunkles Olivgrün, Olivgrün, Dunkles Khaki, Gelbgrün, Hellgrün, Grüngelb
&places = Tür, Steckdose, Tisch, Decke, Esstisch, Hauswand, Haustür, Eingang, Heizung, Draußen, Oben, Feld, Hünern, Nottuln, fällt
types_color = Lampe,Licht
types_heating = Heizung, Heizungen, Temperatur, Wohnzimmer, Schlafzimmer, Bastelzimmer, Flur, Alice, Keller, Bad
types_switch = Steckdose, Waschmaschine, Stehlampe, Deckenlampe, Vitrine, Kino, Lampe, Licht, Leuchte, Rapsi, Denon, Anlage, Verstärker, Musik, Zone, Bluetooth, Leinwand, Radio, Wasserkocher, Tannenbaum, Pool, Schummerbeleuchtung, Eckbeleuchtung, Türbeleuchtung
types_blind = Rollade, Rolllade, Rolladen, Rollladen, Rollos, Lautstärke, Lüfter, Musik, Anlage
properties = hell, dunkel, schwach, klein, groß, doof
types_info = warm, modus, Betriebsart, Venti\S*, Temperatur, lüften
types_wecker = Wecker
#heos_channels = ndr(\s)*2, kiepenkerl, wdr(\s)*4, pink, amy, 80|Achziger, Roxette, Unheilig, 'Chreedence Clearwater Revival', JBO, 'Guns N Roses', 'Mumfort & Sons'
#heos_channels = 'NDR 2', ROCK-FM, RKStreamNord, WDR4, 'Schlager von heute', 'P!nk Radiosender', 'Amy Macdonald', 80er, Roxette, Unheilig, 'Creedence Clearwater Revival', J.B.O., 'Guns N Roses', 'Mumford & Sons', Enya, 70er, 'Dire Straits', 'Elvis Presley', 'Irish & Celtic Folk', 'Die Ärzte', Country, 'Montgomery Gentry', 'Die Prinzen', Pur
heos_channels = ndr(\s)*2, ROCK-FM, Radio Kiepenkerl, wdr(\s)*4, Schlager von heute, P!nk Radiosender|Pink, Amy, 80|Achziger|80er, Roxette, Unheilig, Creedence Clearwater Revival, J.B.O.|JBO, Guns N Roses, Mumford & Sons|Mumford and Sons, Enya, 70|70er|siebziger, Dire Straits, Elvis Presley, Irish & Celtic Folk|Irish Folk|Celtic Folk, Die Ärzte, Country, Montgomery Gentry, Die Prinzen, Pur, Rock-Hits, RADIO BOB, RADIO BOB Classic Rock, Mark Knopfler
heos_commands = play|los|abspielen, pause|warte|^halt|halt, weiter|nächstes|next|vor, 'stop\S*', zurück
types_heos = Denon, Anlage, Verstärker, Radio, Zone, Musik
denon_inputs = Mediaplayer|Mediacenter|kodi|xbmc, OnlineMusic|heos|internet|Musik, Sat|Satellit,Bluetooth|handy|echo, Aux1|firetv|Amazon
mengenrollo = '(\d+) (?:prozent|%|db)?', 1 wenig, etwas, viel
T2F_language DE
T2F_modwordlist rollos = alias=Rollade.*, st_rolladen_wohnzimmer, HM_54FFE5, HM_54FFE5, HM_54639A
lights = "alias=.*licht.*,alias=.*lampe.*", "HM_50B996_Sw_01,HM_50B996_Sw_02", , , ,
rgb = 000000, 000000, 8FBC8F, 708090, 778899, B0C4DE, 696969, 808080, A9A9A9, C0C0C0, D3D3D3, DCDCDC, F5F5F5, F8F8FF, FFFFFF, FFFAFA, FFFFF0, FFFAF0, FFF5EE, FDF5E6, FAF0E6, FAEBD7, FFEBCD, FFEFD5, F5F5DC, FFF8DC, FAFAD2, FFFFE0, FFFACD, EEE8AA, F0E68C, FFFF00, FFD700, FFA500, FF8C00, DAA520, B8860B, CD853F, D2691E, 8B4513, A0522D, A52A2A, 8B0000, 800000, B22222, CD5C5C, DC143C, FF0000, FF4500, FF6347, FF7F50, FA8072, F08080, E9967A, FFA07A, F4A460, BC8F8F, D2B48C, DEB887, F5DEB3, FFDAB9, FFDEAD, FFE4C4, FFF0F5, FFE4E1, FFC0CB, FFB6C1, FF69B4, FF00FF, FF00FF, FF1493, C71585, DB7093, DDA0DD, D8BFD8, E6E6FA, EE82EE, DA70D6, 8B008B, 800080, 4B0082, 8A2BE2, 9400D3, 9932CC, 9370DB, BA55D3, 7B68EE, 6A5ACD, 483D8B, 191970, 000080, 00008B, 0000CD, 0000FF, 4169E1, 4682B4, 6495ED, 1E90FF, 00BFFF, 87CEFA, 87CEEB, ADD8E6, 00FFFF, 00FFFF, B0E0E6, E0FFFF, A0CE00, F0FFFF, F5FFFA, F0FFF0, 7FFFD4, 40E0D0, AFEEEE, 48D1CC, 00CED1, 66CDAA, 20B2AA, 008B8B, 008080, 5F9EA0, 3CB371, 8FBC8F, 90EE90, 98FB98, 00FA9A, 00FF7F, 00FF00, 32CD32, 2E8B57, 228B22, 008000, 006400, 6B8E23, 556B2F, 808000, BDB76B, 9ACD32, 7FFF00, ADFF2F
heos_channel = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
heos_command = play, pause, next, stop, back
denon_input = Mediaplayer, OnlineMusic, Cbl/Sat, Bluetooth, Aux1
T2F_origin ^\w+=
room Alexa
userattr WhatsApp Snips teleBot
verbose 0
Denon
Internals:
CHANGED
Clients :DENON_AVR_ZONE:
DEF 192.168.69.102:23
DeviceName 192.168.69.102:23
FD 55
FUUID 5c63f97b-f33f-6442-2bae-b11f7d3124444d21
NAME Denon
NR 331
NTFY_ORDER 50-Denon
PARTIAL
STATE off
TIMEOUT 3
TYPE DENON_AVR
READINGS:
2018-11-02 17:44:04 HASH(0x8ceba08) on
2019-07-15 20:48:21 allZoneStereo off
2019-04-27 17:09:16 ampAssign HASH(0xdc3eea0)
2019-07-16 19:10:51 aspectRatio 16:9
2018-11-02 17:43:32 audioFormat 2/0/.0
2018-11-04 00:29:23 audioOutHDMI HASH(0x87111d8)
2019-07-30 10:30:33 audysseyLFC off
2019-07-15 20:48:22 autoStandby 15min
2019-08-04 22:01:33 bass 0
2019-07-16 19:10:51 cinemaEQ off
2019-08-03 00:22:44 currentAlbum -
2019-08-03 00:22:44 currentArtist -
2019-08-03 00:22:44 currentBitrate -
2019-08-03 00:22:44 currentCover http://192.168.69.102/img/album%20art_S.png?1564784564000
2019-08-03 00:22:44 currentMedia -
2019-08-03 00:22:44 currentPlaytime -
2019-08-03 00:22:44 currentStation -
2019-08-03 00:22:44 currentStream -
2019-08-03 00:22:44 currentTitle -
2018-11-02 17:46:28 dialogLevelAdjust 0
2019-08-03 00:22:44 digitalInput auto
2019-07-16 19:10:51 display bright
2019-08-04 22:01:33 dynamicCompression off
2019-08-03 00:22:44 dynamicEQ on
2019-08-03 00:22:44 dynamicVolume medium
2019-07-15 20:48:22 eco off
2018-11-02 17:46:30 graphicEQ off
2019-08-03 00:22:44 input Aux1
2019-08-03 00:22:44 inputSound hdmi
2019-08-03 00:22:44 levelCenter 0
2019-08-03 00:22:44 levelFrontLeft 0
2019-08-03 00:22:44 levelFrontRight 0
2019-08-03 00:22:44 levelSourroundLeft 0
2019-08-03 00:22:44 levelSourroundRight 0
2019-07-15 20:48:22 levelSubwoofer 0
2019-06-19 20:00:08 lock off
2019-07-16 19:10:51 loudness on
2019-08-04 22:01:33 lowFrequencyEffects 0
2019-06-19 20:00:08 model AVR-X4300H
2019-08-04 22:03:02 monitorOut 1
2019-08-03 00:22:44 multEQ reference
2019-07-30 10:30:31 mute off
2019-08-03 00:22:44 playStatus stopped
2019-08-05 07:09:16 power off
2019-07-30 10:30:31 presence present
2019-07-16 19:10:51 resolution auto
2019-07-16 19:10:51 resolutionHDMI auto
2019-08-04 22:22:32 samplingRate -
2019-07-15 20:48:21 setup off
2019-08-04 22:22:33 signal PCM
2019-07-30 10:30:31 sleep off
2019-08-04 22:01:33 sound HASH(0x80a3b68)
2019-08-05 07:09:05 state off
2019-08-05 08:08:52 stateAV off
2019-08-04 22:22:32 surroundMode Movie
2019-08-04 22:01:33 toneControl off
2019-08-04 22:01:33 treble 0
2019-07-16 19:10:51 trigger1 off
2019-07-16 19:10:51 trigger2 off
2019-07-16 19:10:51 tunerBand FM
2019-07-30 10:30:33 tunerFrequency 87.5 MHz
2019-07-16 19:10:51 tunerMode auto
2019-07-30 10:30:33 tunerPreset 1
2019-07-16 19:10:51 videoProcessingMode auto
2019-08-03 00:22:44 videoSelect off
2019-08-04 22:03:03 volume 45
2019-08-04 22:03:03 volumeMax 98
2019-08-04 22:03:03 volumeStraight -35
2019-08-05 07:09:05 zone2 off
2019-08-03 19:33:09 zone3 off
2019-08-05 08:08:52 zoneMain off
helper:
INPUT AUX1
PARTIAL
deviceIP 192.168.69.102
isPause 0
isPlaying 0
nextConnectionCheck 1564986237.72199
playTimeCheck 0
volume 45
Attributes:
T2F_rooms !Wohnzimmer, Erdgeschoss, Wohnbereich, Haus
T2F_types_blind !Lautstärke, Musik, Anlage
T2F_types_switch !Denon, Anlage, Verstärker, Musik, Zone, alles
cmdIcon muteT:rc_MUTE
devStateIcon on:rc_GREEN:main_off mainOff:rc_YELLOW:main_on off:rc_STOP:main_on absent:rc_RED:main_on muted:rc_MUTE@green:muteT playing:rc_PLAY@green:pause paused:rc_PAUSE@green:play disconnected:rc_RED
group Multimedia
room Wohnzimmer
stateFormat stateAV
userattr T2F_places:textField-long T2F_properties:textField-long T2F_rooms:textField-long T2F_types_color:textField-long T2F_types_heating:textField-long T2F_types_info:textField-long T2F_types_switch:textField-long T2F_types_blind:textField-long
webCmd volume:mute:input:sound:favorite:preset
Licht klein Wohnzimmer
Internals:
DEF 50B99602
FUUID 5c63f97e-f33f-6442-37be-7dfb9da67ad84388
NAME HM_50B996_Sw_02
NOTIFYDEV global
NR 550
NTFY_ORDER 50-HM_50B996_Sw_02
STATE off
TYPE CUL_HM
chanNo 02
device HM_50B996
READINGS:
2019-08-05 07:09:19 CommandAccepted yes
2019-08-05 07:09:19 deviceMsg off (to VCCU)
2019-08-05 07:09:19 level 0
2019-08-05 07:09:19 pct 0
2019-08-05 07:09:19 recentStateType ack
2019-08-05 07:09:19 state off
2019-08-05 07:09:19 timedOn off
2019-08-05 07:09:18 trigLast fhem:02
helper:
dlvlCmd ++A011F1345650B9960202000000
peerFriend peerSens,peerVirt
peerOpt 3:switch
regLst 1,3p
expert:
def 1
det 0
raw 1
tpl 0
role:
chn 1
tmpl:
Attributes:
T2F_properties klein
T2F_rooms !Wohnzimmer, Erdgeschoss, Wohnung, Haus, eg
T2F_types_switch !Deckenlampe, Licht, Lampe, Deckenbeleuchtung, alles
alias Wohnzimmer Licht klein
devStateIcon on:light_downlight@orange off:light_downlight
fp_Altbau 185,515,0
fp_WetterDash 363,415,0,HM_50B996_Sw_02,
genericDeviceType light
icon light_downlight
model HM-LC-SW2PBU-FM
room System->CUL_HM,Homebridge,Wohnzimmer
snipsMapping SetOnOff:cmdOn=on,cmdOff=off
GetOnOff:currentVal=state,valueOff=off,valueOn=on
snipsName Licht klein
snipsRoom Wohnzimmer
userattr Steckdose2 Steckdose2_map T2F_places:textField-long T2F_properties:textField-long T2F_rooms:textField-long T2F_types_blind:textField-long T2F_types_color:textField-long T2F_types_heating:textField-long T2F_types_info:textField-long T2F_types_switch:textField-long dummy dummy_map structexclude
webCmd statusRequest:toggle:on:off
MAX Heizung Wohnzimmer
Internals:
DEF HeatingThermostat 040549
FUUID 5c63f977-f33f-6442-10bb-01a31d6b1f3d9d52
IODev cm
NAME MAX_040549
NR 86
STATE auto, 26.9 (19.5)C
TYPE MAX
addr 040549
type HeatingThermostat
READINGS:
2019-07-27 10:08:47 RSSI -72.5
2018-09-27 21:24:55 TimeInformationHour 2
2019-07-27 10:08:41 battery low
2019-07-27 10:08:41 batteryState low
2019-07-27 10:08:41 desiredTemperature 19.5
2019-04-11 15:00:27 firmware 1.6
2019-04-11 15:00:27 groupid 0
2019-07-27 10:08:41 mode auto
2019-08-05 04:30:55 msgcnt 46
2019-07-27 10:08:47 state 19.5 °C (rf error)
2019-07-27 10:08:14 temperature 26.9
2019-04-11 15:00:27 testresult 255
2019-07-27 10:08:41 valveposition 0
2019-07-27 10:08:47 weekprofile-0-Sat-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-0-Sat-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
2019-07-27 10:08:47 weekprofile-1-Sun-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-1-Sun-time 00:00-08:30 / 08:30-22:00 / 22:00-00:00
2019-07-27 10:08:47 weekprofile-2-Mon-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-2-Mon-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
2019-07-27 10:08:47 weekprofile-3-Tue-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-3-Tue-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
2019-07-27 10:08:47 weekprofile-4-Wed-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-4-Wed-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
2019-07-27 10:08:47 weekprofile-5-Thu-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-5-Thu-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
2019-07-27 10:08:47 weekprofile-6-Fri-temp 18.0 °C / 19.5 °C / 18.0 °C
2019-07-27 10:08:47 weekprofile-6-Fri-time 00:00-08:30 / 08:30-23:00 / 23:00-00:00
internals:
interfaces thermostat;battery;temperature
Attributes:
IODev cm
T2F_places Heizung !
T2F_rooms Haus !Wohnzimmer
T2F_types_heating Heizung,Temperatur,Wohnzimmer
T2F_types_info warm,Temperatur => Die Heizung T2F_answer ist auf '.punkt_komma(ReadingsVal($device, 'desiredTemperature', '') ).' Grad eingestellt
modus,Betriebsart => Die Betriebsart T2F_answer ist #mode#(auto=Automatik)(manuel=Hand)
Venti.* => Das Ventil T2F_answer ist #valveposition# Prozent geöffnet
alias Heizung Wohnzimmer
fm_type temp,desiredtemp,tempbutton,actuators
fp_Altbau 140,485,5,Wohnzimmer,
fp_Home 140,485,5,Wohnzimmer
icon sani_heating_level_0
room Homebridge,System->MAX,Wohnzimmer
scanTemp 1
scnProcessByDesiChange 0
scnShutterList MAX_0d4aa5,MAX_0d48e4
snipsMapping SetNumeric:currentVal=desiredTemperature,cmd=desiredTemperature,minVal=5,maxVal=24,step=1,type=Temperatur
GetNumeric:currentVal=desiredTemperature,minVal=5,maxVal=24,type=Temperatur
snipsName Heizung, Temperatur
snipsRoom Wohnzimmer
stateFormat {sprintf("%s, %.1f (%.1f)C", ReadingsVal($name,"mode"," "), ReadingsVal($name,"temperature",0), ReadingsVal($name,"desiredTemperature",0))}
userattr scnProcessByDesiChange:0,1 scnShutterList scnModeHandling:NOCHANGE,AUTO,MANUAL desiredTemperature T2F_places:textField-long T2F_properties:textField-long T2F_rooms:textField-long T2F_types_color:textField-long T2F_types_heating:textField-long T2F_types_info:textField-long T2F_types_switch:textField-long T2F_types_blind:textField-long
webCmd desiredTemperature
Rollade Wohnzimmer Groß
Internals:
AHL3_MSGCNT 52
AHL3_RAWMSG A0DF0A41054640BF134560601C800::-81.5:AHL3
AHL3_RSSI -81.5
AHL3_TIME 2019-08-05 05:29:26
DEF 54640B
FUUID 5c63f97b-f33f-6442-c649-64c058c76ec4bdc0
IODev AHL3
LASTInputDev AHL3
MSGCNT 52
NAME HM_54640B
NOTIFYDEV global
NR 315
NTFY_ORDER 50-HM_54640B
STATE on
TYPE CUL_HM
chanNo 01
lastMsg No:F0 - t:10 s:54640B d:F13456 0601C800
peerList HM_37C0AA_Btn_01,HM_37C0AA_Btn_02,
protLastRcv 2019-08-05 05:29:24
protRcv 47 last_at:2019-08-05 05:29:24
protResnd 4 last_at:2019-08-04 05:27:08
protSnd 43 last_at:2019-08-05 05:29:26
protState CMDs_done
rssi_AHL3 cnt:19 min:-98 max:-88 avg:-93.36 lst:-93
rssi_HM_37C0AA cnt:7 min:-79 max:-70 avg:-74.28 lst:-72
rssi_at_AHL3 cnt:52 min:-99 max:-78 avg:-83.18 lst:-81.5
READINGS:
2019-08-05 05:28:55 CommandAccepted yes
2018-09-27 21:24:32 D-firmware 2.8
2018-09-27 21:24:32 D-serialNr OEQ0047961
2019-08-05 05:29:24 deviceMsg on (to VCCU)
2019-08-05 05:29:24 level 100
2019-08-05 05:29:24 motor stop:on
2019-08-05 05:29:24 pct 100
2019-07-30 10:30:07 peerList HM_37C0AA_Btn_01,HM_37C0AA_Btn_02,
2019-04-04 10:52:35 powerOn 2019-04-04 10:52:35
2019-08-05 05:29:24 recentStateType info
2019-08-05 05:28:53 sonnenschutz off
2019-08-05 05:29:24 state on
2019-08-05 05:29:24 timedOn off
2019-08-04 19:42:46 trigLast HM_37C0AA_Btn_01:short
2019-08-04 19:42:46 trig_HM_37C0AA_Btn_01 Short_135
helper:
HM_CMDNR 240
cSnd 11F1345654640B020100,11F1345654640B0201C8
dlvlCmd ++A011F1345654640B0201C8
mId 0005
peerFriend peerSens,peerVirt
peerOpt 3:blindActuator
regLst 0,1,3p
rxType 1
supp_Pair_Rep 0
dir:
cur stop
rct up
expert:
def 1
det 0
raw 1
tpl 0
io:
newChn +54640B,00,00,00
nextSend 1564975766.78031
prefIO
rxt 0
vccu
p:
54640B
00
00
00
mRssi:
mNo F0
io:
AHL3:
-79.5
-79.5
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf 00
qReqStat
role:
chn 1
dev 1
prs 1
rpt:
IO AHL3
flg A
ts 1564975766.68102
ack:
HASH(0x5ab1418)
F08002F1345654640B00
rssi:
AHL3:
avg -93.3684210526316
cnt 19
lst -93
max -88
min -98
HM_37C0AA:
avg -74.2857142857143
cnt 7
lst -72
max -70
min -79
at_AHL3:
avg -83.1826923076923
cnt 52
lst -81.5
max -78
min -99
tmpl:
Attributes:
IODev AHL3
T2F_properties klein, Garten
T2F_rooms Wohnzimmer
T2F_types_blind !Rollade, Rolllade, Rollos
alias Rollade Wohnzimmer Garten
autoReadReg 4_reqStatus
compass SE,SSE,S,SSW
devStateIcon on:fts_shutter_1w_0@orange:off off:fts_shutter_1w_100@orange:on opend:fts_shutter_1w_0@orange:off closed:fts_shutter_1w_100@orange:on [1-9](.5){0,1}:fts_shutter_1w_100@orange:on 1[0-9](.5){0,1}:fts_shutter_1w_90@orange:on 2[0-9](.5){0,1}:fts_shutter_1w_80@orange:on 3[0-9](.5){0,1}:fts_shutter_1w_70@orange:on 4[0-9](.5){0,1}:fts_shutter_1w_60@orange:on 5[0-9]:fts_shutter_1w_50@orange:off 6[0-9](.5){0,1}:fts_shutter_1w_40@orange:off 7[0-9](.5){0,1}:fts_shutter_1w_30@orange:off 8[0-9](.5){0,1}:fts_shutter_1w_20@orange:off 9[0-9](.5){0,1}:fts_shutter_1w_10@orange:off set_.*:scc_868@orange .*:fts_shutter_1w_100@red:on
expert 2_raw
firmware 2.8
fp_Altbau 220,515,0,HM_54640B
genericDeviceType blind
group Rollade
icon fts_window_2w
model HM-LC-BL1-FM
msgRepeat 14
peerIDs 00000000,37C0AA01,37C0AA02,
room System->CUL_HM,Homebridge,Wohnzimmer
serialNr OEQ0047961
snipsMapping SetNumeric:currentVal=pct,cmd=pct,minVal=0,maxVal=100,step=25
GetNumeric:currentVal=pct,cmd=pct,minVal=0,maxVal=100,step=25
snipsName Rollade
snipsRoom Wohnzimmer
sonnenschutzstand 100
subType blindActuator
userattr compass sonnenschutzstand automin automax fenster, T2F_places:textField-long T2F_properties:textField-long T2F_rooms:textField-long T2F_types_color:textField-long T2F_types_heating:textField-long T2F_types_info:textField-long T2F_types_switch:textField-long T2F_types_blind:textField-long
webCmd stop
Ich hoffe damit hast du erst mal das wichtigste ;-)
Heos Channels sind die Kanäle vom Denon wenn das Gerät auf OnlineMusik gestellt ist, also ist auch der Input Wechsel mit drin, guck dir das mal an #HEOS Channel