Android App IPSymconVoice

Ja sauber, dann brauche ich ja nicht mehr weiter nach der Ursache zu suchen. Hatte mich schon gewundert, warum das bei mir nicht wollte.
Bin mal auf das Update gespannt.

Grüße,
Doc

Hallo,

leider dauert die nächste Version noch etwas weil ich ein anderes Thema hatte bzgl. Offline Spracherkennung.
Ich habe mein altes Samsung Galaxy S Testgerät (über 5 Jahre alt) für die Testentwicklung mit OmniRom auf Android 6.0.1 gebracht :smiley: Läuft erstaunlich gut und flott.

Nur die Offline Spracherkennung wollte einfach nicht funktionieren bis ich auf folgendes gestoßen bin:

        //sr = SpeechRecognizer.createSpeechRecognizer(this.context);  //commented, do not use this
        sr = SpeechRecognizer.createSpeechRecognizer(this.context, ComponentName.unflattenFromString("com.google.android.googlequicksearchbox/com.google.android.voicesearch.serviceapi.GoogleRecognitionService"));

Vorher habe ich nicht direkt die Google Search Engine angesprochen sondern einfach den Default verwendet. Da bei OmiRom aber PICO TTS mit ausgeliefert wird, wollte das Gerät obwohl ich auf Google umgestellt hatte einfach nicht funktionieren. Das Display wurde zwar noch vom Standby aufgeweckt aber danach der Sprach Service nicht angesprochen. Im Android Studio sah ich die Fehlermeldung „no selected voice recognition service“

Da bei OmniRom ich nur den Minimalumfang an Google Apps installiert hatte, brauchte ich zuvor auch noch folgende Google App und musste in den Android Geräteeinstellungen entsprechend die Sprache einstellen und auf Google Erkennung switchen:

Es ist mir aufgefallen wenn ich von meiner App direkt auf den HomeScreen wechsle, dass dann die Offline Spracherkennung nicht funktioniert bzw. es einen Konflikt gibt, da dort die Google Suchleiste oben eingeblendet wird und somit diese Vorrang hat.
Weiters kann es zu einem Konflikt kommen wenn mit „OK Google“ gearbeitet wird da auch die OK Google Erkennung den Vorrang hat und wenn das dann bei aktivem Display im Hintergrund noch die App läuft auch da ein Konflikt entstehen kann. Bin ich nämlich am Homescreen und schließe ich alle Apps (inkl. meiner) dann wird die Offline Spracherkennung neu gestartet und sie funktioniert auch auf dem HomeScreen wieder. Allerdings funktioniert dann dort die OK Google Erkennung nicht!

Außerdem ist mir aufgefallen, dass es unterschiedlich lange dauert wenn schon kurz die Message eingeblendet wird „Haussteuerung: Offline Spracherkennung wurde erfolgreich gestartet“ bis dann tatsächlich die Erkennung funktioniert. Das hängt von dem PocketSphinx ab das verwendet wird. Da habe ich aber keinen Einfluss darauf. Das variiert bei meinem Teclast Tablet von 10Sek bis 1 Minute. Außerdem ist dort der Piepston aus irgend einem Grund extrem Leise nachdem das Schlüsselwort erfolgreich erkannt wurde, sodass ich manchmal glaube er hat es gar nicht erkannt.

Wo ich bisher noch absolut kein Problem festgestellt habe, ist wenn die Offline Spracherkennung bei ausgeschaltetem Display lauft, da hier ja auch keine „OK Google Erkennung usw…“ stattfindet und somit anscheinend Google den Service bei ausgeschaltetem Display nicht im Hintergrund weiter laufen hat.

LG
Thiemo

Hallo,

Version 2.4 habe ich soeben veröffentlicht (kann noch ein paar Stunden dauern bis es verfügbar ist).

Neu ist das WLAN Tracking.
siehe hier 3 Screenshots


Noch zur Erklärung: In den Detail Einstellungen gehören Eintritt und Eintritt Service deaktivieren bzw. Austritt und Austritt Service aktivieren zusammen.
Also als Beispiel: wenn Austritt auf AUS ist, dann wird auch der Service nicht aktiviert bzgl. Standortermittlung (egal ob diese Einstellung auf EIN oder AUS steht). Dies dient nur dazu, um zB: eine IP Symcon Variable mit TRUE/FALSE versorgen zu können wenn Austritt auf EIN und Eintritt auf EIN steht, aber den Service der Standortermittlung gar nicht zu beeinflussen wenn Austritt Service auf AUS steht und Eintritt Service auch auf AUS.

Neu man kann das Android Gerät für xxxx Millisekunden zum vibrieren bringen wenn der Socket Server in den Einstellungen aktiviert ist. siehe Script hier Android App IPSymconVoice - Seite 10 mit // Vibriere NNNN Millisekunden lässt das Android Gerät für NNNNN Millisekunden vibrieren (1000 Millisekunden = 1 Sekunde)

Smartwatch funktioniert jetzt wesentlich flotter weil die Kommunikation mit Priorität gemacht wird (ist zwar ein klein wenig beim Akku mehr zu spüren wenn die App am Smartwatch viel benutzt wird)

LG
Thiemo

Hallo,

Version 2.4.1 habe ich soeben hochgeladen und wird in den nächsten Stunden ausgerollt.

Änderungen:

  • Webfront akzeptiert jetzt Cookies (merkt sich die Einstellungen)
  • Webfront Benutzername/Passwort Dialog kommt jetzt wenn dieser angefordert wird
  • Webfront 2 Finger Zoom und Doppelklick Zoom ist jetzt möglich und am Handy wird jetzt mehr Inhalt dargestellt (kleinere Schrift)

Auf dem Radar für die nächste Version:

  • Spinner geht unter Android 6 nicht mehr (Auswahl von Sprechgeschwindigkeit, Sprache usw…)
  • Widget um die Smartwatch Einstellungen der Schnellzugriffe auch am Handy Homescreen nutzen zu können
  • Code-Optimierungen (durch Cut&Paste gleiche Funktionen mehrfach in verschiedenen Screens enthalten; derzeit Wartungsaufwendiger bei Änderungen :p; Stichwort „deprecated“ Funktionen unter Android)

Auf später verschoben:

  • Unterstützung Webserver per GET/POST (somit nicht nur auf IP-Symcon alleine ausgelegt)

LG
Thiemo

Hallo Thiemo,
erst mal besten Dank.
Die Schrift ist für meine alten Augen etwas zu klein. Vorher wr es besser.Gibt es eine Möglichleit, das einstellbar zu machen?
Cookies scheinen zu funktionieren.

Viele Grüsse
Baldur

Hallo Baldur,

ja werde es einstellbar machen. Wollte ich eh schon für dieses Release jetzt mit machen. Werde das aber in einer Zwischenversion bringen damit es einstellbar ist wie groß die UI am Anfang angezeigt wird. Default belasse ich dann auf 1,0 und werde eine neuen Einstellungsparameter bringen, sodass man einen Wert von 0,5 bis 1,5 wahlweise eingeben kann. Das sollte dann klappen damit das Webfront individuell in der Anfangsgröße anpassbar ist.

LG
Thiemo

Was noch super wäre wenn du noch Geofency und ibeacon support reinpacken könntest…

Gibt nix gutes auf Android im Store :confused:

Der Support von Geofency und ibeacon würde mich auch sehr freuen.

Hallo, habe mich selber zwar noch nicht damit beschäftigt, aber Egigeozone kann das glaub ich. Für was braucht man das denn?

Egigeozone kann nur Geofency Zeug und das ist von der Gui sau schlecht umgesetzt :frowning:

Mit iBeacons kann Egigeozone nix :frowning:

Sorry, ich dachte „http://rpi.spdns.eu/egigeozone/index.php?topic=61.0“ das wäre was.

Das ist die richtige App, aber bis heute kein ibeacon Support drin… Oder ich finde es unter der schrecklichen Android Gui mal wieder nicht :wink:

SO in der Beta gibt es die Unterstützung für die ibeacons :

Suche für Android eine Gefency APP mit ibeacon Support

Wie funktioniert das mit der Akkustandsübermittlung :confused:

Was ist das für eine Variable, die in IPS erwartet wird ?

Das ist derzeit noch etwas kompliziert implementiert,
Android App IPSymconVoice - Seite 12

Nochmal kurz zusammengefasst:

  • Integer Variable in IP Symcon einrichten
  • ID in App eintragen
  • App den ServerSocket Einschalten
  • Script in IP Symcon einrichten anhand des Links oben und zB: alle 5 Minuten laufen lassen

Eventuell baue ich das aber noch um irgendwann wenn Zeit ist in der App. Eine eigene Sleepzeit in den Einstellungen der App und es wird über einen Service dann alle X Minuten entsprechend direkt die Integer Variable in IP-Symcon beschrieben.

Bei meinem Wand Tablet mache ich es derzeit noch über den oben beschriebenen Weg und mit einem eigenen Script mache ich folgendes bei Wert <20 wird der Akku wieder geladen und bei Wert >98 höre ich auf zu laden.

LG
Thiemo

PS: Version 2.4.2 ist unterwegs mit der Einstellung bzgl. initialem WebFront Zoom Faktor der Defaultmäßig auf 1.0 steht (somit kann man individuell von 0.6 bis 1.4 den Wert einstellen)

Hallo Thiemo,
vielen lieben Dank für die Geile App ist es möglich über den Socket auf dem Tablet die Spachsteuerung zu öffen ?
Um auf eine Frage zu Antworten wie z.B „Sage Das licht ist draußen an wollen siees ausschalten“ „Starte Spracheingabe“
Danke

Danke für die Info, aber das ist um nur den Akkuwert zu bekommen zu viel Aufwand :eek:

Wäre es nicht möglich, wie die anderen Werte einfach von der App in eine Variable in IPS zu schreiben ?

Mir ist noch eine geniale Idee zur Erweiterung deiner super App eingefallen: wäre es möglich dass du über den Sockets zu Ips durch einen Auslöser von Ips was zu deiner App geschickt wird, und deine App führt dann automatisch einen Skype Video Anruf aus ?

Habe mal ein wenig gespielt… man müsste über den Socket zum Android gerät nur ein Uri senden, was dann auf dem Android Gerät ausgeführt wird…

Würde das gehen ?

Ich habe es erstmal so gelöst :

//youtu.be/UNv8MFUPX9E