Traceur GPS

Discussion sur la box eedomus

Re: Traceur GPS

Messagepar cedriclocqueneux » 27 Fév 2012 23:54

Oui, j'ai pas mal cherché pour la formule :p J'ai vérifié par rapport à d'autres sites qui font le calcul automatique, les deux résultats sont très proches, ça semble fiable.
Image
cedriclocqueneux
 
Messages : 159
Inscription : 10 Jan 2012
Localisation : Orléans, France

Re: Traceur GPS

Messagepar khazai » 28 Fév 2012 08:04

Super tuto cédric, que je mettrais surement en application un jour. Malheureusement, pour le moment, je n'ai pas de machine qui tourne 24h/24. Quand j'aurais un NAS, oui.
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar blues » 28 Fév 2012 09:42

Beau travail.
Par contre pour que cela soit efficace il faudrait faire des requêtes régulières et surtout fréquentes. Pour ne pas attendre devant le portail pendant 15min avant qu’il s’ouvre :lol:
Je pense que pour améliorer le tout, il faudrait mettre en cache les dernières valeurs et notifier les positions et états sur la box uniquement en cas de changement.
Au pire, forcer un update toutes les 1/2 h pour se rassurer et vérifier que la moulinette tourne toujours (affichage de la dernière mise à jour dans l’interface).
blues
 
Messages : 630
Inscription : 05 Fév 2012
Localisation : 37

Re: Traceur GPS

Messagepar coco » 28 Fév 2012 21:37

Bonjour,
je viens de tester l'application device locator sur iphone qui permet d'envoyer directement les coordonnées par html à l'eedomus sans passer par google locator
voila la commande entréé dans la config de device locator pour info:
[url]http://api.eedomus.com/set?action=periph.value&api_user=api_user&api_secret=api_secret&value={lat},{long}&periph_id=api_periph[/url]
ça fonctionne très bien mais j'ai pas l'impression que l'on puisse faire de conditions sur les positions comme viens de réussir à faire Cédric :(
la question est: comment réussir à le faire quand on n'a pas de machine qui tourne 24/24, j'ai juste un Synology à dispo
coco
 
Messages : 13
Inscription : 15 Fév 2012

Re: Traceur GPS

Messagepar khazai » 29 Fév 2012 09:01

Bonjour,

tu connaîtrais pas un équivalent de ton application pour android. J'ai cherché sur le Market, mais y'en à tellement lol ....
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar cedriclocqueneux » 29 Fév 2012 09:18

Pour Android, on m'a parlé de Tasker, qui semble géniale ! Tu peux définir une zone, et envoyer une requête http quand tu entres ou sorts de la zone. Du coup, à la limite, même pas besoin du module géolocalisation de l'eedomus, tu as Android qui gère les zones, et qui fait une requête à l'API eedomus pour lancer l'action que tu veux.
J'ai cherché l'équivalent sur iPhone, mais rien trouvé d'aussi bien :(
Image
cedriclocqueneux
 
Messages : 159
Inscription : 10 Jan 2012
Localisation : Orléans, France

Re: Traceur GPS

Messagepar cedriclocqueneux » 29 Fév 2012 12:07

blues a écrit:Beau travail.
Par contre pour que cela soit efficace il faudrait faire des requêtes régulières et surtout fréquentes. Pour ne pas attendre devant le portail pendant 15min avant qu’il s’ouvre :lol:
Je pense que pour améliorer le tout, il faudrait mettre en cache les dernières valeurs et notifier les positions et états sur la box uniquement en cas de changement.
Au pire, forcer un update toutes les 1/2 h pour se rassurer et vérifier que la moulinette tourne toujours (affichage de la dernière mise à jour dans l’interface).


Je viens de terminer un nouveau script allant dans ce sens :D
Mon script vbs se lance toutes les minutes pour vérifier les coordonnées google, vérifie par rapport aux dernières données enregistrées, et notifie l'eedomus uniquement s'il y a eu un changement de plus de x mètres. Toutes les données récupérées de Google sont logguées dans un fichier, avec l'heure, et une mention indiquant si l'info a été remontée à eedomus ou non. Un nouveau fichier de log est généré chaque jour automatiquement, avec la date du jour dans le nom.

L'avantage, c'est que Google peut être interrogé de nombreuses fois (ils ont des gros serveurs, eux :p ), mais les requêtes vers l'eedomus sont alors très limitées, se limitant aux notifications vraiment nécessaires.

C'est en test chez moi depuis ce matin, si ca fonctionne correctement je le partage demain ;-)
Image
cedriclocqueneux
 
Messages : 159
Inscription : 10 Jan 2012
Localisation : Orléans, France

Re: Traceur GPS

Messagepar blues » 29 Fév 2012 15:41

Alors, là, ça commence à avoir de la gu..le ! ;)
Il me reste a remettre mon NAS en service pour pouvoir faire ce genre de chose. Je ne vais pas imposer ça au lapin !!! :lol:
blues
 
Messages : 630
Inscription : 05 Fév 2012
Localisation : 37

Re: Traceur GPS

Messagepar coco » 29 Fév 2012 15:52

juste pour faire avancer le shmil...
voila un mix des script de domotics et de Cédric en php si ça peut aider:

Code : Tout sélectionner
<?php

header('Content-Type: text/plain');

echo "Parametres : En cours ...\n";
$api_user   = "******";
$api_secret   = "**************";

if ($api_user == "") {
   echo 'API_USER attendu ...\n';
   exit('API_USER attendu ...');
}

if ($api_secret == "") {
   echo 'API_SECRET attendu ...\n';
   exit('API_SECRET attendu ...');
}

if ( is_numeric( $argv[1] ) )
   $userId = $argv[1];
else {
   echo 'Param 1 non valide ... UserId attendu ( Rappel : php dhas-position-latitude2eedomus.php UserId PeripId )\n';
   exit('Param 1 non valide ... UserId attendu');
}
   
if ( is_numeric( $argv[2] ) )
   $periphId = $argv[2];
else {
   echo 'Param 2 non valide ... PeriphId attendu ( Rappel : php dhas-position-latitude2eedomus.php UserId PeripId )\n';
   exit('Param 2 non valide ... PeriphId attendu');
}

echo "Parametres : OK.\n";

// Telechargement de la position
echo "Position : En cours ...\n";
$url = 'http://www.google.com/latitude/apps/badge/api?user='.$userId.'&type=json';
 
$content = file_get_contents( $url );
 
$json = json_decode( $content );
 
$coord = $json->features[0]->geometry->coordinates;
$timeStamp = $json->features[0]->properties->timeStamp;
 
if ( ! $coord ) {
   echo 'Utilisateur inconnu dans Google Latitude ...\n';
   exit('Utilisateur inconnu dans Google Latitude ...');
}

$date = date( 'd/m/Y H:i:s', $timeStamp );
$lat = $coord[1];
$lon = $coord[0];
 
echo "Derniere position = ".$date." : ".$lat." x ".$lon." \n";
echo "Position : OK.\n";


// Calcul de la distance de la maison

$LAT_MAISON = 49.000083;
$LONG_MAISON = 2.485940;

$LAT_TRAVAIL = 48.852550;
$LONG_TRAVAIL = 2.417911;

$PERIPHDIST_ID="****";

$a = 3.1415926535 / 180;
$lat1 = $LAT_MAISON * $a;
$lat2 = $coord[1] * $a;
$lon1 = $LONG_MAISON * $a;
$lon2 = $coord[0] * $a;

$t1 = sin($lat1) * sin($lat2);
$t2 = cos($lat1) * cos($lat2);
$t3 = cos($lon1 - $lon2);
$t4 = $t2 * $t3;
$t5 = $t1 + $t4;

$rad_dist = atan(-$t5/sqrt(-$t5 * $t5 +1)) + 2 * atan(1);

$distance_maison = ($rad_dist * 3437.74677 * 1.1508) * 1.6093470878864446;

//Calcul de la distance du travail
$lat1 = $LAT_TRAVAIL * $a;
$lon1 = $LONG_TRAVAIL * $a;

$t1 = sin($lat1) * sin($lat2);
$t2 = cos($lat1) * cos($lat2);
$t3 = cos($lon1 - $lon2);
$t4 = $t2 * $t3;
$t5 = $t1 + $t4;

$rad_dist = atan(-$t5/sqrt(-$t5 * $t5 +1)) + 2 * atan(1);

$distance_travail = ($rad_dist * 3437.74677 * 1.1508) * 1.6093470878864446;

if ($distance_maison < 0.500)
{
   $etat = 0;
}else{
   if ($distance_travail < 0.500)
   {
      $etat = 1;
   }
   else
   {
      $etat = 2;
   }
}

// Chargement de la position das l'eedomus
echo "Chargement eeDomus : En cours ...\n";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://api.eedomus.com/set?action=periph.value&api_user=".$api_user."&api_secret=".$api_secret."&value=".$lat.",".$lon."&periph_id=".$periphId);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
echo "Chargement eeDomus : OK.\n";

//Envoi de l'etat de sa position
echo "Envoi position : En cours ...\n";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://api.eedomus.com/set?action=periph.value&api_user=".$api_user."&api_secret=".$api_secret."&value=".$etat."&periph_id=".$PERIPHDIST_ID);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
echo "Position envoye : OK.\n";

?>


reste plus qu'à faire tourner ça sur le synology
coco
 
Messages : 13
Inscription : 15 Fév 2012

Re: Traceur GPS

Messagepar coco » 29 Fév 2012 22:02

voila ça fonctionne super bien en mettant le script sur le synology :mrgreen:
coco
 
Messages : 13
Inscription : 15 Fév 2012

Re: Traceur GPS

Messagepar khazai » 01 Mars 2012 07:53

Pour ma part, j'ai testé hier soir l'appli Tasker que m'a conseillé Cédric. Après une longue période pour comprendre comment fonctionne cette application lol, j'ai enfin pu programmer quelque chose. L'appli permet de faire pleins de choses, j'en exploite encore que 15%.

J'ai crée 2 règles simples. Si mon smartphone est connecté au wifi de chez moi (et uniquement celui de chez moi en précisant le SSID), je désactive l'alarme (requête http vers l'API d'Eedomus). Inversement, si je ne suis plus connecté a mon wifi, j'active l'alarme. C'est plus précis et rapide que la géolocalisation et pas besoin d'utiliser le GPS du smartphone et ainsi me pomper toute ma batterie. L'appli est très rapide pour ne pas être embêter. Je sais que quand je gare ma voiture, je suis déjà à porté du wifi. Et j'ai fait un test, dès que j'active le wifi de mon tél, environ 10 seconde après, l'eedomus a reçu la requête http. Je vais faire de même avec le smartphone de ma femme (quand il sera réparé lol) et comme ça, si aucun smartphone est connecté au wifi, j'active l'alarme.

Et en cas de soucis, il me reste les jetons que j'ai acheté à passer devant le nez du lapin pour couper l'alarme (dans le cas où on aurait un problème de wifi).
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar blues » 01 Mars 2012 09:08

dès que j'active le wifi de mon tél, environ 10 seconde après, l'eedomus a reçu la requête http

Cela veut dire qu'il faut faire une opération manuelle (activer le wifi).
Ca ou lancer une requête eedomus "desarmement par RFID=1" (celle créée pour le lapin, mise en favoris), c'est pareil pour moi ;)
Sinon il faut laisser le wifi activé et attendre qu'il le détecte.
Il y a une notion d'arrivée/départ à prendre en considération à mon avis.

Pour moi tasker servirait plutôt à activer le wifi sur le tél en détectant ma position (à la maison, wifi on, bluetooth off, etc.). Ce qui veut dire que ma position peut être déterminée (GPS/3G). Cette vérification est un service qui tourne en permanence aussi.

En clair il faut définir le niveau d'automatisation que l'on souhaite en rapport avec les contraintes qu'on se donne. (consommation du mobile, etc.).

En tous cas merci à tous pour cette réflexion collégiale autour de cette problématique qui m'intéresse aussi :D
blues
 
Messages : 630
Inscription : 05 Fév 2012
Localisation : 37

Re: Traceur GPS

Messagepar khazai » 01 Mars 2012 18:24

Blues, tu te trompes, mon wifi sur le smartphone est tout le temps activé mais en "veille", à la recherche d'un réseau wifi. Donc dès que j'arrive à la maison, il se connecte automatiquement, sans le sortir de mon pantalon... Et ça ne consomme pas tant que ça, car il n'es pas connecté, le reste du temps, il est juste en recherche. Enfin, moi je le désactivé jamais et ma batterie tient bien. Oui, Tasker est une appli qui tourne en tache de fond, mais Android est fait pour ça....

J'ai pas encore testé en temps réel, je vous tiens au courant.
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar Moe » 01 Mars 2012 20:44

J'aime ce principe!
Ce qui nous rend encore plus dépendant du téléphone! Il devient donc la clé de la maison!
Mais bon, j'avoue que la déconnexion ou autre bug fait peur... 110dB ça doit faire mal! :shock:
Mais j'aime!
Moe
 
Messages : 380
Inscription : 24 Fév 2012
Localisation : 54

Re: Traceur GPS

Messagepar khazai » 01 Mars 2012 20:55

Bin, moi j'ai encore mon lapin et mes jetons pour couper l'alarme. Et comme mon lapin parle et me dis:

- alarme activé
- alarme désactivé
- attention, maison actuellement sous surveillance (quand un détecteur capte un mouvement)

ça limite les risques. Et je bosse dans les alarmes, donc les sirènes ça me fait plus peur mdr :mrgreen:
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar blues » 01 Mars 2012 23:38

@Khazai : désolé je n'avais pas compris cela. :oops:
cela n'a pas l'air mal comme cela...
blues
 
Messages : 630
Inscription : 05 Fév 2012
Localisation : 37

Re: Traceur GPS

Messagepar domotics » 02 Mars 2012 20:02

Sympa cette fonction, mais ca reste gadget si on utilise pas un GPS car la position doit etre précise pour que le résultat puisse être couplé à la domotique.

A+
Domotics
domotics
 
Messages : 107
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar Moe » 03 Mars 2012 19:20

Super le couple Eedomus et Tasker!
Tasker permet de faire une vraie petite télécommande de Eedomus!

Je secoue mon téléphone dans un sens, quand je suis connecté en wifi de chez moi, j'ai un menu qui apparaît pour les lumières.

J'ai également repris ton idée, Khazai, quand je me déconnecte de mon wifi, et que je valide par une secousse, j'active mon départ. De même pour ma femme, et hop, l'alarme s'active!

Bref, des possibilités immenses....

Par contre je trouve qu'il a tendance a consommer de la batterie.
Moe
 
Messages : 380
Inscription : 24 Fév 2012
Localisation : 54

Re: Traceur GPS

Messagepar khazai » 04 Mars 2012 16:10

Ca fonctionne bien la fonction "secousse" ? J'ai vu ça dans les menus et j'ai pas osé le mettre pour l'alarme. Pas de soucis de déclenchements intémpstifs? Quand il est dans la poche ou autre?
khazai
 
Messages : 316
Inscription : 09 Jan 2012

Re: Traceur GPS

Messagepar Moe » 04 Mars 2012 19:10

Ca fonctionne super bien! Il y a une fonction secousse, et une fonction geste. Chez moi les deux fonctionnent bien! Et Tasker ne prend pas en compte ce qui se passe pendant la veille du téléphone.
Moe
 
Messages : 380
Inscription : 24 Fév 2012
Localisation : 54

PrécédentSuivant

Retour vers Box eedomus

Qui est en ligne ?

Utilisateurs parcourant ce forum : Catoscar et 10 invité(s)