|
||
|
![]() |
![]() |
Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
Herramientas |
#1
|
||||
|
||||
Envío de snapshot [camara ip externa] por email
Hola,
estoy intentando crear un perfil que me envíe una foto cuando llamen a mi videoportero ip. La cámara del videoportero utiliza la siguiente url para la captura de snapshots: ip:puerto/snapshot.cgi?user=#user#pwd=#pwd# Para ello he creado un perfil en que utiliza como evento la app android que se activa cuando pulsan el portero para iniciar la comunicación video/audio. Como tarea he realizado un http get que utiliza la url de captura de video indicando como archivo de salida la variable global %FOTO. Para el envío de email utilizo la app sendsilentmail, indicando que como adjunto me envíe el archivo %FOTO.jpeg Este es el perfil: Código:
Perfil: SNAPSHOT VIDEOPORTERO (23) Aplicación: WIFI BELL Entrada: Anon (24) A1: HTTP Get [ Servidor:Puerto:http://ip:port Ruta:/snapshot.cgi?user=user&pwd=pwd Atributos: Cookies: User Agent: Cuenta atrás:10 Tipo Mime:image/jpeg Archivo de salida:%FOTO Confiar en cualquier Certificado:Apagado ] A2: SendSilentMail [ Configuración:[email protected] / [email protected] / Paquete:com.stedo.sendsilentmail Nombre:SendSilentMail Cuenta atrás (segundos):0 ] Alguna idea? P.D.: adicionalmente me gustaría poder crear más de una captura, por ejemplo 5, una cada 0,5seg. cada vez que se produce una llamada, por si la primera sale movida.... Última edición por dj_janker Día 20/10/15 a las 14:48:11. |
|
#2
|
||||
|
||||
nadie me puedo decir como adaptar la variable %FOTO para que tome la que se haya tomado en la última fecha y/o hora?
|
#3
|
||||
|
||||
Has comprobado que despues te vuelve a hacer la tarea de entrada otra vez no? A ver si el problema es que solo lo hace una vez.
Enviado desde mi T1-701u mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
#4
|
||||
|
||||
En realidad solo el perfil solo tiene tarea de entrada. De manera que cuando a app Wifibell esté activa, se ejecute la tarea de entrada. Crees que debería poner una de salida para que se pueda reiniciar el ciclo? (por ejemplo un flash....) Última edición por dj_janker Día 18/10/15 a las 19:38:55. |
#5
|
||||
|
||||
Me parece que te estás liando un poco.
![]() Estás usando el contenido de la variable global %FOTO como nombre para guardar la imagen que consigues con una acción HTTPGet. Si lees el manual de usuario de Tasker verás que esa variable guarda el nombre del archivo de la última foto tomada con la cámara del móvil. ¿Qué te hace pensar que esa variable debería guardar el nombre de archivo de la foto que toma tu VideoPortero IP? Si quieres que el nombre de archivo de la foto tenga información del momento en que ha sido tomada lo tendrás que crear tú mismo usando las variables de Tasker para fecha y hora cada vez que recibas una nueva imagen. No es complicado. Luego usa ese nombre en lugar de %FOTO y tu problema debería desaparecer. |
#6
|
||||
|
||||
Me parece que te estás liando un poco.
![]() Estás usando el contenido de la variable global %FOTO como nombre para guardar la imagen que consigues con una acción HTTPGet. Si lees el manual de usuario de Tasker verás que esa variable guarda el nombre del archivo de la última foto tomada con la cámara del móvil. ¿Qué te hace pensar que esa variable debería guardar el nombre de archivo de la foto que toma tu VideoPortero IP? Si quieres que el nombre de archivo de la foto tenga información del momento en que ha sido tomada lo tendrás que crear tú mismo usando las variables de Tasker para fecha y hora cada vez que recibas una nueva imagen. No es complicado. Luego usa ese nombre en lugar de %FOTO y tu problema debería desaparecer. ![]() Voy a investigar, pero no tengo ni idea de como hacer que Tasker detecte que una nueva captura se ha creado. |
#7
|
||||
|
||||
Ya te he dicho que no debería ser complicado
![]() Si me aclaras la secuencia lo mismo te puedo ayudar... Llaman a la puerta y parece que tu VideoPortero IP te manda una notificación desde la que inicias la aplicación "WIFI BELL". Has programado Tasker para que, cuando se inicia esa aplicación, haga un HTTPGet que recupere la última foto del VideoPortero. Perdona, pero no entiendo para qué envías un email ¿...? ¿Es así o me he perdido completamente? ![]() |
#8
|
||||
|
||||
Ya te he dicho que no debería ser complicado
![]() Si me aclaras la secuencia lo mismo te puedo ayudar... Llaman a la puerta y parece que tu VideoPortero IP te manda una notificación desde la que inicias la aplicación "WIFI BELL". Has programado Tasker para que, cuando se inicia esa aplicación, haga un HTTPGet que recupere la última foto del VideoPortero. Perdona, pero no entiendo para qué envías un email ¿...? ¿Es así o me he perdido completamente? ![]() ![]() Llaman al videoportero y se genera una llamada (como si fuera de teléfono) en la app WifiBell, instalada en una tablet mural que uso como "monitor domótico". Ahí tienes la opción de descolgar e interactuar, video y audio, con la persona que ha llamado al videoportero. Yo lo que necesito es que cuando no esté en casa, cuando llamen al videoportero me lleguen unas capturas de quién ha llamado al mismo. Para ello he decidido crear un perfil en Tasker, de tipo Aplicación, de manera que cuando la aplicación Wifibell se activa, porque han llamado al videoporterno, me hace un http get que guarda la foto que se genera en ese http en la variable %FOTO, la cual, mediante sendsilentmail me envío a mi correo. El problema es que esa foto no se actualiza en la variable %FOTO.... ![]() |
#9
|
||||
|
||||
Y si lo almacenas en una variable que crees tú en lugar de en la variable %FOTO?
A1: HTTP Get [ Servidor:Puerto:http://ip:port Ruta:/snapshot.cgi?user=user&pwd=pwd Atributos: Cookies: User Agent: Cuenta atrás:10 Tipo Mime:image/jpeg Archivo de salida:%FotoPortero Confiar en cualquier Certificado:Apagado ] Por ejemplo.
__________________
![]() |
#10
|
||||
|
||||
![]() Ahora que veo la secuencia está claro que usar la variable %FOTO es incorrecto ya que la foto no la hace la cámara de la tablet, la hace el VideoPortero y la tablet la pilla con ese HTTPGet. Cada vez que se active la aplicación WifiBell, y por lo tanto se dispare tu perfil, tendrías que generar en la tarea de entrada asociada un nombre de archivo único. Puedes usar las variables de fecha y hora de Tasker para "componer" algo del estilo 20151019_145045.jpg O puedes usar una variable global como si fuese un contador que incrementes en uno cada vez que corra la tarea. O usar siempre el mismo nombre de archivo "captura.jpg", enviar el correo y luego borrar el archivo. Lo que no deberías hacer es usar %FOTO como nombre de archivo. No te has dado cuenta, pero estás machacando la última foto que has hecho con la tablet. Y ten cuidado también con la ruta en la que descargar esa foto. Dependiendo de la versión de Android de esa tablet Tasker no podrá escribir en la tarjeta SD externa, si es que la tienes. |
#11
|
||||
|
||||
Ok, entiendo.
Voy a probar vuestras propuestas y os cuento. La verdad es que me tiene loco...., jeje |
#12
|
||||
|
||||
Ahora que lo pienso
![]() Usar la variable %FOTO no debería ser la causa de los que te está pasando. Sencillamente machacarás la última foto tomada por la tablet cada vez que pilles una foto desde tu VideoPortero con el HTTPGet, pero eso no debería ocasionar que consigas siempre la misma foto ![]() O se produce un error al descargar la segunda foto y no se machaca la primera, o la URL que pones en el HTTPGet recibe siempre el mismo resultado ![]() ¿Has comprobado qué la imagen es diferente cada vez? Supongo que el VideoPortero genera una imagen cada vez que pulsan el timbre, posiblemente con una pausa entre capturas, y mientras que se genere una nueva imagen cada vez que la descargues recibirás la misma, la última. |
#13
|
||||
|
||||
Ahora que lo pienso
![]() Usar la variable %FOTO no debería ser la causa de los que te está pasando. Sencillamente machacarás la última foto tomada por la tablet cada vez que pilles una foto desde tu VideoPortero con el HTTPGet, pero eso no debería ocasionar que consigas siempre la misma foto ![]() O se produce un error al descargar la segunda foto y no se machaca la primera, o la URL que pones en el HTTPGet recibe siempre el mismo resultado ![]() ¿Has comprobado qué la imagen es diferente cada vez? Supongo que el VideoPortero genera una imagen cada vez que pulsan el timbre, posiblemente con una pausa entre capturas, y mientras que se genere una nueva imagen cada vez que la descargues recibirás la misma, la última. ![]() Por eso pienso que la tarea de Tasker está bien, ya que ha capturado en la variable %FOTO una captura de la cámara ip, no de ninguna de las cámaras de la propia tablet.... Yo he pensado lo mismo que tu, que por lo que sea, la tarea no refresca esa url... Lo mismo digo una tontería: pero como se podría hacer para que el perfil completo se desactivara y volviera a activar con cada inicio de la aplicación WifiBell? Quizás así se obligue a refrescar la url del http get... |
#14
|
||||
|
||||
Que es eso?
|
#15
|
||||
|
||||
En el manual de usuario de Tasker lo pone claramente, la variable %FOTO guarda el nombre de archivo de la última foto realizada por el dispositivo. En tu caso la foto la realiza el VideoPortero, no la tablet, así que esa variable NUNCA guardará el nombre de archivo de la captura.
Tendrás que generar un nombre de archivo para esa captura por cualquiera de los métodos que te he dicho antes y probar la tarea. El de la variable global como si fuese un contador es el más sencillo de hacer para una prueba rápida. Sólo requiere la acción de Tasker "Varaible>Sumar a variable". Código:
Perfil: SNAPSHOT VIDEOPORTERO Aplicación: WIFI BELL Entrada: Anon A1: Sumar 1 a variable %FotosVP A2: Establecer variable %archivo = /SDcard/%FotosVP.jpg A3: HTTP Get [ Servidor:<URL de la captura> Archivo de salida:%archivo ] A4: SendSilentMail [Adjuntando %archivo] Ojo también a la ruta que he puesto para componer el nombre %archivo Lo mejor para probar es apuntar a la memoria interna del móvil. Recuerda que en algunos dispositivos (dependediendo de la versión de Android) Tasker no puede escribir en la SDcard externa. |
#16
|
||||
|
||||
En el manual de usuario de Tasker lo pone claramente, la variable %FOTO guarda el nombre de archivo de la última foto realizada por el dispositivo. En tu caso la foto la realiza el VideoPortero, no la tablet, así que esa variable NUNCA guardará el nombre de archivo de la captura.
Tendrás que generar un nombre de archivo para esa captura por cualquiera de los métodos que te he dicho antes y probar la tarea. El de la variable global como si fuese un contador es el más sencillo de hacer para una prueba rápida. Sólo requiere la acción de Tasker "Varaible>Sumar a variable". Código:
Perfil: SNAPSHOT VIDEOPORTERO Aplicación: WIFI BELL Entrada: Anon A1: Sumar 1 a variable %FotosVP A2: Establecer variable %archivo = /SDcard/%FotosVP.jpg A3: HTTP Get [ Servidor:<URL de la captura> Archivo de salida:%archivo ] A4: SendSilentMail [Adjuntando %archivo] Ojo también a la ruta que he puesto para componer el nombre %archivo Lo mejor para probar es apuntar a la memoria interna del móvil. Recuerda que en algunos dispositivos (dependediendo de la versión de Android) Tasker no puede escribir en la SDcard externa. ![]() ahora en un rato pruebo. No te preocupes, creo que esa tablet no tiene tarjeta instalada ![]() Ahora te cuento resultados |
#17
|
||||
|
||||
Al final el que funciona es mi primer perfil. El fallo estaba en que entre prueba y prueba, se había creado en la misma tarjeta una variable %FOTO y una variable %FOTO.jpeg, y la acción de sendsilentmail tomaba una y la acción del http get daba como salida la otra, por lo que, evidentemente no se actualizaba.....
Ahora he borrado ambas físicamente de donde se almacenaban, y he indicado la misma variable %FOTO.jpeg en todos sitios, y funciona genial. Cada vez que llaman al portero se toma una captura y se envía al mail, actualizándose correctamente. Disculpad el coñazo que os he dado, y muchísimas gracias por vuestra inestimable ayuda. Un saludo. |
#18
|
||||
|
||||
![]() Son cosas que pasan y por más que miras no las ves. Si hubieras puesto la descripción de tu proyecto la primera vez, tal y como recomienda la guía para participar en el foro, seguro que alguien se abría dado cuenta y habríamos dado con la solución en un momento ![]() De todo se aprende. Toma nota para la próxima. ![]() ![]() |
Gracias de parte de: | ||
![]() |
![]() |
||||||
|