![]() |
|
Tasker Para hablar de todo lo relacionado con la aplicación tasker |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
Manejar intervalos de horas con variables
Buenas, Taskeros! Felices fiestas y feliz año!
A ver, ya he conseguido quitarme de encima el wakelock NextAlarmTracker (lo quité eliminando los contextos de horas), pero estoy tratando de en la tarea hacer un si if TIME mayor que 08.30 y si if TIME menor que 21.30, establece ciertos ajustes de volumen. Pero no me sale! Luego paso la tarea, pero creo que ya sabéis por dónde van los tiros! Un saludo a todos! |
|
#2
|
Créate un perfil de Hora, eliges el intervalo "desde - hasta" que te convenga y pones como tarea (sin nombre) los valores de los parámetros de volumen que necesites…
Como ves tienes que tener un servicio activo que te vaya vigilando la hora… yo, no veo otra manera de controlarlo. Enviat des del meu Nexus 5 usant Tapatalk Última edición por cace0353 Día 30/12/16 a las 18:52:16 |
#3
|
He pensado una posible solución sin tener el servicio activado:
Podrias poner como contexto: pantalla activada, y entonces que la tarea asociada comparara con un "if" si %TIME esrá entre los valores de las variables %Hora_Inicio y %Hora_Final que tú habrías fijado previamente… Los valores son numéricamente comparables porque Tasker devuelve la hora en formato horas.minutos. Enviat des del meu Nexus 5 usant Tapatalk Última edición por cace0353 Día 30/12/16 a las 19:40:45 |
#4
|
¿Quieres hacer un contexto de hora sin usar un contexto de hora?
![]() Supongo que ya has intentado usar un contexto de cambio de valor de variable usando %TIME. No vale, así que no te canses. ¿Qué problema tienes con los contextos de hora? ![]() Si lo que quieres es comparar horas puedes usar el truco que te ha comentado cace0353. Si haces las comparaciones con los operadores =, > y < Tasker tratará los valores como números. La hora será la parte entera y los minutos la parte decimal. No es matemáticamente correcto pero es una aproximación que debería funcionar en casi todos los casos. ![]() |
#5
|
Cómo moláis compis!
Perfil: Casa (41) Priority: 0 Estado: Antena cercana [ Antena / Última señal:GSM:1204.972 / 3 GSM:24201.58597 / 0 GSM:24201.58608 / 0 GSM:1204.973 / 0 GSM:24201.58598 / 0 GSM:1204.142 / 0 GSM:0.65535 / 0 GSM:1204.976 / 0 GSM:1204.975 / 0 PSC:231 / 0 PSC:255 / 0 PSC:223 / 0 GSM:24201.30467295 / 0 GSM:24201.30467296 / 0 GSM:24201.30467298 / 0 GSM:12002.32220005 / 0 GSM:12002.32220006 / 0 GSM:1204.92 / 0 GSM:1204.93 / 0 GSM:24201.58599 / 0 GSM:1260.13905897 / 0 PSC:246 / 0 PSC:238 / 0 PSC:429 / 0 PSC:480 / 0 GSM:1260.13945894 / 0 GSM:24201.30467299 / 0 GSM:1204.1333 / 3 GSM:1204.1331 / 3 Ignorar Antenas:* ] Entrada: Antena Casa (43) A1: Establecer variable [ Nombre:%Casa A ![]() A2: Si (if) [ %TIME > 08.30 & %TIME < 21.30 ] A3: Volumen en la llamada [ Nivel:5 Mostrar:Apagado Sonido:Apagado ] A4: Volumen de notificación [ Nivel:0 Mostrar:Apagado Sonido:Apagado ] A5: Volumen del timbre [ Nivel:0 Mostrar:Apagado Sonido:Apagado ] A6: Volumen de alarma [ Nivel:7 Mostrar:Apagado Sonido:Apagado ] A7: Volumen del sistema [ Nivel:0 Mostrar:Apagado Sonido:Apagado ] A8: Volumen multimedia [ Nivel:0 Mostrar:Apagado Sonido:Apagado ] A9: Else Si (if) [ %TIME > 21.31 & %TIME < 08.29 ] A10: Volumen en la llamada [ Nivel:0 Mostrar:Apagado Sonido:Apagado ] A11: Volumen de notificación [ Nivel:7 Mostrar:Apagado Sonido:Apagado ] A12: Volumen del timbre [ Nivel:2 Mostrar:Apagado Sonido:Apagado ] A13: Volumen de alarma [ Nivel:7 Mostrar:Apagado Sonido:Apagado ] A14: Volumen del sistema [ Nivel:7 Mostrar:Apagado Sonido:Apagado ] A15: Volumen multimedia [ Nivel:15 Mostrar:Apagado Sonido:Apagado ] A16: Fin si (End if) A17: Estado del perfil [ Nombre:Luminosity Establecer:Encendido ] A ver, la idea era esta. Yo mismo pensé que era demasiado bonito para ser verdad. Claro, si pongo un contexto de horas, siempre tendré un wakelock (cuánta razón tenías, @danko9696!). Aunque no es algo que me obsesione, es un poco para aprender (estas vacaciones he aprendido también a piratear wii's). %TIME es una variable global, por lo tanto, no sé qué es lo que falla. El compañero @cace0353 ha aportado una buena pista. Si no me he equivocado, es lo que está planteado en el perfil de arriba. Pero me sale todo en rojo! Un saludo! |
#6
|
A primera vista:
1.- Deberias usar Else, y nada más, para poner lo que quieres que se haga si no se cumple la condición del primer If. 2.- Además, la segunda condición que impones es imposible: nunca %TIME será simultaneamente > 21.31 y < 8.29!!! Feliz 😄 año nuevo a todos! Enviat des del meu Nexus 5 usant Tapatalk |
#7
|
A ver @cace0353, me puedes explicar esto? Me has dejado muy loco! Porqué nunca podría ser %TIME > 21.31 y %TIME < 8.29?? No lo entiendo.
Feliz año a todos! |
#8
|
Piénsalo un segundo: la comparación és numérica.
Con qué valor de %TIME se cumple "simultáneamente" que %TIME és mayor que 21.31 y menor de 8.29 ???? No necesitas ninguna condición después del "Else"… simplemente se ejecuta lo que va después del Else si no se cumple la primera condición, es decir If %TIME >8.30 & %TIME < 21.31 Más claro con otro ejemplo: cómo se escribiría la condición si el intervalo fuera entre las 8.30 y las 2 de la madrugada???? If %TIME >8.30 OR %TIME < 2.0 Enviat des del meu Nexus 5 usant Tapatalk Última edición por cace0353 Día 31/12/16 a las 18:25:34 Razón: Problemas con la edición… |
Gracias de parte de: | ||
#9
|
Tengo algún problema con la edición del post…
Voy a coger el PC… Enviat des del meu Nexus 5 usant Tapatalk |
#10
|
||||
|
||||
Cita:
Dime un número que sea mayor que 21 y al mismo tiempo sea menor que 8. Es imposible cumplir ambas condiciones. El problema es que la comparación es matemática, y no entiende de horarios ni de ciclos diarios. Si añades los minutos, el problema sigue existiendo igual. |
Gracias de parte de: | ||
#11
|
Jolín, pues justamente es el que más me interesa, porque es cuando el tlf se pone en silencio! Estoy a ver cómo lo puedo enfocar. Se admiten sugerencias eh?
![]() Un saludo! Y ánimo, sólo queda el roscón! |
#12
|
|
Cita:
Tienes dos periodos distintos: A cuando estás fuera de casa (de las 8.30 a las 21.30) B cuando estás en casa (de las 21.30 a las 8.30 del día siguiente) Las acciones posibles las debes agrupar de manera que unas se ejecuten si estás en el caso "fuera de casa" y las otras se ejecuten el resto de horas del día, cuando estás "en casa"… Por esto debes plantear las condiciones así: If %TIME > 8.30 & %TIME < 21.30 Aquí pones las acciones para fijar los volúmenes de teléfono, alarmas, multimedia, etc. en nivel alto cuando estás fuera… Else (és decir, si ya no estás en el horario en que se cumple la condición expresada en el If, o sea, cuando estás en casa) Aquí pones las acciones para fijar los volúmenes de teléfono, alarmas, multimedia, etc. en nivel bajo… End If Y ya está, a menos que no te haya entendido nada desde el principio! Enviat des del meu SM-T550 usant Tapatalk |
Los siguientes 2 usuarios han agradecido a cace0353 su comentario: | ||
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 03:54:21 (GMT +2)
HTCMania: líderes desde el 2007