Exemples de configuration (REST)

Exemple 1 : Configuration service web - METEO

Cette section décrit les différentes étapes de configuration d'un service web REST météo afin de répondre automatiquement aux demandes des utilisateurs. Pour cela, vous pouvez utiliser le service openweathermap (https://openweathermap.org/api). Il vous sera nécessaire de créer un compte pour disposer d'une clé.

Création et configuration d'un service web

1- Allez sur Contenu > Web Services.

2- Cliquez sur Ajouter puis sélectionnez Web Service REST.

3- Remplissez les champs suivants dans "configuration d'un webservice"

  1. Remplissez les champs suivants dans "paramètres"

  • APPID : Le paramètre est envoyé par WolrdWeatherOnline après la création d'un compte

  • lang : fr

  • q : ${capture.ville meteo}

  1. Cliquez sur "Ajouter" dans la catégorie "variables de résultat" et ajouter les deux variables suivantes:

Attention : les noms des variables sont libres mais doivent être cohérents avec ce qui est indiqué dans les connaissances. les noms des variables doivent être des caractères alphanumériques ou des caractères de soulignement et commencer par une lettre. Ils sont également sensibles aux majuscules et minuscules.

  1. Modifier le format du résultat json avec les valeurs suivants :

function dyduParseJSON(json) {
 // returns a map return {
     "name" : json.name, 
     "description" : json.weather[0].description, 
     "temperature" : parseInt(json.main.temp / 10)
      } 
      }

7. Tester la configuration de votre service web

avec la valeur de test "Paris" dans les paramètres :

Création de la connaissance associée

L'objectif est maintenant de créer des connaissances pour fournir des données au service web et les restituer aux utilisateurs.

Configurer la question

Phrase de l'utilisateur : la phrase doit ressembler à une demande pour connaître le temps qu'il fait dans une ville donnée. Le point important dans cette phrase est de ne pas oublier la variable.Dans notre exemple, la variable est appelée ville et elle est de type Alphanumérique.

  1. Créez une connaissance " Quelle est la météo à" puis cliquer sur " T "

  1. Cherchez la variable " Ville"

  1. Cliquez sur le groupe ville puis nommez "nom de la variable"villemeteo"

  2. Cliquez sur mettre à jour

  1. Cliquez sur Créer pour créer la connaissance.

Configurer la réponse

La réponse donnée à l'utilisateur affichera la température et la ville comprise par le système pour identifier d'éventuelles différences.

Il est important de noter que :

  • les variables récupérées du service web sont structurées comme suit : ${callapi.WebServiceName.variableName};

  • les variables récupérées de la boîte de dialogue sont structurées comme suit : ${capture.VariableName}.

Pour plus de détail :

Exemple 2 : Utiliser le service web dans une condition

Les services web peuvent être utilisés dans la connaissance mais aussi dans les conditions. Utilisez le service météo pour savoir s'il fait chaud ou froid dans une ville. Dans notre exemple, on considère qu'il fait chaud à plus de 20 degrés et froid dans le cas contraire.

1- Créez une nouvelle connaissance pour répondre.

2- Créez les deux réponses possibles avec une nouvelle condition que vous laisserez vide pour le moment:

Une fois que la partie connaissance est prête, vous devez créer une nouvelle condition qui sera utilisée dans le web service. Pour cela, dirigez vous vers la page Contenu > Condititions de contexte .

1 - Cliquez sur Ajouter une condition et créez la condition associée :

A noter que l'opération est de type expression mathématique et la valeur doit être une expression correcte avec x la variable retournée par l'expression dans Condition. Ici, on doit vérifier que callapi.TestWeather.Temperture > 20.

Enfin, vous devez utilisez cette nouvelle condition dans la connaissance que nous avons créé. Pour ce faire:

1- Modifiez la condition, sélectionnez IsTempertureGreaterThan20

2- Cliquez sur Mettre à jour.

Vous pouvez maintenant tester la connaissance avec votre bot.

Exemple 3 : Configuration service web - adresse IP

Nous allons ici utiliser les services web httpbin : http://httpbin.org/ et plus précisément le service web IP permettant de retourner l'IP de l'utilisateur qui le demande.

Création et configuration du service web

1- Créez un service web en mode REST.

2- Entrez le code JSON dans la section Variables de résultat:

function dyduParseJSON(json) {
	 return {'ip' : json.origin};
}

3 - Entrez la variables "IP" en cliquant sur "ajouter". Vous pouvez ajouter autant de variables que vous le souhaitez.

4- Cliquez ensuite sur Sauvegarder

5- Cliquez sur le bouton Tester pour vérifier que le service web est opérationnel.

S'il n'y a pas d'erreur, l'IP vous sera retourné sinon il se peut qu'un élément ERROR fasse son apparition. Il est important de mentionner que les services web HTTPS peuvent ne pas fonctionner. Si tel est le cas, il vous suffit de retirer le « S » pour utiliser uniquement le protocole HTTP.

Création de la connaissance associée

Dirigez-vous ensuite sur la page Contenus > Connaissances puis créez une nouvelle connaissance comme l'exemple ci-dessous :

Vous pouvez ensuite tester votre connaissance en posant la question à votre bot par le biais de la boîte de dialogue de test. Posez lui la question « Quelle est mon IP ? » et le bot vous retournera votre adresse IP.

Dernière mise à jour

Tous droits réservés @ 2023 dydu.