[HowTo] Statistiques de ses produits & sa localisation IOS

Donnez de l'intelligence à votre domicile grâce à la toute dernière box Zwave de Connected Object

[HowTo] Statistiques de ses produits & sa localisation IOS

Messagede Augustin69 » 04 Oct 2014, 13:51

[Remarque : ce tutorial existe Ă©galement sur forum.eedomus.com / J'en suis le mĂŞme auteur]

Ce tutorial va vous permettre de disposer dans l'eedomus de toutes les statistiques sur un produit / ainsi que votre localisation IOS sans utiliser d'application sur votre iphone / ipage (grâce à Icloud).

Pour cela il faut :
- un nas qui héberge serveur php, base de donnée SQL, serveur mail. Perso je suis sous synology.
[Remarque : PhphpMyadmin 4.1.14 MariDb Php Version 5.5.13]
- un peu de patience :)

Pré-requis fonctionnel :
- Disposer de ses numéros de périphériques eedomus (disponible dans chaque périphérique / paramètre expert / code api)
- Disposer des codes d'accès api (que la plate-forme envoi par mail dans la console : configuration / mon compte / Identifiants pour Api)

A lire si ça bloque chez vous
Si cela ne fonctionne pas, j'ai développé un script pour m'aider (dans le pack), vous l'ouvrez, vous rentrer vos codes
$apiuser = ''bip'';
$apisecret = ''bip'';
$ipeedomus = ''bip'';
Vous trouvez votre code périphérique (pour rappel, paramètre expert)
Ensuite vous appeler la fonction comme cela, serveur/extractforanalyse.php?id=XXXX

URL du Pack :
http://dl.free.fr/hTT3nvEFD

Et ensuite, vous copiez le résultat pour investigation (souvent la nature des données, n'ayant pas la chance d'avoir tous les périphériques zwave chez moi :)).

Schéma Global :
Image

Fichiers :
Image

Version 3.1 [Tout est dedans]
http://dl.free.fr/ox3haUbP9
Voir en dessous

Explications :
.htaccess => correspond à une sécurisation de votre NAS, indiquer dedans les IP à qui vous faites confiance
bddconsultstat.php => permet de consulter les statistiques d'un produit classique on / off / x% (lampe)
bddconsultstattemp.php => permet de consulter les statistiques d'une sonde de température
bddcreationstatperiph.php => permet de créer les statistiques
bddinsertionperiph.php => ce script créer la table d'un produit et l'alimente via les serveurs eedomus
compteetconnexionVIERGE.php => vous enlevez le mot VIERGE et vous complétez avec vos informations, c'est le fichier de paramétrage

Pré-requis technique :
- un serveur web
- une base de donnée (phpmyadmin permet de regarder en live ce qu'il se passe dedans)

Tutorial V0 :
0) Il faut Ă  minima avoir la base test dans sa base mysql (je parle bien de base, pas de table)
1) On complète son fichier de connexion avec ses infos personnelles

Code: Tout sélectionner
<?
   //info base de donnĂ©es
   $base = 'test';
   $compte = 'root';
   $password = 'XXXX';
   $ipserveurbdd = '192.168.0.XX';

   //info eedomus
   $apiuser = 'XXXZ';
   $apisecret = ''bip'';
   $ipeedomus = ''bip'';

        $annee = '2013';
?>


[Pour un produit type Lampe / Appareil Electrique...]

2) On récupère le nom du produit souhaité et de son numéro eedomus

Image

Exemple : bddinsertionperiph.php?idperiph=35598&table=Lampecuisine

Ce script va automatiquement créer la table Lampecuisine et Lampecuisinestat, et inserer tout l'historique du produit. Le premier lancement peut prendre un peu de temps, ensuite c'est seulement les enregistrements non présent dans la table qui seront insérés.

4) Ensuite on va lancer la création des statistiques

Exemple : bddcreationstatperiph.php?table=Lampecuisine

La creation des statistiques, c'est d'abord le fait de compléter la table initiale Lampecuisine avec les durées de chaque utilisation puis ca complète une autre table Lampecuisinestat

Image

5) Et on finit par la consultation

bddconsultstat.php?table=Lampecuisine

Image

Variante possible ? L'association d'un produit on / off a son energie (exemple ici : la bouilloire)
bddcreertable.php?table=Bouilloire&energie=1
bddinsertionperiph.php?idperiph=35995&table=Bouilloire
bddinsertionperiph.php?idperiph=35996&table=Bouilloireenergie
bddcreationstatperiph.php?table=Bouilloire&energie=1
bddconsultstat.php?table=Bouilloire&energie=1

Une extraction nécessaire au format XML ?
bddconsultstat.php?table=Lampecuisine&xmldemande=oui

On va dans l'eedomus, on créer un nouveau capteur http :
Image

On complète de cette manière la :
Image

La commande Ă©tant
VOTRESERVEUR/bddconsultstat.php?table=Lampecuisine&xmldemande=oui

Et on obtient directement sous l'eedomus :
Image

On a le choix entre :
//moismaxi
//moismaxivaleur
//totalannuel
//totalhier
//semainepassee
//moispasse

Pour vos sondes de température :

On saisie ses sondes avec leurs codes api respectif. Ce qui est pas mal désormais, c'est que si vous avez 2 sondes, ou 10 sondes... vous n'avez qu'a les écrire une fois, et le script de maj s'occupe de tout faire.

Image

Ensuite, on va dans l'eedomus, on crée un actionneur http, dont on paramètre en paramètre expert une fréquence à 15 minutes, et qui va appeler le script eedomus_temp_maj.php. C'est ce script qui va se charger de copier toutes les données de vos sondes en base de données. Ne vous inquiétez pas si l'eedomus renvoit un message d'erreur. Le script étant exécuté sur le serveur, même si le temps dépasse 10 secondes, l'insertion des données fonctionne totalement (vous pouvez vérifier directement dans phpmyadmin).
Image

Image

Pour infos, la copie de 60000 enregistrements prend environ 2 minutes. Une fois le script effectué, les suivants seront quasi instantanés (normal, juste 15 minutes de delta à copier).

Ensuite on a plusieurs choix :

[1] Soit consulter les données en appelant l'adresse suivante :
VOTRESERVEUR/eedomus_temp_consult.php?table='bip'

Image

[2] On crée un capteur http avec utilisation de xml

Image

On a le choix pour sortir les valeurs suivantes :
/temp/anneemax
/temp/anneemaxvaleur
/temp/annemin
/temp/anneminvaleur
/temp/moismax
/temp/moismaxvaleur
/temp/moismin
/temp/moisminvaleur
/temp/jourmax
/temp/jourmaxvaleur
/temp/jourmin
/temp/jourminvaleur
/temp/delta

[3] Pour obtenir le delta avec une autre sonde (l'extérieur par exemple), il suffit d'indiquer quelle sonde est celle de dehors.

Image

Et voilà le résultat :

Image

J'ai quand même utilisé une règle qui provoque le déclenchement, je n'arrive pas pour l'instant à utiliser l'application de la fréquence.

Image

Comment je m'assure que cela se lance régulièrement ?

En créant un actionneur ainsi qu'une règle comme ci-dessous. J'ai pris 2 minutes de rab pour éviter les mauvaises surprises.

Image

Image

Image

Notes sur les performances

Pour des produits classiques (chauffage, lampe) les données sont très réduites en base de données, pour les températures, à raison d'un relevé toutes les 2 minutes, ça génère près de 22 320 enregistrements en base pour un mois à 31 jours. Il faut donc faire un multi appel à l'api, car l'extract est limité à 10000. J'ai pris le parti de splitter en 2 chaque mois pour les traitements.

Pour la première utilisation : Le script bddinsertionperiph.php quand il est appelé sur une sonde avec beaucoup d'historique sur 2013 peut donc ainsi mettre près de 3 minutes en moulinage. Regardez dans l'eedomus le nombre d'historique pour savoir si le délai est anormalement long, je n'ai jamais fait planter ce script pour info.

Ensuite c'est instantané, car ça copie uniquement le delta.

===
La fonction GPS

Il suffit de compléter le fichier conf avec des paramètres, nom du Idevice, user icloud, passeword Icloud ainsi que le peripherique GPS. Pour le nom la case est importante. N'hésitez pas à verifier sur Icloud / localiser puis liste de mes appareils pour éviter le non fonctionnnement.

Image

Comme d'habitude le xml fonctionne, et grâce à un actionneur :
Image

On obtient, sur les 20 dernières minutes :
Image

A vous les règles, de type, je rentre à moins d'un kilomètre, j'allume la lumière !

Sans qui rien n'aurait été possible :
- Aurel de DomoBlog
- DjMomo alias le verificateur de code
- Julien alias Cmoi20 pour la partie GPS
Dernière édition par Augustin69 le 22 Oct 2014, 13:36, édité 3 fois.
Augustin69
Membre Actif
 
Messages: 38
Inscription: 15 Juin 2013, 14:11

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede domotics » 04 Oct 2014, 19:01

Merci pour ce tuto ! Je le relayes sur les reseaux sociaux .
Cdt
Domotics
Mon Skype : mr.domotics - Contactez moi pour une démo, des réponses à vos questions, ...
Mon Installation : Eedomus, Zwave, Oregon, Sonos, EnOcean, Chacon, Raspberry Pi, IPX800, WES, RFXTRX, Nas Synology et Cams IP
Mon Conseil : La domotique doit toujours rester simple et demander un minimum de maintenance; Pensez aux autres utilisateurs de la maison ...

Domotics propose ses services via sa société de conseils http://www.id2domotique.com et sa boutique http://laboutiquededomotique.com
Avatar de l’utilisateur
domotics
Administrateur
 
Messages: 5023
Inscription: 15 AoĂ» 2003, 14:38
Localisation: Toulouse

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede Augustin69 » 05 Oct 2014, 15:59

Avec plaisir !!!
Augustin69
Membre Actif
 
Messages: 38
Inscription: 15 Juin 2013, 14:11

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede DomotiqueHome » 06 Oct 2014, 12:23

Un super tuto, merci a toi ;)
Avatar de l’utilisateur
DomotiqueHome
Membre Actif
 
Messages: 33
Inscription: 23 DĂ©c 2013, 11:46

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede steeve3172 » 09 Oct 2014, 11:43

Merci Augustin69 pour cet excellent tutos :)

J'étais justement en train de me demander comment récupérer dans une base de données toutes mes valeurs de température en provenance de l'eedomus.
eedomus - dongle ENOCEAN - RFXtrx433E - Zibase PRO avec licence (placard) - 2 x IPX800v3 - Google Home
JEEDOM V3.1 et DOMOTICZ en test
Mirror - KAROTZ avec FREE RABBITS & OPENKAROTZ - Teleinfo EDF XBEE
Sondes Oregon (WGR800 - STC800 - PCR800 - THGN801 - UVN800 - 10 THGR810)
FIBARO (FGK-101- FGBS-001 - FGS-221 - FGS-211 - FGD-211 - FGR-221 - FGRM-221 - FGR-222 - FGWPE-101 - FGMS-001 - FGSS-001 - FGSS-002 - WallPlug) - Divers capteurs filaires
QUBINO MNHAA2 & ZMNHJD1 - REMOTEC ZXT-120 - NETATMO - VISION SECURITY ZS6301 - Mulitprise GREENWAVE - NODON détecteur d'ouverture, Soft Remote, Octan Remote, prise Smart Plug - CHACON - SMART SENSOR - etc.
Serveur NAS 8DD sous DEBIAN - HTPC W7 avec XBMC, SARAH & KINECT (remplacée par Google Home), plusieurs RASPBERRY 1B, 2B & 3
Divers PC WXP, W7, W8, W10, DEBIAN, Macbook Pro - ? Raspberry - Tablette 10" dédiées avec Imperihome V2 PRO
Tablettes IPAD 2, IPAD AIR, ASUS TFT700, PIPO Max-M9Pro, ONDA- Smartphones Galaxy S, SIII, Iphone 5 et MI 4
steeve3172
Dieu de domotique
 
Messages: 2033
Inscription: 19 FĂ©v 2013, 06:21
Localisation: Toulouse

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede Augustin69 » 12 Oct 2014, 17:09

Avec plaisir ;-)

Tutorial amélioré avec des screen shoot uptodate ;-)

N'hésitez pas a indiquer si vous avez le moindre souci.
Augustin69
Membre Actif
 
Messages: 38
Inscription: 15 Juin 2013, 14:11

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede Augustin69 » 22 Oct 2014, 13:37

Je suis preneur que la personne qui se reconnaitra prenne contact avec moi :) (et merci Ă  elle)
Augustin69
Membre Actif
 
Messages: 38
Inscription: 15 Juin 2013, 14:11

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede julien35 » 28 Juil 2017, 16:34

Merci pour le tuto !
julien35
Membre un peu timide !
 
Messages: 1
Inscription: 24 Juil 2017, 04:37

Re: [HowTo] Statistiques de ses produits & sa localisation I

Messagede fredy017 » 29 Juil 2017, 17:43

Bonjour, je ne vois pas les images du tuto. dommage
Raspberry pi B+ + carte sd 16Gb
Carte d'extension RaZberry Z-Wave
Vision ZM1601EU Sirène Sans Fil Z-Wave et Alarme Strobe (Batterie)
Fibaro :
DĂ©tecteur d'ouverture Z-Wave FGK-100 _ Motion sensor FGMS-001 _ FGS-221
D-Link DWA-121 USB WiFi
Nas synologie Ds213+
fredy017
Membre Actif
 
Messages: 32
Inscription: 29 Sep 2014, 15:20
Localisation: Saintes (17)


Retourner vers Box - Eedomus+

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 3 invités

Copyright © 2011 - Touteladomotique.com - Tous droits rĂ©servĂ©s
Les blogs partenaires : Abavala, Domo-Blog, Domotique34, Maison et Domotique