Tasker Para hablar de todo lo relacionado con la aplicación tasker

Respuesta
 
Herramientas
  #81  
Viejo 18/06/13, 04:10:51
Array

[xs_avatar]
z3us z3us no está en línea
Usuario muy activo
 
Fecha de registro: ago 2010
Localización: Gijón / Madrid
Mensajes: 2,301
Modelo de smartphone: Note 3
Tu operador: Amena
 Cita: Originalmente Escrito por fus Ver Mensaje
Se más orgulloso joder!

Con esto nos has abierto muchisimas puertas, como el ansiado whatsapp en el ordenador ( estoy en ello, a ver si acabo los exámenes y puedo meterme por completo en modo friki :P )
Yo lo he conseguido parcialmente: cuando me llega un whatsapp, me salta una notificación en el ordenador con el mensaje y el remitente. Ya escribir desde el ordenador me da más pereza

 Cita: Originalmente Escrito por fus Ver Mensaje
Una pregunta pepepolo, hay alguna forma de discriminar si el mensaje viene de un grupo o de un simple contacto?
Yo he hecho una tarea que saca el contenido del mensaje, el remitente y el grupo, y me lo envía al ordenador:

 Cita:
Task: Anon (10)
A1: Run Shell [ Command:sqlite3 /data/data/com.whatsapp/databases/msgstore.db "SELECT data FROM messages WHERE key_from_me='0' ORDER BY _id DESC LIMIT 1;" Timeout (Seconds):10 Use Root:On Store Output In:%WHATSAPP_MENSAJE Store Errors In: Store Result In: ]

A2: Run Shell [ Command:sqlite3 /data/data/com.whatsapp/databases/msgstore.db "SELECT key_remote_jid FROM messages WHERE key_from_me='0' ORDER BY _id DESC LIMIT 1;" Timeout (Seconds):10 Use Root:On Store Output In:%WHATSAPP_DE Store Errors In: Store Result In: ]
A3: Run Shell [ Command:sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT display_name FROM wa_contacts WHERE jid='%WHATSAPP_DE' ORDER BY id DESC;" Timeout (Seconds):10 Use Root:On Store Output In:%WHATSAPP_DE2 Store Errors In: Store Result In: ]

A4: Run Shell [ Command:sqlite3 /data/data/com.whatsapp/databases/msgstore.db "SELECT remote_resource FROM messages WHERE key_from_me='0' ORDER BY _id DESC LIMIT 1;" Timeout (Seconds):10 Use Root:On Store Output In:%WHATSAPP_DE3 Store Errors In: Store Result In: ]
A5: Run Shell [ Command:sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT display_name FROM wa_contacts WHERE jid='%WHATSAPP_DE3' ORDER BY id DESC;" Timeout (Seconds):10 Use Root:On Store Output In:%WHATSAPP_DE4 Store Errors In: Store Result In: ]

A6: Flash [ Text:%WHATSAPP_MENSAJE de %WHATSAPP_DE2, %WHATSAPP_DE4 Long:Off ]

A7: AutoRemote Message [ Configuration:Recipient: Nacho EventGhost
Message: whatsapp =:= %WHATSAPP_MENSAJE de %WHATSAPP_DE2, %WHATSAPP_DE4 Package:com.joaomgcd.autoremote Name:AutoRemote Message ]
La variable del grupo queda vacía si no hay ningún grupo, ahora mismo no recuerdo si es %WHATSAPP_DE2 o %WHATSAPP_DE4

Última edición por z3us Día 18/06/13 a las 04:24:03.
Responder Con Cita
Los siguientes 2 usuarios han agradecido a z3us su comentario:


  #82  
Viejo 18/06/13, 14:35:51
Array

[xs_avatar]
fus fus no está en línea
Usuario muy activo
 
Fecha de registro: dic 2010
Localización: Polsovia
Mensajes: 1,503
Modelo de smartphone: Samsung Galaxy Nexus
Tu operador: Vodafone
Muchisimas gracias, es que tengo un ordenador antiguo para descargas, y mediante un paquete wol lo despierto, enciendo el torrent y a funcionar ^^
De esta manera le digo a algunos amigos que me pueden mandar un comando para activar el ordenador, y ponen el torrent en una carpeta de dropbox de la que uTorrent los carga automaticamente
__________________
Tutorial sobre el mundo de las roms GNexus
Las OTA's llevan a la ira, la ira lleva al flaseo, el flaseo lleva al lado oscuro de Android.
Responder Con Cita
  #83  
Viejo 18/06/13, 16:23:06
Array

[xs_avatar]
pepelolo38 pepelolo38 no está en línea
Miembro del foro
 
Fecha de registro: feb 2010
Mensajes: 161

Ole Z3us!!

Yo tendría que ponerme, pero por lo que recuerdo de la bdd de whatsapp, los registros pertenecientes a grupos, son facilmente identificables.

Un saludo.

Enviado desde mi GT-I9300 usando Tapatalk 2
Responder Con Cita
  #84  
Viejo 23/06/13, 22:40:28
Array

[xs_avatar]
kerberos kerberos no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: jul 2008
Mensajes: 539

Señores, he estado trasteando un poco con Tasker y he creado una tarea para enviar un mensaje por Whatsapp a un contacto. Este es un tema complicado y se puede enfrentar de varias maneras, yo quería una solución que no implicara modificar directamente la BD de Whatsapp.

Necesitamos:

1. Crear un acceso directo del contacto desde el WhatsApp. Presionar por un momento sobre el contacto y seleccionar Crear acceso directo.

2. Tasker.

3. Ser root.

4. Plugin AutoShortcut

5. Plugin Secure Settings

Código:
WhatsApp a NOMBRE_CONTACTO (13)
A1: Bloqueo [ Establecer:Apagado ] 
A2: AutoShortcut [ Configuración:WhatsApp: NOMBRE_CONTACTO Paquete:com.joaomgcd.autoshortcut Nombre:AutoShortcut ] 
A3: Escritura [ Texto:Esta es una prueba. Repetir veces:1 ] 
A4: Pad/Trackball [ Botón:Derecha Repetir veces:1 ] 
A5: Pad/Trackball [ Botón:Pulsar Repetir veces:1 ] 
A6: Botón [ Botón:Atrás ] 
A7: Botón [ Botón:Atrás ] 
A8: Bloqueo [ Establecer:Encendido ] 
A9: Secure Settings [ Configuración:Lock Device Paquete:com.intangibleobject.securesettings.plugin Nombre:Secure Settings ]


He publicado únicamente la tarea, c/u decide que evento la debe desencadenar.

Si importan la tarea, lo único que deben hacer es modificar la tarea 2. Ya que modifiqué manualmente el XML para no incluir información del contacto que utilicé como prueba.

Como pueden ver, es necesario encender la pantalla cada que funcione el envío del mensaje. Es un daño colateral, pero necesario, ya que no hay otra manera que funcione.

Seguro que se podrá mejorar, así que espero sus comentarios.

[Update]

He borrado los adjuntos y puesto la descripción de la tarea según indicaciones del Caravantes

Última edición por kerberos Día 24/06/13 a las 08:21:52.
Responder Con Cita
  #85  
Viejo 23/06/13, 22:52:21
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por kerberos Ver Mensaje
Dejo la tarea en archivo XML (Comprimida en zip) y un pantallazo de los pasos sólo para entender más fácil como funciona.
Kerberos, te reitero la sugerencia que figura en el punto 10 de las Recomendaciones para participar en este subforo de Tasker:

- 10. Transcribe el perfil o tarea como texto dentro del propio mensaje si haces referencia a un perfil o una tarea. En la medida de lo posible, no pongas imágenes de perfiles o tareas. Lo más cómodo y certero es que exportes la descripción del perfil o tarea y pegues ese texto en el mensaje de tu consulta. En la siguiente página se indica con detalle cuál es el procedimiento y también se explican las ventajas de hacerlo así.
http://www.htcmania.com/showthread.php?p=8852245

Gracias.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #86  
Viejo 24/06/13, 08:22:23
Array

[xs_avatar]
kerberos kerberos no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: jul 2008
Mensajes: 539

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Kerberos, te reitero la sugerencia que figura en el punto 10 de las Recomendaciones para participar en este subforo de Tasker:

- 10. Transcribe el perfil o tarea como texto dentro del propio mensaje si haces referencia a un perfil o una tarea. En la medida de lo posible, no pongas imágenes de perfiles o tareas. Lo más cómodo y certero es que exportes la descripción del perfil o tarea y pegues ese texto en el mensaje de tu consulta. En la siguiente página se indica con detalle cuál es el procedimiento y también se explican las ventajas de hacerlo así.
http://www.htcmania.com/showthread.php?p=8852245

Gracias.
He actualizado el mensaje según las indicaciones.
Responder Con Cita
Gracias de parte de:
  #87  
Viejo 24/06/13, 19:18:53
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Enhorabuena kerberos.
Secure Settings creo que puede hacer lo que hace auto shortcut. Hay una opción, launch activity que igual puede servir para eso.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #88  
Viejo 25/06/13, 09:50:58
Array

[xs_avatar]
jmajenjo jmajenjo no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Mensajes: 69
Modelo de smartphone: Motorola Moto G
Tu operador: Yoigo
Gran aportación!

Muchas gracias, no solo me vale para el mundillo tasker sino para alguna aplicación que tengo en mente y en proceso de desarrollo...

__________________
Responder Con Cita
  #89  
Viejo 29/06/13, 19:38:17
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Añadir la posibilidad de elegir el contacto de Whatsapp al que enviar mensaje automático mediante el Trackball

Yo que estuve trasteando con el whatsapp y el trackball, os lanzo unas ideas a Kerberos y a Sarderqa, a ver si os son utiles. Basicamente consiste en la posibilidad de elegir el contacto al que queremos enviar el mensaje en vex de que tenga que ser uno fijo:

Tasker es capaz de leer notificaciones de whatsapp: pero sólo el título del mensaje. O sea que podemos saber el nombre de las personas que nos van dejando mensajes.

En whatsapp si la abrimos y pulsamos (con el track) sobre la lupa ya podemos introducir ( con la acción escribir) el nombre del contacto, abajo aparece el contacto. Ya sólo tenemos que dar un abajo y un pulsar, para que podamos mandarle un mensaje a este contacto.

Ysi combinamos las dos, meter en una variable el nombre de la ultima persona que nos ha mandado el mensaje, y que esto lo meta Tasker en la lupa, tenemos que tasker automaticamente nos da la posibilidad de escribir mensajes a la ultima persona que nos ha escrito.

Por último: estuve trabajando mucho tiempo con una posibilidad que tenemos. Podemos
escribir mensajes que Tasker puede leer. Como? metiendo el mensaje en el título. Pero aqui figura sólo el nombre del contacto no?....Si ...y también el nombre de un grupo. O sea que mediante el track y escribir podemos podemos crear un grupo que se llame por ejemplo: VOLUMENATOPE , luego tasker escribe el nombre del contacto, lo clika y crea el grupo.
En el otro un perfil esta esperando: evento notificacion de Tasker. Etiqueta VOLUMENATOPE. Tarea de entrada,
1-estado de modo silencioso: APAGADO
2- subir el volumen al maximo

Hará que el móvil de la otra persona suene al máximo. Útil para cuando quieres contactar urgentemente con una persona y esta por lo que sea no se entere, y empiezas a blasfemar, y a decir aquello de para que demonios lleva un móvil si luego no lo coje. Esto es sólo un ejemplo, yo lo utilizaba también para mandar las coordenadas de localización de una persona que pidiera ayuda, que dicho sea de paso yo recortaba a menos números y me salía perfectamente posicionado: ¿¿¿???

Problema: un grupo un mensaje. O sea que mucha comunicación como que no. Además sólo permite 25 caracteres en el nombre del grupo.


Con lo del script me parece que el trackball para esto tiene los días contados pero parece que algunos lo preferís asi que os dejo todo esto por si os interesa y puede mejorar vuestros perfiles.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #90  
Viejo 21/08/13, 17:23:43
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Autovoice+Tasker+Whatsapp= Que te lea todos los pendientes con un comando de voz.

EDITO: En este enlace ( http://www.htcmania.com/showthread.php?p=10328689 ) tienes el último post que he hecho sobre esto. En el ya esta todo construido, para poder mandar y leer whatsapp. Además lo que se explica en este post corresponde a una versión anterior de Whatsapp. Con la versión 2.11.23 de Whatsapp esto no funciona. A pesar de esto si quieres saber más de como funciona el tinglado puedes leer este post.

ADVERTENCIA: Si no tienes un nivel avanzado en Tasker es mas que probable que no entiendas muchas de las cosas que aquí se explican. Aunque no tengas un nivel para entenderlo siempre puedes copiar las tareas y usarlas. También recomiendo para no perderse leer el hilo desde el principio si no lo habeís hecho ya. Es posible que las tareas que uso tengan fallos, en principio yo las he usado y funcionan.

Ante todo dar las gracias a Pepelolo que fue quien nos abrió el camino para meterle mano a Whatsapp, yo sólo he dado un pasito más. Como ves Pepelolo he hecho los deberes, jeje. También a Maid por su aporte a la hora de separar los resultados del script con comas o lo que sea.
Para no extenderme mucho diré que investigando un poco descubrí que whatsapp tiene otro archivo junto al de msgstore.db. Es el wa.db. Aqui es donde guarda los contactos. Pues dentro de este archivo hay una tabla,wa_contacts, y dentro de esta un campo que se llama unseen_msg_count. Pues hay esta la madre del cordero. En ese campo te dice el númerode mensajes SIN LEER que tiene ese contacto. En general LO VERDADERAMENTE IMPORTANTE es la existencia de este otro archivo wa_db en la carpeta de whatsapp
A partir de ahi lo que busque es una manera de relacionar ese dato de esa tabla con la tabla del otro archivo donde se guardan los mensajes. Esto lo consegui con el campo jid, que es el número de telefono que guarda Whatsapp ( aunque exactamente no es e eso pero para entendernos). Este campo está en ambas tablas.
Por supuesto teneis que darle permisos de lectura y escritura a este otro archivo.
En general hay que ser root para poder hacer lo que se dice aquí y mas especificamente hay que seguir los pasos que menciona Pepelolo en el primer post de este hilo, en el añadido de más abajo.

Otras cuestiones:

1- Lo de que la base de datos de Whatsapp es manipulable parece que se sabe hace tiempo y que incluso se le ha mencionado a Whatsapp.

2- Los que entendais de sqlite3 seguramente pensareís que los scripts son muy chapuceros. Es verdad. No tengo ni idea de sql3, por eso por decirlo de una forma clara he tenido que hacer los scripts digamos como si sumara por la cuenta de la vieja, usando el sentido común y la intuición, y probando....MUCHO!

3- Tampoco desde el punto de vista de Tasker está del todo bien, incluso que algún establecer variable sobra, pero llevo ya unos días con esto, me apetecía compartirlo con vosotros, y no tenía ya muchas ganas de meterle más mano.

4- Se me ocurre que la utilidad de esto inmediata pueda ser para cuando vas aen el coche. Además a una persona invidente le puede ser como un regalo caido del cielo.

5- Me queda la parte de enviar mensajes. Conociendo el nuevo archivo donde se guardan los contactos ahora es muy factible enviar Whatsapp a cualquier contacto, solo con decir su nombre en Autovoice o con la acción Get voice de Tasker.

6- La parte de combinarlo con Autovoice es altamente mejorable y configurable, esto es sólo un esbozo, las maneras son muchas y a cada uno le gustará una u otra.

7- Espero vuestras aportaciones y mejoras, a ver si entre todos sacamos un buen trabajo, que como ya he dicho a ciertas personas con problemas visuales les puede suponer un avance impresionante.




TAREA QUE NOS GUARDA EN VARIABLE LOS MENSAJES NO LEIDOS (910)
A1: Array Clear [ Nombre:%A1aa ]
A2: Array Clear [ Nombre:%A2aa ]
A3: Array Clear [ Nombre:%B1b ]
A4: Array Clear [ Nombre:%B2b ]
Estos arrays los utilizamos para que caundo vuelva a hacer la tarea no se mezclen con valores anteriores.

A5: Establecer variable [ Nombre:%con0 A:%A1aa(#<) Calcular:Apagado Añadir:Apagado ]
A6: Establecer variable [ Nombre:%con A:1 Calcular:Apagado Añadir:Apagado ]
A7: Establecer variable [ Nombre:%con2 A:1 Calcular:Apagado Añadir:Apagado ]
A8: Establecer variable [ Nombre:%con3 A:1 Calcular:Apagado Añadir:Apagado ]
A9: Establecer variable [ Nombre:%con5 A:1 Calcular:Apagado Añadir:Apagado ]
A10: Ejecutar consola [ Comando:sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT jid FROM wa_contacts WHERE unseen_msg_count>'0' ORDER BY _id DESC ;" |awk '{printf("%s,",$0)}' Cuenta atrás (segundos):4 Usar Root:Encendido Almacenar Resultado en:%A1aa ]

Este script nos mete en A1aa el jid de los contactos que tienen mensajes por leer, separados por una coma ( GRACIAS MAID450 por el aporte!!)
A11: Ejecutar consola [ Comando:sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT unseen_msg_count FROM wa_contacts WHERE unseen_msg_count>'0' ORDER BY _id DESC ;" |awk '{printf("%s,",$0)}' Cuenta atrás (segundos):5 Usar Root:Encendido Almacenar Resultado en:%A2aa ]
Este script nos mete en A2aa el numero de mensajes sin leer para los contactos en donde el campo es mayor que 0. O sea que tienen mensajes sin leer.
A12: Separar variable [ Nombre:%A1aa Separador:, Eliminar base:Apagado ]
A13: Separar variable [ Nombre:%A2aa Separador:, Eliminar base:Apagado ]

Ambas variables, A1aa y A2aa las separamos utilizando como separador la coma. Lo bueno es que coinciden ambas. Es decir la posición 1 corresponde en ambas variables al mismo contacto, con lo que ya podemos relacionarlas.
A14: For [ Variable:%for1 Ítems:%A1aa( ]

La variable for va tomando uno a uno los valores del array A1aa .
A15: Ejecutar consola [ Comando:sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT display_name FROM wa_contacts WHERE jid LIKE '%for1' ORDER BY _id DESC ;" Cuenta atrás (segundos):6 Usar Root:Encendido Almacenar Resultado en:%B1b(%con2) ]
Vamos cogiendo el display name de correspondiente a cada jid, y lo vamos metiendo en %B1b(%con2).
A16: Sumar a variable [ Nombre:%con2 Valor:1 Módulo (wrap around):0 ]
Sumamos a con2 uno de cada vez para que asi nos lo guarde en %B1b1,%B1b2,etc…
A17: End For
A18: For [ Variable:%for1 Ítems:%A1aa( ]
Volvemos a ir cogiendo uno a uno las jid de cada contacto quehemos visto que tiene el unseen mayor que 0.
A19: Establecer variable [ Nombre:%con4 A:%A2aa(%con5) Calcular:Apagado Añadir:Apagado ]
En %con4 metemos el numero de mensajes sin leer de ese contacto.
A20: Ejecutar consola [ Comando:sqlite3 /data/data/com.whatsapp/databases/msgstore.db "SELECT data FROM messages WHERE key_from_me='0' AND key_remote_jid LIKE '%for1' ORDER BY _id DESC LIMIT '%con4' ;" |awk '{printf("%s#=",$0)}' Cuenta atrás (segundos):5 Usar Root:Encendido Almacenar Resultado en:%B2b(%con5) ]
Este ultimo por fin nos va a ir cogiendo el texto de los mensajes. Key from me=’0’ porque no quiero que meta mensajes mios, que coincida obviamente con el jid del contacto, y por ultimo le decimos que los coja en orden descendente y como limite le marcamos el numero de mensajes sin leer, ( %con4). Metemos todos los mensajes juntos en %B2b(%con5) de manera que cada contacto tendrá sus mensajes en una variable del array, separados por “#=” sin las comillas.
A21: Sumar a variable [ Nombre:%con5 Valor:1 Módulo (wrap around):0 ]
A22: End For


Todo esto lo que hace es crear una “base de datos”:

Jid-%A1aa Nº de mensajes sin leer-%A2aa Nombre-%B1b Mensajes-%B2b
1 %A1aa1 %A2aa1 %B1b1 %B2b1
2 %A1aa2 ….. … ….
3 %A1aa3 …. ….. ……
Ejemplo de datos que contendrían:
[email protected] / 4 / Pepe / hola que tal,que haces?

Ya lo explique en otro post pero lo vuelvo a explicar. Aquí el kit de la cuestión está en que cada contacto tiene sus datos relacionados y ordenados por el número del índice del array . En el indice 1, de cualquiera de las variables estarán los datos correspondientes a por ejmplo Pepe. Para llamarlos sólo tenemos que poner esto: %A1aa(%con), %A2aa(%con), etc. Mientras %con o sea el indice sea el mismo estaremos tomando datos del mismo contacto.


TAREA QUE NOS LEE LOS MENSAJES SIN LEER (913)
A1: Vibrar [ Tiempo:200 ]
Esto es opcional. Es para que sepas que va a leer.
A2: AutoVoice Continuous [ Configuración:Stopping continuous voice recognition Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous ]
Paramos el reconocimiento continuo de AutoVoice que hemos encendido en el contexto que luego se vera.

A3: Volumen de notificación [ Nivel:7 Mostrar:Apagado Sonido:Apagado ]
Para que no nos pase que no nos enteremos pq esta bajo. Yo he elegido sacar todos los Decir por el canal de notificación, pero esto a gusto del consumidor.
A4: For [ Variable:%for Ítems:%B1b( ]
Metemos en for uno a uno los valores de %B1b (los nombres o display_name), por eso uso la expresión “(
A5: Array Clear [ Nombre:%Temp ]
Tomo la precaución de borrar el array donde voy a ir metiendo ya separados los mensajes para que no haya errores con los valores anteriores que haya tomado.
A6: Decir [ Texto:Mensajes de %for Motor: Voz:default:default Stream:5 Tono:5 Velocidad:6 Continuar tarea inmediatamente:Apagado ]
Decimos el nombre del remitente, o display name guardado en for
A7: Sumar a variable [ Nombre:%con Valor:1 Módulo (wrap around):0 ]
Asi la empezamos en uno. Es la variable que vamos a utilizar para hacer de subindice
A8: Establecer variable [ Nombre:%contt A:%A1aa(%con) Calcular:Apagado Añadir:Apagado ]
A9: Establecer variable [ Nombre:%Temp A:%B2b(%con) Calcular:Apagado Añadir:Apagado ]
A10: Separar variable [ Nombre:%Temp Separador:#= Eliminar base:Apagado ]
Metemos los mensajes en el array %Temp, pero estan en orden descendente, o sea de mas nuevo a mas antiguo, al reves de lo que queremos, esto lo arreglamos ahora.
A11: Establecer variable [ Nombre:%con2 A:%Temp(#<) Calcular:Apagado Añadir:Apagado ]
Averiguamos el indice del ultimo array de Temp (utilizando la expresión “#<), o lo que es lo mismo cuantos mensajes hay. Asi empezamos por el ultimo y vamos descendiendo en la proxima acción de Decir.
A12: Decir [ Texto:%Temp(%con2) Motor: Voz:default:default Stream:5 Tono:5 Velocidad:6 Continuar tarea inmediatamente:Apagado ]
A13: Restar de variable [ Nombre:%con2 Valor:1 ]
Restamos uno para que el proximo mensaje que lea sea el siguiente Temp pero en orden descendente, empezamos por el último valor del array. O sea vamos leyendo en este orden: 4,3,2,1.
A14: Ejecutar consola [ Comando:sqlite3 /data/data/com.whatsapp/databases/wa.db "UPDATE wa_contacts SET unseen_msg_count='%con2' WHERE jid='%contt' ;" Cuenta atrás (segundos):6 Usar Root:Encendido Almacenar Resultado en: ]

Le decimos que en la tabla, en el campo unseen, meta el valor de %con2 que es el numero de mensaje por el que vamos. De esta manera cada vez que nos lee un mensaje el numero en el campo unseen decrece uno.

A15: Si (if) [ %con2 != 0 ]
A16: Ir a acción [ Tipo:Número Acción Número:12 Etiqueta: ]
Le decimos que si el numero de mensajes por leer NO es 0, que vaya otra vez a leer.
A17: Fin si (End if)
Una vez leidos los mensajes de un contacto vuelve al inicio del for y toma otro valor, otro contacto y nos lee los mensajes para ese contacto.
A18: End For
A19: Decir [ Texto:No hay más mensajes sin leer Motor: Voz:default:default Stream:5 Tono:5 Velocidad:5 Continuar tarea inmediatamente:Apagado ]

Una vez que el for ya no tiene más valores, y por tanto nos ha leido todos los mensajes pendientes de leer, acaba diciendonos que no hay más mensajes.




Perfil: DISPARA EL AV CONTINUO (915)
Evento: Notificación [ Aplicación origen:WhatsApp Título:* ]
Entrada: Anon (916)
A1: Realizar tarea [ Nombre: AQUÍ LA TAREA QUE NOS HACE LA “BASE DE DATOS” Parar:Apagado Prioridad:10 Parámetro 1 (%par1): Parámetro 2 (%par2): Devolver Valor de Variable: ]
A2: Decir [ Texto:Whatsapp pendientes, leer? Motor: Voz:default:default Stream:5 Tono:5 Velocidad:7 Continuar tarea inmediatamente:Apagado ]
A3: AutoVoice Continuous [ Configuración:Starting continuous voice recognition without headset Paquete:com.joaomgcd.autovoice Nombre:AutoVoice Continuous ]
Se queda a la espera de que digamos “leer” para que nos lea los mensajes.




Perfil: SI AUTOVOICE DETECTA QUE DECIMOS “LEER” (917)
Estado: AutoVoice Recognized [ Configuración:Command: "leer" ]
Entrada: TAREA QUE NOS LEE LOS MENSAJES (913)

Quedaría resolver la cuestión de si NO quiero que los lea. En fin para los próximos días....
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969

Última edición por mlesir Día 20/09/13 a las 12:41:52.
Responder Con Cita
Gracias de parte de:
  #91  
Viejo 21/08/13, 18:01:58
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Por cierto unas cositas :

Pepelolo yo creo que podrías cambiar el título del hilo por algo asi como "Automatizar Whatsapp". Al fin y al cabo el hilo en realidad ha acabado convirtiéndose en eso. Y ya digo que lo de la base de datos es algo que se sabe hace tiempo q no está encriptada.

Por otro lado si alguno quiere ver como funciona la base de datos de whatsapp:

web donde explica bastante bien lo que hace la base de datos:
http://blog.theliel.es/2012/10/whats...o-conocer.html

Eso sí, no menciona el archivo wa_db

Por último deciros que para abrir la base de datos de Whatsapp yo utilizo en el movil: asqlitemanager.
Y por último que cualquier cambio que hagáis en la base de datos se refleja en la app de Whatsapp después de un tiempo. Por lo que parece cada x tiempo refresca sus datos.
Si lo queréis hacer de manera inmediata tenéis que matar la app, no basta con cerrarla y que se quede en segundo plano. Al volver a abrir veréis como os ha actualizado por ejemplo el contador de mensajes sin leer.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
Gracias de parte de:
  #92  
Viejo 22/08/13, 17:16:24
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Bueno pues repasando este hilo he visto que z3us ya había "descubierto" y utilizado el archivo wa.db.
Si no me equivoco el problema de hacer una app con todo esto sería que el usuario tendría que (además de hacerse root q es inevitable) :
descargar por ejemplo el Esfilexplorer darle permisos de lectura y escritura a los archivos, e instalar sql3 si es que su rom no la tiene. Todo lo cual es un poco engorroso. Alguna solución? Podría hacerse que la app hiciera esto automáticamente? O por lo menos lo de los permisos de escritura/lectura? Ya digo que para los invidentes podría ser muy útil, y no estaría mal que pudiésemos entre todos conseguir publicar una app asi.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #93  
Viejo 22/08/13, 18:36:44
Array

[xs_avatar]
Jusss Jusss no está en línea
Usuario muy activo
 
Fecha de registro: ago 2012
Mensajes: 713
Modelo de smartphone: Galaxy Note 3 N9005
Tu operador: Movistar
Como podria hacer para mandar al mail los mensajes que tenga en el wasap y que se borren automaticamente todos?. Tengo el sqlite instalado y soy rot

Mlesir, si uso tu tarea de guardar en variable los mansajes no leidos y esa variable la mando a algun lado en teoria se guardaran por nombre y mensaje y se armaria un back up de todos? como podria borrar los mensajes?


Desde ya muchas gracias a todos!

Última edición por Jusss Día 22/08/13 a las 18:44:08.
Responder Con Cita
  #94  
Viejo 22/08/13, 18:44:14
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Lo explico en un post mio anterior (el número 93), solo tienes que utilizar los scripts q comento. Con ellos lo puedes meter en variables, luego el cómo lo mandes depende de lo q prefieras. Ya no recuerdo si tasker puede componer mails, creo que si, que y si no otra forma es con Auto remote.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #95  
Viejo 22/08/13, 19:36:42
Array

[xs_avatar]
Jusss Jusss no está en línea
Usuario muy activo
 
Fecha de registro: ago 2012
Mensajes: 713
Modelo de smartphone: Galaxy Note 3 N9005
Tu operador: Movistar
[quote=mlesir;9938283]Lo explico en un post mio anterior (el número 93)

Perdon pero no lo encuentro , que post decis que es ?
Responder Con Cita
  #96  
Viejo 22/08/13, 22:30:41
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
Gracias de parte de:
  #97  
Viejo 23/08/13, 01:24:05
Array

[xs_avatar]
maid450 maid450 no está en línea
Miembro del foro
 
Fecha de registro: sep 2009
Localización: Valencia
Mensajes: 450
Modelo de smartphone: Nexus 5 / Nexus 7
Tu operador: Yoigo
Para el tema de los permisos se puede usar con una acción de ejecutar en consola este comando:
chmod a+rw /ruta/archivo
Hay que marcar "ejecutar como root" pero como para la app en sí ya habría que ser root de todos modos...

Se podría testear si el comando sqlite existe con el comando
which sqlite
Este comando devolverá la ruta donde está instalado el ejecutable si está, o nada si no lo está.
En mi móvil me pasó que tenía el comando pero por algún motivo no funcionaba y lo tuve que reinstalar desde Google play, en este caso el método de "which" no serviría...
Responder Con Cita
  #98  
Viejo 23/08/13, 02:23:27
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Gracias Maid. De todos modos me parece que se ha fastidiado el invento. Hoy por fin ya me ha dicho q mi versión de whatsapp era antigua y no me dejaba acceder. Así que he actualizado claro, y oh sorpresa cuando intento abrir el archivo wa.db con sqlite3manager, después de darle los permisos con el explorador me dice que no es una base de datos. Y si lo abro como texto todo en arameo. O sea que me temo q con la nueva actualización ya han encriptado el archivo wa.db. El msgstore.db sigue sin encriptar. A ver si alguno puedo confirmar esto.
Lo dicho mucho me temo que todo lo que he hecho no va a valer pa ná.

EDITO: El caso es que me parece raro pq no aparece en el nombre la extension .crypt y el icono del archivo sigue teniendo el Db q supongo q corresponde a una base de datos.

EDITO 2: Tras pelearme con el archivo he probado a darle los permisos con root explorer en vez de con es file explorer y he podido acceder a la base de datos y ejecutar un script. Parece que tendré q desembolsar los 3.5 euros del root explorer.

EDITO 3: Pues parece que no me va a costar nada. Le he dado permisos, luego le di a obtener reembolso y ya desinstalado, ahora si puedo acceder con el asqlitemanager.
Joder que disgusto he tenido pensando q todo el trabajo q hice era para nada...
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969

Última edición por mlesir Día 23/08/13 a las 06:30:13.
Responder Con Cita
  #99  
Viejo 23/08/13, 10:46:26
Array

[xs_avatar]
maid450 maid450 no está en línea
Miembro del foro
 
Fecha de registro: sep 2009
Localización: Valencia
Mensajes: 450
Modelo de smartphone: Nexus 5 / Nexus 7
Tu operador: Yoigo
Con el chmod como comentaba llegaste a probarlo? En principio es lo que hace el root Explorer (y el ES, es raro que uno lo haga bien y el otro no)
Responder Con Cita


  #100  
Viejo 23/08/13, 16:57:09
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Esto es lo que me sale al meter el comando en el emulador. En ppo si reconoce el comando pero a la hora de meter el scrip tal como lo pones, tanto en tasker como en el shell dan error. En el shell como veras pone bad mode.

app_226@android:/ $ chmod
Usage: chmod [OPTION]
-R, --recursive change files and directories recursively
--help display this help and exit
10|app_226@android:/ $ --help
/system/bin/sh: --help: not found
127|app_226@android:/ $ chmod --help
Usage: chmod [OPTION]
-R, --recursive change files and directories recursively
--help display this help and exit
/com.whatsapp/files/ <
Bad mode
10|app_226@android:/ $

EDITO: he probado esto con este resultado. Lo he sacado de esta Web http://es.hscripts.com/tutoriales/li...nds/chmod.html

10|app_226@android:/ $ chmod 777 /data/data/com.whatsapp/files
Unable to chmod /data/data/com.whatsapp/files/: Operation not permitted
10|app_226@android:/ $
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969

Última edición por mlesir Día 23/08/13 a las 17:13:29.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Otro software para Android > Tasker



Hora actual: 09:22:59 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /