Proj-2014-2015-OpenHAB-ExtendedGUI

= Project presentation=

Context
Aujourd'hui la domotique a du mal à s'implanter, du fait de sa complexité et sa faible flexibilité. Ce reel problème nous permet de réaliser un projet sur la création d’une application étant destinée à simplifier la domotique, afin de la rendre utilisable par tout le monde, nous entendons par là, mère/père de famille ou personnes âgées.

Description
Nous devrons créer, une interface simple adaptée à des personnes d’un certain âge. L’utilisateur devra décrire sa maison sous forme hiérarchique (voir ci-dessous). Le système détectera les composants de domotique avec l’aide du protocole UPnP, configurera le composant dans le réseau. L’utilisateur devra alors ajouter dans la pièce le matériel détecté. La plupart du temps le composant entre dans une certaine catégorie, de se fait nous lui proposerons différentes action disponible (type IFTTT) pour un composant.

NomMaison1 Etage1 NomPiece1 NomComposant1 NomComposant2 NomPiece2 NomComposant1 NomComposant2 Etage2 NomPiece1 NomComposant1 NomComposant2 NomPiece2 NomComposant1 NomComposant2

Afin de mieux comprendre ce que le projet doit faire nous vous laissons suivre le schéma ci dessous apportant une description illustré du projet :



Mots clés : détection, domotique, interface, simplicité, flexibilité.

Product functions

 * Interface utilisateur (HTML5 pour plus de flexibilité).
 * Détection automatique de nouveaux composants.
 * Possibilité d'ajouter un composant dans une catégorie (Pièce, ...)
 * Paramétrer un composant ajouté(ex. Marche/Arrêt).

Product evolution
Au niveau des évolutions pouvant être proposer, nous pouvons imaginer que l'utilisateur peut lui meme créer ses règles (en utilisant le style IFTTT). Une autre évolution serai de proposer plus de fonctionnalité à l'utilisateur.

= Project team =

Tuteurs : Didier Donsez, Amr Alzouhri-Alyafi

OpenHAB-ExtendedGUI
 * Sébastien TOUSSAINT
 * Thibault SAUSSAC

=Links=
 * UML Diagrams
 * Requirements

=Project schedule=

Le projet a commencé depuis le 13 Janvier 2015.

Week 1 (January, 13rd - January, 18th)

 * Réflexion sur la compréhension du sujet. L'énoncé du projet étant vague, nous avons eu besoin notamment de comprendre le fonctionnement des technos UPnP, IFTTT...

Week 2 (January, 19th - Janurary, 25th)

 * Presentation de notre projet
 * Mise en contact avec le personnel de la FABLAB
 * Prise en main du matériel et recherche sur les technologies envisageables pour la réalisation du projet
 * Prise en main d'OpenHAB
 * Prise en main du protocole UPnP
 * Réalisation de la fiche SRS (exigences)

Week 3 (January, 26th - February, 1st)

 * Réalisation des premiers diagrammes UML (cas d'utilisation, diagramme des classes et diagrammes de séquence)
 * Récupération de la caméra infrarouge utilisation la techno UPnP pour la détection auto des composant.
 * Création d'un serveur UPnP
 * Après réunion sur l'avancement du projet quelques liens utiles pour une implémentation d'un bundle OSGi qui implémente la spécification "UPnP Base Driver".

http://felix.apache.org/documentation/subprojects/apache-felix-upnp.html http://mir2.ovh.net/ftp.apache.org/dist//felix/org.apache.felix.upnp.basedriver-0.8.0.jar

Dépôt général : Digital Security Camera V 1.0http://felix.apache.org/downloads.cgi

org.apache.felix.upnp.basedriver-0.8.0.jar à mettre dans les addons

AP: voir Digital Security Camera V 1.0 http://upnp.org/specs/ha/digitalsecuritycamera/

Week 4 (February, 2nd - February, 8th)

 * Début de l'intégration de UPnP dans OpenHAB (Problème avec cette intégration... Réglage en cours...)
 * Premier début dans le monde de Scrum, utilisation du site waffle.io permettant de mettre en place Scrum pour notre projet.

Week 5 (February, 9th - February, 15th)

 * Récupération de la caméra DCS-5222l.
 * Installation de la caméra sur réseau LAN
 * Première configuration afin de voir les premieres video de la camera.
 * TOUT Fonctionne


 * Documentation sur OSGi

Week 6 (February, 16th - February, 22nd)

 * Interruption pédagogique
 * Documentation sur le binding sur OpenHab
 * Documentation OSGi
 * Création de fichier .siteMaps à partir d'un formulaire.

Week 7 (February, 23rd - March, 1st)

 * Installation de Maven sur nos machines
 * Documentation sur OSGi et UPnP,
 * Analyse des couches d'OpenHAB

Week 8 (March, 2nd - March, 8th)

 * Intégration de l'interface graphique permettant d'administrer OpenHAB
 * Cette interface et sa documentation sont à retrouver sur : HABmin

*exemple de code UPnP de Didier Donsez *Documentation félix sur le Runtime *Les SCR sur openHAB *exemple d'action xml sur openHAB
 * Plusieurs aide au niveau de UPnP afin de mieux comprendre le binding et le bundle à créer

Week 9 (March, 9th - March, 15th)

 * Tentative d'implémentation de binding à partir des fichiers de D.Donsez.
 * Package binding généré.
 * Intégration dans openHab OK
 * Mais problèmes à cause d'un manque de librairie dans OPENHAB ==> Echec
 * Recherche de solution aux problèmes en vain.......

Week 10 (March, 16th - March, 22nd)
Pom.xml Manifest Cours de D.Donsez sur Maven
 * Didier Donsez nous a expliqué en détail comment fonctionne les fichiers dans son code.
 * Nous avons chercher ensuite de notre coté plus d'informations dessus :


 * Nous n'avons travaillé sur les commandes pour le réalisé après les explications.
 * Mais ne fonctionne pas, ni sur Félix ni sur Openhab

Week 11 (March, 23th - March, 29th)

 * En faite --> cette erreur est normal. Didier Donsez a essayé lui aussi de faire cette integration. Et à constater lui aussi que cela n'était pas possible....
 * Implémentation avec l'aide de Didier de UpnP commande. Encore une fois, ce fut un échec.

Week 12 (March, 30th - April, 5nd)

 * Apres les différents échec avec la partie UPnP
 * Création de la maison
 * Modification de la Maison
 * Interaction avec la camera DSC-5222L à partir d'openHAB
 * Problèmes rencontrés : Impossible de lire un flux video avec OpenHAB pour résoudre cela après analyse, Pour voir la video et intégrer avec la camera nous fournissons l'interface Dlink au client.
 * Mise en place d'une règle sur la camera pour l'alerte.

Week 13 (April, 6th - April, 8nd)

 * Rédaction du rapport de projet
 * Powerpoint pour la présentation
 * Préparation de la soutenance
 * Fini de la rédaction de notre wiki

= Références =
 * Site et cours de Didier Donsez
 * OpenHAB
 * UPnP
 * Eclipse
 * Apache Félix
 * Tutorial sur OSGi par D.DONSEZ