Description du plugin
Le plugin jour nuit pour SARAH vous permet de définir un mode jour et un mode nuit en fonction des horaires que vous lui aurait paramétrée. Le changement de mode est automatique, il est réalisé par le cron que vous pourrez configurer.
L’idée est de chainer des plugins pour arriver à des exemples tels que:
- Si nous sommes en mode jour alors certaines prises ne seront pas alimentés,
- Si nous sommes en mode nuit je désactive le carillon de la sonnette,
- ou encore si des que le mode nuit passe j’active l’alarme …
Configuration
- Retourner le portlet,
- cliquer sur la clé,
- Renseigner les horaires:
- Si pour vous le mode jour commence à 7h, veuillez saisir 07:00
- Si pour vous le mode nuit commence à 21h veuillez saisir 21:00
- Il vous est possible de mettre par exemple 19:30, si c’est le cas il vous faut changer le cron
Le cron: (source: wikipedia)
cron est un programme qui permet aux utilisateurs des systèmes Unix d’exécuter automatiquement des scripts, des commandes ou des logiciels à une date et une heure spécifiées à l’avance, ou selon un cycle défini à l’avance.
Le nom est dérivé du grec chronos , signifiant le temps1,2.
Il s’agit d’une fonctionnalité très utile pour des taches routinières d’administration système, mais elle peut très bien être exploitée pour tout autre chose. Par exemple, on peut demander à cron de jouer tel fichier ogg tous les jours à sept heures sauf le samedi et le dimanche afin de se réveiller en musique.
Cron est un service (daemon), ce qui – dans le jargon informatique – désigne un programme qu’on ne lance qu’une seule fois après le démarrage de l’ordinateur et qui reste en tache de fond en attendant qu’on ait besoin de lui. Le service cron (crond) attend ainsi jusqu’au moment spécifié dans le fichier de configuration (que l’on appelle la crontab) puis effectue l’action correspondante et se rendort jusqu’à l’événement suivant.
- Exemple de cron pour node.js
- Toute les 4 heures: 0 0 4 * * *
- Toute les heures: 0 0 * * * *
- Toute les 30 minutes: 0 */30 * * * *
- Toute les 15 minutes: 0 */15 * * * *
Utilisation
Le plugin jour nuit est installé et configuré. Il n’y pas d’utilisation possible par la voix, le seul intérêt pourrait être celui de savoir l’état du mode.
Vous avez depuis la version 1.1
2 modes :
- Un mode automatique
- Un mode manuel
Le mode automatique permet sans une action utilisateur de mettre SARAH en mode jour ou en mode nuit suivant les horaires que vous lui aurez indiqué.
Le mode manuel est activé lorsque vous demandez à SARAH de changer de mode (ex: scénario 1) ou alors de forcer le mode (ex scénario 2).
Retenez que le mode manuel est prioritaire sur le mode automatique vous pouvez par exemple faire ce type de scénario :
Scénario 1
Mise en mode nuit lors de la sieste d’un enfant à 14h, à 17h l’enfant se réveil vous revenez en mode en mode normal.
Scénario 2
Vous recevez des invités ce soir, il est 19h45, vos invités arrivent vers 20h00, vous pouvez forcer SARAH à rester en mode jour car il serait dommage de passer en mode nuit à l’heure prévu alors que les invités sont encore là.
Une fois les invités partis vous demanderez à SARAH de revenir en mode normal.
Si vous ne revenez pas en mode normal, SARAH restera en mode manuel avec le statut que vous aurez définie !
Exemple du scénario 1, si vous oubliez de revenir au mode normal après la sieste de votre enfant SARAH restera en mode nuit le reste de la journée.
Si vous avez défini l’heure de nuit à 22h, SARAH testera à 22h si elle doit passer en mode nuit. Dans ce cas elle ne le procédera pas au changement de statut car elle est déjà en mode nuit et le mode manuel est prioritaire sur le mode automatique.
Ce n’est donc pas un problème dans ce cas de figure, mais le lendemain matin à 08h lors du passage en mode jour SARAH constatera qu’elle est toujours en mode manuel et du coup elle restera en mode nuit.
Pensez donc à revenir en mode normal !
Le plugin jour nuit fournit une variable d’environnement utilise maintenant le context de SARAH ce qui rend le mode jour ou nuit attaquable depuis n’importe quel plugin en faisant:
var jourOuNuit = SARAH.context.jourNuit.status;
la variable jourOuNuit retourne suivant l’heure:
- jour
- nuit
Du coup vous pouvez depuis vos plugins faire des actions en fonction du mode.
Si vous ne vous rappelez plus du mode dans lequel vous êtes, vous pouvez demander à SARAH:
SARAH dans quel mode es tu ?
Changelog
Exemple d’utilisation
à venir