Ver Mensaje Individual
  #2  
Viejo 04/04/15, 14:18:33
Avatar de cace0353
cace0353 cace0353 no está en línea
Usuario muy activo
Mensajes: 504
 
Fecha de registro: may 2010
Localización: Arenys de Mar (B)
Mensajes: 504
Modelo de smartphone: Pixel 8 Pro - 256 Gb.
Versión de ROM: Stock
Versión de Radio: Stock
Tu operador: Jazztel
Mencionado: 11 comentarios
Tagged: 0 hilos
Continuacion

(Continuo con la tarea ya que me habia quedado cortada en A8)

A9: Establecer variable [ Nombre:%nom A:%VOICE Calcular:Apagado Añadir:Apagado ]
Le pedimos a AC que busque %nom en nuestros contactos (puede ser el nombre solo, el apellido, la profesión, el nombre y la profesión, etc)
A10: AutoContacts [ Configuración:Contact Name or Nickname: %nom Name as Nickname: true Paquete:com.joaomgcd.autocontacts Nombre:AutoContacts Cuenta atrás (segundos):1000 ]
Ahí viene el Plus: en lugar de usar %acname usamos %acnames() que es la matriz que contiene TODAS las coincidencias y guardamos en la variable %num_coincidencies el nº de contactos encontrados = %acnames(#)...
A11: Establecer variable [ Nombre:%num_coincidencies A:%acnames(#) Calcular:Encendido Añadir:Apagado ]
Si no hay coincidencias, nos lo comunica y nos devuelve a la etiqueta "coger contacto"
A12: Si (if) [ %num_coincidencies ~ 0 | %num_coincidencies ~ %* ]
A13: Decir [ Texto:Contacto no encontrado. Repite por favor Motor: Voz:default:default Stream:3 Tono:5 Velocidad:4 Respetar Foco Audio:Encendido Red:Apagado Continuar tarea inmediatamente:Apagado ]
A14: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:coger contacto ]
A15: Fin si (End if)
Si sólo hay una coincidencia nos manda directamente a la etiqueta "resultado" para confirmar si queremos llamar
A16: Si (if) [ %num_coincidencies ~ 1 ]
A17: Establecer variable [ Nombre:%opcio A:1 Calcular:Encendido Añadir:Apagado ]
A18: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:resultado ]
A19: Fin si (End if)
Peeero, si hay varios elementos en la matriz %acnames (si AC ha encontrado más de un contacto), establece un bucle para extraerlos todos hasta que se acaben...
A20: Establecer variable [ Nombre:%contador A:1 Calcular:Encendido Añadir:Apagado ]
<bucle>
A21: Anchor
A22: Si (if) [ %contador < %num_coincidencies | %contador ~ %num_coincidencies ]
Coge cada contacto (elemento de la matriz) y empieza a escribir la variable %contactes con el nombre del contacto junto con el nº de orden dentro de la lista. A cada vuelta del bucle la variable es la misma (ya que tenemos Añadir:Encendido) pero va creciendo de manera que, si ha encontrado 3 JOSE, la variable %contactes al final quedará: "José Alcázar fontanero:1:José Madera vecino de la suegra:2:Luis Sanjosé:3:" Los ":" són para hacer pausas cuando me los lea...
A23: Establecer variable [ Nombre:%contactes A:%acnames(%contador): %contador: Calcular:Apagado Añadir:Encendido ]
A24: Sumar a variable [ Nombre:%contador Valor:1 Módulo (wrap around):0 ]
A25: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:bucle ]
A26: Fin si (End if)
<repetir>
A27: Anchor
Cuando ya ha acabado de componer la variable %contactes me la lee, acabando cada nombre completo del contacto con un nº que es EL ÍNDICE DEL CONTACTO dentro de la matriz %acnames()
A28: Decir [ Texto:%num_coincidencies contactos encontrados: %contactes . Opciones: número del contacto o repetir Motor: Voz:default:default Stream:3 Tono:5 Velocidad:4 Respetar Foco Audio:Encendido Red:Apagado Continuar tarea inmediatamente:Apagado ]
<repetir opcion>
A29: Anchor
Espera que le diga que nº del contacto elegido entre los que me ha dicho o si necesito volver a oir la lista...
A30: Captar Voz [ Título:ELIGE EL Nº DEL CONTACTO O DI REPETIR Modelo Lenguaje:Forma libre Resultados Máximos:1 Cuenta atrás (segundos):30 ]
A31: Establecer variable [ Nombre:%opcio A:%VOICE Calcular:Apagado Añadir:Apagado ]
A32: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:repetir ] Si (if) [ %opcio ~ repetir ]
<resultado>
A33: Anchor
Asigna nombre y nº de teléfono al contacto, y me pedirá si quiero llamar. Si no me ha entendido o le he dicho un número superior me pide que repita la respuesta y me manda a la etiqueta "repetir opcion"
A34: Establecer variable [ Nombre:%contacte A:%acnames(%opcio) Calcular:Apagado Añadir:Apagado ]
A35: Establecer variable [ Nombre:%telefon A:%acnumbers(%opcio) Calcular:Apagado Añadir:Apagado ]
A36: Si (if) [ %contacte ~ %* ]
A37: Decir [ Textoisculpa, no te he entendido. Puedes repetir por favor? Motor: Voz:default:default Stream:3 Tono:5 Velocidad:4 Respetar Foco Audio:Encendido Red:Apagado Continuar tarea inmediatamente:Apagado ]
A38: Ir a acción [ Tipo:Etiqueta Acción Número:1 Etiqueta:repetir opcion ]
A39: Fin si (End if)
<final>
Me dice el nombre del contacto, si es el móvil, casa, trabajo, etc y me pregunta si quiero llamar o salir...
A40: Anchor
A41: Flash [ Texto:%contacte . %telefon %acnumbertype Largo:Apagado ]
A42: Decir [ Texto:%contacte: telèfon %acnumbertype. Quieres llamar? . Opciones : llamar salir Motor: Voz:default:default Stream:3 Tono:5 Velocidad:4 Respetar Foco Audio:Encendido Red:Apagado Continuar tarea inmediatamente:Apagado ]
A43: Captar Voz [ Título: ELIGE UNA OPCIÓN Modelo Lenguaje:Forma libre Resultados Máximos:1 Cuenta atrás (segundos):15 ]
A44: Si (if) [ %VOICE ~R llamar|llama ]
A45: Llamar [ Número:%telefon Automarcado:Encendido ]
A46: Esperar [ MS:0 Segundos:3 Minutos:0 Horas:0 Días:0 ]
A47: Altavoz [ Establecer:Encendido ] Si (if) [ %Altaveu_Activat ~ 0 ]
A48: Fin si (End if)
Para volver a activar AV si al empezar la tarea estaba activado porque veniamos de un perfil...
A49: AutoVoice Continuous [ Configuración: Starting continuous voice recognition without headset Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous Cuenta atrás (segundos):0 ] Si (if) [ %AVactivat ~ 1 ]

COMPLEMENTOS Y MEJORAS

1.- Puede incluirse un grupo de acciones al principio para, como en los teléfonos de botones haciendo pulsación larga, guardar unos nnúmeros de marcado directo. Los números de teléfono se añaden separados por , (coma) a la variable %cont_direct y podemos acceder a ellos diciendo su número de posición dentro de la variable. En este caso al decir en número (1, 2, 3, ...) se llama directamente al contacto asociado segun la lista de números. Así nos ahorramos toda la conversación con el smartphone.

Las acciones que se proponen se colocan al principio (substituyendo las acciones A1..A9) y deberá añadirse la etiqueta "directe" al final, justo antes de la acción "Llamar":

A1: Si (if) [ %AVactivat ~ 1 ]
A2: AutoVoice Continuous [ Configuración: Stopping continuous voice recognition Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous Cuenta atrás (segundos):0 ]
A3: Fin si (End if)
A4: Establecer variable [ Nombre:%num_direct A:93xxxxxxx,636xxxxxx,679xxxxxx, 641xxxxxx,618xxxxxx,93xxxxxxx Calcular:Apagado Añadir:Apagado ]
A5: Separar variable [ Nombre:%num_direct Separador:, Eliminar base:Apagado ]
A6: Establecer variable [ Nombre:%num_preferits A:%num_direct(#) Calcular:Apagado Añadir:Apagado ]
A7: Decir [ TextoI EL NOMBRE DEL CONTACTO Motor: Voz:default:default Stream:3 Tono:5 Velocidad:5 Respetar Foco Audio:Encendido Red:Apagado Continuar tarea inmediatamente:Apagado ]
A8: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ]
<agafar contacte>
A9: Anchor
A10: Captar Voz [ Título:Nombre del contacto? 1-CASA 2-MUJER 3-HIJO1 4-HIJO2 5-HIJO3 6-TRABAJO Modelo Lenguaje:Forma libre Resultados Máximos:1 Cuenta atrás (segundos):30 ]
A11: Establecer variable [ Nombre:%nom A:%VOICE Calcular:Apagado Añadir:Apagado ]
A12: Establecer variable [ Nombre:%contador A:1 Calcular:Apagado Añadir:Apagado ]
<Bucle preferits>
A13: Anchor
A14: Si (if) [ %nom ~ %contador ]
A15: Establecer variable [ Nombre:%telefon A:%num_direct(%contador) Calcular:Apagado Añadir:Apagado ]
A16: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:directe ]
A17: Else
A18: Establecer variable [ Nombre:%contador A:%contador+1 Calcular:Encendido Añadir:Apagado ]
A19: Ir a acción [ Tipo:Etiqueta Acción Número: Etiqueta:Bucle preferits ] Si (if) [ %contador < %num_preferits | %contador ~ %num_preferits ]
A20: Fin si (End if)
Aquí ya vendria A21: Autocontacts ...

2.- Finalmente, podria hacerse que, una vez encontrado el contacto y si tiene varios números de teléfono, la tarea nos ofreciera la posibilidad de elegir a cual llamar. Yo no lo necesito porque tengo como primer teléfono puesto el del móvil. Además añadiria "conversación" con el aparato y al final (podria ocurrir) cuando marcara el número y tuviera el contacto al habla, haber olvidado el motivo de la llamada!

3.- Como opción, podeis cambiar el tono de la voz de mujer en las acciones "Decir", si lo bajamos la voz se convierte en masculina (o casi). También se puede bajar (y así lo he hecho) la velocidad de reproducción a 4 para entender mejor los recados...

Disfrutad de estos dias de vacaciones, que yo ya lo estoy haciendo... je, je

Y, como siempre, atento a vuestros comentarios.
Responder Con Cita
Los siguientes 3 usuarios han agradecido a cace0353 su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]