Unterstützung bei Talk2Fhem Stell die Rollade im Wohnzimmer 5 Prozent höher

Begonnen von ahlermi, 15 Oktober 2018, 08:52:42

Vorheriges Thema - Nächstes Thema

ahlermi

Hallo Zusammen,

ich habe gerade gerade ein Statement gebaut um die Rolladen, Lautstärke etc, zu verändern.
etwas, ein wenig, viel, alles klappt, die Prozentuale Angabe macht aber Probleme, wie ich das Log verstehe erkennt talk die Position "5 Prozent" im array nicht, da im Array Regex enthalten ist, jemand eine Idee?

Gruß Michael


#Rolladen verändern
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ((\d+) (?:prozent|%|db)|ein 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)|(lauter)|(leiser)) =
  (cmd=>{fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $5[0,$6,3,7,15,empty,7]")},
   answer=>'(( "$7[up,down,up,down]" eq "up") ? "$1{/bitte/=>Gern, else=>Das heißt Bitte}, ich fahre die $2 in folgenden Räumen $DATE $5[0,$6,3,7,15,empty,7] $2{/Lautstärke/=>Prozent, else=>Prozent} $2{/Lautstärke/=>lauter, else=>rauf}: " : "$1{/bitte/=>Gern, else=>Das heißt Bitte}, ich fahre die $2 in folgenden Räumen $DATE $5[0,$6,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")')

Zitat
2018.10.15 08:44:27 5: Match: rolladewohnzimmer5 Prozent höher
2018.10.15 08:44:27 5: Unmatch: stell die im
2018.10.15 08:44:27 4: Hit with phrase: qr/?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ((\d+) (?:prozent|%|db)|ein 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)|(lauter)|(leiser))/i
2018.10.15 08:44:27 5: Handle reaction cmd: {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $5[0,$6,3,7,15,empty,7]")}
2018.10.15 08:44:27 5: Simple bracket selection (No. 2) with Keyword 0: 'Rollade'
2018.10.15 08:44:27 5: Simple bracket selection (No. 3) with Keyword 1: 'Wohnzimmer|Wohnbereich'
2018.10.15 08:44:27 5: Simple bracket selection (No. 4) with Keyword 6: ''
2018.10.15 08:44:27 5: Simple bracket selection (No. 6): '5'
2018.10.15 08:44:27 4: Replaced bracket: {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $5[0,$6,3,7,15,empty,7]")} -> {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] $5[0,5,3,7,15,empty,7]")}
2018.10.15 08:44:27 4: Advanced bracket replacement. $50,5,3,7,15,empty,7 = {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] ###")}
2018.10.15 08:44:27 4: Keyword (5): '5 Prozent'
2018.10.15 08:44:27 5: ARRAY evaluation: else:  empty: 7
array: 0 5 3 7 15
2018.10.15 08:44:27 5: Numeral word found. '5 Prozent' converted to; 5 Prozent
2018.10.15 08:44:27 5: Clipnumber 5 is no array! Try to extract by seperator '|'
2018.10.15 08:44:27 4: Searching position of '5 Prozent' in '(\d+)  (?:prozent|%|db) ein wenig etwas viel'
2018.10.15 08:44:27 1: ARRAY Replacement Failed! {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] ###")}
2018.10.15 08:44:27 4: Advanced bracket replacement. $7up,down,volumeUp,volumeDown = {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* ### ###")}
2018.10.15 08:44:27 4: Keyword (7): 'höher'

Hier mal das ganze Log:
Zitat
2018.10.15 08:44:27 5: Command after Phrasecheck: stell die im
2018.10.15 08:44:27 5: Keylists: $VAR1 = undef;
$VAR2 = undef;
$VAR3 = 'types_blind';
$VAR4 = 'rooms';
$VAR5 = 'properties';

2018.10.15 08:44:27 5: Filled lists: $VAR1 = '(bitte)';
$VAR2 = '(Rollade|Rollos|Lautstärke|Lüfter)';
$VAR3 = '(Haus|überall|Wohnung|Wohnzimmer|Wohnbereich|BadS*|Toilette|Wc|Büro|Arbeitszimmer|eg|ErdgeschoSS?|Draußen|Schlafzimmer|Esszimmer|Bastelzimmer|Keller|Alice|Flur|Waschküche|Terasse|Küche)';
$VAR4 = '(hell|dunkel|schwach|klein|groß|doof)';
$VAR5 = '((\\d+) (?:prozent|%|db)|ein 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)|(lauter)|(leiser))';

2018.10.15 08:44:27 5: Words: $VAR1 = '';
$VAR2 = undef;
$VAR3 = 'rollade';
$VAR4 = 'wohnzimmer';
$VAR5 = undef;
$VAR6 = '5 Prozent';
$VAR7 = '5';
$VAR8 = 'höher';
$VAR9 = 'höher';
$VAR10 = undef;
$VAR11 = undef;
$VAR12 = undef;

2018.10.15 08:44:27 5: Match: rolladewohnzimmer5 Prozent höher
2018.10.15 08:44:27 5: Unmatch: stell die im
2018.10.15 08:44:27 4: Hit with phrase: qr/?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ((\d+) (?:prozent|%|db)|ein 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)|(lauter)|(leiser))/i
2018.10.15 08:44:27 5: Handle reaction cmd: {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $5[0,$6,3,7,15,empty,7]")}
2018.10.15 08:44:27 5: Simple bracket selection (No. 2) with Keyword 0: 'Rollade'
2018.10.15 08:44:27 5: Simple bracket selection (No. 3) with Keyword 1: 'Wohnzimmer|Wohnbereich'
2018.10.15 08:44:27 5: Simple bracket selection (No. 4) with Keyword 6: ''
2018.10.15 08:44:27 5: Simple bracket selection (No. 6): '5'
2018.10.15 08:44:27 4: Replaced bracket: {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>$2@}.*:FILTER=T2F_rooms=.*($3@).*:FILTER=T2F_properties=.*$4@.* $7[up,down,volumeUp,volumeDown] $5[0,$6,3,7,15,empty,7]")} -> {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] $5[0,5,3,7,15,empty,7]")}
2018.10.15 08:44:27 4: Advanced bracket replacement. $50,5,3,7,15,empty,7 = {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] ###")}
2018.10.15 08:44:27 4: Keyword (5): '5 Prozent'
2018.10.15 08:44:27 5: ARRAY evaluation: else:  empty: 7
array: 0 5 3 7 15
2018.10.15 08:44:27 5: Numeral word found. '5 Prozent' converted to; 5 Prozent
2018.10.15 08:44:27 5: Clipnumber 5 is no array! Try to extract by seperator '|'
2018.10.15 08:44:27 4: Searching position of '5 Prozent' in '(\d+)  (?:prozent|%|db) ein wenig etwas viel'
2018.10.15 08:44:27 1: ARRAY Replacement Failed! {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $7[up,down,volumeUp,volumeDown] ###")}
2018.10.15 08:44:27 4: Advanced bracket replacement. $7up,down,volumeUp,volumeDown = {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* ### ###")}
2018.10.15 08:44:27 4: Keyword (7): 'höher'
2018.10.15 08:44:27 5: ARRAY evaluation: else:  empty:
array: up down volumeUp volumeDown
2018.10.15 08:44:27 5: Numeral word found. 'höher' converted to; höher
2018.10.15 08:44:27 5: Clipnumber 7 is no array! Try to extract by seperator '|'
2018.10.15 08:44:27 4: Searching position of 'höher' in '(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) (lauter) (leiser)'
2018.10.15 08:44:27 5: Found 'höher' at position 0
2018.10.15 08:44:27 1: ARRAY Replacement Failed! {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* up ###")}
2018.10.15 08:44:27 4: Advanced bracket replacement. $2empty=>.+, else=>Rollade = {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*###.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* up ###")}
2018.10.15 08:44:27 4: Keyword (2): 'rollade'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'else' => {
                      'val' => 'Rollade',
                      'order' => 1
                    },
          'empty' => {
                       'val' => '.+',
                       'order' => 0
                     }
        };

2018.10.15 08:44:27 5: Unkown word 'rollade' replace with 'Rollade'
2018.10.15 08:44:27 1: No hit on advanced bracket selection: {fhem("define at_talk_rollade at +00:00:01 set T2F_types_blind=.*Rollade.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* up ###")}
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && (auf (\d+) (?:prozent|%|db)|(\S+$))( stellen| setzen| einstellen| ein)?$/i
2018.10.15 08:44:27 5: Command after Phrasecheck: stell die im 5 Prozent
2018.10.15 08:44:27 5: Keylists: $VAR1 = undef;
$VAR2 = undef;
$VAR3 = 'types_blind';
$VAR4 = 'rooms';
$VAR5 = 'properties';

2018.10.15 08:44:27 5: Filled lists: $VAR1 = '(bitte)';
$VAR2 = '(Rollade|Rollos|Lautstärke|Lüfter)';
$VAR3 = '(Haus|überall|Wohnung|Wohnzimmer|Wohnbereich|BadS*|Toilette|Wc|Büro|Arbeitszimmer|eg|ErdgeschoSS?|Draußen|Schlafzimmer|Esszimmer|Bastelzimmer|Keller|Alice|Flur|Waschküche|Terasse|Küche)';
$VAR4 = '(hell|dunkel|schwach|klein|groß|doof)';
$VAR5 = '(auf (\\d+) (?:prozent|%|db)|(\\S+$))( stellen| setzen| einstellen| ein)?$';

2018.10.15 08:44:27 5: Words: $VAR1 = '';
$VAR2 = undef;
$VAR3 = 'rollade';
$VAR4 = 'wohnzimmer';
$VAR5 = undef;
$VAR6 = 'höher';
$VAR7 = undef;
$VAR8 = 'höher';
$VAR9 = undef;

2018.10.15 08:44:27 5: Match: rolladewohnzimmerhöher
2018.10.15 08:44:27 5: Unmatch: stell die im 5 Prozent
2018.10.15 08:44:27 4: Hit with phrase: qr/?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && (auf (\d+) (?:prozent|%|db)|(\S+$))( stellen| setzen| einstellen| ein)?$/i
2018.10.15 08:44:27 5: Handle reaction cmd: 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} } }
2018.10.15 08:44:27 5: Simple bracket selection (No. 2) with Keyword 0: 'Rollade'
2018.10.15 08:44:27 5: Simple bracket selection (No. 3) with Keyword 1: 'Wohnzimmer|Wohnbereich'
2018.10.15 08:44:27 5: Simple bracket selection (No. 4) with Keyword 6: ''
2018.10.15 08:44:27 4: Replaced bracket: 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} } } -> set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} , 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} } }
2018.10.15 08:44:27 4: Advanced bracket replacement. $2/Lautstärke/=>volume 0,/Lüfter/=>0, else=>pct 0 = set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} , else=>$7{true=>$2{/Lautstärke/=>volume 70,/Lüfter/=>250, else=>pct 100}, false=>### } }
2018.10.15 08:44:27 4: Keyword (2): 'rollade'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          '/Lautstärke/' => {
                               'order' => 0,
                               'val' => 'volume 0'
                             },
          '/Lüfter/' => {
                           'order' => 1,
                           'val' => '0'
                         },
          'else' => {
                      'order' => 2,
                      'val' => 'pct 0'
                    }
        };

2018.10.15 08:44:27 5: Unkown word 'rollade' replace with 'pct 0'
2018.10.15 08:44:27 4: Advanced bracket replacement. $2/Lautstärke/=>volume 70,/Lüfter/=>250, else=>pct 100 = set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} , else=>$7{true=>###, false=>pct 0 } }
2018.10.15 08:44:27 4: Keyword (2): 'rollade'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'else' => {
                      'order' => 2,
                      'val' => 'pct 100'
                    },
          '/Lautstärke/' => {
                               'order' => 0,
                               'val' => 'volume 70'
                             },
          '/Lüfter/' => {
                           'order' => 1,
                           'val' => '250'
                         }
        };

2018.10.15 08:44:27 5: Unkown word 'rollade' replace with 'pct 100'
2018.10.15 08:44:27 4: Advanced bracket replacement. $7true=>pct 100, false=>pct 0  = set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} , else=>### }
2018.10.15 08:44:27 4: Keyword (7): 'höher'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'false' => {
                       'val' => 'pct 0',
                       'order' => 1
                     },
          'true' => {
                      'order' => 0,
                      'val' => 'pct 100'
                    }
        };

2018.10.15 08:44:27 1: HASH Replacement Failed! set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>$2{/Lautstärke/=>volume, /Lüfter/=>, else=>pct} , else=>### }
2018.10.15 08:44:27 4: Advanced bracket replacement. $2/Lautstärke/=>volume, /Lüfter/=>, else=>pct = set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* $6{integer=>### , else=>### }
2018.10.15 08:44:27 4: Keyword (2): 'rollade'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'else' => {
                      'order' => 2,
                      'val' => 'pct'
                    },
          '/Lautstärke/' => {
                               'val' => 'volume',
                               'order' => 0
                             },
          '/Lüfter/' => {
                           'order' => 1,
                           'val' => ''
                         }
        };

2018.10.15 08:44:27 5: Unkown word 'rollade' replace with 'pct'
2018.10.15 08:44:27 4: Advanced bracket replacement. $6integer=>pct , else=>###  = set T2F_types_blind=.*$2{empty=>.+, else=>Rollade}.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* ###
2018.10.15 08:44:27 4: Keyword (6): ''
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'else' => {
                      'order' => 1,
                      'val' => '###'
                    },
          'integer' => {
                         'order' => 0,
                         'val' => 'pct'
                       }
        };

2018.10.15 08:44:27 5: Empty word replace with '###'
2018.10.15 08:44:27 5: Unkown word '' replace with '###'
2018.10.15 08:44:27 4: Advanced bracket replacement. $2empty=>.+, else=>Rollade = set T2F_types_blind=.*###.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* ###
2018.10.15 08:44:27 4: Keyword (2): 'rollade'
2018.10.15 08:44:27 5: HASH evaluation:
$VAR1 = {
          'empty' => {
                       'val' => '.+',
                       'order' => 0
                     },
          'else' => {
                      'val' => 'Rollade',
                      'order' => 1
                    }
        };

2018.10.15 08:44:27 5: Unkown word 'rollade' replace with 'Rollade'
2018.10.15 08:44:27 1: No hit on advanced bracket selection: set T2F_types_blind=.*Rollade.*:FILTER=T2F_rooms=.*(Wohnzimmer|Wohnbereich).*:FILTER=T2F_properties=.*.* ###
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /?(bitte) && ?(@types_heos) && ?(@rooms) && ?(@places) && (@heos_commands)/i
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /(bescheid|informire mich|benachrichtige mich)/i
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /?(bitte) && (@types_heating) && ?(@rooms) && (auf (\d+)(?: )(\d+)){0,1} (grad|auto\S*)( stellen| setzen| einstellen| ein)?$/i
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /Wie && ?(@properties) && (@types_info) && ?(@rooms) && ?(@places)/i
2018.10.15 08:44:27 5: talk Evaluate search:
stell die rollade im wohnzimmer 5 Prozent höher =~ /(zustand|status)( \S+)* (\S+)/i
2018.10.15 08:44:27 1: No match: 'stell die rollade im wohnzimmer 5 Prozent höher'
2018.10.15 08:44:27 1: Nothing to do: stell die rollade im wohnzimmer 5 Prozent höher
2018.10.15 08:44:27 3: No nicht gesetzt
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

ahlermi

OK, so gehts, aber schade das die andere Variante nicht klappt


#Rolladen verändern
?(bitte) && (@types_blind) && ?(@rooms) && ?(@properties) && ((\d+) (?:prozent|%|db)|ein 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)|(lauter)|(leiser)) =
  (cmd=>{fhem("define at_talk_rollade at +00:00:01 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, else=>Das heißt Bitte}, 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, else=>Das heißt Bitte}, 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")')
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN