Tasker (Android) une interface intelligente pour la Home Center

Paru sur domotique-info.fr

Tasker est un outil d’automatisation des plus complet pour téléphone Android. Son prix de 2.99 € en rapport avec ces capacités en font un outil de 1er choix pour tout téléphone ou tablette  fonctionnant sous Android. Plus d’information sur le Play Store.

Nous avons conçu pour vous des tâches pour Tasker qui vous permettrons d’interagir avec votre Home Center de manière simple et intuitive.

Pourquoi “intelligente” ? Grace au JSON Tasker va pouvoir “connaître” vos modules, leurs noms et identifiants sans que vous ayez à les paramétrer dans Tasker. Par exemple, vous ajoutez une prise électrique commandée que vous appelez “Prise cuisine” dans votre Home Center. Il vous suffira d’envoyer une commande “Allumer Prise Cuisine” pour que Tasker soit capable d’activer votre prise sans pour autant que vous changiez quoi que ce soit dans Tasker ou même dans votre Home Center.

De plus, nous allons effectuer une vrai confirmation. Cela signifie que lorsque vous allez demander d’allumer un lampe, nous allons interroger la HCx pour s’avoir si la lampe est bien allumée. La confirmation est donc un vrai gage de fonctionnement.

Avec ces tâches vous allez pouvoir :

  • Allumer un périphérique
  • Éteindre un périphérique
  • Interroger l’état d’un périphérique
  • Interroger un module virtuel
  • Interroger une propriété d’un périphérique ou module virtuel
  • Connaître la consommation d’un périphérique (adapté au relevé de consommation)
  • Démarrer un scène
  • Connaître la liste et ID de tout vos périphériques.

 

[button link=”#Prerequis” color=”silver”] Prérequis [/button]

  • 1 téléphone ou tablette Android
  • l’application Tasker installée
  • une connexion sur le même réseau que votre Home Center
  • Si vous souhaité utiliser les fonctionnalités SMS : une carte SIM installée et fonctionnelle

 

[button link=”#Installation” color=”silver”] Installation[/button]

Après avoir installer Tasker sur votre téléphone, il va falloir importer les tâches suivantes :

  • HC_Actionner : Permet d’actionner (allumer/éteindre/ouvrir/…) un module
  • HC_Statut : Permet de connaitre l’état d’un module
  • HC_Test : Tâche de test et de garanti de bon fonctionnement
  • HC_Traiter_demande : A exécuter pour chaque demande
  • HC_Translate : Transcrit vos demandes en langage HC (Allumer->turnOff)

Copier préalablement tout les fichiers joints sur votre téléphone/tablette.

taches_tasker_hc  (archive contenant les fichiers à copier)

Pour importer une tâche, il vous faudra appuyer 2 secondes sur l’onglet “Tâches”, en le relâchant vous verrez l’option “Import” apparaître, appuyer dessus, allez chercher le 1er fichier et recommencer l’opération jusqu’à ce que vous aillez importer les 5 fichiers décrit ci-dessus.

 

Une fois les 5 fichiers importés, appuyez sur la tâche “HC Test” pour l’ouvrir puis appuyer sur le bouton play (play) en bas à gauche afin de lancer cette tâche. Cette tâche va vous demander et stocker l’adresse IP de votre HC au format “:@:” exemple : “admin:monpassword@192.168.1.10:80” une fois valider la tâche va tester l’accès à votre HC. Si tout ce passe bien le message “Bravo” devrait apparaître. Sinon recommencer l’opération pour modifier l’url.
(Attention, si vous souhaiter utiliser tasher/hc à l’extérieur de chez vous, vous devez avoir une adresse accessible)

C’est fait ? Vous avez eu votre “Bravo” ? Bien joué.  Votre téléphone/tablette est donc prêt à interagir avec votre Home Center.

 

[button link=”#commandes ” color=”silver”] Commandes [/button]

Voici donc les commandes disponibles :

Syntaxe : (([action]) [périphérique|scénario])
action = [ée]tat|status|statut|allumer|activer|on|turnOn|
[ée]teindre|d[ée]sactiver|off|tunrOff|ouvrir|monter|
lever|open|fermer|descendre|baisser|close|sc[ée]nario|
sc[èe]ne|consommation|watts|[ée]nergie|valueSensor|
<propriété>

Exemple :

 ”  Vous retourne la liste complète des périphériques de votre HC (peut être très très long)

état prise cuisine”  ou
status prise cuisine”  Vous retourne “Prise Cuisine (Cuisine) est allumé(e)”
pour un module virtuel, le retour sera la liste des labels/sliders et leurs valeurs

allumer prise cuisine” ou
activer prise cuisine” ou
on prise cuisine” ou
turnOn prise cuisine”  Allume le module appeler “Prise Cuisine”

éteindre prise cuisine” ou
désactiver prise cuisine” ou
off prise cuisine” ou
turnOff prise cuisine”  Éteint le module appeler “Prise Cuisine”

ouvrir volet cuisine” ou
monter volet cuisine” ou
lever volet cuisine”  ou
open volet cuisine”  Ouvre le volet appeler “Volet Cuisine”

fermer volet cuisine” ou
descendre volet cuisine” ou
baisser volet cuisine”  ou
close volet cuisine”  Ferme le volet appeler “Volet Cuisine”

scénario simulation présence” ou
scène simulation présence” ou
start simulation présence”  Lance le scénario “Simulation Présence”

Consommation prise cuisine” ou
Energie prise cuisine” ou
valueSensor prise cuisine”  retourne la consommation instantanée de la prise (pour une prise avec compteur)

ui.Label1.value MonModuleVirtuel” retourne la valeur du Label1 d’un module virtuel

En lui est place du nom du périphérique vous pouvez directement mettre son ID “Allumer 82″ cela pourrait s’avérer utile si vous avez plusieurs périphérique portant le même nom.

 

[button link=”#Utilisation” color=”silver”] Utilisation [/button]

Pour interroger votre HC depuis Tasker, il vous suffit de :

  1. Affecter une valeur à la variable %HC_REQUEST (Exemple : “Allumer Télévision”) [Ecran Variable, Affecter une variable]
  2. Exécuter la tâche “HC Traiter Demande” [Ecran Tâche, Effectuer la tâche]
  3. Le résultat est stocké dans la variable %HC_RESULT (Exemple : “Télévision (Salon) est éteint(e)”)

Affecter domotique-info-requete   Exécuter domotique-info-executer   Visualiser domotique-info-retour

 

 

[button link=”#Exemple” color=”silver”] Exemples concrets[/button]

(les profiles mentionnés ci-dessous sont disponible dans le fichier profils_tasker_hc)

 

Interface SMS -> HC

 

Vous disposez d’un vieux téléphone Android et d’une carte SIM ? Vous allez pouvoir interagir avec votre Home Center domotique-info-smsvia SMS. Cela peut se révéler utile si vous n’avez plus de 3G ou si votre ligne Internet
est momentanément interrompue.

 

Préparez Tasker et effectuez l’installation décrite ci-dessus, connectez le à votre réseau et importez le profile : SMS_vers_HC

Voilà c’est prêt, il ne vous reste plus qu’à envoyer une SMS à votre vieux téléphone avec comme contenu votre demande (voir image).

Profil : SMS_vers_HC

Usage personnel : J’ai un vieux android à la maison et il m’arrive de lui envoyé un SMS “Eteindre Prise Internet” puis “Allumer Prise Internet” pour rebooter ma box.

 

 

 

Créer un raccourci sur votre téléphone pour allumer la télévision.domotique-info-raccourcis

 

 

Créer une tâche  en lui donnant un nom :

  1. Variable -> Affecter une variable -> Affecter la valeur “Allumer Télévision” à la variable %HC_REQUEST
  2. Tâche -> Effectuer la tâche -> Executer la tâche : “HC Traiter Demande”
  3. Alerte -> Flash -> Texte %HC_RESULT”
  4. Affecter une icône (en bas à droite de l’écran)

Retourner sur votre lanceur, maintenez le doigt sur l’écran de votre lanceur, sélectionnez “Raccourcis”, Tasker puis allez cherche la tâche que vous venez de créer.

Profil : <pas de profil fourni>

 

Orientation et Geste
domotique-info-flip

Exécuter le scénario “Tout Eteindre” en posant le téléphone face contre le bas  :

Importer le profil “Retourner pour Exécuter”

Voilà, avant d’aller vous coucher, retourner votre téléphone et le scénario sera exécuter automatiquement dans 30 secondes, le temps de vous rendre dans la chambre à coucher.

Attention, la première fois que vous retourner votre téléphone, Tasker va vous demander de préciser la commande que vous souhaiter lancé par exemple : “Scénario Tout Eteindre”. Cette commande sera stockée pour la prochaine fois.

Profil : Retourner pour Exécuter

Usage personnel : Lorsque je pose mon téléphone face en bas et que je suis à la maison et connecté au chargeur (en gros quand je vais me coucher), j’exécute automatiquement un scénario qui va contrôler que tout soit bien éteint

 

Secouez (fortement) votre téléphone pour exécuter une commande  :

Importer le profil “Secouez pour Exécuter” et le profil “3G Connecté”. 
domotique-info-secouez

Là, c’est du lourd. Secouez votre téléphone, le système vous demande de saisir la commande que vous voulez envoyé (propose la dernière commande). Si vous êtes en 3G, un code de confirmation vous est demandé (123), la demande est envoyée par http et le résultat s’affichera dans une popup. Si en revanche, vous n’avez pas de 3G, le système vous proposera d’envoyer la demande par SMS, si vous accepter, il vous demandera le numéro de téléphone où envoyé le message (ce dernier sera stocker pour la prochaine fois) puis envoi la demande par SMS. Si tout ce passe bien, vous recevrez la confirmation par un SMS en retour.

Profil : Secouez pour Exécuter + 3G Connecté

Usage personnel : Dans la voiture, au feu en arrivant près de chez moi. Ce profil me permet d’ouvrir la porte de mon garage si j’en ai besoin. Vu que je suis en zone frontalière il m’arrive fréquemment de ne pas avoir de réseau 3G donc l’envoi d’un SMS est tout à fait approprié si le réseau n’est pas suffisant.

 

 

Libre à vous de créer vos propres scénarios, éventuellement en vous aidant des références suivantes 🙂

 

[button link=”#Technique” color=”silver”] Données Techniques[/button]

%HC_ID : l’identifiant du dernier périphérique commandé
%HC_NAME : Nom de la dernière commande (turnOff, start, …)
%HC_PROPERTY : Nom de la dernières propriété contrôlée (valueSensor)
%HC_REQUEST : Dernière requète envoyée
%HC_RESULT : Dernier résultat
%HC_ROOMS : Liste des pièces déclarés dans la HC
%HC_URL : Url @:

%HC_SHAKE et %HC_FLIP sont lié au profils “Retourner” et “Secouer” et stocke la dernière commande demandée
%HC_TEL stocke le numéro de téléphone utiliser la dernière fois pendant l’exécution du profil “Secouer”

 

domotique-info-appels

 

bannersonos

10 thoughts on “Tasker (Android) une interface intelligente pour la Home Center”

  1. Je viens de tester tes taches et c’est juste NICKEL !!!
    Bravo.
    Je me demande juste quelle est commande pour connaître la température d’une sonde ?
    J’ai essayé ValueSensor 18 mais sans succès.

    Nico33

      1. T’es trop fort ! Bon j’ai pas encore testé parce que je suis moi aussi en vacances 😉 mais je suis sûr que ça marche…
        C’est quoi la commande à passer ? Value thermomètre salon ?

  2. Salut Steven,
    Je suis en train de faire le nécessaire pour intégrer la reco vocale à tes tâches permettant de piloter la hc2.
    Je me pose juste une question (mais qui a son importance…): je suppose que tout ça n’est plus fonctionnel avec la version bêta 4 ? (du fait de la nouvelle api).

    1. Dur à dire. Normalement lorsque l’on effectue des modifications sur un système ouvert, on essaie au maximum de garder une retro-compatibilité. Apparemment, en Pologne, cette règle n’existe pas. Il est donc fort possible que cela ne fonctionne plus mais il n’y a rien de certain. La seule possibilité serait de tester mais je peux plus pour l’instant.

      Dans le cas ou cela ne fonctionnerait plus, il faudrait juste remplacé la tâche HC Actionner. Il faudrait que je puisse jeter un oeil mais cela ne sera pas réalisable avant un bon mois 😦

      A première vu, c’est pas si compliqué que cela 🙂

    1. Il faudrait refaire une petite partie du code, ce qui n’est pas dans mon planning. Je ne l’utilise pas personnellement. Je ne compte donc pas investir de temps là dessus.
      Ce qui a changé n’est pas très compliqué, ils ont remplacé “valueSensor” par “power” et l’état de retour “value” n’est plus forcément “0” ou plus mais peut être “true” ou “false”, il faut donc ajouter des contrôles supplémentaires.

Laisser un commentaire

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Changer )

Twitter picture

You are commenting using your Twitter account. Log Out / Changer )

Facebook photo

You are commenting using your Facebook account. Log Out / Changer )

Google+ photo

You are commenting using your Google+ account. Log Out / Changer )

Connecting to %s