PDA

Ver la Versión Completa : [ SOLUCIONADO ] Sugerencias para mejorar proyecto "Navegar a" con AutoVoice (Ya creado)


emiegna
26/07/14, 19:41:41
He creado dos perfiles para su usar con AutoVoice. Con estos dos perfiles puedo decir una dirección para navegar luego con Google Maps. He creado una escena, similar a Google Maps, que se muestra cuando digo la dirección. Aparece el texto de la dirección que dije. La escena también tiene, y para utilizar como alternativa, dos botones para aceptar o rechazar la dirección, que dije. Pero también si yo respondo, por ejemplo, "sí", destruye la escena y abre Google Maps (va a la dirección mencionada). O bien, si digo "no" simplemente destruye la escena.

Es la única manera que he logrado para este “proyecto”. Trabaja muy bien, pero creo que es un poco lento. Además, creo que sería más práctico un solo perfil. Tal vez así sería más rápido.

Sugerencias, por favor.

Perfil : Av_Navegador_Gps (78)
Priority: 7
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "navegar a (?.+) (regex)" ]
Entrada: AvNavegadorGps (80)
A1: Establecer variable [ Nombre:%Place A:%place Calcular:Apagado Añadir:Apagado ]
A2: Mostrar Escena [ Nombre:NavegadorGpsPopup Mostrar como:Capa Superpuesta, Bloqueada, Ventana Completa Posición Horizontal:100 Posición Vertical:100 Animación:Sistema Mostrar Botón Salida:Apagado Continuar tarea inmediatamente:Encendido ]
A3: Decir [ Texto:%Place. ¿Es correcta la dirección? Motor: Voz:com.samsung.SMT:spa-ESP Stream:5 Tono:5 Velocidad:5 Respect Audio Focus:Encendido Network:Apagado Continuar tarea inmediatamente:Apagado

Perfil: Av_Navegador_Gps_Resp (18)
Priority: 10
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "(?.+) (regex)" ]
Entrada: AvNavegadorGpsResp (73)
A1: Destruir Escena [ Nombre:NavegadorGpsPopup ] Si (if) [ %response ~ no | %response ~ si ]
A2: Abrir mapa [ Modo:Navegar a Dirección:%Place Lat, Long: Zoom:1 Etiqueta: ] Si (if) [ %response ~ si ]

emiegna
28/07/14, 22:13:21
Una corrección: el comando en el contexto de estado del segundo perfil es (?<response>.+) De todos modos el hecho de usar dos perfiles para esta idea hace mas lento su funcionamiento. Es decir, y aunque ya he probado a incluir el comando que acabo de comentaros al comando del primer perfil, y sus acciones a la tarea 1, (suprimiendo por tanto el segundo perfil) -algo asi como navegar a (?<place>.+)|(?< response>.+)-, se ve que no es asi. Vamos, que no se mueve na asi. He buscado por ahi, y preguntado, pero nada. Y es que me pega a mi que lo suyo es un solo perfil y que incluya en el contexto tanto "place", como "response".

emiegna
30/07/14, 20:29:10
Bueno, voy a dar el tema por resuelto. Supongo que al estar en fechas de vacaciones es complicado conseguir ayuda ahora.

Creo que mi "mini proyecto" ha mejorado bastante. He tenido que acudir al registro de Tasker varias veces y hacer muchas pruebas basandome en mi escaso sentido común, y mis pocos conocimientos. Y claro, si a todo esto le unimos que las pocas alternativas que encuentro son en inglés (dominio de pena) y que lo poco que hay (que encuentro) sobre tutoriales de AV es de pena... me doy con un canto en los dientes. En fin...

A ver (al final os pongo los perfiles), leyendo mentiras o verdades, realidades o fantasias, etc, etc, etc, he hecho los siguientes cambios en los perfiles. Parece ser que trabaja bastante más rápido.

1.- No tengo mas de 20 perfiles. Pues bien, he situado los de AV en primer lugar en Tasker. Y sobretodo el que nos atañe. Algo he leído que si el movil es un mojon (el mio: Galaxy S2) mejor en estos casos colocar los perfiles que mas interesan al principio de la lista (¿?). ¿Absurdo? Ni idea.

2.- El comando del segundo perfil (response, a secas) hacia que el perfil se disparara antes de abrir la boca... Es decir, cada vez que decía algo se activaba el perfil. Total, que he añadido las posibles respuestas como he creido que había que hacerlo (nadie me ha ayudado, asesorado, etc...¿Donde acudir para aprender? Ni idea). Y listo. Solo se activa cuando respondo. Segun registro... ¿Está bien? Ni idea. Me quedaré con la duda. Pero va mejor.
3.- AV en contexto como evento va peor. Mejor como estado que trabaje como evento.
4.- Establecer variables atendiendo a lo que creo, no a lo que se. Funciona, y mejor.
5.- Liberar recursos en Android si no son necesarios. App que no sirven para nada o que no usamos.
6.- Ah, y en propiedades de los dos perfiles reduje la prioridad de las tareas lanzadas (a 5), y desmarque en ambos casos "fuerza orden tareas".

Total, asi ha quedao. Va por ustedes... :-)

Perfil 1:

Perfil: Av_Navegador_Gps (78)
Enforce: no
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "navegar a (?<place>.+) (regex)" ]
Entrada: AvNavegadorGps (80)
A1: WidgetLocker [ Cmd:Desbloquear ] Si (if) [ %SCREEN ~ off ]
A2: Secure Settings [ Configuración:Screen & Keyboard Lights On
Manual - On Paquete:com.intangibleobject.securesettings.plugin Nombre:Secure Settings Cuenta atrás (segundos):0 ] Si (if) [ %SCREEN ~ off ]
A3: Esperar [ MS:500 Segundos:1 Minutos:0 Horas:0 Días:0 ] Si (if) [ %SCREEN ~ off ]
A4: Establecer variable [ Nombre:%Place A:%place Calcular:Apagado Añadir:Apagado ]
A5: Mostrar Escena [ Nombre:NavegadorGpsPopup Mostrar como:Capa Superpuesta, Bloqueada, Ventana Completa Posición Horizontal:100 Posición Vertical:100 Animación:Sistema Mostrar Botón Salida:Apagado Continuar tarea inmediatamente:Encendido ]
A6: Decir [ Texto:%Place. ¿Es correcta la dirección? Motor: Voz:com.samsung.SMT:spa-ESP Stream:5 Tono:5 Velocidad:5 Respect Audio Focus:Encendido Network:Apagado Continuar tarea inmediatamente:Apagado ]

Nota: Las tres primeras acciones son por si quiero activar el perfil con pantalla apagada y el móvil en posición horizontal... asi le da tiempo a girar a la pantalla de inicio y que no quede raro :-)

Perfil 2:

Perfil: Av_Navegador_Gps_Resp (18)
Enforce: no
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "(?<response>si móvil|sí móvil|no móvil) (regex)" ]
Entrada: AvNavegadorGpsResp (73)
A1: Establecer variable [ Nombre:%avcomm A:%response Calcular:Apagado Añadir:Apagado ]
A2: Destruir Escena [ Nombre:NavegadorGpsPopup ] Si (if) [ %avcomm ~ *no móvil* | %avcomm ~ *si móvil* | %avcomm ~ *sí móvil* ]
A3: Abrir mapa [ Modo:Navegar a Dirección:%Place Lat, Long: Zoom:1 Etiqueta: ] Si (if) [ %avcomm ~ *si móvil* | %avcomm ~ *sí móvil* ]

Ea, pues eso es lo que hay. Ah por cierto, me gustaria incluir algo mas... Por si podeis orientarme. Quiero añadir mi dirección de casa. Se me ocurrió, en este segundo perfil, añadir una segunda acción de Abrir mapa. Poner mi dirección en el campo donde esta la variable %Place en la primera accion Abrir mapa, pero condicionar ambas acciones con la variable %Place. Es decir, si %Place no coincide con casa (primera accion solo), o si %Place coincide con la expresión casa (segunda acción solo). Pues nada. No estoy seguro, pero quizás debería establecer alguna variable, pero no se me ocurre. Siempre se ejecuta solo la accion Abrir mapa de mi dirección de casa, aunque diga "navegar a Estocolmo".