L’API de géoloc
Avec l’API de Deveryware, connectez votre application à la géolocalisation, tout simplement.
L’API, destinée aux développeurs d’applications, donne accès au Geohub en Web Services via le protocole HTTPS.
Elle respecte le standard XML/RPC et est aisément intégrable dans toute application informatique et permet de développer des fonctionnalités basées sur la géolocalisation.
Deveryware met à votre disposition avec cette API un ensemble d’outils pour intégrer la géolocalisation à vos applications :
Web Services via une interface XML/RPC ou SOAP : simple, rapide et performant.
Accès à de multiples opérateurs télécom et systèmes GPS/GPRS de manière uniforme : localisation GSM et/ou GPS “temps réel” et simultanée.
Fonctions puissantes pour vos applications : geofencing, suivis automatiques, historique des positions, rapports d’activité...
Une cartographie à jour en permanence et simple d’utilisation : affichage de cartes, géocodage d’adresses, points d’intérêts...
| Version actuelle de l’API | 2.0.3 | janvier 2010 |
Principe de fonctionnement [1]
Toutes les requêtes au Geohub sont envoyées par une application cliente en utilisant un identifiant client et un identifiant utilisateur. Ces deux identifiants sont fournis par Deveryware au moment de l’inscription au service. L’identifiant client permet au Geohub d’assurer la facturation du service. Toutes les requêtes effectuées avec cet identifiant client seront facturées au client correspondant. L’identifiant utilisateur permet pour un même client d’effectuer des requêtes sous plusieurs noms utilisateurs différents. A chaque utilisateur est rattaché une liste de mobiles qu’il est possible de localiser.
Pour utiliser les fonctions du Geohub, il est tout d’abord nécessaire d’ouvrir une session qui, entre autre, permet au système de vous identifier. Une session est associée à un couple d’identifiants : un identifiant client et un identifiant utilisateur. Si vous souhaitez gérer plusieurs utilisateurs différents à partir de votre application, il suffit d’ouvrir autant de sessions que nécessaire avec, à chaque fois, l’identifiant client et un identifiant utilisateur différent. Il est important de noter que si on ouvre plusieurs sessions avec le même couple d’identifiants (client, utilisateur), toutes les réponses asynchrones retournées par le Geohub le sont dans une session quelconque associée au même couple identifiant client, identifiant utilisateur. Plus précisément toutes les réponses pour un même couple d’identifiants (client, utilisateur) sont mises dans unci est ensuite vidée via n’importe quelle session associée à ce couple d’identifiants.
Si nécessaire, il est possible de demander l’allocation d’une file particulière au moment de l’ouverture de session, de manière à pouvoir séparer les messages entre des sessions qui utilisent par ailleurs le même couple d’identifiants. Dans ce cas, pour pouvoir récupérer les messages si on arrête une session (arrêt de l’application par exemple), il faut ré-ouvrir la session avec le même identifiant de queue (voir openSession). L’application peut fermer une session en cours à n’importe quel moment. Cependant si vous fermez la session alors que vous n’avez pas lu toutes les réponses à vos requêtes provenant du Geohub, ces requêtes seront gardées dans la queue de messages pour votre identifiant client. Dans ce cas, lors de l’ouverture d’une nouvelle session, ces messages pourront vous être renvoyés. Il est cependant possible que ces messages soient perdus (Le Geohub peut, par exemple, décider de supprimer ces messages car trop anciens ou trop nombreux). Une session sera aussi automatiquement fermée après une longue période d’inactivité.
Avant toute action il faut déclarer des mobiles via mobileAdd. Toutes les fonctionnalités de l’API s’appuient sur les mobiles que vous aurez déclarés. Si vous ne déclarez pas de mobile vous n’aurez que des codes erreurs. L’API fonctionne en mode asynchrone, il faut donc utiliser la méthode waitForMessage pour récupérer les réponses.
L’API est composée des grands groupes de fonctions suivants :
Les fonctions de localisation
Les fonctions d’alertes
Les fonctions de notification
Les fonctions de cartographie
Les fonctions de gestion
Les fonctions d’administration
Les fonctions de communication
Les fonctions d’analyse de données
[1] extrait de la documentation officielle de l’API de Deveryware