Présentation
L'API de Freebox-wifi.fr a pour objectif de permettre à des tiers de développer des applications innovantes autour de la base de localisation des hotspots du réseau FreeWifi.
Conditions d'utilisation
L'utilisation de l'API est gratuite et libre tant qu'elle reste dans les limites du raisonnable (c'est-à-dire que vous n'écroulez pas notre serveur...) et qu'elle est utilisée pour réaliser des applications gratuites. Pour le cas d'applications payantes, contactez-moi pour déterminer un business-model en commun.
L'utilisation de l'API est un service rendu par le site et non une obligation. Je me réserve le droit de couper l'accès à toute application si besoin était.
Toutes les méthodes de l'API requierent une clef qui identifie votre application, contactez-moi pour obtenir la votre.
Documentation
- METHODE : signaler le login sur un hotspot FreeWifi
- METHODE : signaler un hotspot
- METHODE : indiquer la puissance du FreeWifi en un point
- Insérer la carte FreeboxWifi dans votre application via une page web
- Insérer la carte FreeboxWifi dans votre application nativement (accès direct aux tiles)
- Obtenir la liste des N derniers login dans une boundingbox
METHODE : signaler le login sur un hotspot FreeWifi
Lorsqu'une application permet le login, elle utilise cette méthode pour signaler à la carte quand un login est réussi. Cette méthode trace un point sur la carte dont la couleur et la position dépend des paramètres passés.
Les paramètres sont:
- mac
- BSSID du réseau, exprimé en minuscule avec ou sans les deux points ":"
- kind
- réseau identifié : indiquer FREEWIFI
- accuracy
- la précision en mètres du point GPS (fourni par le GPS)
- rssi
- la puissance du signal pour ce hotspot
- latitude
- la latitude exprimée en décimales (6 chiffres après la virgules suffisent)
- longitude
- la longitude exprimée en décimales (6 chiffres après la virgules suffisent)
- time
- nombre de millisecondes depuis le 1er janvier 1970. Attention, ce n'est pas l'unix epoch, c'est en millisecondes
- id
- un identifiant unique du terminal ayant identifié le hotspot
- from
- l'identifiant de votre application, contactez-moi pour l'avoir
- version
- la version de votre appli
- sign
- calculer le hash de la chaîne de caractère issue de la concaténation des paramètres latitude,longitude,mac,rssi,time,from et la clef privée que je vous ai donné avec la méthode SHA1. Fournir le résultat sous forme de chaîne Hexa. Par exemple :
b2807e9ea312579e4fdc6ffff5f7454e89c25e0b
Exemple :
http://www.freebox-wifi.fr/json/report_hotspot?a=0&mac=7a:e9:f1:dc:9c:76&accuracy=1467.0&rssi=-67&latitude=48.873372&longitude=2.13931&kind=FREEWIFI&epoch=1252410071124&id=and-200140d9892a0239&from=UneAppli&version=1.2.0&sign=1234567890ABCDEF
METHODE : signaler un hotspot
Cette méthode n'est plus supportée car les freebox ont des identifiants changeant. Il vaut donc mieux utiliser la méthode suivante qui envoie la puissance la plus forte parmis tous les hotspots FreeWifi scanné en un point
METHODE : indiquer la puissance du FreeWifi en un point pendant un scan
Cette méthode trace un point sur la carte dont la couleur et la position dépend des paramètres passés.
Lorsqu'une application obtient un résultat de scan wifi, elle doit extraire le RSSI le plus élevé parmis tous les RSSIs associés à un hotspot FreeWifi.
Les paramètres sont:
- latitude
- la latitude exprimée en décimales
- longitude
- la longitude exprimée en décimales
- accuracy
- la précision du point GPS (fourni par le GPS)
- maxpower
- une chaîne de caractère contenant le BSSI du hotspot et la puissance la plus forte (URL encodée!). Pour une puissance de "-74", mettre
FREEWIFI%3D-74%7C - time
- nombre de millisecondes depuis le 1er janvier 1970
- id
- un identifiant unique du terminal ayant identifié le hotspot
- from
- l'identifiant de votre application, contactez-moi pour l'avoir
- version
- la version de votre appli
- sign
- calculer le hash de la chaîne de caractère issue de la concaténation des paramètres latitude,longitude,maxpower,time,from et la clef privée que je vous ai donné avec la méthode SHA1. Fournir le résultat sous forme de chaîne Hexa. Par exemple :
b2807e9ea312579e4fdc6ffff5f7454e89c25e0b
Exemple :
http://www.freebox-wifi.fr/json/report_power?latitude=47.338829&longitude=0.6912248&accuracy=224.0&maxpower=FREEW
IFI%3D-74%7C&time=1252410075985&id=**device_id**&from=MonAppli&version=1.12&sign=
Insérer la carte FreeboxWifi dans votre application via une page web
Vous pouvez intégrer la carte selon les spécifications de votre téléphone, PDA, ordinateur ou autre directement en l'affichant dans le navigateur ou dans une vue web.
Les paramètres sont:
- latitude
- la latitude exprimée en décimales (optionnel)
- longitude
- la longitude exprimée en décimales (optionnel)
- time
- nombre de millisecondes depuis le 1er janvier 1970
- width
- largeur en pixel de l'écran d'affichage
- height
- hauteur en pixel de l'écran d'affichage
- id
- un identifiant unique du terminal ayant identifié le hotspot
- platform
- La plateforme appelante : android, iphone ou wm
- from
- l'identifiant de votre application, contactez-moi pour l'avoir
- version
- la version de votre appli
- sign
- calculer le hash de la chaîne de caractère issue de la concaténation des paramètres latitude,longitude,time,from,version,id et la clef privée que je vous ai donné avec la méthode SHA1. Fournir le résultat sous forme de chaîne Hexa. Par exemple :
b2807e9ea312579e4fdc6ffff5f7454e89c25e0b
Exemple :
http://www.freebox-wifi.fr/maps/show.php?latitude=47.338829&longitude=0.6912248&width=320&height=480&platform=wm&time=1252410075985&id=**device_id**&from=MonAppli&version=1.12&sign=xxxx
Insérer la carte FreeboxWifi dans votre application nativement (accès direct aux tiles)
La carte est composée de tiles PNG en 256x256, sur 23 niveaux de zoom. Contactez-moi pour l'intégrer.