|
||
|
|
|
|||||||
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Posiciónate (GPS o red), obtén un enlace a Maps y compártelo o guárdalo para luego
Con esta tarea vamos a obtener nuestra posición (por GPS o, si no está disponible, por red), vamos a obtener un enlace válido para Google Maps y (opcionalmente) vamos a poder compartirlo como queramos. También opcionalmente vamos a guardar un archivo de texto con nuestra última localización y otro con un historial de nuestras localizaciones.
La parte de localización ya se ha puesto repetidas veces en el foro y los créditos van para su autor, que ahora no recuerdo quién es. Empezamos con la parte de localización. La variable %PARKING es la clave, donde se guardan las coordenadas obtenidas, ya sea obtenidas por GPS (si hemos conseguido posicionamiento GPS) o por red (si no conseguimos posicionamiento GPS). La orden para encender el GPS [A6] solo funcionará siendo root y/o utilizando el plugin de Secure Settings, la mantengo a efectos meramente ilustrativos. Código:
A1: Vibrar [ Tiempo:50 ] A2: Limpiar variable [ Nombre:%HORAGPS Coincidencia de Patrón:Apagado ] A3: Limpiar variable [ Nombre:%ORIGEN Coincidencia de Patrón:Apagado ] A4: Limpiar variable [ Nombre:%PRECISION Coincidencia de Patrón:Apagado ] A5: Limpiar variable [ Nombre:%PARKING Coincidencia de Patrón:Apagado ] A6: GPS [ Establecer:Encendido ] A7: Flash [ Texto:Fijando ubicación... Espera... Largo:Encendido ] A8: Obtener ubicación [ Origen:Cualquiera Cuenta atrás (segundos):30 Continuar tarea inmediatamente:Apagado Mantener Seguimiento:Apagado ] A9: Vibrar [ Tiempo:100 ] A10: Establecer variable [ Nombre:%ORIGEN A:Red Calcular:Apagado Añadir:Apagado ] A11: Establecer variable [ Nombre:%PARKING A:%LOCN Calcular:Apagado Añadir:Apagado ] A12: Establecer variable [ Nombre:%PRECISION A:%LOCNACC Calcular:Apagado Añadir:Apagado ] A13: Si (if) [ %LOCACC < %LOCNACC ] A14: Establecer variable [ Nombre:%PARKING A:%LOC Calcular:Apagado Añadir:Apagado ] Si (if) [ %LOCTMS > %TIMES-45 ] A15: Establecer variable [ Nombre:%ORIGEN A:GPS Calcular:Apagado Añadir:Apagado ] Si (if) [ %LOCTMS > %TIMES-45 ] A16: Establecer variable [ Nombre:%PRECISION A:%LOCACC Calcular:Apagado Añadir:Apagado ] Si (if) [ %LOCTMS > %TIMES-45 ] A17: Fin si (End if) A18: Establecer variable [ Nombre:%HORAGPS A:%TIME Calcular:Apagado Añadir:Apagado ] A19: Establecer variable [ Nombre:%FECHAGPS A:%DATE Calcular:Apagado Añadir:Apagado ] A20: Flash [ Texto:Coordenadas adquiridas: %PARKING Precisión: %PRECISION m. Origen: %ORIGEN Hora: %HORAGPS Largo:Encendido ] Código:
A21: Escribir archivo [ Archivo:Where/Where_last.txt Texto:>>%PARKING |(+/- %PRECISION m., %ORIGEN) #%DATE - %HORAGPS http://maps.google.com/maps?q=loc:%PARKING * Añadir:Apagado Añadir Nueva Línea:Encendido ] A22: Escribir archivo [ Archivo:Where/Where_history.txt Texto:>>%PARKING |(+/- %PRECISION m., %ORIGEN) #%DATE - %HORAGPS http://maps.google.com/maps?q=loc:%PARKING * Añadir:Encendido Añadir Nueva Línea:Encendido ] Código:
A23: FolderSync [ Configuración:Upload_Where Paquete:dk.tacit.android.foldersync.full Nombre:FolderSync ] Código:
A24: Copiar al portapapeles [ Texto:http://maps.google.com/maps?q=loc:%PARKING Añadir:Apagado ] A25: Flash [ Texto:URL copiada al portapapeles: http://maps.google.com/maps?q=loc:%PARKING Largo:Encendido ] Código:
A26: Enviar Intent [ Acción:android.intent.action.SEND Categ.:Default Tipo Mime:text/plain Datos: Extra:android.intent.extra.TEXT:%CLIP Extra: Paquete: Clase: Objetivo:Activity ] Opcionalmente, si lo que queremos es simplemente guardar nuestra localización para recuperarla después, podemos compartir el enlace a Maps con Evernote, se crea así una nota con mi localización y la guardo. Posteriormente, cuando quiera recuperarla simplemente abriré Evernote y haré click en el enlace guardado en la nota, abriéndolo con Maps, que me señalará la localización guardada y también la localización en la que me encuentro en ese momento. De hecho, esto se puede hacer incluso automáticamente: Código:
A26: Enviar intent [ Acción: com.evernote.action.CREATE_NEW_NOTE Categ.:None Tipo Mime: Datos: Extra:android.intent.extra.TITLE:Localización %DATE - %TIME Extra:android.intent.extra.TEXT:%CLIP Paquete: Clase: Objetivo:Activity ] ). Debo decir que yo tengo dos tareas: Una para compartir (que he llamado ShareLoc [pronúnciese "Sherlock" ] y otra idéntica excepto en la última línea, para guardar en Evernote (que he llamado (WhereIam)]. Aaaah, y tengo una tercera tarea que se activa al recibir un SMS con una palabra mágica y tras hacer todo esto, al final en lugar de compartir o guardar en Evernote lo que hace es devolver al remitente otro SMS con el enlace a Maps. Así mi mujer podrá saber siempre dónde estoy Finalmente, decir que el enlace a Maps tiene su miga, porque al parecer hay diferentes APIs de Maps (la han cambiado hace poco, parece ser) y no todas parecen funcionar igual. Funcionará correctamente si en Maps nos sale con un pincho rojo la posición guardada y, además, nos sale con el clásico círculo azul nuestra posición actual: debemos ver las dos (guardada y actual) y no solo una de ellas. En mi caso (Android 4.3) funciona perfectamente y también funciona en un iPhone (iOS 7). Probad a ver si os funciona bien en otras versiones y vamos puliendo cosas. Última edición por malkair Día 11/10/13 a las 11:01:21. |
| Los siguientes 10 usuarios han agradecido a malkair su comentario: | ||
|
|
|
#2
|
||||
|
||||
|
Fantástico trabajo, Malkair. Felicitaciones y agradecimientos porque me lo copiaré. Cuando lo pruebe quizá te haga algún otro comentario, de momento solo se me ocurre el siguiente comentario.
...podemos compartir el enlace a Maps con Evernote, se crea así una nota con mi localización y la guardo [...] Lástima que la nota no se guarde automáticamente. Se podría hacer, pero para ello necesitamos un Extra:QUICK_SEND:true y solo hay espacio para dos Extras que ya tenemos ocupados (título y texto).
![]() https://play.google.com/store/apps/d...ailmepro&hl=es Normalmente la nota de Evernote es creada pocos segundos después de que Tasker haya enviado el mensaje. El problema se produce cuando Android no tiene conexión a Internet; EmailMePro reintentará el envío durante un rato, y lo normal es que eso acabe generando la nota de Evernote, con el pequeño problema de que la nota no tendrá la hora correspondiente al momento del evento sino un tiempo después (siempre puedes poner la hora del evento dentro del mensaje-nota, para saber el momento exacto). Ahora bien, si pasa demasiado tiempo (algunas horas, creo) sin conexión, entonces EmailMePro acaba desistiendo y deja un aviso en la barra de notificaciones por si quieres/puedes reconectar y/o repetir el intento de enviar el mensaje. En fin, que este procedimiento resuelve el problema que comentabas, pero tiene otros inconvenientes que también deben ser valorados para decidir cuál es el método menos malo para cada uno. Otra cosa: para quien no tenga necesidades muy específicas, Android puede generar automáticamente un historial de ubicaciones, siempre que lo tengas adecudamente configurado. Podéis verlo en https://maps.google.com/locationhistory/b/0 https://maps.google.com/locationhistory/b/0/dashboard https://support.google.com/websearch.../2824786?hl=es
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#3
|
||||
|
||||
|
Hola ,para los que siempre tenemos encendido el gps como yo, nunca se daría el caso de que la posición gps no estuviese disponible ¿No?
Por lo que ¿No bastaría con algo como esto? ObtenerUbicación (43) A1: Array Clear [ Nombre:%Yoahora ] A2: Obtener ubicación [ Origen:GPS Cuenta atrás (segundos):10 Continuar tarea inmediatamente:Apagado Mantener Seguimiento:Apagado ] A3: Establecer variable [ Nombre:%Yoahora A:http://maps.google.com/maps?q=loc:%LOC Calcular:Apagado Añadir:Apagado ] Así con tres simples acciones tendríamos una variable con la ubicación exacta y lista para ser interpretada por el google maps y compartida por cualquier servicio. ¿NO? |
|
#4
|
||||
|
||||
|
Prueba lo que ocurre cuando estás en un sótano, un parking subterráneo o en edificios grandes y cerrados que impiden la comunicación con los satélites (eso ocurre en algunos cines, salas de conciertos, discotecas, etc). En esas ocasiones puede haber una posibilidad de obtener una ubicación por antenas y/o por redes Wifi.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#5
|
||||
|
||||
|
Como única crítica, creo que es poco acertado usar variables globales para %FECHAGPS , %HORAGPS , %ORIGEN , %PRECISION y %PARKING. No parece que esas variables vayan a ser utilizadas por otras tareas, y por lo tanto sería más adecuado haber usado minúsculas para ahorrarnos las cuatro acciones (A2 a A5) que limpian las variables, puesto que el propio Tasker se encarga de que todas las variables locales estén limpias al comenzar cada tarea. Por otro lado, cuando estemos trabajando con otra tarea y miremos su lista de variables nos vamos a encontrar con estas cinco variables globales que solo estarán estorbando o distrayendo sin utilidad alguna. Ahora bien, si pretendes usar esas variables en alguna otra tarea, entonces están bien como variables globales en mayúsculas, por supuesto.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#6
|
||||
|
||||
|
En primer lugar me parece muy ingenioso el sistema para detectar cuál ubicación es mejor (comparando la precisión obtenida por Red y por GPS), y con la verificación adicional de que la ubicación de GPS sea reciente (últimos 45 segundos). Eso han sido dos puntazos de maestro.
![]() Es cierto. En un principio esta tarea la tenía complementada por otra independiente que tenía que leer estas variables para determinar la posición guardada, de ahí que haya conservado las mayúsculas. Ahora, ya no son necesarias ya que esas variables no se usan por otra tarea y como bien dices, se pueden dejar en minúsculas. |
|
#7
|
||||
|
||||
|
Ahora podemos enviar nuestra localización (ese enlace) a cualquier persona, por ejemplo compartiendo con Whastapp o Email, ordenando que se comparta mediante un intent. Únicamente compartimos el enlace, pero podemos añadir cualquier texto adicional.
Código:
A26: Enviar Intent [ Acción:android.intent.action.SEND Categ.:Default Tipo Mime:text/plain Datos: Extra:android.intent.extra.TEXT:%CLIP Extra: Paquete: Clase: Objetivo:Activity ] ![]() Última edición por soymicmic Día 28/10/13 a las 12:05:01. |
|
#8
|
||||
|
||||
|
¿Cómo consigues enviar por correo ese texto? No veo cómo hacerlo sin ayuda del EmailMePro o algo parecido... (he visto que se puede hacer algo con un script python, pero no se si alguno lo ha probado)
![]() Se puede cambiar el intent para que lance alguna acción de alguna app determinada (por ejemplo, para que guarde el enlace como una nota en Evernote). Seguro que EmailMePro tiene una acción accesible vía intent para enviar un correo. O incluso más fácil, como lo que se va a enviar está en la variable %CLIP, seguro que con un Plugin se puede hacer con facilidad. |
|
#9
|
||||
|
||||
en http://www.htcmania.com/showpost.php?p=3053413
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#10
|
||||
|
||||
|
Me parece una Tarea sencillamente genial, se me habia ocurrido usarla para crear una especie de SALVA VIDAS.
Como aficionado al MTB salgo solo en muchas ocasiones y de vez en cuando tengo algun accidente (nada serio hasta ahora). Se me habia ocurrido usar este perfil para en caso de accidente enviar por whatsapp la localización. Tengo todo hecho salvo lo mas importante, como lanzar la tarea. Se me han ocurrido un par pero no se cual puede ser mejor: - Ir comparando la posición y si no hay cambios en x min lanzar el aviso. - Usar el acelerometro, pero no se si tasker puede usar el acelerometro. Que me decis? teneis alguna idea mejor??? Gracias. |
|
#11
|
||||
|
||||
|
SOS Sports ("...Esta aplicación, la he realizado porque practico Mountain Bike y en ocasiones...") https://play.google.com/store/apps/d...sosSport&hl=es HelpMeOut (orientada a motoristas) http://masquecurvas.wordpress.com/20...e-para-moters http://www.htcmania.com/showthread.p...8#post11696058 Que yo sepa, con Tasker no hay forma de utilizar el acelerómetro.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#12
|
||||
|
||||
|
Creo que si que se puede pero no para este caso concreto, se pueden grabar gestos con el acelerómetro. Sólo se me ocurre asociarlo al programa GPS que usemos para ir bici y que envíe la última posición si permanecemos en mismo lugar durante X minutos haciendo una comparativa de ubicación cada X minutos.
|
|
#13
|
||||
|
||||
|
Hay apps específicas para eso concreto. Ejemplos:
SOS Sports ("...Esta aplicación, la he realizado porque practico Mountain Bike y en ocasiones...") https://play.google.com/store/apps/d...sosSport&hl=es HelpMeOut (orientada a motoristas) http://masquecurvas.wordpress.com/20...e-para-moters La primera estrategia tiene el inconveniente de que gastas más batería porque consultas el GPS cada poco rato. De todas formas te puedo dar una parte del trabajo ya hecho. Hace tiempo hice una subtarea llamada UbicDistancia que recibe como parámetros dos ubicaciones (coordenadas obtenidas por GPS o similar) y calcula la distancia en metros que las separa en línea recta. De esta forma, la tarea principal no tiene que preocuparse por detalles técnicos y matemáticos (conversión de grados al sistema métrico, cálculos pitagóricos, raíces cuadradas, etc), le basta con tener las dos ubicaciones y la subtarea se encarga de esos procedimientos matemáticos para calcular la distancia. Tienes esa tarea (y otras relacionadas) en el post siguiente: http://www.htcmania.com/showthread.p...8#post11696058 Que yo sepa, con Tasker no hay forma de utilizar el acelerómetro. ![]() Creo que si que se puede pero no para este caso concreto, se pueden grabar gestos con el acelerómetro. Sólo se me ocurre asociarlo al programa GPS que usemos para ir bici y que envíe la última posición si permanecemos en mismo lugar durante X minutos haciendo una comparativa de ubicación cada X minutos.
![]() Ya se que hay programas específicos para esto que quiero, pero queria que fuese algo "mio" hecho con tasker y muy configurable. Ya pensare como lanzo la tarea...... |
|
#14
|
||||
|
||||
|
Yo creo que por ejemplo, si no estás mucho tiempo parado en ruta puedes hacerlo con dos perfiles para no tener un bucle infinito. Uno mientras está «endomondo» o el GPS que uses en la bici conectado que ponga la variable %endomondo a 1. Otro perfil que cuando endomondo sea igual a 1 establezca la variable %lugar a %LOC y que espere 10 minutos y si %LOC es igual a %lugar envíe el WhatsApp o el SMS de socorro, si no compruebe que endomondo sigue siendo 1 y vuelva a la acción uno, la de establecer %lugar a %LOC. Esto creo que se puede mejorar con el plug-in de autolocation, con el que puedes refrescar la posición en tasker justo antes de hacer las comprobaciones de %LOC.
|
| Gracias de parte de: | ||
|
#15
|
||||
|
||||
|
Yo creo que por ejemplo, si no estás mucho tiempo parado en ruta puedes hacerlo con dos perfiles para no tener un bucle infinito. Uno mientras está «endomondo» o el GPS que uses en la bici conectado que ponga la variable %endomondo a 1. Otro perfil que cuando endomondo sea igual a 1 establezca la variable %lugar a %LOC y que espere 10 minutos y si %LOC es igual a %lugar envíe el WhatsApp o el SMS de socorro, si no compruebe que endomondo sigue siendo 1 y vuelva a la acción uno, la de establecer %lugar a %LOC. Esto creo que se puede mejorar con el plug-in de autolocation, con el que puedes refrescar la posición en tasker justo antes de hacer las comprobaciones de %LOC.
![]() Uhmmm puede ser interesante. Esta noche lo estudio tranquilamente. Gracias. |
|
#16
|
||||
|
||||
|
Duda respecto a %LOCACC
Hola: primero quería agradecer a todos por los valiosos datos que aportan, ahora vamos a la consulta, quiero aclarar que modifiqué la tarea para que me envíe un sms al recibir un texto determinado, pOr si pierdo el celu en algún sitio, todo se ejecuta bien, al recibir el mensaje dice que está ajustado por GPS, perfecto, pero al colocar una alerta flash con la variable %LOCACC, esta es "%LOCACC", y si no entiendo mal, esto es igual a cero y lógicamente va a ser menor que %LOCNACC. Además puede tomar posicionamiento y no ajustar la precisión del mismo?
Gracias |
| Gracias de parte de: | ||
|
#17
|
||||
|
||||
|
Buen curro
|
| Gracias de parte de: | ||
|
#18
|
||||
|
||||
|
Un apunte. No entiendo la manía de la gente de desactivar el gps. Tener el gps habilitado no gasta batería a menos que una aplicación lo esté utilizando. Dicho de otra manera, no gasta batería a menos que salga el icono de gps en la barra superior.
Yo lo llevo siempre encendido
__________________
|
|
#19
|
||||
|
||||
|
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
|
![]() |
Estás aquí
|
||||||
|
||||||