Ce topic a été ouvert il y a quelques semaines dans le but de trouver une solution qui me permettrait à moi et ma famille d'avoir un rapport simple avec mon installation domotique. Cette installation étant pour le moment composée d'un raspberry pi, d'un contrôleur domotique RFXtrx433, et du logiciel domotique Domoticz.
Ces choix ayant été fait pour me permettre de me lancer dans la domotisation de ma maison à moindre coût. J'en suis globalement satisfait. Domoticz étant plutôt simple à administrer. Mais souhaitant mettre en place un système de notification, j'ai rapidement vu que ce programme ne serait pas adapté au reste de la famille. Trop de menus, langage un peu technique, pas de système simple de notification... Il est par exemple impossible d'afficher simplement et visuellement le passage du facteur ou l'heure à laquelle on a sonné à la porte. J'ai mis en place "just for fun" des notification via twitter, mais l'intérêt est limité vu que je suis le seul à l'utiliser à la maison.
Ma première question était de savoir sur quel support cette interface devrait s'afficher. Liseuse, tablette, arduino + écran... Ayant profité d'une promo et d'un ODR sur une tablette android 7", je suis parti là dessus. Ceci m'ayant simplifier le choix technique de l'interface. Domoticz ayant une API fonctionnant avec des requêtes http, une interface web était le plus simple à mettre en place.
J'ai donc lancer l'idée de cette interface web en espérant trouver un peu d'aide au sein de notre petite communauté. Vu mon faible niveau en progr, c'était indispensable que l'on me guide. Et puis Seboss666 s'est pris au jeux et m'a rapidement proposé une jolie quantité de code. Après quelques jours, Seikwa l'a aussi rejoint et c'est à peu prés à ce moment là que j'ai arrêté de réellement participer au code. Ces 2 là allant bien trop vite pour moi.
Fonctions support:
Le projet avance à grands pas, et pour simplifier les choses, nous avons décidé d'une part d'avoir un salon xmpp dédié: domohouse@conf.tom23.com
Seboss666 nous faisant profiter de son github : https://github.com/seboss666/domohouse/
Beaucoup de choses sont encore à venir. Je ferai le point sur l'avancement et posterai des screens à la suite de ce post. Sinon il vous suffit de lire les quelques pages de cette discussion pour savoir un peu quelle direction le projet prend.
Fonctionnalités actuelles:
-Page d'accueil affichant les devices sélectionnés (switchs et valeurs mesurées)
-Possibilité de basculer l'état des switchs au doigt ou à la souris sur la page d'accueil.
-Configuration de l'adresse du serveur domoticz sur une page dédiée.
-Configuration via drag and drop des devices sur une page dédiée (interface tactile supportée)
-Page de configuration météo.
-Page météo dédiée.
Screenshots:
La page principale avec les informations:

La page météo:

La page de configuration permettant de joindre Domoticz:

La page de configuration de la page principale:

La page permettant d'entrer le code yahoo weather de la ville dont on souhaite afficher la méméto:

En complément, un des développeurs à fait une petite vidéo de démo:
https://www.youtube.com/watch?v=Gv3Qyl-3klM
1er post original:
Je vous refais un historique rapide :
Je me suis mis à la domotique il y a quelques semaines dans le contexte que je décris dans cet article de mon blog : http://tom23.com/?p=140
Ca marche franchement bien. Ma maison tweete même toute seule depuis ce weekend.
Voilà pourquoi j'ouvre ce topic :
Je ne vois pas la domotique seulement comme un moyen d'automatiser divers éléments de ma maison. Je veux aussi qu'elle se serve des informations qu'elle recueille dans son environnement pour notifier la famille de ce qui se passe dans notre habitation. J'ai déjà commencer à le mettre en place sur un compte twitter, mais c'est plus pour jouer et avoir un accès rapide et efficace à certains évènements en tant qu'utilisateur assidu de ce "réseau social". Twitter étant ce qu'il est, je ne peux y faire toutes les notifications. D'une part parce qu'il y a bien des choses que je compte garder privée, d'autre par parce que je ne veux pas dépendre d'un service que je ne gère pas totalement, et enfin, parce que ce n'est pas pratique pour le reste de la famille.
Je cherche donc un moyen d'avoir ces notifications sans avoir à trainer toute l'interface de domoticz qui est trop lourde pour les enfants et pas assez WAF.
J'ai plusieurs hypothèses de travail en tête qui me viennent de quelques systèmes vus sur le net.
D'abord coté matériel, j'ai un petit budget. Inférieur à 100€. Les possibilités tournent autour de tablettes, de liseuses, ou d'arduino avec afficheur ou écran.
Les tablettes c'est cher mais ça présente plein d'avantages comme le tactile, des applis ou des navigateurs web robustes. Les liseuses ont des capacités plus limités mais sont bien plus accessibles financièrement. L'arduino, c'est financièrement accessible, ça semble très sympa à bricoler, mais pas de tactile et les afficheurs sont assez limités.
Ensuite, coté software, tout à l'aire possible. Domoticz sait utiliser les scripts lua comme un grand et le lua permet de lancer des actions exécutées directement par l'OS (lancement de script, ping...).
Je ne pratique quasiment pas la programmation. Je commence juste à m'y mettre et je ne connais très mal les possibilités de chaque langage.
Donc si certains d'entre vous ont des idées je suis preneur. Je me dis qu'une simple page web recevant ces notifications, affichant quelques infos et pouvant commander des fonctions basiques de domoticz pourrait être l'idéal.
Voilà quelques pages du wiki de domoticz que je ne comprends pas encore bien mais qui pourraient vous inspirer :
http://www.domoticz.com/wiki/Domoticz_API/JSON_URL%27s
http://www.domoticz.com/wiki/Events dont :Using 'OpenURL' it is possible to trigger a url/api based on an event. The url will not retrieve/parse any data, use it for one way communication.
Some valid examples:
commandArray['Switch']='On'
commandArray['Scene:Livingroom']='On'
commandArray['Group:Kitchen']='Inactive'
commandArray['Keyfob']='Group On'
commandArray['DimmableDevice']='Set Level 50'
commandArray['SendNotification']='subject#body#0'
commandArray['SendEmail']='subject#body#your@email.com'
commandArray['OpenURL']='www.yourdomain.com/api/movecamtopreset.cgi'
commandArray['Blinds']='On RANDOM 30'
commandArray['Porch Light']='On FOR 2'
In device scripts, *always* do a check on the state of the changed device first. The device scripts are triggered fairly often, especially when you have a lot of thermometers and other measurement devices. If you just set the commandArray without any conditions, the script always just execute those commands at every device change, and those changes will trigger the scripts again and again resulting in a loop.
A vos idées