====== Command Recognition - Befehlserkennung ====== ++++ Version History...| **Version 0.1.1** * Closed Beta, Bugfixing **Version 0.1.2** * Closed Beta * Erste soweit fehlerfreie Version **Version 0.1.3** * Closed Beta * Hilfe mit Command Quick Reference **Version 0.1.4 RELEASE** * Fehler mit eckigen Klammern in der Befehlserkennung gefixt * AutoFill von Chrome schlägt keine Adressen mehr vor **Version 0.1.5 RELEASE** * Gefixt: JavaScript-Exception in der Console * UI: Das rechte Ausgabefeld verwendet einen geringeren Zeilenabstand und etwas kleinere Schrift (mehr sichtbar) * UI: Das Eingabefeld ist jetzt mehrzeilig * UI: Eingabefeld mit Monospace-Font **Version 0.1.6 RELEASE** * Gefixt: Leerzeichen vor der Zahl wurden als "nicht erkannt" interpretiert (MS entfernt Leerzeichen) * UI: Das Plugin merkt sich URL, Command Recognition, Input Text während einer Session **Version 0.1.7 RELEASE** * Fixes plugin not working in Firefox and Edge because of an invalid regex flag (thanks Martin for discovering) **Version 0.1.8 RELEASE** * Fixes escaping of curved brackets ( ) from user input ++++ ---- ===== Download ===== Alle Releases: https://github.com/christianTF/LoxBerry-Plugin-CommandRecognition/releases Das Plugin ist - weil es so einfach ist - nur in Englisch verfügbar. ===== Funktion des Plugins ===== Das Plugin simuliert die Befehlserkennung von virtuellen HTTP- und UDP-Eingängen von Loxone und zeigt dabei das Ergebnis der Erkennung am Bildschirm an. Damit ist es leichter, eine geeignete Befehlserkennung zu erstellen, oder diese zu testen. So gehst du vor: ==== 1. Quelle wählen ==== {{plugins:command_recognition_befehlserkennung:1218019581.png?w=350}} Wähle aus, ob du eine Webseite abrufen oder den Text für die Suche selbst eingeben möchtest. === Option 1: Webpage === Bei Auswahl von Webpage gib die URL der Webseite (oder der Schnittstelle) im URL-Feld an und klicke "Abrufen".  Beachte: * Die Webseite wird vom LoxBerry abgerufen. Du musst später sicherstellen, dass dieser Abruf auch vom Miniserver aus erreichbar ist. * Das Plugin unterstützt https, nicht jedoch der Miniserver Gen. 1. Für https-Abrufe vom Miniserver Gen. 1 verwende das [[plugins:https2http:start|https2http]] Plugin. === Option 2: Eingabefeld === Gib ins Eingabefeld den zu durchsuchenden String an. Die Zeichen \n und \r usw. werden dabei unterstützt. Deine Eingabe wird direkt rechts in das Anzeigefeld übernommen ==== 2. Befehlserkennung eingeben ==== Gib ins Feld deine Befehlserkennung ein. Einen kurzen Überblick über die möglichen Befehle findest du in der Hilfe. Darunter findest du den **Status** und **gefundenen Wert**. Ist der Status "OK", liefern die Such-Kommandos einen Treffer. Ist der gefundene Wert eine Zahl, hat auch die Wert-Übernahme funktioniert. Ist die Suche erfolglos oder die Syntax deiner Befehlseingabe falsch, wird das im Status rot angezeigt. Gefundene Such-Passagen und Werte werden dir zudem rechts im Textbereich hinterlegt. Du kannst von dort auch HTML-Quellcode in deine Befehlserkennung übernehmen. {{plugins:command_recognition_befehlserkennung:1218019582.png?h=250}} ===== Einrichtung in der Loxone Config Software ===== Die im Plugin getesteten Befehlserkennungen können dann, z.B. mit Copy&Paste, in die Befehlserkennung von Virtuellen HTTP-Eingangs-Befehlen oder UDP-Eingangsbefehlen übernommen werden. ===== Roadmap ===== * Fehler/Feedback einarbeiten ===== Fragen stellen und Fehler melden ===== Die Art der Erkennung im Plugin ist auf Basis der Loxone-Dokumentation und Tests entstanden. Nicht jeder erdenkliche Fall ist getestet und könnte daher vom Ergebnis im Miniserver abweichen. Wenn du eine Abweichung zwischen Loxone Befehlserkennung und Plugin-Befehlserkennung feststellst: * Erstelle einen [[http://v|Issue]] oder einen Eintrag im entsprechenden Forums-Beitrag. * Hänge den verwendeten Input-Text (String oder HTML-File) an - __unbedingt__ den original HTML-Quelltext, nicht die vorformatierte Anzeige aus dem Browser * Übermittle die genaue Plugin-Versionsnummer. * Übermittle deine Befehlserkennung.  * Übermittle den Wert, den die Loxone Befehlserkennung ausgibt, sowie des Wertes/Fehlers, das das Plugin ausgibt. //Ohne diese Informationen ist kein Debugging möglich// - wer das nicht bekannt gibt, darf nicht mit einer Lösung rechnen. ===== Implementierungs- und Teststatus der Loxone-Syntax ===== Diese Tabelle zeigt, inwieweit die Syntax von Loxone schon im Plugin unterstützt ist, und ob die Funktion auch qualifiziert getestet ist.  Wenn es positive oder negative Rückmeldungen zu den einzelnen Kommandos gibt, aktualisiere ich hier den Teststatus. ^Syntax ^Beschreibung ^Implementiert^Teststatus^Informationen zum Status ^ |Such-Kommandos| | | | | |\x |Hexadezimal (z.B. \x09) |JA |OK | | |\\ |für \ |JA |OK | | |\. |irgendein Zeichen |JA |OK | | |\w |irgendein Wort |JA |TEILWEISE |Die Bedeutung von "irgendein Wort" ist unklar - implementiert wie in RegEx | |\# |irgendeine Nummer |JA |TEILWEISE |Unklar, ob dabei auch Minus, Punkt/Komma berücksichtigt wird. | |\t |Tab (0x09) |JA |OK | | |\b |0x20, 0x09 |JA |OK | | |\r |0x0d (CR) |JA |OK | | |\n |0x0a (LF) |JA |OK | | |\d |0-9 (Ziffern) |JA |OK | | |\m |A-Z, a-z, 0-9 (Ziffern und Buchstaben) |JA |OK | | |\a |A-Z, a-z (Buchstaben) |JA |OK | | |\s12 |12 Zeichen überspringen |JA |OK | | |\ixxx\i |Springe an die Stelle nach xxx |JA |OK | | |Wert-Übernahme| | | | | |\v |Wertetext (konkret muss es eine Nummer sein - Text funktioniert nicht)|JA |OK | | |\1 |Wertebyte 1 (niederwertigst) |JA |OK | | |\2 |Wertebyte 2 |JA |FEHLER |[[https://github.com/christianTF/LoxBerry-Plugin-CommandRecognition/issues/5|Siehe #5]] | |\3 |Wertebyte 3 |JA |FEHLER |[[https://github.com/christianTF/LoxBerry-Plugin-CommandRecognition/issues/5|Siehe #5]] | |\4 |Wertebyte 4 |JA |FEHLER |[[https://github.com/christianTF/LoxBerry-Plugin-CommandRecognition/issues/5|Siehe #5]] | |\h |Wertetext als Hexadezimalzahl |JA |TEILWEISE |Interpretation direkt des Hex-Wertes. Unklar, ob Loxone das Präfix 0x (z.B. 0xAABBCC) unterstützt.| \\ \\