Le Bot Service (Preview) est mort, vive le Bot Service. Depuis le 13 décembre, le Bot Service est passé en General Availability sur Azure.
L’Azure Bot Service permet de créer 3 types de projets :
Web App Bot | Crée un environnement intégré destiné au développement de bots dans une Web App dont le code est éditable et publiable dans Visual Studio.Ce genre de bots est lié à un App Service plan dont le coût est prévisible. |
Bot Channels Registration | Permet d’enregistrer sur les canaux de discussions proposés par le Bot Service des bots créés avec le Bot Framework qui ne sont pas hébergés sur Azure. |
Functions Bot | Permet le développement de bots intelligents s’exécutant dans un environnement serverless dont le code est uniquement éditable dans Azure.Ce genre de bots est lié par défaut à un Consumption plan dont le coût est lié à la charge d’utilisation. L’avantage est qu’il s’adapte automatiquement à la demande. Il est quand même possible de l’associer lier à un App Service plan. |
Nous allons voir comment créer une Web App Bot depuis Azure, récupérer son code source puis le publier dans Azure à partir de Visual Studio.
Pour commencer, il faut que vous ayez un abonnement Azure actif (offre d’essai, abonnement MPN, paiement à l’utilisation).
Créer un bot dans Azure
Dans le menu principal du portail Azure, cliquez sur Nouveau > AI + Cognitives Services > Web App Bot
Donnez un nom à votre bot, qui sera le nom d’affichage du bot qui apparaitra dans les canaux. Ce nom peut être changé à tout moment.
Le Nom de l’application permet de créer l’URL unique du bot. Dans notre exemple, ce sera http://SofteeBotService.azurewebsites.net. Il doit utiliser uniquement des caractères alphanumériques, est limité à 35 caractères et ne peut pas être modifié une fois le bot créé.
Le modèle de bot Basic (C#) est sélectionné par défaut, c’est celui que nous utiliserons pour la suite de cet article.
Il est également possible d’utiliser Node.js à la place du C# et les différents modèles de bot proposés sont :
Basic | Bot ne contenant qu’un seul dialogue qui renvoie l’entrée de l’utilisateur |
Form | Bot montrant comment collecter des entrées d’un utilisateur à l’aide d’une conversation guidée utilisant FormFlow |
Language understanding | Bot montrant comment traîter le langage naturel en utilisant l’API LUIS de Cognitive Services |
Question and Answer | Bot distillant des informations dans des réponses en langage courant |
Proactive | Bot montrant comment utiliser les Azure Functions pour déclencher des évènements dans les bots Azure |
Il n’y a plus qu’à cliquer sur le bouton Créer pour lancer le déploiement dans Azure, ce qui va :
- créer une solution Visual Studio avec un projet de type application Web ASP.NET contenant le code correspondant au modèle de bot choisi
- enregistrer le bot et générer son App ID et son App Password dans Azure AD v2.0
- publier le bot dans le canal Web Chat
Tour d’horizon des principaux panneaux de contrôle du bot
Build | Éditer le code source en ligneTélécharger le code source pour l’éditer dans Visual Studio et le publier depuis Visual Studio Configurer le déploiement continu à partir d’un service contrôle de code source : Visual Studio Team Services, OneDrive, Référentiel Git Local, GitHub, Bitbucket, Dropbox ou un référentiel externe |
Test in Web Chat | Permet de tester le bot avec le canal Web Chat |
Analytique | Affiche les statistiques d’utilisation par canal de messagerie |
Canaux | Connecter le bot à des canaux de messagerie
|
Paramètres | Modifier les paramètres Web App Bot : icône, nom d’affichage dans les canaux, Analytics via Azure Application Insights |
Speech priming | Liaison avec des applications LUIS |
Et vous pouvez aussi retrouver les informations d’enregistrement de l’application sur l’Application Registration Portal.
Les canaux ne s’affichent pas
Au moment où cet article a été écrit, le panneau Canaux ne s’affichait pas…en français.
Pour voir son contenu, il faut configurer votre portail Azure en anglais.
Et voilà
Publier le bot depuis Visual Studio
Maintenant, nous allons voir comment publier le bot à partir de Visual Studio. Pour cela, il est nécessaire de télécharger le code source du bot depuis l’onglet Build de votre Bot Service.
La première chose à faire est de modifier le fichier Web.Config afin d’y ajouter l’App ID et le mot de passe associé.
<configuration>
<appSettings>
<!-- update these with your Microsoft App Id and your Microsoft App Password-->
<add key="MicrosoftAppId" value="fa227afe-25b8-4f0c-aabf-7df182978b98" />
<add key="MicrosoftAppPassword" value="●●●●●●●●●●●●●●●●" />
</appSettings>
...
</configuration>
Ensuite, il faut configurer la publication Visual Studio. Pour cela, faire un clic droit sur le projet et cliquer sur l’élément Publier….
Azure a déjà configuré un profil de publication mais celui-ci ne fonctionne pas, dans ce cas, supprimez le.
Ici, importez le bon profil de publication qui se trouve dans le dossier PostDeployScripts de la solution Visual Studio.
Après l’importation, vous pouvez valider la connexion. Si tout est OK, cliquez sur Publier.
Une fois la publication terminée, retournez dans le portail Azure pour tester votre bot qui est maintenant complètement fonctionnel.
N’hésitez surtout pas à ajouter votre bot à vos contacts Skype !
Et voilà, il ne vous reste plus qu’à le personnaliser encore un peu plus et le rendre intelligent avec l’API Cognitive Services LUIS.