SPSNL17 - Integratie van Microsoft Teams met het Bot Framework - Michael Hompus, Remco Ploeg &...
Transcript of SPSNL17 - Integratie van Microsoft Teams met het Bot Framework - Michael Hompus, Remco Ploeg &...
Integratie van Microsoft Teams met het Bot Framework
en overige Azure diensten
M A N A G E R D E V E L O P M E N T
S A N D E R
B O S M A N
P R I N C I P A L D E V E L O P E R
M I C H A Ë L
H O M P U S
S R . S O L U T I O N A R C H I T E C T
R E M C O
P L O E G
Agenda
Wat is het Bot Framework?
Een custom data source: de Smart Campus
Een slimmere bot in Microsoft Teams
Een aantal best practices
Wat is het Bot Framework?
Wat is een bot?
TYPE TALK TAP
Cortana
Bing
Facebook Messenger Skype
Bot Builder
Platform
Services
Intelligent Tools
Beschikbare channels
Microsoft Bot Framework
3rd Party
Doelen
• Simpel starten, daarna complexiteit toevoegen
• Gericht op de gebruiker
Bot Controls
LUIS
Query over database via
Azure Search
Form
FillingQnA
C#
Customer’s
Business Logic
& DataBot Connector
Web Chat
Cortana
Bing
Direct LineSkype for Business
Skype
Wat?
• Toolkit
• Services die je zelf kan verrijken
• Mechanismes voor het ontvangen van events
• Debuggen en analyseren
Waarom?
• Implementatie van standard protocollen
• Cards: UI over meerdere kanalen
• Language Understanding is lastig
• Common patterns
Dynamic CardsO p e n f r a m e w o r kM u l t i p l e c a n v a s e s
Notification Microsoft Teams Skype Android iOS
Azure Bot Service
Azure Bot Service
Op basis van Azure Functions
C# of Node.js
Consumption plan• Pay only when your functions are running
• Scale out automatically, even during periods of high load
Komt standaard met Analytics (Application Insights)
https://docs.microsoft.com/en-us/bot-framework/azure/azure-bot-service-quickstart
Azure Bot Service
Demo
Azure Bot Service
QnA Maker
QnA Maker
QnA Maker
Azure Bot Service - Code
Azure Bot Service – Web Chat
Azure Bot Service – Web Skype
Bot Builder SDK for .NET
Bot Builder SDK for .NET
Op basis van ASP.NET Web API
App Service plan• Pay for dedicate VM, cost depends on size, per instance
• Scale out manually, or enable autoscale
https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-quickstart
AuthBot
AuthBot is a .NET library for Azure Active Directory authentication on bots built via Microsoft Bot Framework
Extends Web API based bots
https://github.com/MicrosoftDX/AuthBot
Bot met Azure AD authenticatie
Demo
Azure App Service
Azure AD App
ASP.NET Web API – web.config
Bot Framework
ASP.NET Web API – web.config
Visual Studio – Publish
Skype – Azure AD authenticatie
Een custom data source:de Smart Campus
De case van vandaag
Endpoints:
Table Storage /Blobs
Azure Functions
Stream Analytics
Azure
Active Directory
IoT Hub
App Service
Power BI
Welke technologieën?
Microsoft Teams
Bot Framework
Microsoft PowerApps
Een slimmere botin Microsoft Teams
Introductie
Microsoft Teams App Platform
Available now
Bots
Help users get
tasks done in
conversations
Connectors
Post rich updates
to channels
Tabs
Surface rich
content within
Teams
Office
Store
Drive engagement
by submitting
your app to the
Office Store
Actionable
Messages
Add rich
interaction to your
connector cards
Activity
Feed
Engage users
via feed
notifications
Compose
Extensions
Allow users to query
and share rich cards
in conversations
Available in Developer Preview
Bots
Bots make it easy for users to interact with your app in Team conversations or 1:1
Built using Microsoft Bot Framework
Complete tasks via basic commands, menu or natural language
Rich Microsoft Teams features, e.g.
Input menus
Dynamic message updates
Integrate with tabs
Microsoft Teams met Bot Framework
Demo
Microsoft Teams met Bot Framework
Microsoft Teams met Bot Framework
Microsoft Teams met Bot Framework
Microsoft Teams met Bot Framework
Bot beschikbaar maken binnen een Team
Drie mogelijkheden:
1. Creëer direct een custom bot
2. Maak een sideload package voor een bestaande bot:• https://msdn.microsoft.com/en-us/microsoft-teams/createpackage
3. Publiceer Bot in Office Store (Developer Preview)
Bot binnen een Team - Sideloading
Bot binnen een Team - Sideloading
Bot binnen een Team
Bot Framework met LUIS
Bot Framework met LUIS
Demo
Bot Framework met LUIS
Bot Framework met LUIS
Bot Framework met LUIS
Bot Framework met LUIS
Bot Framework met LUIS
Bot Framework met LUIS
Aantal best practices
BP1: Teveel open vragen
Hallo gebruiker! Hoe kan ik je
helpen?
1 vraag
100 verschillende dingen die je kan doen (intents)
100 verschillende voorbeelden per intent
Gebruikers raden ongeveer 3 van de 100 dingen.
B2: Menu structuur
Hallo gebruiker! Hoe kan
ik je helpen?
Evenementen
Stages
Voorzieningen
Welke evenementen ben
je in geïnteresseerd?
Music
Comedy
Film
Laser Dome
Spectacles
Theater
Welke muziek vind je
leuk? (BTW, de volgende
keer kan je gewoon
zeggen: “Ik zoek naar
artist XYZ” en dan zoek
ik direct naar die artist!
B3: Ontwerp om begrepen te worden (1)Stel gesloten vragen:
• Maak gebruik van buttons waar mogelijk
Toch open vragen? Stel ze dan goed• Geef voorbeelden wat je bedoeld
• Help je gebruiker
B4: Ontwerp om begrepen te worden (2)Support zoveel als mogelijk formaten
• 2 mei, 2017, Mei 2, 5/2, 5/2/2017, Dinsdag, Vandaag, Volgende Week
Laat je gebruikers niet stranden in gesprekken
Geef de gebruiker de mogelijkheid om hulp te vragen• Welke ‘vragen’ kan ik stellen
• Toegang tot een echt person
Bot Framework Roadmap 2017
Microsoft Bot Framework Roadmap 2017
Bot Builder
Protocols &
Services &
Channels
Bot
Intelligence
Azure Bot
Service v2
Speech
SupportEcosystem Integrations
(Flow, PowerApps, ++)Bot Brain
Bot Controls++
GA
GA
GA
GA
Analytics++
Regions++,
Channels++
SDK V.Next
Localization
Adaptive CardsBot
FederationCompliance
May Aug Nov
Regions++, Languages++, Domains++ ML Dialogs
Pattern
Support
Faster
Training
Multi-
Developer
Prebuilt
Domains
Speech
Services++
Public
Preview
Private
Preview
Thanks for attending