SlideShare a Scribd company logo
1 of 30
Conversations as a
Platform
Joshua.Drew@Microsoft.com
“BOTS are like new APPLICATIONS that you can CONVERSE with”
Conversations as a Platform
Your bots - wherever your users are talking.
Build and connect intelligent bots to interact with your
users naturally wherever they are, from text/sms to Skype,
Slack, Office 365 mail and other popular services
Bot Framework
• Build & connect intelligent bots
• Interact naturally wherever your
users are talking:
• Text/SMS
• Skype
• Facebook
• Slack
• Email
• GroupMe
• Telegram
• Web Chat
• etc.
Microsoft Bot Framework
• Bot Framework is a Microsoft-
operated service and an SDK
• Bot Framework is one of many
tools Microsoft offers for building a
complete bot
• Others include: LUIS, Speech APIs,
Microsoft Azure, and more
Microsoft Bot Framework
Your conversation logic
Logic
Web
Service
Your Bot
LUIS
• Build with C# or
Node.js
• You host your bot
• Dialogs to model a
conversation
• Many types of dialog
• Natural Language
Understanding (LUIS)
Your Bot
Bot Connector
DEMO
• Install Bot Framework Template - http://aka.ms/bf-bc-vstemplate
• Install Bot Framework Emulator - https://aka.ms/bf-bc-emulator
• Register your Bot with the Bot Connector –
http://dev.botframework.com
• Add AppId and AppPassword to your web.config
• Publish to the web (not needed if using emulator)
Bot Framework: Getting Started
Bot Framework: ApiController
[BotAuthentication]
public class MessagesController : ApiController
{
public async Task<HttpResponseMessage> Post([FromBody]Activity activity)
{
ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl));
if (activity.Type == ActivityTypes.Message)
{
int length = (activity.Text ?? string.Empty).Length;
Activity reply = activity.CreateReply($"You sent {activity.Text} which was {length} characters");
await connector.Conversations.ReplyToActivityAsync(reply);
}
else
{
HandleSystemMessage(activity);
}
var response = Request.CreateResponse(HttpStatusCode.OK);
return response;
}
}
Bot Framework: Dialog
[Serializable]
public class DemoDialog : IDialog<IMessageActivity>
{
public async Task StartAsync(IDialogContext context)
{
context.Wait(ConversationStartedAsync);
}
public async Task ConversationStartedAsync(IDialogContext context, IAwaitable<IMessageActivity> argument)
{
IMessageActivity message = await argument;
await context.PostAsync(message.Text);
PromptDialog.Text(
context: context,
resume: ResumeAndPromptMethodAsync,
prompt: "Hi there I am a bot. What can I help with?",
retry: "I didn't understand. Please try again.");
}
Put intelligence APIs to work
Tap into the power of machine learning with easy-to-use REST APIs.
Cognitive Services
13 APIs + 7 BING APIs
• Vision – face, emotion
• Speech - Recognition
• Language – Spell Check, Understanding
• Knowledge - Academic
• Search – News, web
Formerly Known as Project Oxford
Emotion
Speaker
Recognition
Speech
Custom
Recognition
Computer Vision
Face
Video
Linguistic Analysis
Language
Understanding
Bing Spell Check
Entity Linking
Knowledge
Exploration
Academic
Knowledge
Bing
Image Search
Bing
Video Search
Bing
Web Search
WebLM
Text Analytics Recommendations
Bing
Autosuggest
Bing
News Search
Translator
DEMO
Connectors for Outlook
Office 365 Connectors are a great way to get useful
information and content into your Office 365 Group.
Office 365 Connectors
Get information and content into your Outlook Group
Subscribe to your teams progress or follow important changes
Currently over 50 connectors
Outlook Group Connectors
OGC: Get Started
• //dev.outlook.com and Register your OGC
• Grab your OGC Web Hook URL
• Post to the Web Hook your OGC Cards and Sections
Message message = new Message()
{
summary = "This is the subject for the sent message to an outlook group",
title = msg
};
message.AddSection(nSec1);
message.AddFacts("Facts", facts);
message.AddImages("Images", images);
message.AddAction("check details here", "http://dev.outlook.com");
var result = await message.Send(webhookUrl);
OGC: Get Started
Resources
• Bot Framework Home Page
• https://dev.botframework.com/
• Bot Builder SDK on GitHub
• https://github.com/Microsoft/BotBuilder
• Bot Framework Blog
• https://blog.botframework.com/
• Building a Conversational Bot: From 0 to 60
• https://channel9.msdn.com/Events/Build/2016/B821
Bot Framework: Resources
• Microsoft Cognitive Services
• https://www.microsoft.com/cognitive-services
• Microsoft Cognitive Services Samples & SDK
• https://www.microsoft.com/cognitive-services/en-us/SDK-Sample
• Microsoft Cognitive Services: Give Your Apps a Human Side
• https://channel9.msdn.com/Events/Build/2016/B878
• Microsoft Cognitive Services: Build smarter and more engaging experiences
• https://channel9.msdn.com/Events/Build/2016/B855
Cognitive Services: Resources
• Outlook Group Connector
• https://dev.outlook.com/Connectors
• Outlook Developer Portal
• http://dev.outlook.com/
• Outlook Group Connector API Sample
• https://github.com/jdruid/OutlookGroupConnectorAPI
Office 365 Connector: Resources
Joshua Drew
Joshua.Drew@Microsoft.com
//Drew5.net
//jdruid.github.io
@jdruid

More Related Content

Viewers also liked

University Hackathon Kit
University Hackathon KitUniversity Hackathon Kit
University Hackathon KitJoshua Drew
 
Getting Started with Office 365 APIs & Microsoft Graph
Getting Started withOffice 365 APIs & Microsoft GraphGetting Started withOffice 365 APIs & Microsoft Graph
Getting Started with Office 365 APIs & Microsoft GraphJoshua Drew
 
Getting Started with Microsoft Bot Framework
Getting Started with Microsoft Bot FrameworkGetting Started with Microsoft Bot Framework
Getting Started with Microsoft Bot FrameworkSarah Sexton
 
Conversation as a platform
Conversation as a platformConversation as a platform
Conversation as a platformDaiyu Hatakeyama
 
Getting Started With bots
Getting Started With botsGetting Started With bots
Getting Started With botsGaurav sharma
 
Get Your APP Together
Get Your APP TogetherGet Your APP Together
Get Your APP TogetherJoshua Drew
 
Reactive Microservices with Vert.x
Reactive Microservices with Vert.xReactive Microservices with Vert.x
Reactive Microservices with Vert.xAnderson Braz
 
Stateless Auth using OAUTH2 & JWT
Stateless Auth using OAUTH2 & JWTStateless Auth using OAUTH2 & JWT
Stateless Auth using OAUTH2 & JWTMobiliya
 
Intro to HoloLens Development
Intro to HoloLens DevelopmentIntro to HoloLens Development
Intro to HoloLens DevelopmentShahed Chowdhuri
 
Tokyo azure meetup #13 build bots with azure bot services
Tokyo azure meetup #13   build bots with azure bot servicesTokyo azure meetup #13   build bots with azure bot services
Tokyo azure meetup #13 build bots with azure bot servicesTokyo Azure Meetup
 
Build your first messenger bot
Build your first messenger botBuild your first messenger bot
Build your first messenger botNowa Labs Pte Ltd
 
Introduction to Facebook Messenger, Conversational UI & NLP
Introduction to Facebook Messenger, Conversational UI & NLPIntroduction to Facebook Messenger, Conversational UI & NLP
Introduction to Facebook Messenger, Conversational UI & NLPSaurabh Sharma
 
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)Amazon Web Services
 

Viewers also liked (16)

University Hackathon Kit
University Hackathon KitUniversity Hackathon Kit
University Hackathon Kit
 
Getting Started with Office 365 APIs & Microsoft Graph
Getting Started withOffice 365 APIs & Microsoft GraphGetting Started withOffice 365 APIs & Microsoft Graph
Getting Started with Office 365 APIs & Microsoft Graph
 
Getting Started with Microsoft Bot Framework
Getting Started with Microsoft Bot FrameworkGetting Started with Microsoft Bot Framework
Getting Started with Microsoft Bot Framework
 
Conversation as a platform
Conversation as a platformConversation as a platform
Conversation as a platform
 
Intro to Bot Framework
Intro to Bot FrameworkIntro to Bot Framework
Intro to Bot Framework
 
Getting Started With bots
Getting Started With botsGetting Started With bots
Getting Started With bots
 
Get Your APP Together
Get Your APP TogetherGet Your APP Together
Get Your APP Together
 
Reactive Microservices with Vert.x
Reactive Microservices with Vert.xReactive Microservices with Vert.x
Reactive Microservices with Vert.x
 
Stateless Auth using OAUTH2 & JWT
Stateless Auth using OAUTH2 & JWTStateless Auth using OAUTH2 & JWT
Stateless Auth using OAUTH2 & JWT
 
Intro to HoloLens Development
Intro to HoloLens DevelopmentIntro to HoloLens Development
Intro to HoloLens Development
 
Bots in the Enterprise
Bots in the Enterprise Bots in the Enterprise
Bots in the Enterprise
 
Tokyo azure meetup #13 build bots with azure bot services
Tokyo azure meetup #13   build bots with azure bot servicesTokyo azure meetup #13   build bots with azure bot services
Tokyo azure meetup #13 build bots with azure bot services
 
Build your first messenger bot
Build your first messenger botBuild your first messenger bot
Build your first messenger bot
 
Intro to Bot Framework v3
Intro to Bot Framework v3Intro to Bot Framework v3
Intro to Bot Framework v3
 
Introduction to Facebook Messenger, Conversational UI & NLP
Introduction to Facebook Messenger, Conversational UI & NLPIntroduction to Facebook Messenger, Conversational UI & NLP
Introduction to Facebook Messenger, Conversational UI & NLP
 
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)
AWS re:Invent 2016: NEW LAUNCH! Introducing Amazon Lex (MAC304)
 

Similar to Conversations as a Platform

2 module07 cognitive services and the bot framework
2 module07 cognitive services and the bot framework2 module07 cognitive services and the bot framework
2 module07 cognitive services and the bot frameworkMeng-Ru (Raymond) Tsai
 
Build a Great Conversationalist
Build a Great ConversationalistBuild a Great Conversationalist
Build a Great ConversationalistLorenzo Barbieri
 
Introduction to BOT Framework- Global Azure Bootcamp 2017
Introduction to BOT Framework- Global Azure Bootcamp 2017Introduction to BOT Framework- Global Azure Bootcamp 2017
Introduction to BOT Framework- Global Azure Bootcamp 2017Jalpesh Vadgama
 
Da 0 all'AI conversazionale usando Microsoft Azure
Da 0 all'AI conversazionale usando Microsoft AzureDa 0 all'AI conversazionale usando Microsoft Azure
Da 0 all'AI conversazionale usando Microsoft AzureMarco Parenzan
 
Build an Intelligent Bot
Build an Intelligent BotBuild an Intelligent Bot
Build an Intelligent BotSorin Peste
 
Solvion Trendwerkstatt - Microsoft Azure + Bots
Solvion Trendwerkstatt - Microsoft Azure + BotsSolvion Trendwerkstatt - Microsoft Azure + Bots
Solvion Trendwerkstatt - Microsoft Azure + BotsHolzerKerstin
 
Microsoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveMicrosoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveThomas Gölles
 
Talking with bots - meetup presentation
Talking with bots  - meetup presentationTalking with bots  - meetup presentation
Talking with bots - meetup presentationAldis Ērglis
 
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш....NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...NETFest
 
Microsoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIMicrosoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIThomas Gölles
 
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveThomas Gölles
 
Building a bot with an intent
Building a bot with an intentBuilding a bot with an intent
Building a bot with an intentAbhishek Sur
 
3 different flavours of building chatbots with Microsoft
3 different flavours of building chatbots with Microsoft3 different flavours of building chatbots with Microsoft
3 different flavours of building chatbots with MicrosoftSammy Deprez
 
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017Marc D Anderson
 
Building conversation AI using Azure Bot & LUIS
Building conversation AI using Azure Bot & LUISBuilding conversation AI using Azure Bot & LUIS
Building conversation AI using Azure Bot & LUISNitin Raj
 
Enterprise Content Sharing Bots & AI
Enterprise Content Sharing Bots & AIEnterprise Content Sharing Bots & AI
Enterprise Content Sharing Bots & AISam Fernando
 
Team Me Up Scotty SPSOslo w.Extending
Team Me Up Scotty SPSOslo w.ExtendingTeam Me Up Scotty SPSOslo w.Extending
Team Me Up Scotty SPSOslo w.ExtendingThorbjørn Værp
 

Similar to Conversations as a Platform (20)

2 module07 cognitive services and the bot framework
2 module07 cognitive services and the bot framework2 module07 cognitive services and the bot framework
2 module07 cognitive services and the bot framework
 
Build a Great Conversationalist
Build a Great ConversationalistBuild a Great Conversationalist
Build a Great Conversationalist
 
Introduction to BOT Framework- Global Azure Bootcamp 2017
Introduction to BOT Framework- Global Azure Bootcamp 2017Introduction to BOT Framework- Global Azure Bootcamp 2017
Introduction to BOT Framework- Global Azure Bootcamp 2017
 
Da 0 all'AI conversazionale usando Microsoft Azure
Da 0 all'AI conversazionale usando Microsoft AzureDa 0 all'AI conversazionale usando Microsoft Azure
Da 0 all'AI conversazionale usando Microsoft Azure
 
20160930 bot framework workshop
20160930 bot framework workshop20160930 bot framework workshop
20160930 bot framework workshop
 
Build an Intelligent Bot
Build an Intelligent BotBuild an Intelligent Bot
Build an Intelligent Bot
 
Conversational AI: What's New?
Conversational AI: What's New?Conversational AI: What's New?
Conversational AI: What's New?
 
Solvion Trendwerkstatt - Microsoft Azure + Bots
Solvion Trendwerkstatt - Microsoft Azure + BotsSolvion Trendwerkstatt - Microsoft Azure + Bots
Solvion Trendwerkstatt - Microsoft Azure + Bots
 
Microsoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveMicrosoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspective
 
Talking with bots - meetup presentation
Talking with bots  - meetup presentationTalking with bots  - meetup presentation
Talking with bots - meetup presentation
 
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш....NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...
.NET Fest 2018. Олександр Краковецький. Microsoft AI: створюємо програмні ріш...
 
Microsoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIMicrosoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AI
 
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
 
Building a bot with an intent
Building a bot with an intentBuilding a bot with an intent
Building a bot with an intent
 
3 different flavours of building chatbots with Microsoft
3 different flavours of building chatbots with Microsoft3 different flavours of building chatbots with Microsoft
3 different flavours of building chatbots with Microsoft
 
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017
 
LUIS and Bots
LUIS and BotsLUIS and Bots
LUIS and Bots
 
Building conversation AI using Azure Bot & LUIS
Building conversation AI using Azure Bot & LUISBuilding conversation AI using Azure Bot & LUIS
Building conversation AI using Azure Bot & LUIS
 
Enterprise Content Sharing Bots & AI
Enterprise Content Sharing Bots & AIEnterprise Content Sharing Bots & AI
Enterprise Content Sharing Bots & AI
 
Team Me Up Scotty SPSOslo w.Extending
Team Me Up Scotty SPSOslo w.ExtendingTeam Me Up Scotty SPSOslo w.Extending
Team Me Up Scotty SPSOslo w.Extending
 

More from Joshua Drew

Microsoft Cognitive Services
Microsoft Cognitive ServicesMicrosoft Cognitive Services
Microsoft Cognitive ServicesJoshua Drew
 
Modern App Development using DreamSpark
Modern App Development using DreamSparkModern App Development using DreamSpark
Modern App Development using DreamSparkJoshua Drew
 
Website Debugging with Vorlon.js
Website Debugging with Vorlon.jsWebsite Debugging with Vorlon.js
Website Debugging with Vorlon.jsJoshua Drew
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with MicrosoftJoshua Drew
 
MS Ventures and BizSpark
MS Ventures and BizSparkMS Ventures and BizSpark
MS Ventures and BizSparkJoshua Drew
 
Windows Development Story with Xamarin
Windows Development Story with XamarinWindows Development Story with Xamarin
Windows Development Story with XamarinJoshua Drew
 
DevOps and Integrated Deployment
DevOps and Integrated DeploymentDevOps and Integrated Deployment
DevOps and Integrated DeploymentJoshua Drew
 
Delivering HTML5 and Modern Apps
Delivering HTML5 and Modern AppsDelivering HTML5 and Modern Apps
Delivering HTML5 and Modern AppsJoshua Drew
 

More from Joshua Drew (8)

Microsoft Cognitive Services
Microsoft Cognitive ServicesMicrosoft Cognitive Services
Microsoft Cognitive Services
 
Modern App Development using DreamSpark
Modern App Development using DreamSparkModern App Development using DreamSpark
Modern App Development using DreamSpark
 
Website Debugging with Vorlon.js
Website Debugging with Vorlon.jsWebsite Debugging with Vorlon.js
Website Debugging with Vorlon.js
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with Microsoft
 
MS Ventures and BizSpark
MS Ventures and BizSparkMS Ventures and BizSpark
MS Ventures and BizSpark
 
Windows Development Story with Xamarin
Windows Development Story with XamarinWindows Development Story with Xamarin
Windows Development Story with Xamarin
 
DevOps and Integrated Deployment
DevOps and Integrated DeploymentDevOps and Integrated Deployment
DevOps and Integrated Deployment
 
Delivering HTML5 and Modern Apps
Delivering HTML5 and Modern AppsDelivering HTML5 and Modern Apps
Delivering HTML5 and Modern Apps
 

Recently uploaded

From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Recently uploaded (20)

From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Conversations as a Platform

  • 2.
  • 3.
  • 4. “BOTS are like new APPLICATIONS that you can CONVERSE with” Conversations as a Platform
  • 5.
  • 6.
  • 7.
  • 8. Your bots - wherever your users are talking. Build and connect intelligent bots to interact with your users naturally wherever they are, from text/sms to Skype, Slack, Office 365 mail and other popular services Bot Framework
  • 9. • Build & connect intelligent bots • Interact naturally wherever your users are talking: • Text/SMS • Skype • Facebook • Slack • Email • GroupMe • Telegram • Web Chat • etc. Microsoft Bot Framework
  • 10. • Bot Framework is a Microsoft- operated service and an SDK • Bot Framework is one of many tools Microsoft offers for building a complete bot • Others include: LUIS, Speech APIs, Microsoft Azure, and more Microsoft Bot Framework
  • 11. Your conversation logic Logic Web Service Your Bot LUIS • Build with C# or Node.js • You host your bot • Dialogs to model a conversation • Many types of dialog • Natural Language Understanding (LUIS) Your Bot
  • 13. DEMO
  • 14. • Install Bot Framework Template - http://aka.ms/bf-bc-vstemplate • Install Bot Framework Emulator - https://aka.ms/bf-bc-emulator • Register your Bot with the Bot Connector – http://dev.botframework.com • Add AppId and AppPassword to your web.config • Publish to the web (not needed if using emulator) Bot Framework: Getting Started
  • 15. Bot Framework: ApiController [BotAuthentication] public class MessagesController : ApiController { public async Task<HttpResponseMessage> Post([FromBody]Activity activity) { ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl)); if (activity.Type == ActivityTypes.Message) { int length = (activity.Text ?? string.Empty).Length; Activity reply = activity.CreateReply($"You sent {activity.Text} which was {length} characters"); await connector.Conversations.ReplyToActivityAsync(reply); } else { HandleSystemMessage(activity); } var response = Request.CreateResponse(HttpStatusCode.OK); return response; } }
  • 16. Bot Framework: Dialog [Serializable] public class DemoDialog : IDialog<IMessageActivity> { public async Task StartAsync(IDialogContext context) { context.Wait(ConversationStartedAsync); } public async Task ConversationStartedAsync(IDialogContext context, IAwaitable<IMessageActivity> argument) { IMessageActivity message = await argument; await context.PostAsync(message.Text); PromptDialog.Text( context: context, resume: ResumeAndPromptMethodAsync, prompt: "Hi there I am a bot. What can I help with?", retry: "I didn't understand. Please try again."); }
  • 17.
  • 18. Put intelligence APIs to work Tap into the power of machine learning with easy-to-use REST APIs. Cognitive Services
  • 19. 13 APIs + 7 BING APIs • Vision – face, emotion • Speech - Recognition • Language – Spell Check, Understanding • Knowledge - Academic • Search – News, web Formerly Known as Project Oxford
  • 20. Emotion Speaker Recognition Speech Custom Recognition Computer Vision Face Video Linguistic Analysis Language Understanding Bing Spell Check Entity Linking Knowledge Exploration Academic Knowledge Bing Image Search Bing Video Search Bing Web Search WebLM Text Analytics Recommendations Bing Autosuggest Bing News Search Translator
  • 21. DEMO
  • 22. Connectors for Outlook Office 365 Connectors are a great way to get useful information and content into your Office 365 Group. Office 365 Connectors
  • 23. Get information and content into your Outlook Group Subscribe to your teams progress or follow important changes Currently over 50 connectors Outlook Group Connectors
  • 24. OGC: Get Started • //dev.outlook.com and Register your OGC • Grab your OGC Web Hook URL • Post to the Web Hook your OGC Cards and Sections
  • 25. Message message = new Message() { summary = "This is the subject for the sent message to an outlook group", title = msg }; message.AddSection(nSec1); message.AddFacts("Facts", facts); message.AddImages("Images", images); message.AddAction("check details here", "http://dev.outlook.com"); var result = await message.Send(webhookUrl); OGC: Get Started
  • 27. • Bot Framework Home Page • https://dev.botframework.com/ • Bot Builder SDK on GitHub • https://github.com/Microsoft/BotBuilder • Bot Framework Blog • https://blog.botframework.com/ • Building a Conversational Bot: From 0 to 60 • https://channel9.msdn.com/Events/Build/2016/B821 Bot Framework: Resources
  • 28. • Microsoft Cognitive Services • https://www.microsoft.com/cognitive-services • Microsoft Cognitive Services Samples & SDK • https://www.microsoft.com/cognitive-services/en-us/SDK-Sample • Microsoft Cognitive Services: Give Your Apps a Human Side • https://channel9.msdn.com/Events/Build/2016/B878 • Microsoft Cognitive Services: Build smarter and more engaging experiences • https://channel9.msdn.com/Events/Build/2016/B855 Cognitive Services: Resources
  • 29. • Outlook Group Connector • https://dev.outlook.com/Connectors • Outlook Developer Portal • http://dev.outlook.com/ • Outlook Group Connector API Sample • https://github.com/jdruid/OutlookGroupConnectorAPI Office 365 Connector: Resources

Editor's Notes

  1. Imagine a platform where language is the new UI layer. When we talk about conversations as a platform, there are three parts: -There are people talking to people. The new Skype Translator is a great example of this. -There is presence, or being able to enhance your conversations by the ability to be present and interact remotely. - And then there are personal assistants and bots.
  2. This new platform includes a personal digital assistant who knows you, knows about your world and is always with you across all your devices, helping you with your everyday tasks. And bots, with the capability to take the power of human conversations, and apply it to everything. We imagine a rich ecosystem of conversations, ones that include: people to people, people to your personal digital assistant, people to bots, and even personal digital assistants calling on bots on your behalf. That's the world that you're going to get to see in the years to come.
  3. Think of bots as new applications that you converse with. Instead of looking through multiple apps, or pages and pages of websites, you can call on any application as a bot within this conversational canvas. Bots are the new ‘apps,’ and digital assistants are meta apps, or like the new browsers that act as the windows into a world of smart bots. In this way, intelligence is infused into all of your interactions.
  4. Bot Framework is a Microsoft-operated service and an open source SDK.
  5. First, you have to build your bot. Your bot lives in the cloud and you host it yourself. You write it just like another web service component, using Node.js or C#, like an ASP.NET Web API component. The Microsoft Bot Builder SDK is Open Source, so you’ll see more languages and web stacks get supported over time. Your bot will have its own logic. [CLICK] but you’ll also need a conversation logic, suing dialogs to model a conversation. The Bot Builder SDK gives you facilities for this, and there are many types of dialogs included, from simple yes/no questions, to full Natural Language Understanding – or LUIS, one of the APIs provided in Microsoft Cognitive Services.
  6. The Bot Connector is hosted and operated by Microsoft. Think of it as the central router between your bots and the many channels available to communicate with your bots.