Danke. Die Umlaute laufen mittlerweile auch!
Kriege ich noch ein Tip für die variablen?
So langsamm fange ich auch mal an mir über ein Konzept gedanken zu machen.
Rollladen oder Licht sind ja ganz nett - vorallem zum Zeigen.
Aber in einem richtigen Smarthome schaltet man ja kaum noch Licht und die Rollladen fahren auch zu 99% automatisch.
Die Frage ist jetzt: welche Befehle machen überhaupt sinn? Was kann/will ich von der manuellen Visu-Bedienung auf die Siri-Bedienung übertragen?
Werde mir da wohl mal eine Ideensammlung machen müssen...
Ist schon jemand gedanklich beim sinnvollen/strukturierten Voice-Command-Design?
Gruß
Thorsten
Ankündigung
Einklappen
Keine Ankündigung bisher.
Siri-Proxy - wer hat know how und will mitbasteln?
Einklappen
X
-
Du musst im File siriproxy-example.rb oder wo du auch immer rumprogrammierstZitat von ThorstenGehrig Beitrag anzeigenHi
Leider kann ich öffnen / schließen nicht abfragen - wegen den öüäß.
Mal schauen ob das mit den richtigen "locales" besser wird...
in die erste Zeile eintragen, dann gehen Umlaute.Code:#Encoding: UTF-8
Einen Kommentar schreiben:
-
Hi
nö - ipv4 sollte schon gehen. hast du einen dhcp im netz?
evtl. mit "ifup eth0" oder "dhclient" nochmal anstoßen?
@Ruby-Spezialisten:
Wie kriege ich denn in diesem Konstrukt die Variable "number" richtig gefüllt? Ich will "number" ja mit dem Wert der 3. Klammer gefüllt haben...
GrußCode:listen_for /(Rollladen|Jalousie) im Wohnzimmer (auf) ([0-9,]*[0-9])/i do |number|
Thorsten
Einen Kommentar schreiben:
-
Hallo Thorsten,
Keyboard ändern als root mit: dpkg-reconfigure keyboard-configuration
Dann wird man geführt. Nach dem reboot ist das neue layout aktiv
Netzwerk mit bridging habe ich keine ip erhalten. Hab noch nicht im detail geschaut, evtl ipv6 aktiv? Ich hab nur ipv4
Gruss
Marcel
Einen Kommentar schreiben:
-
Hi
was auch schonmal geht ist das:
Leider kann ich öffnen / schließen nicht abfragen - wegen den öüäß.Code:listen_for /(Tor|Garage|Garagentor) (auf|aufmachen|oeffnen|hoch)/i do say "Garage wird geoeffnet!" #say something to the user! #wasGood = system( "groupswrite ip:wiregate 1/1/41 1" ) request_completed #always complete your request! Otherwise the phone will "spin" at the user! end listen_for /(Tor|Garage|Garagentor) (runter|zu|schliessen|zumachen)/i do say "Garage wird geschlossen!" #say something to the user! #wasGood = system( "groupswrite ip:wiregate 1/1/41 1" ) request_completed #always complete your request! Otherwise the phone will "spin" at the user! end
Mal schauen ob das mit den richtigen "locales" besser wird...
Gruß
Thorsten
Einen Kommentar schreiben:
-
Hi Marcel,
Die config.yml passt so wie sie ist - da ist nur das Demo-Script aktiv (in dem ich schon rumgefurwerkt habe).Zitat von marlan99 Beitrag anzeigenMusste noch das keyboard layout anpassen
network config der VM läuft noch nicht (ist nicht sichtbar).
config.yml noch nicht angepasst
Keyboard hatte ich nicht angepasst - ich kenne die US-Tastatur einigermaßen ;-) - bevor ich suchen muss: wie macht man das?
Und zur Netzwerk-Konfig: die war bei mir auf Bridgeing gestellt. Nat solltest du dafür nicht nehmen. Kann man eigentlich einstellen solange/wenn die VM nicht gestartet ist.
Gruß
Thorsten
Einen Kommentar schreiben:
-
Hmm,
da die Apple Server von Siri eine Mischung aus Wahrscheinlichkeitsrechnung und Datenbank-Abfrage sein dürften, wird es wohl sehr schwer sowas ähnlich dem Wetter nachzubauen (Also "Ich will Licht hier" statt "Mach das Licht im Wohnzimmer an"). Das wird man wohl oder übel wo hinterlegen müssen, in einem Array bzw. besser in einer Datenbank.
Zudem hat Apple den Vorteil, dass Siri aus jeder Antwort lernt. Ich habe gelesen, dass sogar abgebrochene Befehle plus die folgenden ausgewertet werden, um sie effektiver zu machen.
Ich bin gerade dabei das mit einer Datenbank in Angriff zu nehmen, ich habe vor, da eine Liste mit Synonymen einzupflegen und dann das Matching darüber zu machen. Dürfte aber noch dauern, hoffentlich schalten die vorher den Server net um :-)
Kann man über diesen Siri Proxy auch auf die anderen Attribute zugreifen, die der Apple Server wohl zurück liefert? Habe da jetzt noch nichts gefunden. Anscheinend soll da noch der Timestamp aber auch, viel interessanter, die Wahrscheinlichkeit mit der das Wort erkannt wurde zurückgeliefert werden.
Einen Kommentar schreiben:
-
Hallo Thorsten,
läuft bei mir auch. Musste noch das keyboard layout anpassen
network config der VM läuft noch nicht (ist nicht sichtbar).
Zertifikat auf phone ist drauf, proxy gestartet.
config.yml noch nicht angepasst
Gruss
Marcel
Einen Kommentar schreiben:
-
VM läuft bei mir seit gestern Abend konstant durch.
Hab sie dann auf den ESX-Server aufgespielt.
War bisher immer erreichbar. Hab den Server auch nie neu gestartet.
Einen Kommentar schreiben:
-
Hi,
@Bodo: ich würde MINDESTENS mal warten ob die 5.1 (ist ja seit heute als Beta draußen) das noch zulässt.
Alternativ - falls du ein 4er hast - kannst du mal schauen was Sirius (der Cydia-Siri-Hack) für dein 4er so möglich macht...
@RalMue/2ndSky: auf das "pharsen" haben wir uns ja schonmal geeinigt :-)
Jetzt müsste beim Parsen eingentlich "nur" berücksichtigt werden das es für JEDEN Befehl/Gegenstand mehrere Begriffe gibt (=alle mit der gleichen Bedeutung).
Siri macht ja auch Wetter=Regenschirm=Regen=Regenmantel => alles ruft die Wettervorhersage auf... (da ist weniger "magie" dahiner als einem manchmal verkauft wird).
An=Anschalten=Anmachen=Hell=Heller=...
(wobei auch Heller = Dimmer+x% meinen könnte)
Aus=Auschalten=Ausmachen=Dunkel=Dunkler
Licht=Lampe=Beleuchtung="Funzel" ;-)
Rollladen=Jalousie=...
Hoch=Hochfahren=Auf=Öffnen
Runter=Schließen=Runterfahren=zu
Bad=Badezimmer=Klo=Nasszelle=....
Theoretisieren kann ich viel - leider brauche ich (mangels Programmierkentnisse) ein Grundgerüst.
Generell würde ich auch noch Sagen das bei Treffer >=2 oder Hotword=vorhanden die fehlenden parameter abgefragt werden sollten.
Ich glaub ich besuche mal einen Ruby-Schnellkurs ;-)
@An die VM-Nutzer: läuft die VM?
Gruß
Thorsten
Einen Kommentar schreiben:
-
Super, jetzt muss ich mir das iPhone 4S auch noch kaufen
Hoi
Grossen Respekt vor der Gemeinde.
Jetzt muss ich mir das iPhone 4s doch noch kaufen, mist, ich wollte eigentlich auf das 5'er warten. Ihr seid Schrecklich (guut).
Hoffentlich macht Apple uns keinen Riegel vor das Proxy-Spiel.
Naja wenn's die Umsatzzahlen antreibt und sonst keinen Schaden anrichtet würde ich ein Auge zu machen und die paar Spinner (ääh, Anwesende ausgenommen) durchaus mal machen lassen. (Wunschdenken)
Einen Kommentar schreiben:
-
Jap, aber du könntest so auch "an" und "anschalten", "anmachen" etc. verarbeiten, da fehlt das Leerzeichen. Klar, das kann ins Array, aber das wird dann eventuell ja enorm.Zitat von 2ndsky Beitrag anzeigenjo, ist prinzipiell das selbe was ich meinte mit Befehle parsen. Wie die Befehle geparst werden hängt dabei von der masochistischen Veranlagung eines jeden einzelnen ab
Bevor ich mir reguläre Ausdrücke für diesen Anwendungsfall antue splitte ich lieber anhand des Leerzeichens und vergleiche jedes einzelne Wort mit dem möglichen Befehlssatz. Kommt ein neuer Befehl hinzu, musst du diesen nur in das Array einfügen und der Parser funktioniert weiterhin. Bei regulären Ausdrücken müsstest du diesen neuen Befehl in den Ausdruck packen. Aber, jeder wie er mag
Aber wie gesagt, in die Richtung muss es gehen, egal wie :-)
Einen Kommentar schreiben:
-
jo, ist prinzipiell das selbe was ich meinte mit Befehle parsen. Wie die Befehle geparst werden hängt dabei von der masochistischen Veranlagung eines jeden einzelnen ab
Bevor ich mir reguläre Ausdrücke für diesen Anwendungsfall antue splitte ich lieber anhand des Leerzeichens und vergleiche jedes einzelne Wort mit dem möglichen Befehlssatz. Kommt ein neuer Befehl hinzu, musst du diesen nur in das Array einfügen und der Parser funktioniert weiterhin. Bei regulären Ausdrücken müsstest du diesen neuen Befehl in den Ausdruck packen. Aber, jeder wie er mag
Einen Kommentar schreiben:
-
Nur mal kurz laut gedacht am Beispiel Zimmerlicht:
Wenn ich den Ausdruck per reguläre Ausdrücke etc. auf die eigentlich wichtigen Wörter im Satz (Wohnzimmer, Licht, an/aus) auswerte dann könnte ich schauen ob diese Wörter enthalten sind (wenn nicht nachfragen). Auch wäre es dann möglich "Schalte das Wohnzimmerlicht an" oder "Kannst du bitte das Wohnzimmerlicht anschalten" zu sagen.
Das löst zwar noch nicht das Problem, dass "an" und "hell" das Gleiche ist, aber zumindest muss man den Befehl nicht wörtlich sagen und Siri kann nachfragen.
Ich hab das nicht getestet, wäre nur mein Ansatz.
Grüße
Edit: Sehe gerade, das ist ein ähnlicher Ansatz wie 2ndsky. Aber in diese Richtung muss man weiterdenken :-)
Einen Kommentar schreiben:
-
wenn man soviele Informationen aus dem Forum zieht wie ich, ist man froh auch etwas zurückgeben zu können. Würde mich ja gerne aktiver beteiligen, aber mangels 4s und Zeit geht das leider nicht.
Der Ansatz mit mindestens zwei erkannten Wörtern wäre schon auch möglich, klar. Hängt halt auch maßgeblich davon ab, was will ich alles an Befehle verarbeiten und wie häufig kommen die in normalen Suchanfragen etc. vor. Aber die Umstellung auf ein Magic Keyword, falls man merkt, dass es häufig zu Fehlinterpretationen kommt, ist auch kein Problem mehr (wenn der Parser und der ganze Rest läuft).
Einen Kommentar schreiben:


Einen Kommentar schreiben: