|
||
|
|
|
|||||||
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Duda Funcionamiento variable %PACTIVE
Hola amigos, tengo una duda con esta variable.
Tengo un perfil sencillo, para casa. El perfil me activa o desactiva el BT cuando se conecta o desconecta la WiFi y emite una voz a tal efecto. El caso es que ocasionalmente se pierde la WiFi y salta el perfil. Esto no es ningún problema salvo porque tengo el móvil en la mesita de noche y, de vez en cuando, en el mejor de los sueños, una voz desagradable me despierta diciendo. ... Blutuz Activado (en ese momento sé que se ha ido la WiFi, maldita sea la gracia!) Se me ha ocurrido meter una condición y es que, si está el perfil activo "Modo Noche" No suene la voz, aunque salte el perfil. Bien, pues esto no me funciona. Leyendo sobre las variables, veo... Cita: Perfiles Activos (dinámica)
%PACTIVE Lista de perfiles activos -separados por comas- en el momento actual, en orden de activación. Los perfiles duplicados sólo aparecerán una vez en la lista. ![]() Perfil: BT On (42) Estado: Conectado a Wifi [ SSID:* MAC:* IP:* ] Entrada: BT Coche Desc. (41) <Bluetooh Apagado> A1: Bluetooth [ Establecer:Apagado ] Si (if) [ %PACTIVE !~ Modo Coche ] A2: Decir [ Texto:Blutuz Desactivado Motor: Voz:default:default Stream:3 Tono:5 Velocidad:5 Respect Audio Focus:Encendido Network:Apagado Continuar tarea inmediatamente:Apagado ] Si (if) [ %PACTIVE !~ Modo Noche ] A3: Establecer variable [ Nombre:%BTCON A:0 Calcular:Apagado Añadir:Apagado ] Salida: BT Coche Conect. (40) <Bluetooh Encendido> A1: Bluetooth [ Establecer:Encendido ] A2: Decir [ Texto:Blutuz Activado Motor: Voz:default:default Stream:3 Tono:5 Velocidad:5 Respect Audio Focus:Encendido Network:Apagado Continuar tarea inmediatamente:Apagado ] Si (if) [ %PACTIVE !~ Modo Noche ] A3: Establecer variable [ Nombre:%BTCON A:1 Calcular:Apagado Añadir:Apagado ] Yo lo que entendía era que la voz sonara sólo cuando el perfil "Modo Noche" No esté activo. En cambio se silencia si la condición es la contraria (coincide con Modo Noche) Qué hago mal? KchoPrro Última edición por KchoPrro Día 13/05/14 a las 21:35:06. |
|
|
|
#2
|
||||
|
||||
|
Hasta donde sé, la variable de PACTIVE es solo numérica. Si tienes un perfil activo es 1, y creo que sí tienes más de 1, marca el número de perfiles activos. Es decir, que no es binaria 0 y 1.
Así que para este caso, creo que esa variable no te sirve. En tasker se puede poner como contexto Perfil Activo, y ahí sí que puedes seleccionar el perfil concreto. En Estado/Tasker/Perfil activo. También puedes meter una variable en el perfil Noche. Que cambie la variable %noche a 1, y lo añades como contexto al otro perfil. También puedes poner un contexto temporal, entre X y X horas. Múltiples posibilidades!
__________________
![]() |
| Gracias de parte de: | ||
|
#3
|
||||
|
||||
|
Tienes que poner *(nombre exacto del perfil)*.
Por ejemplo en tu caso seria: Si (if) [ %PACTIVE !~ *Modo Noche* ] Y tu lo has puesto sin los asteriscos (*). . Si no pones * no funciona. Creo que es porque esa variable contiene todos los nombres de los perfiles, separados por comas, y los asteriscos (*) significa que contiene el nombre que este entre los asteriscos, aunque contenga mas texto, el de las demas variables activadas. Por eso hay que ponerlas porque esta variable contiene todos los nombres de los perfiles y no solo Modo Noche. Puedes hacer la prueba creando un Pop-up o notificacion, que el texto sea %PACTIVE y veras lo que contiene esa variable. |
| Gracias de parte de: | ||
|
#4
|
||||
|
||||
|
* Es un comodín, lo que significa que se puede utilizar para que coincida con una parte de un fragmento de texto. Si escribes Android en el campo de valor y coincide como operador, sólo coincidirá el texto exacto de Android. *Android* por otro lado coincidirá con cualquier uso de la palabra Android, como “me gusta Android mucho”. *Android coincidirá con “me gusta Android” pero no con “me gusta Android mucho”, ya que el comodín está sólo delante de la palabra, no detrás de ella. En algunos casos es mejor utilizar *ndroid* en lugar de *Android*, porque el primero captura tanto Android y android.
Asi lo explican en esta pagina, es Tutorial sobre variables de este foro, Link abajo http://www.htcmania.com/archive/index.php/t-572952.html |
|
#5
|
||||
|
||||
|
Stenary lo ha explicado muy bien y yo solo voy a ser redundante con lo que él ha dicho. La variable %PACTIVE contiene la lista de los perfiles activos, al estilo siguiente: ,perfilUNO,perfilDOS,perfilTRES, En esa variable, los nombres de los perfiles están separados por comas, incluyendo siempre una coma inicial y otra coma final. Aunque solo haya un perfil activo, en la condición siempre hay que poner los asteriscos que funcionan a modo de comodín para reemplazar a las comas y/o a otros nombres de perfiles que pueda haber en la lista. Por tanto, los asteriscos solo deden sumprimirse en algunos casos muy extraños, por ejemplo si queremos que la acción solo se ejecute cuando haya un perfil activo (y ningún otro perfil más): Acción Si (if) [ %PACTIVE ~ ,perfilDOS, ] Como se ve, en ese caso hay que poner las comas inicial y final. La variable %TRUN (Tasks RUNing) es similar y contiene la lista de las tareas que se estén ejecutando en ese momento. ,tareaUNO,tareaDOS,
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
| Los siguientes 3 usuarios han agradecido a Caravantes su comentario: | ||
|
#6
|
||||
|
||||
|
|
|
#7
|
||||
|
||||
|
Igual lo que dice Juanmiwow es porque eso que dices de los números pasa cuando no tienen nombre. Tasker al no tener nombre los numera.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
| Los siguientes 3 usuarios han agradecido a mlesir su comentario: | ||
|
#8
|
||||
|
||||
|
Muchas gracias, finalmente ese era el problema, me faltaron poner las comas aunque solo fuera para un perfil activo. También los asteriscos, sin ellos tampoco funcionaba a pesar de coincidir al 100% los caracteres.
Saludos! KchoPrro |
| Gracias de parte de: | ||
|
#9
|
||||
|
||||
|
Las comas no son necesarias si pones asteriscos. Aunque igualmente te va a funcionar, no problem, pero te lo comento.
Las comas solo se necesitarian utilizar si solo hubiese un perfil activo y no pusieramos asteriscos, como explica Caravanates. |
| Gracias de parte de: | ||
|
#10
|
||||
|
||||
|
Pues efectivamente así es, las he quitado poniendo solo los asteriscos y funciona igualmente bien.
Muchas gracias! KchoPrro |
|
#11
|
||||
|
||||
|
Dependiendo de las circunstancias, las comas pueden ser necesarias.
Supongamos que tienes un perfil llamado "En Casa" (muchas personas lo tienen). Supongamos que también tienes otro perfil llamado "En Casa de mis padres" En tal caso, para saber si estás en tu casa, tienes que poner las comas: %PACTIVE ~ *,En Casa,* Porque si no pones las comas la condición se cumplirá cuando estés en tu casa y también cuando estés en la casa de tus padres. Este tipo de coincidencias desafortunadas se evitan poniendo siempre las comas, que delimitan el nombre del perfil y lo acotan perfectamente. No puedes tener dos perfiles con el mismo nombre, pero sí puedes tener dos perfiles con nombres incusivos (un nombre incluye al otro, y al otro, etc). Por eso es bueno acostumbrarse a poner siempre las comas... Salvo situaciones especiales concretas. Por ejemplo, la condición %PACTIVE ~ *,En Casa* (sin la segunda coma) resultará positiva si está activado cualquier perfil que comience con esos 7 caractes: cuando estás en (tu) casa o en la de tus padres o en la de tu novia.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Última edición por Caravantes Día 26/05/21 a las 04:04:56. |
| Gracias de parte de: | ||
![]() |
Estás aquí
|
||||||
|
||||||