Acceder

Ver la Versión Completa : Llamar a contacto por voz o marcación por voz, cómo?


benxamin
28/03/14, 20:28:12
Hola a todos, llevo un buen rato buscando la mejor forma de hacer llamadas mediante comando de voz a un determinado contacto y no termino de encontrar lo que busco, es posible que sea algo tan básico que nadie lo haya tratado hasta ahora, si es ese el caso os pido disculas y os agradeceria que alguien me despierte por que yo sólo no he podido dar con la tecla.

Decir que dispongo un móvil con JB y por tanto reconocimiento de voz offline.

Obviamente no quiero usar google now online para hacer las llamadas, no quiero depender de tener internet (me parece incomprensible que con android no se pueda hacer algo que hacía con mi primer Phililps Genie) que es llamar a un contacto por voz.

Tampoco quiero recurrir a otra aplicación, cyberon voice va bien pero preferia hacer con tasker o tasker y autovoice o algo asi.

He visto un plugin llamado autocontatcs y también un hilo que trata sobre intents que así de entrada se me complica un poco para mi nivel.

Por tanto, cual es el mejor modo de conseguirlo? autocontacts + autovoice + tasker? Hay alguna tarea o app tipo Guasapsinmanos que lo haga?

Gracias a todos por vuestra ayuda y especialmente a los foreros más activos que nos dan apps tan espectaculares como Guasapsinmanos.

Slds.

Stenary
28/03/14, 23:33:21
Yo uso el plugin autocontacts, junto con autovoice y tasker obviamente, y va de maravilla, te lo recomiendo.

Nada de intents es sencillo, te dejo el mio que es universal y a mi me funciona muy bien:

Perfil: Llama Autocontact (25)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "llama a (?<nombre>.+) (regex)" ]
Entrada: Autocontacts (24)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Pop-Up [ Título: Texto:Encontrado %nombre Imagen de fondo: Disposición:Popup Cuenta atrás (segundos):1 Show Over Keyguard:Encendido ]
A3: Llamar [ Número:%acnumber Automarcado:Encendido ]

Si quieres puedes presciondir del popup, A2, yo lo puse para ver si va a llamar bien y asi preparar para colgar, era cuando lo hice x primera vez y estaba probandolo pero alfinal lo he dejado, queda bien jejeje.

Alguna duda pregunta.

Jusss
29/03/14, 02:39:38
Una pregunta cual es la diferencia, de usar Autocontact+Av+Tasker que hacer la tarea solo Tasker + Autovoice, que al decir tal palabra por ejemplo "llamar a fulano" en AV se ejecute la tarea "telefono" "llamar" "fulano"?

benxamin
29/03/14, 10:05:16
Una pregunta cual es la diferencia, de usar Autocontact+Av+Tasker que hacer la tarea solo Tasker + Autovoice, que al decir tal palabra por ejemplo "llamar a fulano" en AV se ejecute la tarea "telefono" "llamar" "fulano"?

Hola, eso que propones funciona? el asunto está en buscar a fulano en la agenda, yo pensé en relacionar los contactos a mano con mucha paciencia o un pequeño grupo de contactos para las llamadas más frecuentes, por decirlo de algún modo crear el contacto en tasker para poder usarlo directamente.

Pero lo ideal seria poder buscar por voz cualquier contacto de la agenda sin necesidad de "programar" en tasker la llamada a un determinado contacto.

Slds.

benxamin
29/03/14, 10:10:24
Yo uso el plugin autocontacts, junto con autovoice y tasker obviamente, y va de maravilla, te lo recomiendo.

Nada de intents es sencillo, te dejo el mio que es universal y a mi me funciona muy bien:

Perfil: Llama Autocontact (25)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "llama a (?<nombre>.+) (regex)" ]
Entrada: Autocontacts (24)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Pop-Up [ Título: Texto:Encontrado %nombre Imagen de fondo: Disposición:Popup Cuenta atrás (segundos):1 Show Over Keyguard:Encendido ]
A3: Llamar [ Número:%acnumber Automarcado:Encendido ]

Si quieres puedes presciondir del popup, A2, yo lo puse para ver si va a llamar bien y asi preparar para colgar, era cuando lo hice x primera vez y estaba probandolo pero alfinal lo he dejado, queda bien jejeje.

Alguna duda pregunta.

Muchas gracias por tu respuesta y más por poner un perfil hecho a disposición de todos. Intentaré poner a funcionar ese perfil y te tomo la palabra para las dudas que puedan surgirme.

Gracias de nuevo. Slds.

Jusss
29/03/14, 13:48:06
Hola, eso que propones funciona? el asunto está en buscar a fulano en la agenda, yo pensé en relacionar los contactos a mano con mucha paciencia o un pequeño grupo de contactos para las llamadas más frecuentes, por decirlo de algún modo crear el contacto en tasker para poder usarlo directamente.

Pero lo ideal seria poder buscar por voz cualquier contacto de la agenda sin necesidad de "programar" en tasker la llamada a un determinado contacto.

Slds.
Así lo tengo yo para llamar pero pero Creo q entiendo las ventajas de la forma que propones, de mi forma si tenes 50 conatos necesitas 50 perfiles con sus tareas de esta solo una, no? Vos con esta llamas a cualquiera usando este solo perfil?

ruco1980
29/03/14, 19:24:29
con esta llamas a cualquiera usando este solo perfil?

En principio si....yo lo estoy intentando pero no me funciona...
Con el plugin gratuito de autocontacts tienes acceso a 20 contactos de tu agenda que selecciones, y si compras la versión de pago tienes acceso ilimitado. Yo he adquirido la versión de pago y he implementado el perfil pero no sé por qué no me funciona...
He probado también marcando la casilla de "usar regex" y tampoco me funciona

oscarptx
29/03/14, 21:14:02
Muchas gracias Stenary, hacía tiempo que buscaba un perfil así y no daba con él. Lo he modificado un poco para usarlo como subtarea, pero funciona genial :ok:

benxamin
30/03/14, 11:47:29
Hola a todos, he intentado transcribir el perfil y o algo hago mal o no me funciona, tengo autovoice y autocontact instalado.

Hay alguna forma de copiar ese texto a un Bloc de notas y luego importarlo directamente?

Hice un par de intentos pero no lo logré.

Gracias, saludos.

Caravantes
30/03/14, 12:40:50
he intentado transcribir el perfil y o algo hago mal o no me funciona

Igual que hizo el compañero Stenary , lo adecuado es que copies aquí tu perfil para que lo miremos y veamos si hay algo que parezca estar mal. El procedimiento lo tienes explicado en http://www.htcmania.com/showthread.php?p=8852245 y en el apartado 10 de las "Recomendaciones" http://www.htcmania.com/showthread.php?t=622394

Benxamin, creo que es importante que aprendas a crear y mantener tus perfiles-tareas, y trataremos de ayudarte a superar posibles errores. En comparación con eso, tiene muy poco valor importar un perfil (sin saber bien cómo funciona o cómo puedes modificarlo para adaptarlo a tus necesidades). Estamos hablando de un perfil que tiene UN contexto y TRES acciones, no es una tarea nada tediosa.

benxamin
30/03/14, 13:09:59
Muchas gracias por responder, efectivamente no era conplicado, simplemente olvidaba introducir la variable % nombre en la configuración de la tarea autocontacts, imagimaba que era una tontería pero cuando intentas "plagiar" un perfil sin razonarlo es muy fácil pasar por alto detalles obvios. Mis disculpas.

Ahora tengo otro problemilla:

Si un contacto tiene varias entradas, movil, casa, trabajo...

Como se puede seleccionar el número al que quieres llamar? tiene autocontact acceso o los diferentes numeros de un contacto?

Gracias de nuevo.

Saludos.

Jusss
30/03/14, 20:44:16
Como estan la tarea me funciona bien siempre y cuando NO tenga marcada la casilla "automarrcado" en "llamar", si esta activada encuentra el contacto "el cartel dice llamar a..." pero me marca un numero muy raro que no tengo en la agenda, y no es de un contacto ya que son pocos numeros. Es muy raro, a alguien mas le pasa? se que podria solucionarlo sin marcar "automarcado" y poner un "imput tap" peero me gustaria poder ahoorar ese paso.

EDITO: Creo que encontre el problema, es con los contactos que los tengo agendados con "011" y no con "15" cambie uno que me daba problema sy parece funcionar.

Muy buen perfil, le agregue que pueda llamar con varias posibilidades pro si se confunde asi: "llamar|samar|amar (?<nombre>.+)"

GraphicAdventure
30/03/14, 21:47:52
Si un contacto tiene varias entradas, movil, casa, trabajo...
Como se puede seleccionar el número al que quieres llamar? tiene autocontact acceso o los diferentes numeros de un contacto?

Tienes la variable %acallnumbertypes.
Es necesario que sepas manejar variables y cómo funciona un array.
Si ves que es demasiado complicado cuando pueda te puedo facilitar un perfil de forma básica para que lo pruebes.

Este foro es sobre Tasker, aunque no estaría mal crear secciones o temas propios para diferentes plugins, ya lo que digan Mlesir y Caravantes.

Jusss
30/03/14, 22:55:46
Les hago otra consulta cuando el contacto no lo encuentra porque pronunciaron mal o se confundieron de nombre que les pasa en sus perfiles?, a mi si digo "llamar a almohada" (que no lo tengo de contacto) el pop up dice "encontrado almohada" y llama a ese numero raro que comente mas arriba, no se como solucionarlo, pense poner que solo marque si %acnumber no coincide con "numero raro", pero no funciona
EDITO: encontré lo que pasa cuando %acnumber no coincide con ningún número (o sea que no encontró contactos) por una extraña razón marca directo el "2268 62-37" es más si hago una tarea individual que sea "llamar" "automarcado" a "%acnumber" (sin ninguna variable) llama al 2268 62-37 jaja es muy raro

mlesir
30/03/14, 23:19:47
Graphic cómo la contestación es larga y no quiero liar este hilo te contesto aquí al tema de las secciones para plugins:

http://www.htcmania.com/showthread.php?p=13108653

benxamin
31/03/14, 00:44:25
Tienes la variable %acallnumbertypes.
Es necesario que sepas manejar variables y cómo funciona un array.
Si ves que es demasiado complicado cuando pueda te puedo facilitar un perfil de forma básica para que lo pruebes.

Este foro es sobre Tasker, aunque no estaría mal crear secciones o temas propios para diferentes plugins, ya lo que digan Mlesir y Caravantes.

Gracias por tu respuesta, me apunto esa variable, con variables he hecho algunas cosillas sencillas pero el tema de trabajar con arrays ya nada cuando tenga tiempo me pondré a ello y si me pasas ese perfil pues te lo agradezco.

Más que nada porque ahora me ha surgido un problema más importante que me temo que me ocupará algún tiempo y es que el móvil nuevo (galaxy s4) no se conecta automáticamente al manos libres, sale un menú y no se conecta sin darle al dichoso menu aunque el dispositivo ya estuviera vinculado con lo que el perfil de activación bt al recibir una llamada ya no sirve de nada.

Gracias a todos, un saludo.

Jusss
31/03/14, 00:46:11
Autocontact no tendrá una variable "no match"?estuve investigando y no la encuentro. Así pongo que detenga la tarea si no encontró a nadie

Stenary
31/03/14, 17:23:19
Les hago otra consulta cuando el contacto no lo encuentra porque pronunciaron mal o se confundieron de nombre que les pasa en sus perfiles?, a mi si digo "llamar a almohada" (que no lo tengo de contacto) el pop up dice "encontrado almohada" y llama a ese numero raro que comente mas arriba, no se como solucionarlo, pense poner que solo marque si %acnumber no coincide con "numero raro", pero no funciona
EDITO: encontré lo que pasa cuando %acnumber no coincide con ningún número (o sea que no encontró contactos) por una extraña razón marca directo el "2268 62-37" es más si hago una tarea individual que sea "llamar" "automarcado" a "%acnumber" (sin ninguna variable) llama al 2268 62-37 jaja es muy raro

Efectivamente, cuando no encuentra al contacto llama a un numero raro.

Cuando llamaba a mi padre me apuntaba papá (con acento), y el contacto de mi padre es Papa, así que me llamaba a un numero raro, solo tuve que añadirle en la app Autocontacts el nombre de papá, con acento, así autocontacs a parte de usar el nombre original de contacto también usara un segundo nombre que le pongas en autocontact.

Esta función esta también en la app autolauch.



En cuanto a los popups, ya dije que los puse para ir viendo si fallaba alguna parte del proceso, pero al final los dejé por simple elegancia. Parece que aunque no encuentre el contacto igual muestra el popup pero es porque como ya he dicho la función no era saber si encontraba el nombre, si no saber si había realizado la busqueda del nombre, tarea A1.

Podéis cambiar el texto del popup o directamente quitarlo.

Jusss
31/03/14, 17:34:43
Efectivamente, cuando no encuentra al contacto llama a un numero raro.

Cuando llamaba a mi padre me apuntaba papá (con acento), y el contacto de mi padre es Papa, así que me llamaba a un numero raro, solo tuve que añadirle en la app Autocontacts el nombre de papá, con acento, así autocontacs a parte de usar el nombre original de contacto también usara un segundo nombre que le pongas en autocontact.

Esta función esta también en la app autolauch.



En cuanto a los popups, ya dije que los puse para ir viendo si fallaba alguna parte del proceso, pero al final los dejé por simple elegancia. Parece que aunque no encuentre el contacto igual muestra el popup pero es porque como ya he dicho la función no era saber si encontraba el nombre, si no saber si había realizado la busqueda del nombre, tarea A1.

Podéis cambiar el texto del popup o directamente quitarlo.

Gracias, pensé que sólo me pasaba a mi se ve que es un bug de la aplicación. Pasa que si pronuncias mal el nombre o lo entiende mal ya te llama al número. Lo solucione con la app notify clean, cuando llega la notificación "not match" detienen la tarea y dice contacto no encontrado, si no aparece nada, la tarea continúa

Stenary
31/03/14, 17:37:14
Lo solucione con la app notify clean, cuando llega la notificación "not match" detienen la tarea y dice contacto no encontrado, si no aparece nada, la tarea continúa

Muchas gracias, así se puede quedar un perfil bastante bueno y bonito.:ok:

Stenary
31/03/14, 17:47:05
No encuentro la app notify clean, podrías poner el enlace? He encontrado de ese estilo pero si tu usas esa supongo sera buena así que no quiero arriesgar jeje.

Jusss
31/03/14, 18:02:41
En este post hable de como funciona y esta el link : http://www.htcmania.com/showthread.php?t=765381 la uso más que nada porque puedo hacer que la notificación no aparezca en la barra e igual la manda a tasker, el problema es que para mandar a las variables de las distintas notificaciónes necesitas la versión paga para que aparezca la opción. Se me ocurre sino otra forma con tasker gratuita poniendo si llega nueva notificación "autocontact" establecer detener esa tarea, seria lo mismo supongo, pero lo haría con cualquier notificación de la app, igualmente la única notificación que siempre le llega es cuando no encuentra coincidencias así que no creo que tengas problemas

oscarptx
31/03/14, 19:16:24
Me he dado cuenta de una cosa con autovoice, he visto que cuando hablo reconoce 5 frases (o posibilidades), sin embargo para que ejecute la acción tiene que coincidir la primera sí o sí, si la primera frase no coincide pero sí la tercera no ejecuta, haciendo inútiles las otras cuatro posibilidades, ¿tengo algo mal configurado o es así?

pep0te
01/04/14, 11:53:13
Buenas,

Estoy intentando que esto funcione, y no sé porqué pero al ejecutarlo salta directamente al "número raro" sin dejar tiempo para preguntar por el contacto. Éste es el perfil:

Perfil: Llama AutoContacts (83)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "llama a (?.+) (regex)" ]
Entrada: Autocontacts (84)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Pop-Up [ Título: Texto:Encontrado %nombre Imagen de fondo: Disposición:Popup Cuenta atrás (segundos):1 Show Over Keyguard:Encendido ]
A3: Llamar [ Número:%acnumber Automarcado:Encendido ]

Veo que ésta es la única diferencia respecto del código posteado anteriormente, pero en mi móvil yo tengo escrito "<nombre>" entre "(?.+)". ¿Se me escapa algo?


Muchas gracias!

maid450
01/04/14, 12:14:54
Command: "llama a (?.+) (regex)" ]
Esa expresión regular está mal, si no pones "<nombre>" no le asignará ese nombre al grupo.
Lo correcto sería: llama a (?<nombre>.+)

Edito: veo que dices que en el movil si lo tienes así... no he dicho nada pues :risitas:

pep0te
01/04/14, 12:20:33
Buenas, maid450,

Es así exactamente como lo tengo en Command Filter. Adjunto captura.

http://i.imgur.com/pJqyFye.png

Parece que <nombre> no lo coge.

Saludos.

Edit: Lo he vuelto a escribir y ahora aparece, no hay quien lo entienda esto xD. Aún así, sigue sin "dejarme hablar". Salta directamente. Es una tarea simple ¿no? No hay que hacer nada raro.


Saludos!

maid450
01/04/14, 13:03:28
Dices que no te llega a dejar hablar... has creado la tarea que lanza la acción de reconocer, verdad?
Autovoice necesita 2 partes, por un lado una tarea que lanzes con un widget o al agitar el telefono o lo que quieras con la acción "Autovoice Recognize" que es la que lanza el reconocimiento de voz.
Ahí hablas, y si existe algun contexto de estos "Autovoice Recognized" con un patrón que coincida ejecuta la tarea en cuestión...
Creo que te falta esta primera parte que no está explicada en el hilo

pep0te
01/04/14, 13:17:03
Exacto, no tengo esa primera parte. Voy a intentar hacerla, y si tengo alguna duda os comento.

Muchas gracias de nuevo!

Edit:

Perfecto, ahora sí.

He creado un nuevo proyecto para tenerlo separado, y funciona bastante bien. Lo he hecho sacudiendo de izq. a derecha para probar pero le pondré un evento diferente.

¡Muchas gracias!

Stenary
01/04/14, 15:52:59
Al final el perfil quedaria una cosa parecida a esto:


Perfil: Llama Autocontact (25)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "llama a (?<nombre>.+) (regex)" ]
Entrada: Autocontacts (24)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Pop-Up [ Título: Texto:Encontrado %nombre Imagen de fondo: Disposición:Popup Cuenta atrás (segundos):1 Show Over Keyguard:Encendido ]
A3: Llamar [ Número:%acnumber Automarcado:Encendido ]


Perfil: Error Llamada (159)
Evento: Notificación [ Aplicación origen:AutoContacts Título:* ]
Entrada: Error Busqueda (160)
A1: Detener [ Con error:Apagado Tarea:Autocontacts ]
A2: Pop-Up [ Título:Error Texto:Inténtelo de nuevo. Imagen de fondo: Disposición:Popup Cuenta atrás (segundos):3 Show Over Keyguard:Apagado ]



Le falta la parte de borrar la notificación, no tengo Xposed instalado y supongo que la gente que lo tenga instalado no le será complicado instalar la app NotifyClean (https://play.google.com/store/apps/details?id=de.defim.apk.notifyclean) y añadir una acción al final de la tarea "Error Busqueda". De paso, pregunto si hay otra manera de borrar esta notificación desde tasker, u otro plugin que no requiera xposed, no es que tenga nada en contra de xposed, es sólo curiosidad.

A ver si poco a poco queda un perfil perfecto ya que este es muuuuy mejorable.

ruco1980
09/04/14, 17:36:47
Hola a todos...voy a hacer una consulta que no logro resolver que creo que la respuesta va a ser una tontería...
El caso es que desde la última actualización de autovoice lo noto muy sensible al ruido de fondo y por más que trasteo dentro de las opciones de autovoice no consigo cambiarlo, a pesar de reducir de 10 a 5 seg, etc...
El caso es que en este perfil (y también en el que tengo de autovoice + autolaunch para abrir app's)...por ejemplo si digo "llamar a papa" o "abrir coreo" antes de la actualización de la app autovoice la respuesta era muy rápida y en seguida procedía a abrir la app o a llamar....Ahora después de activar el reconocimiento de voz y dar la orden hablada después se queda autovoice activado reconociendo mucho el ruido ambiente y de fondo "oscilando el circulito" y tarda mucho en realizar la respuesta del perfil....esto me pasa desde la última actualización. ¿A alguien más le pasa y ha conseguido solucionarlo?
Gracias a todos!

Stenary
09/04/14, 19:04:23
EStoy igual que tu ruco.
También noto un excesivo reconocimiento del ruido, incluso me estoy acostumbrando a tener que parar la escucha dandola al boton del microfono rojo cuando acabo de hablar para que no este un momento escuchando ruidos.

Hay una opcion que es escuchar el ruido, esta en tasker, plugins, puedes encenderla y apagarla cuando quieras, algo de noise se llama la opción, durante el rato que este encendido capta ruidos y luego los ignora, o eso es lo que yo creo que debe hacer, pero no se muy bien como funciona realmente o si ni siquiera sirve para eso.

A ver si alguien nos aconseja.

fus
09/04/14, 19:05:17
Hola a todos...voy a hacer una consulta que no logro resolver que creo que la respuesta va a ser una tontería...
El caso es que desde la última actualización de autovoice lo noto muy sensible al ruido de fondo y por más que trasteo dentro de las opciones de autovoice no consigo cambiarlo, a pesar de reducir de 10 a 5 seg, etc...
El caso es que en este perfil (y también en el que tengo de autovoice + autolaunch para abrir app's)...por ejemplo si digo "llamar a papa" o "abrir coreo" antes de la actualización de la app autovoice la respuesta era muy rápida y en seguida procedía a abrir la app o a llamar....Ahora después de activar el reconocimiento de voz y dar la orden hablada después se queda autovoice activado reconociendo mucho el ruido ambiente y de fondo "oscilando el circulito" y tarda mucho en realizar la respuesta del perfil....esto me pasa desde la última actualización. ¿A alguien más le pasa y ha conseguido solucionarlo?
Gracias a todos!

Es un error de google por lo visto, o eso dijo el creador de autovoice. Hasta que google no haga nada no se arreglará. La solución que el da es apretar el circulo con el microfono para que se ejecute antes :c

ruco1980
09/04/14, 23:43:12
Muchas gracias fus y steanary... Pues nada... Nos tocará esperar a ver si se soluciona en futuras actualizaciones...
1 saludo!

GraphicAdventure
13/04/14, 17:28:50
Autocontact no tendrá una variable "no match"?estuve investigando y no la encuentro. Así pongo que detenga la tarea si no encontró a nadie


No hay pero puedes detener si %acname está vacía.


Me he dado cuenta de una cosa con autovoice, he visto que cuando hablo reconoce 5 frases (o posibilidades), sin embargo para que ejecute la acción tiene que coincidir la primera sí o sí, si la primera frase no coincide pero sí la tercera no ejecuta, haciendo inútiles las otras cuatro posibilidades, ¿tengo algo mal configurado o es así?


A mí me funciona. He probado decir llama en vez de llamar, llamar era la 4ª opción y el perfil se activó.
Fíjate bien si la palabra que activa el perfil está en los resultados, como son tan parecidas puede que hayas visto mal y no estaba.
Utilizando el modo AutoVoice Continuous es conveniente utilizar precisión 1 para evitar malas interpretaciones de los contactos y activación de perfiles erróneos.
Como en Regex no se puede activar 'exact match' yo defino que la primera palabra sea la del comando, haciendo que el comando sea exacto: Command: ^llamar (?<nombre>.+)
Así evito que se active algún perfil si estoy hablando (ej.: "me tiene que llamar pepito").
También se puede utilizar una palabra 'clave' como la primera del comando en todos los perfiles o aquellos que son susceptibles de activación incluso con el '^'.
Ej. Command: ^auto llamar pepito).


Le falta la parte de borrar la notificación, no tengo Xposed instalado y supongo que la gente que lo tenga instalado no le será complicado instalar la app NotifyClean y añadir una acción al final de la tarea "Error Busqueda". De paso, pregunto si hay otra manera de borrar esta notificación desde tasker, u otro plugin que no requiera xposed, no es que tenga nada en contra de xposed, es sólo curiosidad.


¿Porque no inhabilitas 'Notify No Matches' en AutoContacts? Yo no la uso.
No hace falta crear otro perfil si no encuentra el contacto.
En la acción Pop-Up pones la condición si %acname está vacía y la siguiente acción 'detener'.

Stenary
13/04/14, 17:53:16
Pues es una muy buena manera de hacerlo, me pondre a ello y así no tengo q habilitar la notificación "no matches" para saber cuando no ha encontrado a nadie.

Gracias

Stenary
14/04/14, 14:23:12
Pues no funciona tu propuesta GraphicAdventure, te explico.
Pruebo a llamar a "almohada" que no existe en mis contactos, pero la variable %acnames si que se establece en almohada, por tanto no puedo usar tu idea.
Mi idea es que deberia haber alguna variable de AutoContacts que contenga todos tus contactos, igual que la variable %PACTIVE, y entonces, suponiendo que la variable que contiene todos tus contactos ya escaneados se llama %allcontacts (es un ejemplo, me lo he inventado) quedaria algo asi:
Si %allcontacts ~ *%acnames*
(tareas de llamada a %acnumber)
else
(tareas de notificar que no existe y volver a reconocer la voz)

A ver si encuentro esa variable que supongo que debe existir ya que la app Autocontacts escanea los contactos y en algun lugar se guardaran y si estan en una variable puede funcionar.

Stenary
14/04/14, 14:53:59
He encontrado la solución sin notificaciones, básicamente era usar la idea de GraphicAdventure pero con la variable %acnumber. Primero pensé, siempre llama al mismo numero cuando no existe el contacto, asi que si pongo que si la variable %acnumber concide con el numero al que siempre llama...ya tengo la condición en la que el contacto no existe.Probandolo me he dado cuenta que es mas simple aun, resulta que la variable %acnumber solo se establece en un numero si el contacto existe, asi que es todo muy sencillo, pongo el perfil.

Perfil: Llama Autocontact (25)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Command: "llama a (?<nombre>.+) (regex)" ]
Entrada: Autocontacts (24)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Si (if) [ %acnumber No ajust. ] (Aqui esta la "magia")
A3: Pop-up botones tarea [ Texto:%nombre No Encontrado Volver A Intentar Modo:Texto Tarea:Inicia Escucha Tarea: Tarea: Imagen de fondo: Disposición:Popup Task Buttons Cuenta atrás (segundos):3 Show Over Keyguard:Encendido ]
A4: Else
A5: Pop-up botones tarea [ Texto:¡Éxito! %nombre encontrado Modo:Texto Tarea:Cambiar El Contacto Tarea: Tarea: Imagen de fondo: Disposición:Popup Task Buttons Cuenta atrás (segundos):2 Show Over Keyguard:Encendido ]
A6: Llamar [ Número:%acnumber Automarcado:Encendido ]


En los botones de tareas de los pop-ups he puesto en el pop up de "no encontrado" que realize una tarea de Iniciar escucha(autovoice recognice), y en el de "contacto encontrado" una tarea de cantelar la tarea de Autocontacts y Autovoice recognice(o la darea de iniciar escucha que es lo mismo). Lo que hacen es, si has encontrado al contacto pero ves en el popup que no es el correcto puedes volver a empezar a hablar y decir el contacto nuevo antes de que llame al contacto erroneo. Y en el otro popup es simplemente volver a iniciar la escucha de autovoice para repetir el comando.

La idea para mejorarlo esta en crear un perfil que reaccione con solo el nombre del contacto(%nombre) sin el "llama a..." y que se habilite al presionar uno de los botones de los popups tareas, asi, en caso de error de contacto o de que no exista, solo se tendria que decir el nombre dol contacto y no todo el comando "llama a..."

Poco a poco, de momento este perfil ya funciona para cualquiera sin tener notifyclean pagado(sin pagar no puedes quitar la notificacion "no matches" de autocontacts. Y sin llamar a numeros raros.

GraphicAdventure
15/04/14, 21:07:35
Las variables de AutoContacts son visibles dentro de la tarea a través del icono de variables en una acción.
%acname se establece de la misma forma que %acnumber.
Si confirmas que se establece a un contacto inexistente, yo creo que eso y llamar a ese número raro(no es un bug) son limitaciones impuestas por Joao si no se compra.
Si no puedes inhabilitar la opción 'Notify No Matches' porque no has pagado puedes hacer esto:
Ajustes - Administrador de Aplicaciones - Todas - AutoVoice
Inhabilita 'Mostrar notificaciones' e ya no aparece la notificación, pero recuerda que tienes un máximo de 20 contactos para poder llamar.

Stenary
16/04/14, 12:27:27
Autovoice la tengo pagada religiosamente, a lo que me referia con no poder quitar la notificación era para NotifyClean y a q si quito la notificacion ya no me funcionaba la parte que decia que el contacto era erroneo y detenia la tarea de llama al recibir esa notificacion. Como explica Juss:
En este post hable de como funciona y esta el link : http://www.htcmania.com/showthread.php?t=765381 la uso más que nada porque puedo hacer que la notificación no aparezca en la barra e igual la manda a tasker, el problema es que para mandar a las variables de las distintas notificaciónes necesitas la versión paga para que aparezca la opción.

Entonces al no tener NotifyCLean pagado, si quito la notificación no sigue afectando a tasker y no detiene la llamada ni dice que el contacto es erroneo.

Siento desilusionarte pero x ahi no van los tiros...jejeje Y %acname se establece en el nombre q sea, tanto que exista en los contactos como si no existiese porque en esta parte:
Command: "llama a (?<nombre>.+) (regex)" ]
Entrada: Autocontacts (24)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]

Primero la variable %nombre se establece al nombre que tu digas por voz, y en la parte de AutoContacts(A1) lo que hace es establecer %acname a %nombre por tanto la variable %acname contiene el nombre del contacto que hayas dicho, exista o no.
No pasa lo mismo con %acnumber asi que problema resuelto. Si %acnumber no esta ajustado lanzar la tarea de contacto erroneo...

GraphicAdventure
16/04/14, 16:34:49
Yo no me referí a la aplicación NotifyClean ni al plugin AutoVoice pagado pero sí al AutoContacts. ¿Tienes el AutoContacts pagado?

Poco a poco, de momento este perfil ya funciona para cualquiera sin tener notifyclean pagado(sin pagar no puedes quitar la notificacion "no matches" de autocontacts. Y sin llamar a numeros raros.

Por lo que comentas yo entiendo que no.
Lo de llamar a ese número raro solo ocurre en la versión no pagada, a mí no me llama y tampoco me asigna un valor a %acname si no existe el contacto, lo cual es lógico. Por eso te he dicho que tiene que ser una limitación de la versión no pagada.
Si lo has solucionado de otra forma me alegro. Todo lo que te comenté fue simplemente para no tuvieses que usar NotifyClean ni 2 perfiles.

Saludos.

Jusss
16/04/14, 20:44:23
Yo no me referí a la aplicación NotifyClean ni al plugin AutoVoice pagado pero sí al AutoContacts. ¿Tienes el AutoContacts pagado?



Por lo que comentas yo entiendo que no.
Lo de llamar a ese número raro solo ocurre en la versión no pagada, a mí no me llama y tampoco me asigna un valor a %acname si no existe el contacto, lo cual es lógico. Por eso te he dicho que tiene que ser una limitación de la versión no pagada.
Si lo has solucionado de otra forma me alegro. Todo lo que te comenté fue simplemente para no tuvieses que usar NotifyClean ni 2 perfiles.

Saludos.

yo tengo la version paga y me llama a ese numero raro, ni idea porqu, ¿sera cuestion del modelo o version de android?

GraphicAdventure
17/04/14, 00:22:44
Pues entonces no sé porqué.
Ya haré unas cuantas pruebas y te diré.
A mi me funciona perfectamente.
Puede que tenga que ver con los resultados encontrados, como yo utilizo precisión 1 no hay margen de error.

Stenary
17/04/14, 13:21:19
Yo no me referí a la aplicación NotifyClean ni al plugin AutoVoice pagado pero sí al AutoContacts. ¿Tienes el AutoContacts pagado?

Jeje fallo mio, yo tambien me referia al autocontacts pero me equivoque, sorry.

En cuanto a lo de %acname pues supongo que la crea cuando dices llama a pedrito, pedrito pasa a ser el valor de %acname, y de ahi es como autocontacs usa "pedrito" para realizar la busqueda, si no, ¿como sabe que nombre buscar?.

Y por cierto, como puedes ver se a solucionado con un unico perfil, y sin notify clean ni nada, ademas aunque a otros no les llame a numeros raros, le sirve igualmente para saber si van a llamar bien o incluso para volver a hablar si autovoice los escucho mal o lo que sea.

GraphicAdventure
18/04/14, 13:47:55
Intenté varias configuraciones, llamé almohada llamé de todo y nunca me asignó un nombre que no está en mis contactos a %acname, esto es lo normal.
AutoContacts busca por la variable que pones en la acción que es la variable %nombre que tú creaste, si encuentra un nombre es cuando asigna ese nombre a %acname. No tengo ni idea porque os ocurre eso.

Stenary
18/04/14, 14:31:05
Podrias poner aqui el perfil que usas, para ver si hay alguna diferencia o algo.

GraphicAdventure
18/04/14, 15:52:26
Perfil: Call OUT AV (20)
Restore: no Enforce: no
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Id: avc
Command: "^llamar (?<none>.+) (regex)"
Precision: 1
Replacements: ã=a,á=a,é=e,í=i,ó=o,ú=u,ima=inma ]
Entrada: Anon (19)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %none Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1000 Continuar Tarea Tras Error:Encendido ]
A2: Decir [ Texto:Sin contacto. Motor: Voz:com.ivona.tts:spa-ESP Stream:1 Tono:5 Velocidad:5 Respect Audio Focus:Apagado Network:Apagado Continuar tarea inmediatamente:Encendido Continuar Tarea Tras Error:Encendido ] Si (if) [ %acname ~R ^%.* ]
A3: Ir a acción [ Tipo:Número Acción Número:12 Etiqueta: ] Si (if) [ %acname ~R ^%.* ]
A4: AutoVoice Continuous [ Configuración:
Stopping continuous voice recognition Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous Cuenta atrás (segundos):0 Continuar Tarea Tras Error:Encendido ]
A5: Decir [ Texto:Llamar a %acname ? Motor: Voz:com.ivona.tts:spa-ESP Stream:1 Tono:5 Velocidad:5 Respect Audio Focus:Apagado Network:Apagado Continuar tarea inmediatamente:Apagado Continuar Tarea Tras Error:Encendido ]
A6: AutoVoice Continuous [ Configuración:
Starting continuous voice recognition without headset
Persistent Notification: true Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous Cuenta atrás (segundos):0 Continuar Tarea Tras Error:Encendido ]
A7: Reproducir Sonido Llamada [ Tipo:Notificación Sonido:Beep once Stream:1 ]
A8: Esperar [ MS:0 Segundos:5 Minutos:0 Horas:0 Días:0 ]
A9: AutoVoice Continuous [ Configuración:
Stopping continuous voice recognition Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous Cuenta atrás (segundos):0 Continuar Tarea Tras Error:Encendido ] Si (if) [ %AVWORD1 ~ si ]
A10: Llamar [ Número:%acnumber Automarcado:Encendido ] Si (if) [ %AVWORD1 ~ si ]
A11: Decir [ Texto:Cancelado Motor: Voz:com.ivona.tts:spa-ESP Stream:1 Tono:5 Velocidad:5 Respect Audio Focus:Apagado Network:Apagado Continuar tarea inmediatamente:Encendido Continuar Tarea Tras Error:Encendido ] Si (if) [ %AVWORD1 !~ si ]
A12: Limpiar variable [ Nombre:%AVWORD1 Coincidencia de Patrón:Apagado ]

Me acordé de algo, intenta dar otro nombre a la variable, en vez de 'nombre' que sea 'nada' o lo que quieras.
O intenta usar mi perfil a ver si también pasa.
Verifica si tienes Tasker, AutoVoice y AutoContacts actualizados.

ruco1980
21/04/14, 14:24:16
Aquí os pongo mi perfil que después de unos días probando me está funcionando sin ningún problema...por si a alguien le es de utilidad....

Perfil: Llamar con Voz (231)
Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true
Id: avc
Command: "llamar a (?<nombre>.+) (regex)" ]
Entrada: Llamar con Autovoice y Autocontacts (234)
A1: AutoContacts [ Configuración:Contact Name or Nickname: %nombre Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1500 ]
A2: Si (if) [ %acnumber No ajust. ]
A3: Decir [ Texto:Sin coincidencia. Vuelve a intentarlo. Motor: Voz:default:default Stream:3 Tono:5 Velocidad:5 Respect Audio Focus:Apagado Network:Apagado Continuar tarea inmediatamente:Apagado Continuar Tarea Tras Error:Encendido ]
A4: Pop-up botones tarea [ Texto:%nombre NO encontrado. Volver a intentar. Modo:Texto Tarea:Autovoice Recognize Tarea: Tarea: Imagen de fondo: Disposición:Popup Task Buttons Cuenta atrás (segundos):10 Show Over Keyguard:Encendido ]
A5: Ir a acción [ Tipo:Número Acción Número:11 Etiqueta:Inicio ]
A6: Else
A7: Pop-Up [ Título: Texto:¡ Éxito ! %nombre encontrado.
Teléfono %acnumber Imagen de fondo: Disposición:Pop-up Cuenta atrás (segundos):5 Show Over Keyguard:Encendido ]
A8: Decir [ Texto:Llamando a %acname Motor: Voz:default:default Stream:3 Tono:5 Velocidad:5 Respect Audio Focus:Apagado Network:Apagado Continuar tarea inmediatamente:Apagado Continuar Tarea Tras Error:Encendido ]
A9: Fin si (End if)
A10: Llamar [ Número:%acnumber Automarcado:Encendido ]
A11: Limpiar variable [ Nombre:%acname Coincidencia de Patrón:Apagado ] Si (if) [ %acnumber No ajust. ]

Las acciones de "decir", una vez comprobado que la tarea funciona bien se pueden eliminar para que la tarea se a más veloz....
El tema es el siguiente...si decimos "llamar a papa" y lo reconoce perfectamente...sale el pop up que pone "Éxito! papa encontrado teléfono xxxxxxxxx" y efectúa la llamada...
Con el pop-up anterior de "botones tarea" que explicó muy bien el compañero en post anteriores...lo que se trata es que si nos equivocamos en la orden o no la reconoce bien nos dé la opción de pulsar en el pop-up en el botón de tarea "autovoice recognize" y volver a decir la orden....en ese periodo de tiempo (o al menos así lo creo yo aunque la estructura interna al 100% no la domino) va a la acción 11 y limpia la variable para continuar con la nueva orden, es decir....si decimos "llamar a cosa" y nos sale elpop-up que pone "cosa no encontrado vuelve a intentar", entonces pulsamos en el botón del popup de la tarea y volvemos a decir "llamar a casa" y entonces ya sale el otro popup que pone "éxito! casa encontrado teléfono xxxxxxxx" y efectúa la llamada.
La tarea de autovoice recognize es una tarea genérica que tengo creada con su widget en el escritorio por si quiero lanzarla yo...sería la siguiente:

Autovoice Recognize (141)
A1: AutoVoice Recognize [ Configuración:
Voice command without headset Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Recognize Cuenta atrás (segundos):0 ]

Esta tarea hay que indicársela en el "popup botones tarea".

Por supuesto que hay otros perfiles más "currados" de otros compañeros,pero este de momento no me da ningún problema así que puede serle de utilidad a alguien para luego ir experimentando algo más complejo.

Un saludo!

vermont1998
09/06/14, 05:02:14
Tengo pagados e instalados el Autolaunch y el Autocontacts (con el Autovoice claro)

El Autolaunch me funciona bien la mayoría del tiempo, digamos 7 de cada 10 veces,

Pero el Autocontacts es al contrario, me falla 7 de cada 10 veces, y por decir que me falla me refiero a:

1.- No hace nada (no llama a nadie). La mayoría de las veces.

2.- Llama a un contacto totalmente diferente al que dije.

Habilité los logs de autovoice y veo que cuando no llama a nadie es por dos razones (punto 1):

a) No reconoce el nombre a pesar de existir. Es decir, en el log aparece por ejemplo "llamar a juan:true" y juan es el nombre que dije y sí existe en mi agenda, pero aún así no hace nada. No intenta la llamada ni nada.

b) La otra situación es cuando ni siquiera lo detecta, es decir, yo digo Llamar a Juan y al revisar el log aparece "llamar a juan: false" a pesar de que juan sí aparece en mi agenda de contactos.

Con esto finaliza mi explicación para cuando no llama a nadie en lo absoluto.

Ahora el otro problema, el punto 2:

Llama a alguien totalmente diferente a quien quiero llamar.

Para hacer pruebas con esto habilité un 'flash %acname y encontré que en ocasiones al decir por ejemplo (llamar a papá) una de las 5 opciones que autovoice reconoce es "llamar a mi papa) y coloca únicamente la palabra " mi" en el valor %acname y termina llamando por ejemplo a Luis Miguel por tener "mi" dentro de su nombre (por el regex). Inclusive me ha pasado que en "llamar a papa" reconoce como %acname la letra "a" (la que está entre "llamar" y "papa" y termina marcando por decir algo a "Pablo" o a cualquier otro contacto que tenga una letra "a" en su nombre,

Alguna idea para solucionar ambos problemas? He intentado reinstalar, forzar actualizar contactos, usar nicknames (aún no me queda claro como funciona el %acnickname ya que al que pedimos marcar es al %acname y no al %acnickname pero bueno eso tal vez sea otro tema), usar el comando entre paréntesis como he visto en otros perfiles por aquí (llamar a), etc, todo sin resultados,

Les anexo mi perfil y doy las gracias de antemano

Profile: CallingContact (84)
State: AutoVoice Recognized [ Configuration:Event Behaviour: true
Command: "llamar a (?<acname>.+) (regex)"
Precision: 5
Condition Name: AutoVoiceCall
Enter: Calling (83)
A1: AutoContacts [ Configuration:Contact Name or Nickname: %acname Package:com.joaomgcd.autocontacts Name:AutoContacts Timeout (Seconds):1000 ]
A2: Call [ Number:%acnumber Auto Dial:On ] If [ %acnumber Is Set ]

ruco1980
09/06/14, 16:04:56
Alguna idea para solucionar ambos problemas?

Mis conocimientos son limitados...yo suelo funcionar más por el método ensayo-error hasta que me funcionas las cosas jejej

No creo que sea tu caso pero a mí en ocasiones cuando no me ha funcionado autocontacts he entrado en la aplicación y resulta que no sé por qué se me habían borrado la mitad de los contactos en la base que crea la aplicación...entonces le dices "refrescar contactos" y vuelve a analizar tu agenda....mira a ver si es esto lo que te ocurre con autocontacts y por eso no encuentra el nombre....yo tengo marcado "phone numbers only" y "notify no matches".

Por otro lado...el comando que utilizas es : "llamar a (?.+) (regex)"

El que yo utilizo es: "llamar a (?<nombre>.+) (regex)"

Ya te digo que no comprendo muy bien este tipo de expresiones porque no sé programar, etc....pero quizás el incluir <nombre> dentro del comando es lo que hace que se genere la variable %nombre o %acname, etc...guarde el nombre del contacto que has dicho en una variable y luego busque la coincidencia en la agenda.....ya te digo que no sé si será eso pero puedes empezar haciendo pruebas por ahí.....

Con cualquier cosa comenta que seguro que alguien más experto que yo te podrá ayudar...

1 saludo!

vermont1998
09/06/14, 17:36:52
No creo que sea tu caso pero a mí en ocasiones cuando no me ha funcionado autocontacts he entrado en la aplicación y resulta que no sé por qué se me habían borrado la mitad de los contactos en la base que crea la aplicación...entonces le dices "refrescar contactos" y vuelve a analizar tu agenda....mira a ver si es esto lo que te ocurre con autocontacts y por eso no encuentra el nombre....yo tengo marcado "phone numbers only" y "notify no matches".

Por otro lado...el comando que utilizas es : "llamar a (?.+) (regex)"

El que yo utilizo es: "llamar a (?<nombre>.+) (regex)"



Gracias por contestar.

Lo del comando es correcto lo que comentas. Utilizo la misma estructura de comando que tú pero con el %acname

Probablemente lo borré sin querer al copiarlo de Tasker, pero revisé de nuevo y sí está configurado así. Ya los edité en mi post original. Gracias
Y de lo de refrescar contactos ya lo revisé y los contactos sí aparecen. De hecho como comenté arriba en el log dice True, lo que según yo quiere decir que encontró una coincidencia, pero aún así no hace la llamada.

No tengo ni la menor idea de qué pueda ser, y lo más raro es que con el Autolaunch (para las apps) no me pasa. El Autolaunch sí me funciona bien (La gran mayoría de las veces)

Pero bueno, seguiremos por aquí a ver si descubrimos algo, jejeje,

Gracias de nuevo,

Saludos!

Jusss
10/06/14, 15:53:18
lo más raro es que con el Autolaunch (para las apps) no me pasa. El Autolaunch sí me funciona bien (La gran mayoría de las veces) !

Una consulta El Autolanch funciona similar al Autocontacts? se puede usar una estructura similar a la que usamos en este hilo con los contactos pero para lanzar App ?

ruco1980
10/06/14, 16:34:15
Una consulta El Autolanch funciona similar al Autocontacts

Así es Juss..puedes crear un perfil con el comando y luego p.ej. dices "abrir correo" y te abre la app. Yo lo tengo y funciona a la perfección. Creo que hay un post por ahí....aunque seguro que no tienes ningún problema para crear el perfil y la tarea...si no comenta por aquí...

1 saludo!

isaakmg
14/06/14, 20:48:52
Así es Juss..puedes crear un perfil con el comando y luego p.ej. dices "abrir correo" y te abre la app. Yo lo tengo y funciona a la perfección. Creo que hay un post por ahí....aunque seguro que no tienes ningún problema para crear el perfil y la tarea...si no comenta por aquí...

1 saludo!
Seria bueno, que cuando hiciéramos alusión a un tutorial pusiésemos los links para facilitar las cosas.

Así, si alguien entra y se encuentra con un problema parecido obtiene solución y de paso se siembra para que cuando necesitemos ayuda o consulta lo hagan correctamente....

CmdNet
24/03/15, 08:32:05
Buenas....
Ya se que este hilo es antiguo, he metido el perfil que habeis puesto y funciona bien.
Pero la funcionalidad que yo quiero darle, es para que cuando este en el coche y quiera hacer una llamada, pueda hacerla desde el bluetooch del coche, es decir, que cuando le de al botón verde del bluetooch me salte el perfil de llamadas de voz en el movil.

Alguien sabe como hacer esto que comento?????

mlesir
24/03/15, 12:56:19
Con el plugin Autovoice y su contexto de botón de bluetooth pulsado.

CmdNet
26/03/15, 10:31:42
Con el plugin Autovoice y su contexto de botón de bluetooth pulsado.

Muchas gracias, lo pruebo y os cuento.