VIAMICHELIN JAVASCRIPT API


Exemples

Introduction

Le composant de recherche de POIs se trouve dans l'APIJS sous l'appelation "ViaMichelin.Api.Poi".

ViaMichelin JavaScript API vous permet de rechercher et d’afficher des points d'implantation  autour d'un point géographique tels que des hôtels, des  restaurants issus du guide MICHELIN, des points d’intérêt touristiques issus du guide MICHELIN Voyage ou des emplacements provenant d'une base de données client.

Vous trouverez un exemple simple d'utilisation, c'est à dire, faire une recherche de proximité autour d'un point géocodé dans le quickstart guide.

Les principales utilisations de la recherche de POIs

Rechercher les POIs à proximité

Cet exemple va vous permettre de débuter avec la recherche de POIs en commençant simplement par rechercher les POIs à proximité du lieu de votre choix (par ses coordonnées de latitude et de longitude).

Le service FIND_POI est conseillé pour une recherche de proximité.

Si vous voulez le détail pas à pas de cet exemple, consultez le quickstart guide.

var conf = {
  db : "163978",
  service : ViaMichelin.Api.Constants.Poi.SERVICE_TYPE.FIND_POI,
  center : {
    // Paris
    lon : 2.35107,
    lat : 48.85684
  }
};
var output = $_id("output");
var callbacks = {
  onSuccess : function (results) {
    var outputHTML, i, item, poi;
    outputHTML = results.poiList.length + " résultats trouvés.";
    for (i = 0; i < results.poiList.length; i++) {
      item = results.poiList[i];
      poi = item.poi;
      outputHTML += "\n- " + poi.name + " (à " + item.dist + "m)";
    }
    output.innerHTML = outputHTML;
  }
};
VMLaunch("ViaMichelin.Api.Poi", conf, callbacks);
		

Consultez la page de démonstration.

Rechercher des POIs par leur nom

Il est possible de rechercher une liste de POI à partir d'une partie de leur nom. Dans cet exemple, nous allons rechercher tous les POIs avec le mot "Louvre" dans leur nom. 
Pour cela, nous utiliserons la propiété name.

Ici le service FIND_POI ne pourra être utilisé car il nécessite un centre de recherche. Nous utiliserons FIND_POI_BY_CRITERIA.

var conf = {
  db : "163978",
  service : ViaMichelin.Api.Constants.Poi.SERVICE_TYPE.FIND_POI_BY_CRITERIA,
  name : "Louvre"
};
var output = $_id("output");
var callbacks = {
  onSuccess : function (results) {
    var outputHTML, i, item, poi;
    outputHTML = results.poiList.length + " résultats trouvés.";
    for (i = 0; i < results.poiList.length; i++) {
      item = results.poiList[i];
      poi = item.poi;
      outputHTML += "\n- " + poi.name.replace(/(louvre)/gi, '$1');
    }
    output.innerHTML = outputHTML;
  }
};
VMLaunch("ViaMichelin.Api.Poi", conf, callbacks);
		

Consultez la page de démonstration.

Rechercher des POIs parmi une liste fournie

Il est possible d'utiliser le composant de recherche de POIs sans utiliser de base de données, mais en utilisant une liste de POIs que vous allez fournir au composant.

Le service à utiliser pour ce genre de recherche est FIND_INPUT_POI.

Pour fournir la liste de pois au composant, nous utiliserons la propiété inputpoi. 
Nous allons aussi fixer la distance de recherche des POIs à 25.000m avec la propriété dist.

Les 4 pois fournis dans cet exemple vont être fournis au service, il les ordonnera par distance du centre et exclura ceux qui sont trop loin.

var pois = [
  {
    name : "Resto basque",
    coords : {lon : 2.36, lat : 48.6}
  },
  {
    name : "Resto savoyard",
    coords : {lon : 2.33, lat : 48.8}
  },
  {
    name : "Resto breton",
    coords : {lon : 2.37, lat : 48.67}
  },
  {
    name : "Resto réunionais",
    coords : {lon : 2.39, lat : 48.83}
  }
];
var conf = {
  service : ViaMichelin.Api.Constants.Poi.SERVICE_TYPE.FIND_INPUT_POI,
  inputpoi : pois,
  center : {
    lon : 2.35107,
    lat : 48.85684
  },
  dist : 25000
};
var output = $_id("output");
var callbacks = {
  onSuccess : function (results) {
    var outputHTML, i, item, poi;
    outputHTML = results.poiList.length + " résultats trouvés.";
    for (i = 0; i < results.poiList.length; i++) {
      item = results.poiList[i];
      poi = item.poi;
      outputHTML += "\n- " + poi.id + " (à " + item.dist + "m)";
    }
    output.innerHTML = outputHTML;
  }
};
VMLaunch("ViaMichelin.Api.Poi", conf, callbacks);
		

Consultez la page de démonstration.