La domotique c’est génial selon ce qu’on en fait. Je vous avais présenté dans un précédent article Les Modes dans la maison intelligente. On avait pu voir que cela pouvait être pratique pour gérer les exceptions. Vous savez ces fameuses choses que la domotique va faire, car on l’a programmée pour, mais que forcément des fois on aurait préféré qu’elle ne fasse pas. C’est là qu’intervient une solution autre que les modes, qui est la fonction ask de Jeedom.la fonction ask de jeedom

Mais c’est quoi la fonction ask de Jeedom ?

Alors c’est simple. Avez vous déjà rêver de voir votre Maison vous poser des questions et agir en fonction de vos réponses ?la fonction ask de jeedom

Si la réponse est oui, sachez que la fonction ask de Jeedom permet exactement de réaliser cette prouesse.

Je vais reprendre un des 3 cas concrets que j’avais utilisé dans l’article Les Modes dans la maison intelligente.

  • Le barbecue

    Il fait chaud, en ce 15 juillet. Les saucisses crépitent, les grillons chantent, les enfants se chamaillent dans la piscine. Tout le monde observe ce magnifique coucher de soleil en sirotant un cocktail. Les derniers rayons disparaissent derrière la colline. Roger demande à Norbert de préparer la nouvelle tournée d’entrecôtes pendant que lui s’occupera d’aller chercher les glaçons. Avant d’aller chercher le tout dans la cuisine ils profitent d’écouter les dernières minutes du hit de l’été qui est diffusé sur l’enceinte bluetooth de Gérard. QUAND TOUT A COUP :

CLAC CLAC CLAC CLAC

Mais qu’est ce donc, se demande tout le monde en se regardant dans le blanc des yeux. Personne ne comprend. Un hurlement se fait entendre. C’est Norbert qui est parti chercher les entrecôtes mais :

la fonction ask de jeedom

LES VOLETS SONT FERMES

Mais que s’est-il passé ?

Ben c’est simple. Le propriétaire avait mis en place un scénario fichtrement pratique de fermeture automatique des volets au coucher du soleil. 90% du temps celui-ci est merveilleux mais il y a 10% d’exceptions où on aimerait que la maison ne fasse pas cette fermeture automatique ou tout du moins nous demande confirmation. Je vous ai déjà donné des astuces pour gérer les exceptions de ce type dans  l’article Les Modes dans la maison intelligente. Je vais donc vous en donner une de plus aujourd’hui. Et aujourd’hui c’est la plus classe.

Que ce serait il passé si la maison avait demandé si OUI ou NON elle devait fermer les volets plutôt que de le faire sans sommation ?

la fonction ask de jeedom

Mise en place de la fonction ask de jeedom

la fonction ask de jeedom

La fonction ask de Jeedom est une fonction de scénario. C’est à dire qu’elle se retrouve dans les scénarios en tant qu’action en cliquant sur le premier bouton.la fonction ask de jeedom

On retrouve une liste très grande de fonctions. Certaines sont disponibles en V3, ne vous focalisez donc pas sur cette liste si vous constatez des différences avec la votre. Mais vous inquiétez pas sur CE blog, je vous expliquerai au fur et à mesure toutes les subtilités de la domotique afin que vous puissiez en faire le meilleur usage. Et surtout en procédant par étape j’espère parvenir à vous faire comprendre les choses et vous permettre d’être à votre tour créatif et ne pas simplement faire du copier coller. Les retours que j’ai de mes précédents “Tutos / Astuces” vont pour la plupart dans ce sens et cela me ravi.

Donc revenons en à notre fonction ask de Jeedom

Elle se trouve donc dans la liste déroulante sous le nom “Faire une demande”.

la fonction ask de jeedom

Une fois rajoutée, la fonction apparaîtra et vous verrez de nombreux champs personnalisables :

  • Question : bon là c’est clair, il s’agit de la question que vous voulez que la maison vous pose. Exemple :  Il est l’heure de fermer les volets. Dois je procéder à la fermeture ?
  • Réponse : ici, il s’agit des réponses possibles. Pour le premier exemple on va faire simple :  OUI;NON
  • Variable : la réponse que vous enverrez sera stockée dans une variable afin que le système puisse facilement la retrouver, il s’agit donc de lui donner un nom. Exemple : reponse_volet
  • Délai (sec) : ici c’est simple c’est le délai au bout duquel le système n’attendra plus de réponse mais exécutera une action par défaut que vous aurez décidé. Exemple : 60
  • Commandes : ici il faudra choisir la commande qui servira à l’envoi de la demande. Cela peut être une commande SMS, SLACK, TELEGRAM et SARAH. Dans mon exemple ça sera Telegram et vous comprendrez pourquoi plus tard.

la fonction ask de jeedom

Voilà ce que ça donne une fois rempli.la fonction ask de jeedom

Côté Telegram on reçoit bien notre question avec les deux possibilités de réponse. Ce qui est intéressant avec Telegram c’est justement l’apparition de boutons cliquables en plus de la possibilité de saisir manuellement sa réponse. Ce qui est fichtrement pratique et agréable.

la fonction ask de jeedom

Mais là il se passe quoi si on dit OUI ou NON ?

Alors là si on dit OUI ou NON, il ne se passera rien. Effectivement nous ne gérons pas encore les réponses dans notre scénario.

Gérer les réponses de la fonction ask de Jeedom

Pour gérer les réponses, il va falloir compléter un petit peu le scénario. Comme je vous l’ai dis j’aime bien procéder par étapes pour que vous cerniez au mieux toutes les subtilités.

Donc comme je le disais, il faut donc gérer les réponses. C’est là qu’intervient la fameuse Variable. En effet c’est dans celle-ci que sera stockée l’éventuelle réponse. Vous voulez une preuve ? Alors voici un scénario permettant de le prouver :

la fonction ask de jeedom

Voilà j’ai simplement rajouté une action qui va me répondre la valeur de la variable.

la fonction ask de jeedom

On constate donc que systématiquement (sauf la première fois où je n’ai pas su écrire variable) que la valeur de la variable contient bien la réponse faite. Et cela même si je réponds quelque chose qui n’était pas une des propositions de réponses. Donc maintenant que l’on sait cela on peut donc gérer nos réponses de manières conditionnelle.

la fonction ask de jeedom

Toujours dans un but d’avancer par étape. Je complète le scénario de telle sorte qu’il me réponde selon la réponse que j’aurais faite. Mais contrairement au scénario précédent, je réponds de manière figée selon la réponse.

la fonction ask de jeedom

On voit donc bien que selon la réponse on est bien passé dans les différentes conditions SI du scénario.

Le “Tu n’as pas répondu” vient du délai. On constate effectivement que la réponse est arrivée au bout d’une minute sans réponse de ma part. J’aurais eu la même réponse si j’avais répondu autres choses que OUI ou NON.

Rentrer dans le concret avec la fonction ask de Jeedom

Maintenant que nous avons vu le principe de fonctionnement de la fonction ask, l’usage de la variable pour traiter les réponses, nous allons pouvoir rentrer dans le vif du sujet en exécutant réellement les actions.

la fonction ask de jeedom

Dans ce scénario je réponds à la problématique énoncée au début de l’article :

  • Si je réponds oui les volets se fermeront et la maison me confirmera qu’elle le fait
  • Dans le cas où je réponds non, la maison me dira qu’elle ne fait rien
  • Si je ne réponds pas la domotique me confirmera que je n’ai pas répondu et ne fera rien.

J’aurai très bien pu faire en sorte que par défaut sans réponse elle ferme les volets. C’est au choix de chacun.

Aller plus loin que le OUI et le NON

Alors bien évidemment le cas de réponse le plus courant sera OUI ou NON. Mais on peut aller plus loin en gérant plus de deux réponses.

la fonction ask de jeedom

Dans ce scénario je prévois 4 cas :

  • Oui
  • Non
  • Nuit
  • La non réponse

L’option “Nuit” me permet de dire à la domotique de fermer les volets mais que la partie Nuit de la maison. Très pratique dans le cas d’une fiesta imprévue un soir dans la pièce de vie.

la fonction ask de jeedom

Aller encore plus loin avec la fonction ask de Jeedom

Donc jusque là on a vu pratiquement tous les usages. Ce principe est applicable dans n’importe quel scénario. On peut éventuellement mettre la fonction ask au milieu d’un scénario pour que la maison pose la question que dans certaines conditions. Mais j’aimerai vous montrer une dernière petite chose. La possibilité de dire “Non je veux pas mais redemande moi plus tard” afin de ne pas oublier.

Rhaaa ! Je devais faire quelque-chose mais je sais plus quoi !

la fonction ask de jeedom

Alors comme vous pouvez le voir on est très proche du scénario précédent. Dans le cas de la réponse “Redemande Moi” c’est simple :

  • Je réponds “D’accord je redemande dans 30 minutes” : très important de toujours re répondre, cela permet de s’assurer de la prise en compte de la demande
  • Je planifie dans 30 minutes une action scénario (en tapant scenario). Et je choisis ainsi de ré appeler le scénario en cours.

la fonction ask de jeedom

Comme vous pouvez le voir, j’ai 3 boutons OUI/NON/REDEMANDE. Et en appuyant sur redemande j’ai bien eu ma confirmation à 16h47 et la question m’a été reposée 1 minute après (oui pour le test j’ai mis une minute).

Bien évidemment autant de fois que l’on cliquera sur Redemande, la domotique réitérera sa demande 30 minutes après.

la fonction ask de jeedom

Conclusion

Pour conclure, j’espère que vous avez pu vous rendre compte au travers de cet article de la puissance de la fonction ask de Jeedom. J’ai pris un exemple fil conducteur qui est les volets mais bien sûr cela peut être applicable à n’importe quoi :

  • La température a dépassé 25° dois je activer la climatisation ?
  • Votre fils est rentré de l’école a-t-il le droit de regarder la télévision ou doit-il faire ses devoirs ?
  • Avez vous sorti les poubelles ?
  • Plus personne est à la maison voulez vous que j’active le mode absent ?
  • etc …

En procédant par étapes, j’espère vous avoir montré suffisamment la mécanique pour que vous puissiez vous même créer facilement vos demandes selon votre besoin.



Partager sur :

Infos de l'auteur

Je m’appelle Ludovic Sarakha j’ai 32 ans et je suis habitant de Clermont-Ferrand. Concernant les études il faut savoir que bien que j’ai travaillé dans l’informatique (SSII internationale) et maintenant dans la domotique, j’ai un doctorat de Chimie des matériaux. Je suis un autodidacte passioné d'informatique, de domotique et de tout ce qui tourne autour des objets connectés

68 commentaires

  1. Mathieu CHURLET le

    Encore un super tuto. Merci beaucoup pour ton boulot, tes explications claires, et mises à la portée de tout le monde.

    • Bonjour,

      Merci encore Sarakha, super tuto ! Vraiment complet ce Jeedom.

      Sinon pour répondre à ikari34, le déclencheur ça doit être le scénario sur lequel on veut être interrogé ( dans ce cas c’est celui qui ferme les volets au couché du soleil).

      Dis moi si j’ai bon Sarakha !

      Salut

    • il n’y en a pas en fait ce scénario est en fait appeler par le scénario volets. ou tout simplement tu peux inclure la fonction ask au sein de ton scénario.

      Je n’ai pas mis de focus sur le declencheur car là c’est relatif au besoin.

  2. Pingback: Notre Veille : La fonction ask de Jeedom - Quand la domotique vous demande confirmation - Blog.nord-domotique.com

  3. Merciiiiii Ludo, génial ce tuto.
    Pour la gestion de mon portail c’est la fonction parfaite 🙂
    Vraiment j’adore ton blog pour cette facon de présenter les choses.
    Hate de voir les prochains tutos.
    Tchao Doc.

  4. J’ai encore appris quelque chose aujourd’hui!
    Pour l’exemple du volet, j’ai mis un contact et si la porte fenêtre est ouverte, ne pas fermer le volet et m’envoyer un message de rappel. Mais cette fonction ask, je la garde précieusement en favori

  5. par contre moi j’ai une colle.
    comment utiliser la fonction ASK avec plusieurs utilisateurs…
    vu que cette fonction est bloquante, comment appeler ou lancer ce scénario vers 2 utilisateur de telegram…
    merci pour toutes les infos de ton blog, c’es top

  6. J’utilise ce genre d’ask mais je met toujours la variable à zéro en début scénario pour éviter les erreurs de commande en cas de non réponse car il garde la dernière réponse en mémoire

  7. Jean-Olivier GONIN le

    Super tuto, bien détaillé étape par étape. Merci pour cette nouvelle corde !
    La fonction Ask marche-t-elle avec Freesms ? Je n’arrive pas à enregistrer ma réponse dans la variable.

  8. Bonjour,

    encore un super tuto Sarakha, merci!
    Jeedom est vraiment complet !!!

    Pour rebondir sur la question de IKARI34, est ce que c’est le scénario de fermeture du volet qui provoque celui du “ask”?
    J’ai essayé sur mon Jeedom, mais je n’arrive pas à mettre un scénario comme objet pour provoquer le lancement d’un autre scénario.

    As-tu des indices pour nous aiguiller?

    Merci d’avance.

  9. Super Tuto ! Merci Ludo..!! Mais au lieu de télégram j’utilise plugin sms Free mais ca ne marche pas … Apparemment pour l’avoir fait en état comme indiquer, je ne récupère pas la variable donc ça ne fonctionne pas… bizarre…

  10. Super tuto comme d’hab !!! J’avais des idées en tête mais un manque de connaissances pour appliquer maintenant je vais pouvoir avancer (enfin dès que j’aurai un peu de temps devant moi…)
    Cela dit je bloque toujours sur l’installation de de Telegram car il demande le port 443 mais ce dernier est utilisé par mon serveur web sur mon NAS…
    => Toi qui utilise Telegram sur Jeedom et Octopi tu saurais m’aiguiller sur la configuration stp ?

  11. Bonjour,

    PushBullet non compatible ?
    Sinon, j’eesaierai de refaire fonctionner Telegram car ça n’avait pas fonctionner la dernière fois.

    • Je m’auto-réponds.
      Ça a fonctionné. J’ai bien la question. Mais la réponse ne se stocke pas dans la variable.
      Je referai une tentative avec Telegram. La première ne s’était pas bien déroulée, d’où le retour sur PushBullet.

  12. Merci . Tuto au top surtout que je venais à peine de mettre en place Telegram.
    Si quelqu’un sait faire tourner telegram avec Siri je prend aussi.
    Encore merci Doc.

  13. Didier Rombauts le

    Cette fonction m’intéresse mais je ne souhaite pas utiliser tasker ou tout autre application passant par l’extérieur. Jarvis@Home permet d’activer la reconnaissance par une requête http. Y aurait-il un moyen d’utiliser cette fonction pour répondre? Et surtout sans attendre une nouvelle version de Jeedom? Je n’ai pas l’intention de passer à la v3 avant plusieurs mois car mon installation tourne très bien. Merci pour ta réponse

  14. Didier Rombauts le

    Mea culpa, la fonction dont je parlais n’est pas le démarrage de la reconnaissance sans le mot-clé mais l’activation ou non… Donc, impossible de faire ce que je voulais 🙁
    Pas grave, ce sera pour plus tard 🙂

  15. Salut Sarakha,

    Superbe Tuto pour Jeedom comme d’hab.

    Seulement, il y a une petite erreur dans les conditions et une petite chose a prendre en compte en réponse manuel( sans les boutons de telegram).

    La condition quand tu ne répond pas est aussi utilisée quand on donne une réponse qui n’est pas gérée dans les “if”.
    Et pour les réponses manuel, le “if” est sensible a la casse donc si on met un ‘OUI’ dans le test du scénario et que l’on répond “Oui” (comme l’écrit par défaut le clavier des smartphone) ça va répondre directement “Tu n’as pas répondu”.

    Encore Bravo pour tout ton travail.
    (Je te suis depuis ton fork de SB) 😉

    Bon WeekEnd.

  16. Et dans l’autre sens c’est possible ? Sur télégram demander “quel température fait il dans le salon ?” et le bot répond ?

  17. Salut j’ai vu que la question avait été posé mais pas de réponse donc peut-on faire un ask à plusieurs utilisateur en même temps ?

  18. Pingback: 6 mois de relance – Voici les chiffres du blog - Merci - La Domotique de Sarakha63

  19. sebastien thouvignon le

    Salut, je suis désolé de poster ici mais je ne trouve pas de sujet approprié :/
    Tu penses effectué une mise a jours prochainement de ton plugin LG?
    j’aimerai pouvoir le mettre ne place pour ma télé, elle date de l’année dernière mais je n’ai aucune clé qui s’affiche a l’ecran quand j’appuis sur un bouton 🙁

  20. Bonsoir je n’arrive pas a faire fonctionner ton tuto.

    Il bloque et ne vois pas la réponse que je lui envoi “Oui;Non” il y a une subtilité que j’ai loupé….

    Est il possible d’envoyer un screen pour faire valider?

  21. j’ai trouvé d’ou vient mon problème mais je ne sais pas le résoudre….

    Je travail avec slack mais dans un channel et si je change le scénario de channel pour le mettre dans le channel principale cela fonctionne. je voudrais le laisser dans le channel “””secondaire””

    @Sarakha63 tu as une idée de pourquoi j’ai cela?

  22. Goussikpevi jaurès le

    Bonsoir, je suis encore étudiant en licence d’informatique Industrielle et je désire monter un projet de domotique j’aimerai que vous me proposiez un thème à étudier. A côté de cela, je suis à la recherche d’un logiciel de simulation domotique. Merci d’avance pour l’aide.

  23. Pour ta deuxième interrogation, jeedom peut répondre à ton besoin de simulation domotique. Avec les plugins scripts et virtuels tu n’as pas besoin d’être doté de modules démotique pour simuler une installation.

  24. Pingback: La maison qui pose des questions – Possible avec ask

Laisser un commentaire