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

Respuesta
 
Herramientas
  #1  
Viejo 01/07/18, 11:36:24
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
interrogacion Ejercicios de verano (contexto para detectar una foto nueva)

Esta vez ha sido un Taskero de este foro el que me ha hecho la pregunta ...
¿Existe un contexto que active un perfil al sacar una foto?
El tema no es nuevo en este foro ... https://www.htcmania.com/showthread.php?t=727091

Entonces ya se apuntaron ideas muy interesantes, pero el "problema" quedó sin solucionar.

¿Alguna idea nueva?
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita


  #2  
Viejo 01/07/18, 12:56:01
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
Sigo sin encontrar ningún contexto directo que se pueda aprovechar para ésto, y me parece una carencia (fallo) importante de Tasker.

Antaño ya comenté una posibilidad:
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Usa la app de la cámara como contexto para activar un perfil. La tarea de entrada puede obtener un "listado" de los archivos que hay en la carpeta de fotos mediante la acción Listar archivos, y meter ese listado en una variable. La tarea de salida hace lo mismo y mete el nuevo listado en otra variable. Si ambas variables son distintas, pones la variable 'tomafoto' a 1.
Ahora se me ocurre otra parecida, pero que no depende de la app de la cámara. Por lo que yo he visto, las fotos son creadas con el nombre de archivo que corresponde a la fecha y la hora: aaaammdd_hhmmss. Sabiendo eso, una acción LISTAR ARCHIVOS puede buscar archivos coincidentes con el patrón del momento actual para saber si hay archivos recientes. Por ejemplo, si hoy es uno de julio y son las 12:23:00 puedo usar el patrón 20180701_12* para obtener el listado de los archivos/fotos que se hayan podido generar en los últimos (23) minutos. Una tarea de este tipo también puede asociarse a un perfil que se active cada cierto tiempo para comprobar periódicamente las fotos del último periodo; la comprobación se podrían hacer con la frecuencia deseada: cada 10 segundos, cada minuto, cada 10 minutos, cada hora, cada día, etc.

Por último, se pueden combinar ambas estrategias. Por ejemplo, el segundo perfil puede estar activo solo mientras la app de la cámara está abierta, y puede estar chequeando cada 10 segundos (o cada segundo) en busca de fotos nuevas, para procesarlas de inmediato, sin esperar a que se cierre la app de la cámara.

Yo diría que estos planteamientos no son nada elegantes, y además derrochan recursos, pero pueden servir como apaño en algunos casos. La eficiencia dependerá mucho de ciertos detalles como el número de fotos diarias (de media), la cantidad de veces que se abre la app de la cámara y se cierra sin haber hecho ninguna foto, etc.

Sigo sin resolver el problema principal: un contexto que se pueda asociar directamente al disparo de la foto. Quizá algún compañero encuentre el truco, u otras estrategias laterales que sean tan validas como las que yo ofrezco.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #3  
Viejo 01/07/18, 12:58:28
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

Pues la primer idea que me viene a la cabeza, es monitorizar la carpeta que tengamos destinada a la cámara.

Luego, para detectar si lo que se tomó fue una foto, o video, simplemente agrega una acción de listar archivos según fecha de creación/modificación y obtén el último. A continuación podrás incluir las acciones que desees dentro de un condicional IF para extensiones de fotos.
Responder Con Cita
  #4  
Viejo 01/07/18, 13:01:08
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
Añado dos detalles que olvidé en mi mensaje anterior:
A) En los smartphones que yo he utilizado, las capturas de pantalla van a otro directorio/carpeta distinta. O sea que si hay que vigilar también las nuevas capturas de pantalla, hay que revisar las dos carpetas.
B) En la carpeta de las fotos también suelen aparecer los vídeos grabados con la cámara. Si solo se quieren chequear las fotos, en la acción LISTA ARCHIVOS habrá que filtrar por la extensión, normalmente jpg.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #5  
Viejo 01/07/18, 13:24:32
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

Mi idea...

Código:
Profile: Nuevo Archivo Cámara
    Event: File Modified [ File:DCIM/Camera/ ]
Enter: HTCMania - x (180)
    A1: List Files [ Dir:DCIM/Camera Match:*.jpg Include Hidden Files:Off Use Root:Off Sort Select:Modification Date Variable:%temp1 Continue Task After Error:On ] 
    A2: Flash [ Text:%temp1(<) Long:On ]
Serviría como base, según lo que se desee hacer.
Responder Con Cita
Gracias de parte de:
  #6  
Viejo 01/07/18, 14:00:45
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por SmartPhoneLover Ver Mensaje
Mi idea...
Antes de proponer el ejercicio ya había probado eso y, en mi caso, el evento de "Archivo modificado" ocasiona múltiples disparos del perfil. Uno Al abrir la app y un par con cada foto. El que me funciona perfectamente (una foto = un evento) es "Atributos de archivo modificados" poniendo como carpeta a vigilar "/sdcard/DCIM/Camera/".
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita
  #7  
Viejo 01/07/18, 14:02:56
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
A) En los smartphones que yo he utilizado, las capturas de pantalla van a otro directorio/carpeta distinta. O sea que si hay que vigilar también las nuevas capturas de pantalla, hay que revisar las dos carpetas.
Ese es otro problema ... Un contexto que detecte una captura de pantalla.

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
B) En la carpeta de las fotos también suelen aparecer los vídeos grabados con la cámara. Si solo se quieren chequear las fotos, en la acción LISTA ARCHIVOS habrá que filtrar por la extensión, normalmente jpg.
Interesante. No había pensado en los vídeos.
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita
  #8  
Viejo 01/07/18, 14:04:17
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por SmartPhoneLover Ver Mensaje
Código:
    A1: List Files [ Dir:DCIM/Camera Match:*.jpg Include Hidden Files:Off Use Root:Off Sort Select:Modification Date Variable:%temp1 Continue Task After Error:On ] 
    A2: Flash [ Text:%temp1(<) Long:On ]
Ahora que me fijo bien, para hacer eso tienes la variable %FOTO.

EDITO

Pero si también pensamos en los vídeos que ha comentado Caravantes la variable %FOTO ya no nos vale y tu planteamiento sí.
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)

Última edición por WillyWeb Día 01/07/18 a las 14:16:16.
Responder Con Cita
  #9  
Viejo 01/07/18, 14:14:03
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
Traduzco a cristiano el perfil de Smart:

Código:
Perfil: Nueva foto (197)
	Evento: Archivo modificado [ Archivo:/storage/3831-6531/DCIM/Camera/ ]
Entrada: Nueva foto (198)
	A1: Bip [ Frecuencia:8000 Duración:1000 Amplitud:50 Stream:3 ] 
	A2: Listar archivos [ Directorio:/storage/3831-6531/DCIM/Camera Coincidir:*.jpg Incluir Archivos Ocultos:Apagado Usar Root:Apagado Ordenar por:Modification Date Variable:%fotos Continuar Tarea Tras Error:Encendido ] 
	A3: Flash [ Texto:%fotos Largo:Apagado ]
No me lo esperaba, pero el contexto funciona, se activa después de hacer cada foto.

Prueba superada. SmartPhoneLover

He añadido un BIP precisamente para detectar fácilmente cuándo se ejecuta la tarea, y es intantáneo.
Aclaro que mi smartphone está configurado para guardar las fotos en la tarjeta SD, y es por eso que aparece un almacenamiento raro (/storage/3831-6531/DCIM/Camera/)
Lo triste es que en el flash no me sale la lista de archivos, solo sale "%fotos" (el nombre de la variable que debería contener la lista de archivos). Seguro que es un fallo tonto que se puede arreglar.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #10  
Viejo 01/07/18, 14:20:27
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 WillyWeb Ver Mensaje
Antes de proponer el ejercicio ya había probado eso y, en mi caso, el evento de "Archivo modificado" ocasiona múltiples disparos del perfil. Uno Al abrir la app y un par con cada foto.
Pues a mí me funciona bien. El perfil no se inmuta al abrir la cámara, y se ejecuta una vez tras disparar la foto. El efecto colateral que he encontrado es que este perfil también se dispara si voy a la galería y elimino alguna foto. Seguimos investigando.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #11  
Viejo 01/07/18, 14:23:42
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Lo triste es que en el flash no me sale la lista de archivos, solo sale "%fotos" (el nombre de la variable que debería contener la lista de archivos). Seguro que es un fallo tonto que se puede arreglar.
Esa variable es un array. Si pones ... %fotos(<) ... verás el último elemento del array (el archivo más reciente).
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita
  #12  
Viejo 01/07/18, 14:26:11
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Pues a mí me funciona bien. El perfil no se inmuta al abrir la cámara, y se ejecuta una vez tras disparar la foto.
Curioso funcionamiento el de los eventos de archivo. Al Taskero que me ha hecho la pregunta no le funcionan y en mi caso el de "archivo modificado" salta varias veces.

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
El efecto colateral que he encontrado es que este perfil también se dispara si voy a la galería y elimino alguna foto. Seguimos investigando.
Eso lo puedes arreglar añadiendo tu app de cámara al perfil.
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita
  #13  
Viejo 01/07/18, 15:19:49
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

 Cita: Originalmente Escrito por WillyWeb Ver Mensaje
Ese es otro problema ... Un contexto que detecte una captura de pantalla.

Se me ocurre usar el mismo sistema para detectar cambios en x carpeta.

Notas:
- No hay intent en Android que lo detecte.

- Referido a lo anterior, ya se ha agregado la propuesta a la web trace para que Joao añada esa funcionalidad, mediante el método FileObserver.
Responder Con Cita
  #14  
Viejo 01/07/18, 15:23:51
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Pues a mí me funciona bien. El perfil no se inmuta al abrir la cámara, y se ejecuta una vez tras disparar la foto. El efecto colateral que he encontrado es que este perfil también se dispara si voy a la galería y elimino alguna foto. Seguimos investigando.

Claro que si. El perfil detecta cambios, pero no diferencia en qué tipi de cambio. Habrá que modificarlo para que sepa si se ha eliminado o añadido algún elemento.
Responder Con Cita
  #15  
Viejo 01/07/18, 15:25:32
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
 Cita: Originalmente Escrito por SmartPhoneLover Ver Mensaje
Se me ocurre usar el mismo sistema para detectar cambios en x carpeta..
Lo he probado antes de responder a Caravantes y confirmo que el mismo evento me detecta perfectamente las capturas de pantalla.
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)
Responder Con Cita
  #16  
Viejo 01/07/18, 15:30:14
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Añado dos detalles que olvidé en mi mensaje anterior:
A) En los smartphones que yo he utilizado, las capturas de pantalla van a otro directorio/carpeta distinta. O sea que si hay que vigilar también las nuevas capturas de pantalla, hay que revisar las dos carpetas.
Podrías usar AutoNotification para estar al tanto de la notificación generada. Tal como hice en mi proyecto 'Screenshot Plus' para sustituir la notificación original de SystemUI por una personalizada con opciones (botones) extras.
Responder Con Cita
  #17  
Viejo 01/07/18, 19:29:05
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
Recapitulando:

Yo no esperaba que el evento ARCHIVO MODIFICADO fuese a detectar un archivo nuevo, porque los conceptos de MODIFICADO y NUEVO son sustancialmente distintos. De hecho, según dice Willy (#12) no le funciona al Taskero que le hizo la pregunta, y al propio Willy le funciona de forma anómala. La alternativa es ATRIBUTOS DE ARCHIVO MODIFICADOS, pero por similares razones puede que tampoco sea totalmente fiable. Creo que a mí me funcionan bien los dos, pero puede ser de milagrito / por los pelos / de casualidad, y no sabemos en qué condiciones (hard/soft) estos contextos funcionan o dejan de funcionar.

Efectivamente, añadiendo un segundo contexto de APP - Cámara, se soluciona el problema de que el perfil se dispare al borrar (o modificar) fotos.

La variable %FOTO a mí me funciona mal: no identifica el último archivo (la última foto) sino otro anterior, de hace varios días. Descartado.

Para obtener la identificación de la última foto hay que jugar con la ordenación en LISTAR ARCHIVOS, y luego elegir el primer o último elemento del array. A mi me funciona bien el esquema siguiente.

Perfil: Foto nueva (197)
Evento: Archivo modificado [ Archivo:/storage/3831-6531/DCIM/Camera/ ]
Aplicación: Cámara
Entrada: Foto Nueva (198)
A1: Bip [ Frecuencia:8000 Duración:1000 Amplitud:50 Stream:3 ]
A2: Listar archivos [ Directorio:/storage/3831-6531/DCIM/Camera Coincidir: Incluir Archivos Ocultos:Apagado Usar Root:Apagado Ordenar por:Modification Date Variable:%fotos Continuar Tarea Tras Error:Encendido ]
A3: Establecer variable [ Nombre:%FotoNueva A:%fotos(<) Recurse Variables:Apagado Calcular:Apagado Añadir:Apagado ]

En la acción LISTAR ARCHIVOS, recomiendo no filtrar por *.JPG para que coja igualmente un posible archivo de vídeo cuya grabación haya disparado el perfil. Luego, la tarea puede utilizar la extensión para dar un tratamiento distinto a las fotos y a los vídeos (tal vez con los vídeos no haya que hacer nada). Si se filtra por *.JPG probablemente ocurra que al grabar un vídeo la tarea vuelva a procesar repetidamente el fichero de la foto que se hubiera tomado antes.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Gracias de parte de:
  #18  
Viejo 01/07/18, 19:42:19
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
He intentado hacer un segundo perfil para que, al cerrar la cámara, Tasker me muestre la última foto tomada.
No encuentro la acción para mostrar foto, ni en el apartado Multimedia ni tampoco en el de Imagen. Ya sé que se podría hacer con una escena, pero buscaba una opción más sencilla e inmediata. Para los archivos de audio sí que hay una acción directa. ¿Estoy muy despistado o no hay una acción simple para mostrar una imagen por pantalla?
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #19  
Viejo 01/07/18, 20:00:43
Array

[xs_avatar]
SmartPhoneLover SmartPhoneLover no está en línea
Usuario muy activo
 
Fecha de registro: jun 2016
Mensajes: 542
Tu operador: Movistar

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
He intentado hacer un segundo perfil para que, al cerrar la cámara, Tasker me muestre la última foto tomada.
No encuentro la acción para mostrar foto, ni en el apartado Multimedia ni tampoco en el de Imagen. Ya sé que se podría hacer con una escena, pero buscaba una opción más sencilla e inmediata. Para los archivos de audio sí que hay una acción directa. ¿Estoy muy despistado o no hay una acción simple para mostrar una imagen por pantalla?
+> File > Open File (MIME = image/*)

Otra forma seria, por JF:
Código:
    A1: Variable Set [ Name:%temp To:RUTA_ARCHIVO Recurse Variables:Off Do Maths:Off Append:Off ] 
    A2: Java Function [ Return:temp Class Or Object:File Function:new
{File} (String) Param:%temp Param: Param: Param: Param: Param: Param: ] 
    A3: Java Function [ Return:%temp Class Or Object:Uri Function:fromFile
{Uri} (File) Param:temp Param: Param: Param: Param: Param: Param: ] 
     A4: Send Intent [ Action:android.intent.action.VIEW Cat:Default Mime Type:image/* Data:%temp Extra: Extra: Extra: Package: Class: Target:Activity ]
Bueno... JF es solo para crear la ruta URI, pero como URI tiene un formato estático, la podrías crear y asignar tú mismo, sin necesidad de conversión previa, y por lo tanto usar una única acción Intent de Tasker.

Última edición por SmartPhoneLover Día 01/07/18 a las 21:06:37.
Responder Con Cita
Gracias de parte de:


  #20  
Viejo 01/07/18, 23:20:54
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 SmartPhoneLover Ver Mensaje
+> File > Open File (MIME = image/*)
Muchas gracias.

Abrir archivo [ Archivo:%FotoNueva Tipo Mime:image/* ]

Efectivamente, confirmo que funciona.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Respuesta

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



Hora actual: 08:19:14 (GMT +1)



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

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