Ankündigung

Einklappen
Keine Ankündigung bisher.

Plugin speech parser

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Hallo,

    ich habe jetzt auch meine ersten Erfahrungen mit dem Plugin gemacht.
    Das Licht kann ich jetzt via Handy schalten. Klasse!
    Ich habe allerdings auch das oben angesprochene Time-Out Problem. Beispiel:
    Code:
    http://homeserver:2788/Licht%20im%20Wohnzimmer%20anschalten
    Es kommt sofort die Antwort
    Code:
    OK, Licht im wohnzimmer eingeschaltet.
    Allerdings lädt der Browser die Seite weiter bis zum Sanktnimmerleinstag. Ich vermute, dass dies der Grund für den Timeout ist. Aber woran liegt es, dass die Seite immer weiter geladen wird?

    Davon abgesehen: Mit :
    Code:
    varDimmen = [
                    [[1,3], ['heller']],
                    [[0,3], ['dunkler']]
                ]
    varParse = [
                    ["%1%.Hauptlicht", "%2%", [varLicht, varRaum, varSchalten], "OK, Licht im %1% %2%." ],
                    ["%0%.Hauptlicht.RelativDimmen", "%1%", [varRaum, varDimmen], "OK, Licht im %0% %1%." ]
                    ]
    und
    Code:
       
    [eg]
       [[Wohnzimmer]]  
            [[[Hauptlicht]]]
                type = num
                knx_cache = 1/1/160
                knx_send = 1/1/160
                knx_dpt = 1
                sp =rw
                [[[[Dimmwert]]]]
                    type = num
                    knx_cache = 1/1/164
                    knx_send = 1/1/163
                    knx_dpt = 5.001
                [[[[RelativDimmen]]]]
                    type = list
                    knx_send = 1/1/161
                    knx_dpt = 3
    Versuche ich das Licht zu dimmen. An der interaktiven Kommandozeile von sh.py funktioniert:
    Code:
    sh.eg.Wohnzimmer.Hauptlicht.RelativDimmen([1,2])
    Besonders ist hier, dass eine Liste übergeben werden muss.

    Mit dem speech-parser (wäre nicht speach korrekt?) sieht es so aus:
    Code:
    ['eg.Wohnzimmer.Hauptlicht.RelativDimmen', '[1, 1]', 'OK, Licht im wohnzimmer heller.', 'item', 'licht im wohnzimmer heller ']
    Allerdings wird nichts geschaltet. Es taucht nichts im Log auf.
    Hast du eine Idee, woran das liegen kann?


    Ist Klagen auf sehr hohem Niveau. Daher nochmal:
    Danke für das tolle Plugin!

    Noch zwei Fragen: Geht ihr am Handy zunächst auf Google-Now, oder läuft die Spracherkennung immer mit?
    Wäre es nicht sinnvoll, einen Tasker-Export der betreffenden Einstellungen mit dem Plugin mitzuliefern (ich habe die Einstellungen gespeichert und hatte zu dem Zeitpunkt keine anderen Einstellungen in Tasker. Könnte ich bereitstellen).

    Gruß,
    Hendrik

    Kommentar


      #32
      Zitat von henfri Beitrag anzeigen
      Ich habe allerdings auch das oben angesprochene Time-Out Problem. Beispiel:
      Code:
      http://homeserver:2788/Licht%20im%20Wohnzimmer%20anschalten
      Es kommt sofort die Antwort
      Code:
      OK, Licht im wohnzimmer eingeschaltet.
      Allerdings lädt der Browser die Seite weiter bis zum Sanktnimmerleinstag. Ich vermute, dass dies der Grund für den Timeout ist. Aber woran liegt es, dass die Seite immer weiter geladen wird?
      Bei mir lädt der Browser nicht unendlich weiter, es kommt die Antwort und das Laden ist beendet. Ich muss ich mal schauen ob ich den Fehler nachstellen kann.

      Den Tasker-Fehler hatte ich auch mal, aber ich weiß nicht was ich geändert habe, daher habe ich meinen Export angehängt (IP bzw. URL noch anpassen!), könnte jemand Testen ob es so funktioniert? Ich würde die Exportdatei dann auch zum Plugin hinzufügen (gute Idee, Danke).

      Gruß Axel

      P.S.: speech ist meine ich korrekt, das Plugin bezieht sich auf eine Sprachsteuerung, daher speech = Sprache, du meinst vermutlich speak was soviel wie reden oder sprechen bedeutet und würde auch passen, allerdings dachte ich mir das hört sich eher so an als würde das Plugin Statusmeldungen o.ä. generieren und ausgeben.

      Angehängte Dateien

      Kommentar


        #33
        Zitat von henfri Beitrag anzeigen
        Noch zwei Fragen: Geht ihr am Handy zunächst auf Google-Now, oder läuft die Spracherkennung immer mit?
        Ich aktiviere die Sprachsteuerung immer von Hand.

        Kommentar


          #34
          KNXfriend
          Du hast geschrieben das du Automagic mit dem speech-Plugin verwendest, könntest du deine Konfiguration hier posten? Dann könnte ich das ebenfalls beim Plugin ergänzen...

          Kommentar


            #35
            Das klingt sooooo cool.. doch leider habe ich kein Android. Ich gehe davon aus, dass das mit nem iPhone noch niemand probiert hat bzw. das auch nicht möglich ist?

            Kommentar


              #36
              Hi,

              endlich habe ich es auch geschafft, dieses Plugin auszuprobieren - klasse! Vielen Dank dafür!

              Zitat von henfri Beitrag anzeigen
              Ich habe allerdings auch das oben angesprochene Time-Out Problem.
              Ich habe das Problem auch. Im Plugin gibt es an einigen Stellen ein
              Code:
              self.send(..., close=True)
              Das scheint nicht zu funktionieren. Ich habe hinter jedes
              Code:
              self.send(..., close=True)
              self.close()
              geschrieben, seitdem ist das Problem weg. Vielleicht hilft das jemandem, der sich mit python auskennt, die eigentliche Ursache zu finden. Ich hatte das gleiche Problem im network-Plugin und konnte es auf die gleiche Weise lösen.

              Eine Frage hab ich auch gleich noch: Kann man irgendwie sinnvoll mehrere Stati abfragen, so nach dem Motto:
              "Welche Fenster sind geöffnet" mit der Antwort
              "Folgende Fenster sind geöffnet: Schlafzimmer, Wohnzimmer, Terrassentür"

              Ich hab noch keine "schlaue" Idee, wie man das lösen könnte...

              Gruß, Waldemar

              Kommentar


                #37
                Hi panzeron,
                Tolles ding mumpf hat es mir gestern mal im Einsatz gezeigt.

                Mein erster Anwendungszweck wird allerdings sein meinen SNOM Telefone mit Befehlen auszustatten. Licht Wohnzimmer einschalten als Paramter ist einfach verständlicher als die GAs

                Viele Grüsse
                Jürgen

                Kommentar


                  #38
                  Es freut mich das euch das Plugin gefällt
                  Zitat von mumpf Beitrag anzeigen
                  Hi,
                  Ich habe hinter jedes
                  Code:
                  self.send(..., close=True)
                  self.close()
                  geschrieben, seitdem ist das Problem weg. Vielleicht hilft das jemandem, der sich mit python auskennt, die eigentliche Ursache zu finden. Ich hatte das gleiche Problem im network-Plugin und konnte es auf die gleiche Weise lösen.
                  Danke für den Hinweis Das speech-plugin basiert ja auf dem network-plugin und ich werde das self.close() ergänzen

                  Zitat von mumpf Beitrag anzeigen
                  Eine Frage hab ich auch gleich noch: Kann man irgendwie sinnvoll mehrere Stati abfragen, so nach dem Motto:
                  "Welche Fenster sind geöffnet" mit der Antwort
                  "Folgende Fenster sind geöffnet: Schlafzimmer, Wohnzimmer, Terrassentür"

                  Ich hab noch keine "schlaue" Idee, wie man das lösen könnte...
                  Ich weiß nicht ob es funktionieren könnte, weil es schon so lange her ist und ich mit dem Plugin keine Logiken verwende, aber wenn die Rückmeldung aus einer Logik an das Plugin möglich ist (ggf. ist eine entsprechende Erweiterung denkbar), dann könnte man es damit lösen: Das Plugin reagiert auf das Schlüsselwort "welche", einem zweiten Begriff wie z.B. "fenster" oder "licht" und dem Begriff "offen" oder "geöffnet".

                  In der Logik werden dann alle Items abgefragt die z. B. "fenster" beinhalten und den Status geöffnet haben. Als Rückgabe muss dann jeder Treffer in einem String verknüpft werden nach dem Muster "Die Fenster im Wohnzimmer, in der Küche und im Bad Fenster sind geöffnet" oder mit der Anzahl so etwas wie "Es sind insgesamt 3 Fenster geöffnet im Wohnzimmer, in der Küche und im Bad."

                  Damit die Liste nicht zu lang wird, könnte man im ersten Schritt prüfen wie viele Fenster überhaupt geöffnet sind und wenn z. B. weniger als die Hälfte der Fenster geschlossen sind, gibt man diese zurück, in etwa so "Nur im Büro und im Gäste WC sind die Fenster geschlossen."

                  Die zu verwendenen Raumbezeichnungsstücke könnten im jeweiligen Item hinterlegt werden (z.B. "im Wohnzimmer" oder "in der Küche".

                  Das wird nicht einfach und eventuell noch komplexer wenn z.B. zwei Fenster in einem Raum sind, aber wenn es funktionieren sollte, dann braucht sich das Ergebnis nicht hinter Siri verstecken...

                  Eventuell wäre auch eine Erweiterung das Plugins denkbar, wo dann neben "item" und "logic" noch so etwas wie "multistate" integriert wird, was dann die Iteration durchführt, ähnlich wie in der angesprochenen Logik und mit der von dir beschriebenen Ausgabe.

                  Kommentar


                    #39
                    Hallo,

                    ich möchte gerne mit einem Befehl zwei Items gleichzeitig schalten, geht das auch irgendwie?

                    Gruß

                    Sebastian

                    Kommentar


                      #40
                      Hallo Sebastian, du kannst das mit einer Logik realisieren und diese wird von dem Plugin getriggert bzw. aufgerufen.

                      Kommentar


                        #41
                        Oder du machst ein neues Item, auf das die anderen beiden hören... Gruß Waldemar

                        Kommentar


                          #42
                          Zitat von mumpf Beitrag anzeigen
                          Oder du machst ein neues Item, auf das die anderen beiden hören... Gruß Waldemar
                          Stimmt, das ist natürlich einfacher

                          Kommentar


                            #43
                            Hallo,

                            ich habe noch folgendes Problem:

                            Ich habe eine Logik die auf ein Item hört:

                            Code:
                            [logic]
                                filename = logic.py
                                watch_item = item
                            Jetzt möchte ich dieses Item über speech schalten. Das geht auch, aber die Logic wird in dem Fall nicht getriggert.

                            Code:
                            [items]
                                 [item]
                                      type = bool
                                      enforce_updates = true
                                      sp = rw
                            Kann mir jemand sagen warum die Logic nicht getriggert wird?

                            Gruß

                            Sebastian

                            Kommentar


                              #44
                              Wird die Logik denn getriggert, wenn du das Item über den cli setzt? Gruß Waldemar

                              Kommentar


                                #45
                                Was meinst Du mit cli?

                                Kommentar

                                Lädt...
                                X