How to make bots
on Microsoft Bot Framework
Shukhratbek Mamadaliev
/ShuhratBek
shuhratbek.26@gmail.com
EPAM, Senior Software Engineer
What is a Chat Bot?
Why Chat Bot?
THE EVOLUTION OF TECHNOLOGY
1980s
PC
- Desktop
1990s
INTERNET
- Search
- "Visits" on website
2000s
MOBILE
- Social
- Other apps to download from stores/markets
FUTURE
CONVERSATIONS
- Natural Language between people and technology
- Conversational canvas
- Bots and agents
Conversational User Interfaces (CUI)
VOICE ASSISTANT
CHATBOTS
CUI - Voice Assistant
CONVERSATIONS
as a platform
DEVELOPERS
BUSINESS
The new canvas
The new opportunity
Where should I use it?
Icon made by Freepik from www.flaticon.com
Icon made by Freepik from www.flaticon.com
Order Pizza (Traditional)
Icon made by Freepik from www.flaticon.com
Order Pizza (Bot)
Handoff to human
An x-ray of a typical bot
Bot Builder - SDK V4
Stable release
Stable release
Preview release
Preview release
Bot Builder CLI tools
(stable release)
Bot Framework Emulator
Bot Framework webchat
<!DOCTYPE html>
<html>
<body>
<div id="webchat"></div>
<script src="https://cdn.botframework.com
/botframework-webchat/latest/webchat.js"></script>
<script>
window.WebChat.renderWebChat(
{
directLine: window.WebChat.createDirectLine(
{
secret: 'YOUR_BOT_SECRET_FROM_AZURE_PORTAL'
}
)
}, document.getElementById('webchat'));
</script>
</body>
</html>
botframework-webchat
Bot Framework webchat
React
import DirectLine from 'botframework-directlinejs';
import React from 'react';
import ReactWebChat from 'botframework-webchat';
export default class extends React.Component {
constructor(props) {
super(props);
this.directLine = new DirectLine({ token: 'YOUR_BOT_SECRET' });
}
render() {
return (
<ReactWebChat directLine={ this.directLine } />
element
);
}
}
npm install botframework-webchat
Procedural conversation flow
VISION
SPEECH
LANGUAGE
SEARCH
KNOWLEDGE
Language Understanding (LUIS)
www.luis.ai
Language Understanding (LUIS)
Channels
Bot Development LifeCycle
Plan
- Don’t send a bot to do a webpages’s job
- Bots are just apps
- Don’t abuse Natural Language Processing
- Sometimes buttons do everything you need
- Its all a matter of User Experience
Build
Locally via
Bot Builder SDK
Azure
Test on Azure
Test & Debug on Emulator
Publish
Connect
Evaluate
Rich user controls
Cards
AnimationCard
AudioCard
HeroCard
ThumbnailCard
ReceiptCard
SignInCard
SuggestedAction
VideoCard
CardCarousel
AdaptiveCard
AdaptiveCard Designer
DEMO
THANK YOU!
Q&A
How to make bots on Microsoft Bot Framework
By Shuhratbek Mamadaliyev
How to make bots on Microsoft Bot Framework
- 1,435