[Actualité] Déployer son Bot sur Microsoft Azure et utiliser le Bot Channels Registration
par
, 08/04/2018 à 14h31 (2978 Affichages)
Dans l'un de mes précédents billets de blog sur les bots, j’ai montré comment créer un bot avec ASP.NET Core Web API, .NET Core et Bot Framework. Le code complet du bot que nous avons mis en place est disponible sur mon GitHub.
Une fois le développement de votre bot terminé, vous pouvez le déployer en utilisant n’importe quel service d’hébergement en ligne. Toutefois, pour que votre bot soit fonctionnel et accessible à travers divers channels (Chat à partir d’un site web, Skype, Facebook Messenger, Slack, etc.), vous devez créer un Bot Channels Registration et configurer votre application, ainsi que les différents canaux de communication.
Dans ce billet, nous allons déployer notre bot sur la plateforme Cloud Microsoft Azure. Ensuite, nous allons créer un Bot Channel Registration et procéder aux configurations nécessaires.
Prérequis :
- Le code d’exemple qui est disponible sur mon compte GitHub ;
- Visual Studio 2017 Community ;
- Un abonnement à Microsoft Azure.
Comme vous avez surement dû le constater notre bot est une application ASP.NET. Pour faire fonctionner ce dernier sur Azure, nous aurons donc besoin d’un Azure App Service.
Sans plus tarder lançons nous dans le vif du sujet qui nous intéresse ce jour.
Publication de l’application sur Azure
La première chose à faire sera de publier notre application sur Azure. Vous devez donc ouvrir cette dernière dans Visual Studio. Ensuite, sélectionner Microsoft Azure App Service dans la fenêtre Publier, puis cliquez sur Publier :
Dans la fenêtre suivante, vous devez renseigner le nom de l’application, ainsi que le nom de du groupe de ressources, puis cliquer sur créer. Il est à noter que vous devez être connecté à votre compte Microsoft dans Visual Studio, afin que votre abonnement Microsoft Azure soit automatiquement récupéré lors de la publication de votre application.
Le déploiement de votre application dans Azure va débuter. Une fois l’application déployée, elle sera automatiquement affichée dans votre navigateur par défaut. Copiez le lien qui devrait être sur cette forme : http://monapplication.azurewebsites.net/.
Création du Bot Channels Registration
Vous avez déployé votre bot. Mais, pour que votre bot puisse interagir avec un utilisateur, vous devez d’abord enregistrer ce dernier en utilisant Azure Bot Service.
Rendez-vous sur https://dev.botframework.com/. Vous devez vous connecter avec votre compte Microsoft. Ensuite dans le menu, cliquez sur My Bots. Vous allez accéder à une fenêtre permettant de créer le Bot Service :
En cliquant sur Create, vous allez être redirigé vers le portail Azure. Vous aurez une liste avec les différents types de Bot Service que vous pouvez créer dans Azure.
Sélectionnez Bot Channels Registration, puis cliquez sur Create. Dans la fenêtre qui s’afficher, saisissez le nom de votre Bot. Sélectionnez le groupe de ressources créé précédemment.
Dans le champ Messaging Endpoint, saisissez l’URL du endpoint de votre application. C’est l’URL de votre application suivie de /api/messages, en HTTPS (https://monapplication.azurewebsites.net/api/messages).
Une fois les informations renseignées, cliquez sur Create.
Pour autoriser toute application ou service d’interagir avec votre bot, vous devez configurer une application ID et un mot de passe dans votre bot, ensuite transmettre ces informations à tous ses clients. Vous pouvez créer ces informations à partir du portail application de Microsoft.
Le moyen le plus simple de créer ces paramètres est d’accéder à votre Bot Channels Registration créé précédemment dans le portail Azure, puis sélectionner Settings dans le menu à gauche et cliquer sur Manage à côté de Microsoft App ID.
Vous allez être redirigé vers le portail d’enregistrement des applications de Microsoft. Vous devez copier l’Application ID. Ensuite, éditez le fichier appsettings.json de votre application dans Visual Studio et collez cette information.
Vous devez ensuite générer un nouveau mot de passe, copier et coller ce dernier dans le fichier de configuration de l’application (appsettings.json) :
Code json : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 "Logging": { "IncludeScopes": false, "Debug": { "LogLevel": { "Default": "Warning" } }, "Console": { "LogLevel": { "Default": "Warning" } } }, "MicrosoftAppId": "566e0f16-c952-4773-b13f-f50cc7ed3e99", "MicrosoftAppPassword": "aojPOQN1************"
Une fois cela fait, vous devez redéployer votre application.
Test du bot
Pour tester votre bot. Accédez au Bot Channels Registration dans Azure, puis cliquez sur Test in Web Chat dans le menu à gauche. Une fenêtre de conversation va s’afficher. Vous pouvez tester votre bot :
Bravo! vous venez de déployer votre bot dans Azure.