Jump to content
CoolRaoul

Tasker: aide,infos,creation de profils

Recommended Posts

Bonjour,

 

Je ne suis pas sur d'être au bon endroit, mais j'ai une question sur le paramétrage des profils Tasker.

J'utilise des profils activés selon la connection/déconnection bluetooth et d'autres qui se déclenchent sur entrée dans une zone GPS (Plugin AutoLocation). Ces profils envoient ensuite une requête http à ma domotique.

 

1ere question : il arrive que les profils s'activent 2 fois en l'espace de quelques secondes (surtout la connection BT). J'ai donc paramétré un temps de refroidissement de 5mn, mais il ne semble pas effectif. J'ai mal compris le fonctionnement de se paramètre?

 

2eme question : il arrive que la requete https n'aboutisse pas (timeout) : est-il possible de gérer ca et de la relancer en cas d'échec?

 

Merci a vous et bonne journée

Share this post


Link to post
Share on other sites

1ere question : il arrive que les profils s'activent 2 fois en l'espace de quelques secondes (surtout la connection BT). J'ai donc paramétré un temps de refroidissement de 5mn, mais il ne semble pas effectif. J'ai mal compris le fonctionnement de se paramètre?

C'est pourtant bien sa fonction

 

Essayer d'activer le journal d'exécution ("menu" -> "plus" -> "journal d'exécution") pour avoir plus d'infos sur ce qui se passe.

 

2eme question : il arrive que la requete https n'aboutisse pas (timeout) : est-il possible de gérer ca et de la relancer en cas d'échec?

Dans la tache, faut tester le code réponse de la requete (dans la variable %HTTPR) et reboucler en cas d'erreur (avec un compteur et un délai pour pas reboucler indéfiniment)

 

CF l'exemple sur cette  page, rubrique "Get HTTP"

Share this post


Link to post
Share on other sites

Merci CoolRaoul,

 

Désolé pour la réponse tardive : j'ai du oublier d'activer la notification : je n'ai pas eu de mail de ta réponse.

J'active le journal et je test aujourd'hui et je te dirais. Merci

 

Merci pour le lien sur la boucle http : c'est pile ce que je cherchais! :)

Share this post


Link to post
Share on other sites

Bon ben je n'ai rien en double dans le journal, et le résultat des requêtes http post est OK.

Je piges pas pourquoi les requêtes sont récupérés 2x.

Bon ben je n'ai rien en double dans le journal, et le résultat des requêtes http post est OK.

Je piges pas pourquoi les requêtes sont récupérés 2x.

Share this post


Link to post
Share on other sites

Salut à tous !

 

Depuis le temps que j'entends parler de cette appli, je me suis enfin décidé à l'acheter. J'ai parcouru ce topic et le Net, ici et là, afin d'avoir quelques "bases" et je me suis lancé dans mon 1er "script" très basique => Ecran éteint = data et wifi off.

Mais là où je bloque, c'est que dans les notifications, Tasker me met "aucun profil actif"... :(

 

Voici une image bien détaillée montrant ma situation => http://nsa34.casimages.com/img/2014/08/06/140806123553286006.jpg

 

Aurais-je raté quelque chose ?

Pourtant, malgré ça, j'ai l'impression que ça fonctionne car quand j'éteins l'écran et que je le rallume, je vois que le logo du wifi réapparaît.

 

Quelqu'un aurait une idée ou un indice ? Je continue de chercher de mon côté...

 

Pour info, si ça peut aider, je suis rooté, bootloader déverrouillé, ROM Paranoid Android 4.45.

Tasker est également activé en tant qu'administrateur de l'appareil ainsi que dans "accessibilité"...

 

 

Share this post


Link to post
Share on other sites

Héhé tu as ce message car la tâche n'est pas active lorsque l'écran est allumé, elle ne s'affichera que lorsque tu éteindras l'écran

Share this post


Link to post
Share on other sites

Arf... Maintenant que tu me le dis, ça paraît tellement évident... -_-

C'est le signe qu'il faut que je passe à autre chose pour ce soir...

 

Je continuerai mes bidouilles demain. Merci pour ta réponse rapide ! ;)

Share this post


Link to post
Share on other sites

Ici il était 1h du mat', c'est pour ça que j'avais plus trop les yeux en face des trous. :D

 

J'ai continué de bidouiller un peu depuis ce matin, et j'ai 2 questions qui me sont venues :

 

1 - Par rapport à mon 1er test pour couper le wifi et les données lorsque l'écran est éteint, ça marche nickel. L'inconvénient avec cette méthode, c'est que si j'allume brièvement mon téléphone pour regarder l'heure, ça va tout relancer puis tout recouper rapidement. C'est un peu inutile.

Du coup, je pense qu'il serait plus judicieux que la condition soit le lockscreen verrouillé/déverrouillé.

 

Je déverrouille le tel => les données s'activent.

Le lockscreen se reverrouille => les données se coupent.

 

Ainsi, si je l'allume vite fait pour voir l'heure ou une notification, ça ne se relancera pas inutilement.

 

Est_ce possible ? J'ai regardé un peu partout et je n'ai pas trouvé comment créer cette condition.

Peut être qu'il faut passer par les variables, mais ma liste est vide... Faut il en créer une de toute pièce ?

 

2 - Y a-t-il des priorités ou des risques de conflit entre conditions ?

J'explique : j'aimerai créer un script simple qui active le wifi lorsque je rentre chez moi (connexion à ma box) et qui le coupe lorsque je pars.

 

Du coup, ça activera le wifi même si l'écran est éteint/lockscreen verrouillé (rapport au 1er script au dessus) ?

Ou alors ça attendra que je déverrouille le tel, puis ça activera le wifi en fonction de si je suis chez moi ou non ?

 

Ca paraît bête mais j'ai pas trouvé de réponse à ça en parcourant divers tutos/forums...

 

Merci aux courageux qui prendront le temps de me lire et de m'éclairer ! :)

Share this post


Link to post
Share on other sites

Je vais commencer par la réponse au point 1

 

Tout d'abord, avec Tasker, Il est primordial de bien faire la différence entre les profils de type "état" et les profils de type "événement"

 

Les premiers ne "durent" pas, savent juste déclencher une tache.

 

Pour ton besoin, je te conseille de définir deux un profil de ce type.

 

  • Le premier sera déclenché par l'évenement "affichage eteint"
    Dans ta tache associée on se limite à positionner une variable globale (Affecter variable, %ScreenOffAndLocked, 1)
  • Le second, déclenché par la condition "Affichage déverrouillé", dans sa tache on efface le contenu de cette même variable (action: Effacer Variable)

 

Pour terminer, le profil charger de couper le réseau sera lui un profil de type "état", dont la condition sera la "variable affectée,%ScreenOffAndLocked")

 

NB: inutile d'ajouter une tache de sortie pour rétablir le réseau, Tasker le fait automatiquement: toutes les actions de type "toggle" (on/off) ou modification de paramètre variable (type "volume") qui sont effectuée par la tache d'entrée d'un profil sont automatiquement annulées des que le profil devient inactif (sous réserve que le paramètre du profil "restaurer les paramètres" soit actif, ce qui est le cas par défaut). Par exemple, si un profil effectue "activer bluetooth" dans sa tache d'entrée, le bluetooth sera remis dans l'état qu'il avait initialement des que le profil deviendra inactif.


2 - Y a-t-il des priorités ou des risques de conflit entre conditions ?
J'explique : j'aimerai créer un script simple qui active le wifi lorsque je rentre chez moi (connexion à ma box) et qui le coupe lorsque je pars.
 
Du coup, ça activera le wifi même si l'écran est éteint/lockscreen verrouillé (rapport au 1er script au dessus) ?
Ou alors ça attendra que je déverrouille le tel, puis ça activera le wifi en fonction de si je suis chez moi ou non ?

Un profil peut avoir plusieurs conditions: tu peux ajouter une condition supplémentaire sur la valeur de la variable (%ScreenOffAndLocked maintenant)

Ou bien ca peut se faire par une conditionnelle (sur cette même variable) dans la tache elle-meme

En fait, Il y plein d'autres manières: par exemple une tache tasker peut rendre un profil activable ou désactivable (action "Etat du profil"), donc on peut également imaginer que la tache associée au profil "réseau coupé" mette ce profil en off en entrée et "on" en tache de sortie ("Etat du profil" n'est pas un toggle, donc il faut explicitement le remettre "on")

 

Voila 3 façons de faire déja.

 

Note: On distingue les actions dont l'état est rétabli en sortie par cet icone "roue dentée":

1t4TU2w.png

Share this post


Link to post
Share on other sites

Salut CoolRaoul !

 

Tout d'abord, merci d'avoir pris le temps de me répondre. J'ai commencé à faire comme tu me l'as expliqué, mais je m'interroge sur 2 ou 3 points...

 

1 - Quand je crée la variable globale "Affecter variable, %ScreenOffAndLocked, 1", le 1 se met bien >>> ICI <<< ?

2 - J'ai pour l'instant créé les 2 premiers profils (ce qui donne CECI). Mais pour le 3eme, si je choisi "état => variables", je n'ai pas "variable affectée". Seulement "Valeur de variable". Ai-je raté quelque chose ?

3 - Ce que je ne comprend pas dans ton explication, c'est comment Tasker fait pour savoir que "ScreenOffAndLocked" doit couper le wifi et le data ? A aucun moment on le lui dit. Enfin, de ce que je comprend...

 

J'avoue que je dois passer pour un gros boulet, mais ce qui est évident pour les uns ne l'est pas forcément pour les autres...

Le tout c'est de bien comprendre la construction la première fois (même s'il n'y a pas de "construction" type vu que l'on peut procéder de différentes façons pour un même résultat). Après, ça ira un peu mieux. Je ne suis pas du genre à baisser les bras, donc je vais m'accrocher un maximum.

Share this post


Link to post
Share on other sites

1 - Quand je crée la variable globale "Affecter variable, %ScreenOffAndLocked, 1", le 1 se met bien >>> ICI <<< ?

Oui

 

2 - J'ai pour l'instant créé les 2 premiers profils (ce qui donne CECI). Mais pour le 3eme, si je choisi "état => variables", je n'ai pas "variable affectée". Seulement "Valeur de variable". Ai-je raté quelque chose ?

C'est bien ça, c'est dans l’écran suivant que tu peux choisir:

BUZYRf8.pnguSGuecn.png

 

3 - Ce que je ne comprend pas dans ton explication, c'est comment Tasker fait pour savoir que "ScreenOffAndLocked" doit couper le wifi et le data ? A aucun moment on le lui dit. Enfin, de ce que je comprend...

C'est à toi de lui dire: le 3eme profil doit avoir pour condition l'état "variable %ScreenOffAndLocked affectée" et dans la tache associé tu inclus explicitement les commandes pour couper wifi et data

 

Le profil devrait alors ressembler à ceci:

ZONcAFG.png

Détail de la tache associée au profil:

tNtIGDB.png*

 

J'avoue que je dois passer pour un gros boulet, mais ce qui est évident pour les uns ne l'est pas forcément pour les autres...

Le tout c'est de bien comprendre la construction la première fois (même s'il n'y a pas de "construction" type vu que l'on peut procéder de différentes façons pour un même résultat). Après, ça ira un peu mieux. Je ne suis pas du genre à baisser les bras, donc je vais m'accrocher un maximum.

T’inquiète pas pour ça: des boulets j'en ai croisé sur les forums, ta façon de poser les questions montre que tu ne correspond pas au profil.

Share this post


Link to post
Share on other sites

J'ai testé ce matin et ça a fonctionné direct à la perfection ! Nickel ! :D Merci de ton aide !

Après avoir détaillé les 3 profils, ça paraît effectivement logique et tout bête (tu me diras : c'est souvent simple quand on a la solution sous les yeux...)

 

Du coup, j'ai voulu reproduire ce schéma et cette logique pour le Bluetooth (connexion automatique à l'autoradio lorsque je suis dans ma voiture et déco lorsque j'en sors) et le Wi-Fi chez moi (connexion quand je suis à portée de ma box et déco lorsque je pars), mais ça ne semble pas vouloir fonctionner.

 

"Oui GrumD, ça aurait été trop facile, tu vois !"

 

Voici ce que j'ai fait :

 

          Profil 1 : Evènement => Wifi Proche => SSID => Adresse MAC => basculer le wifi

          Tache associée => Affecter une variable => %WifiHome, 1

 

          Profil 2 : Evènement => Wifi Proche => SSID => Adresse MAC => Inverser (dans ma tête, inverser = l'inverse de wifi proche, donc éloigné)

          Tache associée => Effacer une variable => %WifiHome

 

          Profil 3 : Etat => Valeur de variable => %WifiHome est affecté

          Tache associée => Wifi On

 

Idem pour le bluetooth, à part que j'ai utilisé "BT Near"...

En faisant ainsi, le logo Bluetooth/Wi-Fi s'active 2 secondes et disparaît à jamais... :emo_im_undecided: Et un profil reste vert => http://nsa34.casimages.com/img/2014/08/07/14080711014927823.png

 

Pourtant, même si je sais pertinemment que cette construction ne marchera pas pour tout, en l'analysant, elle semble tout de même logique...

Peut être une histoire de délai ? J'ai en effet vu que dans les options de Tasker on pouvait modifier des choses à ce niveau...

 

J'ai également testé 2 autres façons mais qui n'ont pas donné de meilleurs résultats... -_-

Tu me conseillerais d'explorer quelle piste ?

 

En attendant, je continue de bidouiller et lire quelques infos sur le Net...

 

 

 

Share this post


Link to post
Share on other sites

On va va commencer par s'occuper uniquement du WIFI

 

Il est inutile d'avoir les deux profils 1 et 2. Un seul suffit puisque qu'il s'agit ici d'un profil de type "état" (tu as écrit "Evènement" mais "Wifi Proche" est bien un "Etat")

Ce type de profil peut avoir une tache de *sortie*. Pour la créer, appuyer longuement sur la tache associée et choisir "add exit task". Et c'est dans la tache de sortie que tu effaceras la variable.

 

Cela dit, il y a aussi deux façons de de se passer de la variable ici: ou bien en gardant le profil 1, qu'on va appeler "WifiMaison", il suffit de lui associer une tache bidon (une tache ne peut être vide), qui se contente d'affecter une variable locale par exemple. Par suite la condition du profil 3 sera simplement:

"Etat -> Profil Actif,nom du profil -> "WifiMaison"

 

Sinon, encore plus synthétique, tu peux te uniquement contenter du profil 1, avec Activer le Wifi dans la tache associée.

(bon je dois avouer que personnellement j'aime bien utiliser des variables d'états qui sont simple à tester, j'ai des variables qui ressemblent à "@Home", "@Work", "Driving" par exemple. Mais chacun son style)

 

A noter: la case "activer le wifi" dans les paramétrés de l'état "wifi proche", n'est pas nécessaire si as un appareil sous Android 4.3 ou plus. Il est bien plus économique (en batterie) et efficace d'activer "recherche toujours disponible" dans les parametres wifi avancés d'android. Ca consomme quasiment rien et ne rayonne pas (se met juste en écoute).

 

Dernier tip pour ce soir: l'aide en ligne de Tasker est souvent plus précise et complète si on force l'interface en anglais. 

Edited by CoolRaoul

Share this post


Link to post
Share on other sites
(tu as écrit "Evènement" mais "Wifi Proche" est bien un "Etat")

 

Oui en effet, j'ai fait une erreur en recopiant. Je prend des notes sur papier pour voir ce que j'ai testé et ce que ça a donné. Comme j'écris vite et en abrégé, j'ai pas fait attention...

 

Ce type de profil peut avoir une tache de *sortie*. Pour la créer, appuyer longuement sur la tache associée et choisir "add exit task". Et c'est dans la tache de sortie que tu effaceras la variable.

Du coup ça donnerait ça :

 

Profil 1 : Etat => Wifi Proche => SSID => Adresse MAC

Tache associée => affecter une variable => %WifiHome, 1

Tache de sortie => effacer variable => %WifiHome

 

Profil 2 : Etat => valeur de variable => %WifiHome est affecté

Tache => Wifi On

 

J'ai rentré ça, mais je n'ai pas encore eu le temps de tester.

Faut que je crapahute au fond du jardin pour perdre la connexion Wi-Fi voir si ça se coupe, mais il a plu toute la matinée, pourtant il fait 30°...

 

Je n'ai pas encore testé tes 2 autres solutions mais je reviendrai éditer mon message quand ce sera fait.

 

Sinon, encore plus synthétique, tu peux te uniquement contenter du profil 1, avec Activer le Wifi dans la tache associée.

Je crois que j'avais déjà testé ça, mais avec une tache de sortie en plus (Wifi Off). Mais je crois que tu m'avais dit que c'était inutile de la mettre...

 

A noter: la case "activer le wifi" dans les paramétrés de l'état "wifi proche", n'est pas nécessaire si as un appareil sous Android 4.3 ou plus. Il est bien plus économique (en batterie) et efficace d'activer "recherche toujours disponible" dans les parametres wifi avancés d'android. Ca consomme quasiment rien et ne rayonne pas (se met juste en écoute).

Merci pour cette astuce que je ne connaissais pas. :)

 

Dernier tip pour ce soir: l'aide en ligne de Tasker est souvent plus précise et complète si on force l'interface en anglais. 

Je m'aide également de tutos FR/EN en ligne, mais j'essaie de ne pas trop m'éparpiller pour ne pas me saturer d'infos et me perdre dans tout ça... Mais je suis d'accord sur le fait de chercher et bidouiller par soi-même. En général, on retient bien mieux que si la solution nous est donnée sans réflexion derrière...

Dans le cas présent, je ne deviendrai jamais un programmeur chevronné, mais si j'arrive déjà à comprendre quelques subtilités de base, ça m'aidera à progresser jusqu'à un niveau suffisant pour mes petits scripts de tous les jours...

 

Share this post


Link to post
Share on other sites

et avec des si (dans tache) avec ton verrouillage ?

car tu vas couper l'activer sans cesse le wifi

apemujev.jpg

Edited by fghj

Share this post


Link to post
Share on other sites

Bonjour,

 

J'ai reussi sans trop de problèmes à créer une tache qui depuis une icone sur le launcher me :

 

-Coupe le WiFi

-Mets le GPS en route,

-Mets la luminosité à fond

-Lance l'app 'CamSam'

-Lance l'app 'ICoyote'

-Lance l'app 'Waze'

 

Ca çà fonctionne bien mais dans le sens inverse c'est plus compliqué...

 

-Ca remet bien le Wiifi

-Ca eteint bien la fonction 'GPS'

-Ca remet bien la luminosité en auto

-Ca ferme bien 'Waze'

Mais...

-Ca ferme pas du tout 'Icoyote'... je dois aller dessus et faire 'menu' puis 'quitter'

-Ca semble ferme 'CamSam' mais en fait il tourne quelque part en tâche de fond... et du coup quand je le relance il me dit 'CamSam s'est arrêté', je dois cliquer sur OK pour pouvoir le relancer.

 

Pourquoi ces deux programmes ne veulent pas 'se tuer' ?

 

Merci de votre aide.

Share this post


Link to post
Share on other sites

Je suppose que tu es rooté (vu que tu fais référence à la désactivation du GPS qui a ce pre-requis) et que tu utilises l'option "use root" ?

 

Même si ça fonctionne (d'ailleurs pour Tasker il existe une manière "douce", bien que pas documentée officiellement, de le tuer), tuer une appli brutalement de façon indirecte n'est jamais très sain: Il n'est pas rare que les applis s'allouent des ressources temporaires (fichier de travail par exemple), qu'elles nettoient lorsqu'on elles se terminent "proprement".

 

Les tuer indirectement peut avoir pour effet de laisser traîner ces traces qui vont s'accumuler au fil du temps.

 

Voila pourquoi certaines mettent en oeuvre  des "contre mesures" pour intercepter les signaux de terminaison dans la mesure du possible (apparemment c'est le cas de ce CamSam).

 

Comme pour Waze, Il existe peut-être pour Icoyote et Camsam, un intent qui permet de les tuer "proprement".

Reste à chercher.

Edited by CoolRaoul

Share this post


Link to post
Share on other sites

Oui j'ai le root.

 

Je comprend ce que tu veux dire, j'a réussi pour le moment à faire un force kill avec un plugin dans tasker. Ca fonctionne, mais comme tu le soulignes, peut être au détriment de facteurs secondaires.

Share this post


Link to post
Share on other sites

tu es sous quel version android ?

Edited by fghj

Share this post


Link to post
Share on other sites

Salut, j'ai eu le même comportement sur mon nexus 5, pourtant en version Android 4.4.

J'ai été obligé d'installer le plugin taskill pour tuer camsam 5 secondes après une sortie dans tasker.

Si il existe une solution plus propre, je suis preneur également.

Share this post


Link to post
Share on other sites

via dexplorer (decompilation d'apk) j'ai trouvé l'intent pour fermé waze

7bb48107ac95d6977647c02b6154d691.jpg

dans le manifest

cette ligne n'existe pas pour camsam

par contre une autre methode root :

si via appui long bouton home et tuer toutes fonctionne.

tu peux essayé selon ton écrans (via plug secure settings), chez le shell tasker n'integre pas input tap.

339575cb8b8f903b7e4df96089ff35d7.jpg

pour connaitre l'emplacement du touché j'ai visualisé une macro d'un script crée avec HiroMacro.apk pour mon 1080x1920

Edited by fghj

Share this post


Link to post
Share on other sites

là je viens de passer sur un Opo avec 4.4.4 on dirait déjà que pour camsam le fait de le faire glisser depuis le gestionnaire de tache sur la gauche ca le ferme proprement ... ou ca le tue salement, en fait j'en sais rien, loool. mais en tout cas ca le faisait pas sur mon S4 en 4.4.2

 

Edit : bon pas contre iCoyote toujours resistant vais etre obligé de passer par un brute kill pour le fermer avec tasker.

Edited by ouachouech

Share this post


Link to post
Share on other sites

je dois avoir un s4 en 4.4.2 particulier ou l'appli à changer.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.






×
×
  • Create New...