![]() |
|
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
«
Tema Anterior
|
Siguiente tema
»
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Escribir en un formulario web y pulsar un botón web (root)
Hola. Me interesa conseguir que Tasker escriba algo en un formulario web y pulse el botón de confirmar. Quiero automatizar el proceso de identificarme en la intranet de mi empresa, escribiendo en una página web mi identificativo de usuario y mi contraseña. Lo tengo que hacer a diario y es un poco rollo, así que he pensado: que lo haga Tasker.
![]() Para que lo entendáis mejor, el problema es equivalente al siguiente: hacer que Tasker abra la página del buscador Google (www.google.es), escriba en el recuadro de búsqueda una palabra concreta "mandarina" y luego pulse en el botón que tiene el icono de "la lupa" para hacer la búsqueda. Si lo consigo luego aplicaré la misma solución para la intranet de mi empresa. Screenshot_2013-06-18-23-07-36.jpg Lo primero que hice fue una captura de pantalla para medir las coordenadas en las que normalmente hago las pulsaciones (con el dedo). Lo habitual es medir desde arriba a la izquierda, poniendo primero el desplazamiento a la derecha y luego el desplazamiento hacia abajo. De esa forma las pulsaciones serían (en mi pantalla, con la página de google) En el centro del cuadro de texto: 324, 515 En el centro del icono-lupa: 712, 515 Y me pongo a hacer la tarea. 1- (Red) Navegar a la URL www.google.es (esto funciona perfecto, abre la página) 2- (Tarea) Esperar 3 segundos (para dar tiempo a que la página se cargue completa, también bien). Y ahora viene la parte en la que estoy atascado. ¿Cómo hago para "meter" el cursor dentro de la casilla de escritura? He probado a simular la pulsación en la pantalla con Ejecutar Consola input tap 324 515 . Tras eso debería tener el cursor parpadeando dentro del recuadro, pero eso no ocurre. Creo que el comando no hace nada, o yo no noto que haga nada (más info sobre este input tap en http://www.htcmania.com/showthread.php?p=8670110 ). He cambiado las coordenadas para que el input tap simule una pulsación en la parte superior de la pantalla, 324 194, donde está el rótulo de IMAGENES, pero tampoco veo que haga nada. También he probado con Ejecutar Consola input keyevent 61 . El código 61 simula una pulsación del tabulador, pero tampoco veo que haga nada, no sé si alguno de los otros códigos me serviría directamente, hay un mogollón de ellos (más info sobre este input keyevent en http://www.htcmania.com/showthread.php?p=8655382 ) Alguna idea? Gracias. Última edición por Caravantes Día 20/06/13 a las 00:30:18 |
|
|
|
#2
|
|
Hola Caravantes.
Primero que nada prueba ejecutar en un emulador de terminal "input" solamente (sin el "tap" despues). Con eso te saldrá una descripción del comando en tu terminal y podrás ver si admite la opción "tap". Si no lo soporta (aunque por la versión de Android que tienes debería) tendrías que echarle un vistazo a este método, si si se me ocurren varias cosas que pueden pasar: - Asegurate que marcas "ejecutar como root" en la acción de ejecutar consola, ya que es necesario para este comando. - Utiliza la propia opción de mostrar las coordenadas donde toques del sistema operativo (en las opciones de desarrollo del teléfono) en vez de sacar una captura y medirlo ahí, por si acaso los resultados no fueran correctos y estuvieras simulando pulsaciones en ninguna parte. No está de más si tambien usas la opción "mostrar toques en la pantalla" tambien en opciones de desarrollo. |
|
#3
|
|
Hola Caravantes. Pues he probado a hacer lo que dices con Google. Yo lo he probado con el trackball de tasker pq no tengo la posibilidad de emular la pulsación directa por q tengo ICS.
El caso es que solo con el navegador dolphin consigo hacerlo. Con este si puedo manejarlo. Para que puedas probar si quieres te dejo una tarea q carga la url de Google (ahí eliges el navegador q quieres usar, esto luego tb lo puedes automatizar con el track). Luego te muestra una escena, que es una pantalla superpuesta con los 4 cursores, intro, pulsar y escribir "clave". Lo bueno de esto es que puedes probar directamente como funciona e ir haciendo pruebas con los distintos navegadores etc. Aquí te dejo el enlace a Dropbox para q te descargues el proyecto si quieres http://db.tt/57VWjiU2 Esta es una captura de lo que sería la escena. Creo q asi se ve claro lo que quiero decir ![]() Cada icono lleva asociado una tarea que no es más que una acción del track: subir, bajar, escribir, etc, menos el intro q es ejecutar consola, "input keyevent 66" marcado ejecutar como root. |
|
#4
|
||||
|
||||
|
Efectivamente, Maid, ese era mi fallo. Marcando esa casilla veo que el input tap funciona.
Luego seguiré con la tarea, y ya os contaré. Gracias. |
|
#5
|
||||
|
||||
|
Aclaración previa y evidente. Para que esto funcione hay que tener ROOT.
Una vez superado el olvido de marcar la casilla ROOT en las acciones Ejecutar-Consola, el resto de la tarea ha tenido pocas dificultades. La tarea se ejecuta de principio a fin en pocos segundos. Más abajo va la descripción detallada de la tarea, pero adelanto un resumen: A1 Abrir la web de Google. A2 Esperar 3 segundos para que la página se cargue completa. A3 Simular una pulsación en el cuadro de texto A4 Simular la escritura de la palabra "mandarina" A5 Simular una pulsación "flecha derecha" para cambiar el foco al botón de la lupa. A6 Simular la pulsación de la tecla Enter/Intro/Return (sobre el botón de la lupa). Así acaba la tarea, y aparece la página de resultados de Google para la búsqueda "mandarina". Perfecto. En A5 intenté primero una simulación de tabulador pero no funcionó como esperaba: en el ordenador el tabulador salta a la casilla u objeto siguiente, pero en el navegador del móvil (chrome) lo que ocurría es que ese tabulador era introducido DENTRO del recuadro de texto. Lo sustituí por una pulsación "flecha derecha" que ha funcionado bien. Mlesir, he descargado y probado tu proyecto-escena. No es tan automático, requiere intervención humana y por eso creo que es un buen planteamiento para otras ocasiones en que haya que decidir, pero para mi caso que es siempre un texto fijo prefiero el automatismo total. De hecho, voy a asociar la tarea a un perfil que la ejecutará en el momento en que detecte la conexión a la Wifi de la empresa. De este modo el smartphone hará la identificación en la intranet desde el primer momento y tendré conexión de datos todo el tiempo, y todo ello sin intervención mía, incluso sin que me entere de que eso sucede. Es justo lo que quería. Ahí van los detalles del perfil: A1: Navegar a una URL [ URL:www.google.es ] A2: Esperar [ MS:0 Segundos:3 Minutos:0 Horas:0 Días:0 ] A3: Ejecutar consola [ Comando:input tap 324 515 Cuenta atrás (segundos):0 Usar Root:Encendido Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: ] A4: Ejecutar consola [ Comando:input text mandarina Cuenta atrás (segundos):0 Usar Root:Encendido Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: ] A5: Ejecutar consola [ Comando:input keyevent 22 Cuenta atrás (segundos):0 Usar Root:Encendido Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: ] A6: Ejecutar consola [ Comando:input keyevent 66 Cuenta atrás (segundos):0 Usar Root:Encendido Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: ] Más información sobre los procedimientos, en los siguientes mensajes http://www.htcmania.com/showthread.php?p=8670110 y en http://www.htcmania.com/showthread.php?p=8655382 Queridos dummies, esto ha sido todo por ahora.
|
| Gracias de parte de: | ||
|
#6
|
|
Vale no me explique bien. Lo que te deje era para que probaras. Luego claro, para q sea automático haces lo que has hecho. Yo utilizo esta escena para si funciona el track en determinadas pantallas y cuantos arriba, abajo... hay q dar para llegar a donde de quiero, nada más.
Luego ya pongo la tarea correspondiente. Te lo envié para que probases a ver en que navegador te funcionaba, y para que pudieses probar fácilmente el track. |
|
#7
|
||||
|
||||
|
Una pregun sobre la cuestión de este perfil y la opción imput tap. Entiendo que marcas unas coordenadas concretas pero....¿qué pasa si tienes el móvil girado?, las coordinadas no coincidirían, aunque supongo que puedes impedir que rote la pantalla para este perfil.
Saludos! KchoPrro |
| Gracias de parte de: | ||
|
#8
|
|
|
Cita:
Es verdad que se puede impedir que rote facilmente, pero me ha picado la curiosidad a ver si encuentro alguna forma de detectar la orientación de la pantalla en tiempo de ejecución, es decir, averiguar en un momento concreto como está sin recurrir a una variable controlada por perfiles con contexto "cambio de orientación" que consumen demasiado para estar monitorizandolo constantemente solo para un uso de este tipo (precisamente pienso que es por esto que Tasker no incorpora una variable para eso de serie...). Si hubiese alguna forma (por comando u otras) de averiguar esto se podrían calcular las coordenadas con ambas orientaciones y hacer algo tipo: Si %orientacion ~ retrato ejecutar: input tap x1 y1 Si no ejecutar: input tap x2 y2 |
|
#9
|
||||
|
||||
|
Cita:
Pero creo que sí, no tanto para detectar la orientación, pero creo que se puede "obligar" a que la pantalla esté orientada de forma que coincidan las coordenadas Luego, al finalizar el perfil se puede dejar todo como estaba. Saludos KchoPrro |
| Gracias de parte de: | ||
|
#10
|
|
Conseguido!
El comando Código:
dumpsys window | grep mCurConfiguration Asi que se puede poner una acción "Script->Ejecutar consola" que ejecute este comando (hay que marcar "Ejecutar como root") y guardamos la salida en una variable (por ejemplo %salida) luego podemos poner: Código:
Si %salida ~ * land * Código:
Si %salida ~ * port * |
| Los siguientes 4 usuarios han agradecido a maid450 su comentario: | ||
|
#11
|
||||
|
||||
|
Cita:
Muchas gracias. |
| Gracias de parte de: | ||
|
#12
|
|
Gracias por confirmar que funciona en otros terminales, ya que era algo de lo que no estaba del todo seguro
|
|
#13
|
||||
|
||||
|
Subido a la sección de scripts. Enhorabuena y gracias como siempre Maid y Caravantes:
|
| Gracias de parte de: | ||
|
#14
|
||||
|
||||
|
vaya tela, ¿como podéis llevar tasker a ese extremo? Me dais miedito, jajajja
¡Enhorabuena! |
| Gracias de parte de: | ||
|
#15
|
||||
|
||||
|
Cita:
Cita:
|
| Gracias de parte de: | ||
| Respuesta |
Estás aquí
|
||||||
|
||||||
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 19:32:13 (GMT +1)
HTCMania: líderes desde el 2007








