SlideShare a Scribd company logo
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS re:INVENT
Building a Better .NET Bot with AWS
Services
T a r a W a l k e r
N i c k i l S o m a n n a
W I N 2 0 5
N o v e m b e r 2 8 , 2 0 1 7
What to expect from the workshop
 Learn how to create a Amazon Lex ChatBot from AWS
Management Console
 Learn how to create a backend for a Amazon Lex ChatBot with
AWS Lambda
 Learn how to add secure credentials to your Amazon Lex ChatBot
with Amazon Cognito
 Learn how to create a .NET/ASP.NET Core ChatBot solution using
AWS SDK for NET and Visual Studio
 Learn how to deploy a ASP.NET Core ChatBot solution with a
CI/CD pipeline to Amazon EC2 using AWS CodeStar
Agenda
• Introduction to Amazon Lex
• Hands-On: Create Your Lex ChatBot
• Introduction to AWS Lambda
• Hands-On: Create Your Lambda function for Lex ChatBot Fulfillment
• Intro to Amazon Cognito
• Hands-On: Create Your Cognito Federated Identity Pool
• Intro to AWS SDK for .NET
• Hands-On: Start Your ASP.NET Core Web ChatBot Solution
• Intro to CI/CD Tools for Deployment: AWS CodeStar
• Hands-On: Use CodeStar to Build & Deploy your ASP.NET ChatBot
Prerequisites
• AWS Account
• Visual Studio or Visual Studio Code
• AWS SDK for .NET Toolkit installed
• Basic Linux/Windows Based Environments with .NET
development
Introduction to
Amazon Lex
A new service for building
conversational interfaces
using voice and text
Text and speech language understanding: powered by the
same technology as Alexa
Enterprise ready: connect to enterprise systems via SaaS
connectors
Versioning and alias support
Build once and deploy to multiple platforms
Designed for builders: efficient and intuitive tools to build
conversations; scales automatically
Amazon Lex - Overview
Continuous learning: monitor and improve your bot
Amazon Lex – Multi-platform
Mobile
Messaging
Platforms Web IoT
SDKs: iOS &
Android
Mobile Hub
Facebook, Twilio
SMS and Slack
SDKs: Java, JavaScript,
Python, CLI, .NET, Ruby
on Rails, PHP, Go, & CPP
Integrated with
AWS IoT via AWS
Lambda
Build once and deploy to multiple platforms
Amazon Lex – Key Concepts
Utterances
Spoken or typed phrases that
invoke your intent
BookHotel
Intents
An intent performs an action in
response to natural language user input
Slots
Slots are input data required to
fulfill the intent
Fulfillment
Fulfillment mechanism for your
intent
Amazon Lex – Example: “Book a hotel”
Book Hotel
NYC
“Book a Hotel in
NYC”
Automatic Speech
Recognition
Hotel Booking
New York City
Natural Language
Understanding
Intent/Slot
Model
UtterancesHotel Booking
City New York City
Check In April 19th
Check Out April 21st
“Your hotel is booked for
April 19th”
Amazon Polly
Confirmation: “Your hotel
is booked for Nov 30th”
“Can I go ahead
with the booking?
a
in
Amazon Lex – Slot elicitation
Check In
4/19/2017
City
New York City
I would like to book a hotel
Sure, which city will you
be traveling to?
New York City
What date do you want to
check in?
April 19th
Amazon Lex – Dialog management
I would like to book a hotel
Sure, which city will you
be traveling to?
New York City
What date do you want to
check in?
Tomorrow
… And for how many
nights is this for?
City
Simple Declarative Model
Check-In Date
Check-Out Date
Slots
Which city will you be traveling to?
What date do you want to check in?
How many nights is this for?
Prompts
Build Multi-Turn Conversations
Easy Setup in Console
Amazon Lex – Customize conversations
I would like to book a hotel
Would you prefer to stay in
Downtown this time as well?
Yes
What date do you want to
check in?
April 19th
Sorry no availability. Would
a different location work?
Personalize conversation
based on user preferences
Validate user input and
re-prompt as necessary
Amazon Lex – Error handling
I want to …. {garbled} …..
Sorry can you please
repeat that?
I am having trouble understanding
Can you please say that again?
Sorry I am not able to
assist you at this time
Clarify by requesting user
to repeat
Uses a different
prompt every time
Hang up phrase to end the
conversation
Amazon Lex – Conversation context
Slot Values Intents Prompts ConfirmationsSession
Attributes
Slot Value
Slot Value
Conversation
Yes/No
Session
Attributes
Intent
Prompt
Lex maintains context by storing data throughout the conversation
Confirm
Amazon Lex – Dynamic conversation flow
Conversation
Session
Attributes
Second
Intent
Switch Intents
First Intent
Session
Attributes
Conversation
Chain Intents
Take out
Dine In
Dine In or
Take out?
Anything
else today?
Book a Car
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
HANDS-ON
Amazon Lex
Create Your Lex ChatBot
https://s3.amazonaws.com/win205reinvent2017/Lab1.pdf
Introduction to
AWS Lambda
A service for serverless compute.
Run code without provisioning
or managing servers..
AWS Lambda – Serverless computing
Run code without servers
Pay only for the compute time you consume.
Extend Other AWS Services with Custom Logic:
Triggered by events or called from APIs
• PUT to an Amazon S3 bucket
• Updates to Amazon DynamoDB table
• Call to an Amazon API Gateway endpoint
• Mobile app back-end call
Automated Administration & Automatic Scaling
Makes it easy to:
• Perform real-time data processing
• Build scalable back-end services
• Glue and choreograph systems
AWS Lambda – Service Usage
Authoring functions
• Author directly using the console
WYSIWYG editor
• Package code as a .zip and
upload to Lambda or S3
• Plugins for Visual Studio and
Eclipse
• Command line tools
Monitoring and logging
• Built-in metrics for
requests, errors, latency,
and throttles
• Built-in logs in Amazon
CloudWatch Logs
Flexible authorization
• Securely grant access to
resources, including VPCs
• Fine-grained control over
who can call your functions
Flexible use
• Call or send events
• Integrated with other
AWS services
• Build whole serverless
ecosystems
AWS Lambda – Programming Model
Bring your own code
• C#, Node.js, Java,
Python
• Bring your own libraries
(even native ones)
Simple resource model
• Select power rating from
128 MB to 1.5 GB
• CPU and network
allocated proportionately
• Reports actual usage
Programming model
• AWS SDK built in
(Python and Node.js)
• Lambda is the
“webserver”
• Use processes, threads,
/tmp, sockets normally
Stateless
• Persist data using Amazon
DynamoDB, S3, or Amazon
ElastiCache
• No affinity to infrastructure
(can’t “log in to the box”)
AWS Lambda – Amazon Lex Fulfillment
AWS Lambda
Integration
Return to
Client
User input parsed by Lex to
derive intents and slot values.
Output returned to client
for further processing
Intents and slots passed
to AWS Lambda function
for business logic
implementation
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
HANDS-ON
AWS Lambda
Create Your Lambda function for
Lex ChatBot Fulfillment
https://s3.amazonaws.com/win205reinvent2017/Lab2.pdf
Introduction to
Amazon Cognito
A service for adding access control,
authentication, data synchronization, and
user sign-up/sign-in quickly and easily to
your apps like mobile & web apps..
Manage authenticated
and guest users’
access to your AWS
resources
Federated
Identities
Synchronize user’s data
across devices and
platforms via the cloud
Data
Synchronization
Add sign-up and
sign-in with a fully
managed user
directory
Your User Pool
GuestYour own
auth
Amazon Cognito Identity Amazon Cognito Sync
Amazon Cognito – Identity and Sync
k/v data
Sign in with
Facebook
Or
Username
Password
Sign In
Or
Start as a guest
Authenticate via
3rd party Identity
Providers
Amazon Cognito Identity – User Experience
Guest Access
Your User Pool in
Amazon Cognito
Amazon Cognito
Identity provides
temporary credentials
to securely access
Your resources
DynamoDB
S3
Amazon
Lex
AWS
Lambda
IAM
Amazon Cognito – Lex & Federated Identities
Cognito User Identities
(Your User Pool.
Social Media,
SAML, or Unauthenticated )
User
Sign-in or Secure
Guest Access1
Returns Access
and ID Tokens
2
Cognito Federated
Identities
(Identity Pool)Get AWS scoped
credentials
3
Access
to AWS Services
4
Amazon
DynamoDB
Amazon
Lex
AWS
Lambda
IAM
IAM
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
HANDS-ON
Amazon Cognito
Create Your Cognito
Federated Identity Pool
https://s3.amazonaws.com/win205reinvent2017/Lab3.pdf
Introduction to
AWS SDK for .NET
Takes the complexity out of building .NET
applications with AWS Services
by providing .NET APIs
AWS SDK and tools for .NET architectureEXECUTION
PLATFORM
AWSSDK
LOW-
LEVEL
SERVICE
APIS
AWS
TOOLS
HIGHER-
LEVEL
UTILITY
APIS
.NET 4.5 .NET CORE PHONE STORE
SERVICE CLIENTS
AMAZON S3
TRANSFER UTILITY
AMAZON DYNAMODB
OBJECT PERSISTENCE
VM IMPORT RESOURCE API
AWS TOOLS FOR
WINDOWS
POWERSHELL
AWS TOOLKIT FOR
VISUAL STUDIO
ASP.NET SESSION
PROVIDER
TRACE LISTENER
…
AWS ENDPOINTS: REST API
.NET 3.5
AWS SDK for .NET – AWS Toolkit for Visual Studio
Full integration in Visual Studio
AWS SDK .NET – AWS Tools for Visual Studio Team Services
Deployment Tasks
• Elastic Beanstalk
• Lambda
• CodeDeploy
• CloudFormation
General Purpose Tasks
• S3 uploads/downloads
• Invoking Lambda functions
• Send SNS Messages
• AWS PowerShell commands
• AWS CLI commands
AWS Elastic Beanstalk AWS
Lambda
AWS
CloudFormation
Amazon
S3
AWS
CodeDeploy
AWS
CLI
AWS Tools for
Windows PowerShell
Amazon
SNS
AWS CodeCommit
AWS SDK .NET Comprehensive and powerful tools
MonitoringConfiguration
AWS Config
Amazon EC2
Run Command
AWS Tools for
Windows PowerShell
Develop and Deploy
Amazon
CloudWatch
AWS
CloudTrail
AWS
OpsWorks
AWS Toolkit for
Visual Studio
.NET SDK AWS CodeDeploy AWS
Cloud
Formation
AWS Elastic
Beanstalk
AWS
X-Ray
AWS Lambda
Introduction to
AWS CodeStar & AWS Dev Tools
Set up your entire continuous delivery
toolchain in minutes, allowing you to start
releasing code faster
AWS CodeStar
Develop on AWS in minutes:
Set up your entire CI/CD development environment and
programming tools for coding, testing, and deploying
Collaborate securely with your entire team:
Manage team access and membership to projects
Integrated issue tracking and project management:
Integrates Atlassian JIRA Software to easily manage and
monitor issues & activity from CodeStar dashboard
Support for popular programming languages:
Develop applications using language of choice including
C#, Java, JavaScript, PHP, Ruby, and Python
Release code faster:
Set up your entire continuous delivery toolchain in minutes
AWS CodeStar – Features
 Project Templates
 Team Access Management
with AWS IAM
 Managed Build Service with
AWS Code Build
 Unified Project Dashboard
using Amazon CloudWatch
monitoring service
 Issue tracking and project
management via integrated
Atlassian JIRA Software
 AWS CodeCommit and
GitHub integration for
Secure Hosted Git
Repository
 Automated App
Deployments with AWS
CodeDeploy and AWS
CloudFormation
 Integration of AWS
CodePipeline for
Automated Continuous
Delivery Pipeline
AWS CodeStar – Automated Continuous Delivery
Each CodeStar project creates and configures a
continuous delivery pipeline
Source Build Test Production
Third Party
Tooling
Software Release Steps:
AWS CodeCommit AWS CodeBuild AWS CodeDeploy
AWS CodePipeline
AWS CodePipeline
Continuous delivery service for fast and reliable
application updates
Model and visualize your software release process
Builds, tests, and deploys your code every time there is a
code change
Integrates with third-party tools and AWS
AWS CodeCommit
Secure, scalable, and managed Git source control
Automatic encryption at rest and in transit
Supports existing tooling
Highly available
AWS CodeBuild
Fully managed build service with pay-as-you-
go pricing
Support for compiling source code, running
tests, and building packages
Enables continuous integration and delivery
EC2
AWS CodeDeploy
Automates code deployments to any instance
Handles the complexity of updating your applications
Avoid downtime during application deployment
Deploy to Amazon EC2 or on-premises servers, in any
language and on any operating system
Integrates with third-party tools and AWS
AWS CloudFormation
Create templates of your infrastructure
CloudFormation provisions AWS resources based on
dependency needs
Version control/replicate/update templates like code
Integrates with development, CI/CD, management tools
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
HANDS-ON
AWS CodeStar
Build and Deploy your ASP.NET
ChatBot
https://s3.amazonaws.com/win205reinvent2017/Lab4.pdf
Best practices while building a bot
• Understand the conversation flow
• What information do you need from the conversation
• What is the intent/goal of the conversation
• Validate your input
• Handle errors gracefully
• Add clarification prompts if required
• Test, test and more testing
• Understand Metrics after your Bot is deployed in
production
Challenge 1 – Create a basic chat bot
• Be creative
• Think of real world problems that you want to solve
with this Chat Bot
• The sample below shows how you can create a basic
chat bot to launch EC2 instances based on the OS and
Instance type
• https://s3.amazonaws.com/wildrydes-
nickil/ChatOps+using+Amazon+Lex.docx
• The Slack part of the sample is not required. Feel free
to transpose the Lambda function from Python to .NET
Challenge 2 – Build a CI/CD pipeline using the
ChatBot you created
This .NET sample given below should give you a good
idea on how you can integrate all the pieces together.
https://github.com/awslabs/aws-lex-net-chatbot
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thank you!
Amazon Lex – A Complete solution
End to End
Speech to Intent
ASR+NLU
integrated into
one API
Dialog Management
Native support &
maintains context
Text to Speech
Amazon Polly
integrated into API
Business Logic
Native integration
with AWS Lambda
Deployment
One click
deployment
Security
Encrypted data in
transit & at rest
Scale
Completely
managed service
Analytics
Monitor and
improve

More Related Content

What's hot

Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text ChatbotsIntroducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Amazon Web Services
 
Building Speech Enabled Products with Amazon Polly & Amazon Lex
Building Speech Enabled Products with Amazon Polly & Amazon LexBuilding Speech Enabled Products with Amazon Polly & Amazon Lex
Building Speech Enabled Products with Amazon Polly & Amazon Lex
Amazon Web Services
 
amazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutesamazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutes
Vladimir Budilov
 
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
Amazon Web Services
 
Building a Chatbot with Amazon Lex and AWS Lambda Workshop
Building a Chatbot with Amazon Lex and AWS Lambda WorkshopBuilding a Chatbot with Amazon Lex and AWS Lambda Workshop
Building a Chatbot with Amazon Lex and AWS Lambda Workshop
Amazon Web Services
 
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
Amazon Web Services
 
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
Amazon Web Services
 
Building APIs with Amazon API Gateway
Building APIs with Amazon API GatewayBuilding APIs with Amazon API Gateway
Building APIs with Amazon API Gateway
Amazon Web Services
 
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
Amazon Web Services
 
Announcing Amazon Lex - January 2017 AWS Online Tech Talks
Announcing Amazon Lex - January 2017 AWS Online Tech TalksAnnouncing Amazon Lex - January 2017 AWS Online Tech Talks
Announcing Amazon Lex - January 2017 AWS Online Tech Talks
Amazon Web Services
 
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
Amazon Web Services
 
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API GatewayBuild a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
Danilo Poccia
 
Amazon Alexa and AWS Lambda
Amazon Alexa and AWS LambdaAmazon Alexa and AWS Lambda
Amazon Alexa and AWS Lambda
Amazon Web Services
 
Building Chatbots with Amazon Lex
Building Chatbots with Amazon LexBuilding Chatbots with Amazon Lex
Building Chatbots with Amazon Lex
Amazon Web Services
 
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
Amazon Web Services
 
Stephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
Stephen Liedig: Building Serverless Backends with AWS Lambda and API GatewayStephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
Stephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
Steve Androulakis
 
Introduzione ad Amazon Lex
Introduzione ad Amazon LexIntroduzione ad Amazon Lex
Introduzione ad Amazon Lex
Amazon Web Services
 
Serverless Authentication and Authorisation
Serverless Authentication and AuthorisationServerless Authentication and Authorisation
Serverless Authentication and Authorisation
Amazon Web Services
 
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
Amazon Web Services
 
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Amazon Web Services
 

What's hot (20)

Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text ChatbotsIntroducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
 
Building Speech Enabled Products with Amazon Polly & Amazon Lex
Building Speech Enabled Products with Amazon Polly & Amazon LexBuilding Speech Enabled Products with Amazon Polly & Amazon Lex
Building Speech Enabled Products with Amazon Polly & Amazon Lex
 
amazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutesamazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutes
 
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Man...
 
Building a Chatbot with Amazon Lex and AWS Lambda Workshop
Building a Chatbot with Amazon Lex and AWS Lambda WorkshopBuilding a Chatbot with Amazon Lex and AWS Lambda Workshop
Building a Chatbot with Amazon Lex and AWS Lambda Workshop
 
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
An Overview of AI at AWS: Amazon Lex, Amazon Polly, Amazon Rekognition, Apach...
 
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
AWS re:Invent 2016: Workshop: Building Serverless Bots on AWS - Botathon (DCS...
 
Building APIs with Amazon API Gateway
Building APIs with Amazon API GatewayBuilding APIs with Amazon API Gateway
Building APIs with Amazon API Gateway
 
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
Building ChatBots with Amazon Lex - AWS Summit Tel Aviv 2017
 
Announcing Amazon Lex - January 2017 AWS Online Tech Talks
Announcing Amazon Lex - January 2017 AWS Online Tech TalksAnnouncing Amazon Lex - January 2017 AWS Online Tech Talks
Announcing Amazon Lex - January 2017 AWS Online Tech Talks
 
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
Securing Serverless Workloads with Cognito and API Gateway Part I - AWS Secur...
 
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API GatewayBuild a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
Build a Server-less Event-driven Backend with AWS Lambda and Amazon API Gateway
 
Amazon Alexa and AWS Lambda
Amazon Alexa and AWS LambdaAmazon Alexa and AWS Lambda
Amazon Alexa and AWS Lambda
 
Building Chatbots with Amazon Lex
Building Chatbots with Amazon LexBuilding Chatbots with Amazon Lex
Building Chatbots with Amazon Lex
 
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
(DEV203) Amazon API Gateway & AWS Lambda to Build Secure APIs
 
Stephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
Stephen Liedig: Building Serverless Backends with AWS Lambda and API GatewayStephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
Stephen Liedig: Building Serverless Backends with AWS Lambda and API Gateway
 
Introduzione ad Amazon Lex
Introduzione ad Amazon LexIntroduzione ad Amazon Lex
Introduzione ad Amazon Lex
 
Serverless Authentication and Authorisation
Serverless Authentication and AuthorisationServerless Authentication and Authorisation
Serverless Authentication and Authorisation
 
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
Introducing Amazon Lex – A Service for Building Voice or Text Chatbots - Marc...
 
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
 

Similar to Building a Better .NET Bot with AWS Services - WIN205 - re:Invent 2017

AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
AWS re:Invent 2016: bots + serverless = ❤ (SVR304)AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
Amazon Web Services
 
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
Amazon Web Services
 
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
Amazon Web Services
 
Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.     Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.
Amazon Web Services
 
把您的 Amazon Lex Chatbot 與訊息服務集成
把您的 Amazon Lex Chatbot 與訊息服務集成把您的 Amazon Lex Chatbot 與訊息服務集成
把您的 Amazon Lex Chatbot 與訊息服務集成
Amazon Web Services
 
使用 Amazon Lex 在應用程式中建立對話式機器人
使用 Amazon Lex 在應用程式中建立對話式機器人 使用 Amazon Lex 在應用程式中建立對話式機器人
使用 Amazon Lex 在應用程式中建立對話式機器人
Amazon Web Services
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service
Integrate Your Amazon Lex Chatbot with Any Messaging ServiceIntegrate Your Amazon Lex Chatbot with Any Messaging Service
Integrate Your Amazon Lex Chatbot with Any Messaging Service
Amazon Web Services
 
AWS re:Invent 2020 Serverless Recap
AWS re:Invent 2020 Serverless RecapAWS re:Invent 2020 Serverless Recap
AWS re:Invent 2020 Serverless Recap
Daniel Zivkovic
 
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
Amazon Web Services
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Amazon Web Services
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Amazon Web Services
 
Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
 Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski... Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
Amazon Web Services
 
Amazon ECS Deep Dive
Amazon ECS Deep DiveAmazon ECS Deep Dive
Amazon ECS Deep Dive
Amazon Web Services
 
Amazon Amazon Elastic Container Service (Amazon ECS)
Amazon Amazon Elastic Container Service (Amazon ECS)Amazon Amazon Elastic Container Service (Amazon ECS)
Amazon Amazon Elastic Container Service (Amazon ECS)
Amazon Web Services
 
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
Amazon Web Services
 
Workshop: AWS Lamda Signal Corps vs Zombies
Workshop: AWS Lamda Signal Corps vs ZombiesWorkshop: AWS Lamda Signal Corps vs Zombies
Workshop: AWS Lamda Signal Corps vs Zombies
Amazon Web Services
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
Amazon Web Services
 
Deep Dive on Amazon Elastic Container Service (ECS) and Fargate
Deep Dive on Amazon Elastic Container Service (ECS) and FargateDeep Dive on Amazon Elastic Container Service (ECS) and Fargate
Deep Dive on Amazon Elastic Container Service (ECS) and Fargate
Amazon Web Services
 
Building Chatbots with Amazon Lex I AWS Dev Day 2018
Building Chatbots with Amazon Lex I AWS Dev Day 2018Building Chatbots with Amazon Lex I AWS Dev Day 2018
Building Chatbots with Amazon Lex I AWS Dev Day 2018
AWS Germany
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
Amazon Web Services
 

Similar to Building a Better .NET Bot with AWS Services - WIN205 - re:Invent 2017 (20)

AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
AWS re:Invent 2016: bots + serverless = ❤ (SVR304)AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
AWS re:Invent 2016: bots + serverless = ❤ (SVR304)
 
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
Serve Your Customers with AI from the Cloud: AWS Developer Workshop - Web Sum...
 
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
BDA306 NEW LAUNCH! An Introduction to Amazon Lex, your service for building v...
 
Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.     Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.
 
把您的 Amazon Lex Chatbot 與訊息服務集成
把您的 Amazon Lex Chatbot 與訊息服務集成把您的 Amazon Lex Chatbot 與訊息服務集成
把您的 Amazon Lex Chatbot 與訊息服務集成
 
使用 Amazon Lex 在應用程式中建立對話式機器人
使用 Amazon Lex 在應用程式中建立對話式機器人 使用 Amazon Lex 在應用程式中建立對話式機器人
使用 Amazon Lex 在應用程式中建立對話式機器人
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service
Integrate Your Amazon Lex Chatbot with Any Messaging ServiceIntegrate Your Amazon Lex Chatbot with Any Messaging Service
Integrate Your Amazon Lex Chatbot with Any Messaging Service
 
AWS re:Invent 2020 Serverless Recap
AWS re:Invent 2020 Serverless RecapAWS re:Invent 2020 Serverless Recap
AWS re:Invent 2020 Serverless Recap
 
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
Zombie Apocalypse Workshop by Warren Santer and Kyle Somers, Solutions Archit...
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - AWS Online Tec...
 
Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
 Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski... Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
Reimagining your user experience with Amazon Lex, Amazon Polly and Alexa Ski...
 
Amazon ECS Deep Dive
Amazon ECS Deep DiveAmazon ECS Deep Dive
Amazon ECS Deep Dive
 
Amazon Amazon Elastic Container Service (Amazon ECS)
Amazon Amazon Elastic Container Service (Amazon ECS)Amazon Amazon Elastic Container Service (Amazon ECS)
Amazon Amazon Elastic Container Service (Amazon ECS)
 
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
Building Multichannel Conversational Interfaces Using Amazon Lex - MCL312 - r...
 
Workshop: AWS Lamda Signal Corps vs Zombies
Workshop: AWS Lamda Signal Corps vs ZombiesWorkshop: AWS Lamda Signal Corps vs Zombies
Workshop: AWS Lamda Signal Corps vs Zombies
 
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
Integrate Your Amazon Lex Chatbot with Any Messaging Service - May 2017 AWS O...
 
Deep Dive on Amazon Elastic Container Service (ECS) and Fargate
Deep Dive on Amazon Elastic Container Service (ECS) and FargateDeep Dive on Amazon Elastic Container Service (ECS) and Fargate
Deep Dive on Amazon Elastic Container Service (ECS) and Fargate
 
Building Chatbots with Amazon Lex I AWS Dev Day 2018
Building Chatbots with Amazon Lex I AWS Dev Day 2018Building Chatbots with Amazon Lex I AWS Dev Day 2018
Building Chatbots with Amazon Lex I AWS Dev Day 2018
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Building a Better .NET Bot with AWS Services - WIN205 - re:Invent 2017

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS re:INVENT Building a Better .NET Bot with AWS Services T a r a W a l k e r N i c k i l S o m a n n a W I N 2 0 5 N o v e m b e r 2 8 , 2 0 1 7
  • 2. What to expect from the workshop  Learn how to create a Amazon Lex ChatBot from AWS Management Console  Learn how to create a backend for a Amazon Lex ChatBot with AWS Lambda  Learn how to add secure credentials to your Amazon Lex ChatBot with Amazon Cognito  Learn how to create a .NET/ASP.NET Core ChatBot solution using AWS SDK for NET and Visual Studio  Learn how to deploy a ASP.NET Core ChatBot solution with a CI/CD pipeline to Amazon EC2 using AWS CodeStar
  • 3. Agenda • Introduction to Amazon Lex • Hands-On: Create Your Lex ChatBot • Introduction to AWS Lambda • Hands-On: Create Your Lambda function for Lex ChatBot Fulfillment • Intro to Amazon Cognito • Hands-On: Create Your Cognito Federated Identity Pool • Intro to AWS SDK for .NET • Hands-On: Start Your ASP.NET Core Web ChatBot Solution • Intro to CI/CD Tools for Deployment: AWS CodeStar • Hands-On: Use CodeStar to Build & Deploy your ASP.NET ChatBot
  • 4. Prerequisites • AWS Account • Visual Studio or Visual Studio Code • AWS SDK for .NET Toolkit installed • Basic Linux/Windows Based Environments with .NET development
  • 5. Introduction to Amazon Lex A new service for building conversational interfaces using voice and text
  • 6. Text and speech language understanding: powered by the same technology as Alexa Enterprise ready: connect to enterprise systems via SaaS connectors Versioning and alias support Build once and deploy to multiple platforms Designed for builders: efficient and intuitive tools to build conversations; scales automatically Amazon Lex - Overview Continuous learning: monitor and improve your bot
  • 7. Amazon Lex – Multi-platform Mobile Messaging Platforms Web IoT SDKs: iOS & Android Mobile Hub Facebook, Twilio SMS and Slack SDKs: Java, JavaScript, Python, CLI, .NET, Ruby on Rails, PHP, Go, & CPP Integrated with AWS IoT via AWS Lambda Build once and deploy to multiple platforms
  • 8. Amazon Lex – Key Concepts Utterances Spoken or typed phrases that invoke your intent BookHotel Intents An intent performs an action in response to natural language user input Slots Slots are input data required to fulfill the intent Fulfillment Fulfillment mechanism for your intent
  • 9. Amazon Lex – Example: “Book a hotel” Book Hotel NYC “Book a Hotel in NYC” Automatic Speech Recognition Hotel Booking New York City Natural Language Understanding Intent/Slot Model UtterancesHotel Booking City New York City Check In April 19th Check Out April 21st “Your hotel is booked for April 19th” Amazon Polly Confirmation: “Your hotel is booked for Nov 30th” “Can I go ahead with the booking? a in
  • 10. Amazon Lex – Slot elicitation Check In 4/19/2017 City New York City I would like to book a hotel Sure, which city will you be traveling to? New York City What date do you want to check in? April 19th
  • 11. Amazon Lex – Dialog management I would like to book a hotel Sure, which city will you be traveling to? New York City What date do you want to check in? Tomorrow … And for how many nights is this for? City Simple Declarative Model Check-In Date Check-Out Date Slots Which city will you be traveling to? What date do you want to check in? How many nights is this for? Prompts Build Multi-Turn Conversations Easy Setup in Console
  • 12. Amazon Lex – Customize conversations I would like to book a hotel Would you prefer to stay in Downtown this time as well? Yes What date do you want to check in? April 19th Sorry no availability. Would a different location work? Personalize conversation based on user preferences Validate user input and re-prompt as necessary
  • 13. Amazon Lex – Error handling I want to …. {garbled} ….. Sorry can you please repeat that? I am having trouble understanding Can you please say that again? Sorry I am not able to assist you at this time Clarify by requesting user to repeat Uses a different prompt every time Hang up phrase to end the conversation
  • 14. Amazon Lex – Conversation context Slot Values Intents Prompts ConfirmationsSession Attributes Slot Value Slot Value Conversation Yes/No Session Attributes Intent Prompt Lex maintains context by storing data throughout the conversation Confirm
  • 15. Amazon Lex – Dynamic conversation flow Conversation Session Attributes Second Intent Switch Intents First Intent Session Attributes Conversation Chain Intents Take out Dine In Dine In or Take out? Anything else today? Book a Car
  • 16. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. HANDS-ON Amazon Lex Create Your Lex ChatBot https://s3.amazonaws.com/win205reinvent2017/Lab1.pdf
  • 17. Introduction to AWS Lambda A service for serverless compute. Run code without provisioning or managing servers..
  • 18. AWS Lambda – Serverless computing Run code without servers Pay only for the compute time you consume. Extend Other AWS Services with Custom Logic: Triggered by events or called from APIs • PUT to an Amazon S3 bucket • Updates to Amazon DynamoDB table • Call to an Amazon API Gateway endpoint • Mobile app back-end call Automated Administration & Automatic Scaling Makes it easy to: • Perform real-time data processing • Build scalable back-end services • Glue and choreograph systems
  • 19. AWS Lambda – Service Usage Authoring functions • Author directly using the console WYSIWYG editor • Package code as a .zip and upload to Lambda or S3 • Plugins for Visual Studio and Eclipse • Command line tools Monitoring and logging • Built-in metrics for requests, errors, latency, and throttles • Built-in logs in Amazon CloudWatch Logs Flexible authorization • Securely grant access to resources, including VPCs • Fine-grained control over who can call your functions Flexible use • Call or send events • Integrated with other AWS services • Build whole serverless ecosystems
  • 20. AWS Lambda – Programming Model Bring your own code • C#, Node.js, Java, Python • Bring your own libraries (even native ones) Simple resource model • Select power rating from 128 MB to 1.5 GB • CPU and network allocated proportionately • Reports actual usage Programming model • AWS SDK built in (Python and Node.js) • Lambda is the “webserver” • Use processes, threads, /tmp, sockets normally Stateless • Persist data using Amazon DynamoDB, S3, or Amazon ElastiCache • No affinity to infrastructure (can’t “log in to the box”)
  • 21. AWS Lambda – Amazon Lex Fulfillment AWS Lambda Integration Return to Client User input parsed by Lex to derive intents and slot values. Output returned to client for further processing Intents and slots passed to AWS Lambda function for business logic implementation
  • 22. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. HANDS-ON AWS Lambda Create Your Lambda function for Lex ChatBot Fulfillment https://s3.amazonaws.com/win205reinvent2017/Lab2.pdf
  • 23. Introduction to Amazon Cognito A service for adding access control, authentication, data synchronization, and user sign-up/sign-in quickly and easily to your apps like mobile & web apps..
  • 24. Manage authenticated and guest users’ access to your AWS resources Federated Identities Synchronize user’s data across devices and platforms via the cloud Data Synchronization Add sign-up and sign-in with a fully managed user directory Your User Pool GuestYour own auth Amazon Cognito Identity Amazon Cognito Sync Amazon Cognito – Identity and Sync k/v data
  • 25. Sign in with Facebook Or Username Password Sign In Or Start as a guest Authenticate via 3rd party Identity Providers Amazon Cognito Identity – User Experience Guest Access Your User Pool in Amazon Cognito Amazon Cognito Identity provides temporary credentials to securely access Your resources DynamoDB S3 Amazon Lex AWS Lambda IAM
  • 26. Amazon Cognito – Lex & Federated Identities Cognito User Identities (Your User Pool. Social Media, SAML, or Unauthenticated ) User Sign-in or Secure Guest Access1 Returns Access and ID Tokens 2 Cognito Federated Identities (Identity Pool)Get AWS scoped credentials 3 Access to AWS Services 4 Amazon DynamoDB Amazon Lex AWS Lambda IAM IAM
  • 27. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. HANDS-ON Amazon Cognito Create Your Cognito Federated Identity Pool https://s3.amazonaws.com/win205reinvent2017/Lab3.pdf
  • 28. Introduction to AWS SDK for .NET Takes the complexity out of building .NET applications with AWS Services by providing .NET APIs
  • 29. AWS SDK and tools for .NET architectureEXECUTION PLATFORM AWSSDK LOW- LEVEL SERVICE APIS AWS TOOLS HIGHER- LEVEL UTILITY APIS .NET 4.5 .NET CORE PHONE STORE SERVICE CLIENTS AMAZON S3 TRANSFER UTILITY AMAZON DYNAMODB OBJECT PERSISTENCE VM IMPORT RESOURCE API AWS TOOLS FOR WINDOWS POWERSHELL AWS TOOLKIT FOR VISUAL STUDIO ASP.NET SESSION PROVIDER TRACE LISTENER … AWS ENDPOINTS: REST API .NET 3.5
  • 30. AWS SDK for .NET – AWS Toolkit for Visual Studio Full integration in Visual Studio
  • 31. AWS SDK .NET – AWS Tools for Visual Studio Team Services Deployment Tasks • Elastic Beanstalk • Lambda • CodeDeploy • CloudFormation General Purpose Tasks • S3 uploads/downloads • Invoking Lambda functions • Send SNS Messages • AWS PowerShell commands • AWS CLI commands AWS Elastic Beanstalk AWS Lambda AWS CloudFormation Amazon S3 AWS CodeDeploy AWS CLI AWS Tools for Windows PowerShell Amazon SNS AWS CodeCommit
  • 32. AWS SDK .NET Comprehensive and powerful tools MonitoringConfiguration AWS Config Amazon EC2 Run Command AWS Tools for Windows PowerShell Develop and Deploy Amazon CloudWatch AWS CloudTrail AWS OpsWorks AWS Toolkit for Visual Studio .NET SDK AWS CodeDeploy AWS Cloud Formation AWS Elastic Beanstalk AWS X-Ray AWS Lambda
  • 33. Introduction to AWS CodeStar & AWS Dev Tools Set up your entire continuous delivery toolchain in minutes, allowing you to start releasing code faster
  • 34. AWS CodeStar Develop on AWS in minutes: Set up your entire CI/CD development environment and programming tools for coding, testing, and deploying Collaborate securely with your entire team: Manage team access and membership to projects Integrated issue tracking and project management: Integrates Atlassian JIRA Software to easily manage and monitor issues & activity from CodeStar dashboard Support for popular programming languages: Develop applications using language of choice including C#, Java, JavaScript, PHP, Ruby, and Python Release code faster: Set up your entire continuous delivery toolchain in minutes
  • 35. AWS CodeStar – Features  Project Templates  Team Access Management with AWS IAM  Managed Build Service with AWS Code Build  Unified Project Dashboard using Amazon CloudWatch monitoring service  Issue tracking and project management via integrated Atlassian JIRA Software  AWS CodeCommit and GitHub integration for Secure Hosted Git Repository  Automated App Deployments with AWS CodeDeploy and AWS CloudFormation  Integration of AWS CodePipeline for Automated Continuous Delivery Pipeline
  • 36. AWS CodeStar – Automated Continuous Delivery Each CodeStar project creates and configures a continuous delivery pipeline Source Build Test Production Third Party Tooling Software Release Steps: AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline
  • 37. AWS CodePipeline Continuous delivery service for fast and reliable application updates Model and visualize your software release process Builds, tests, and deploys your code every time there is a code change Integrates with third-party tools and AWS
  • 38. AWS CodeCommit Secure, scalable, and managed Git source control Automatic encryption at rest and in transit Supports existing tooling Highly available
  • 39. AWS CodeBuild Fully managed build service with pay-as-you- go pricing Support for compiling source code, running tests, and building packages Enables continuous integration and delivery EC2
  • 40. AWS CodeDeploy Automates code deployments to any instance Handles the complexity of updating your applications Avoid downtime during application deployment Deploy to Amazon EC2 or on-premises servers, in any language and on any operating system Integrates with third-party tools and AWS
  • 41. AWS CloudFormation Create templates of your infrastructure CloudFormation provisions AWS resources based on dependency needs Version control/replicate/update templates like code Integrates with development, CI/CD, management tools
  • 42. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. HANDS-ON AWS CodeStar Build and Deploy your ASP.NET ChatBot https://s3.amazonaws.com/win205reinvent2017/Lab4.pdf
  • 43. Best practices while building a bot • Understand the conversation flow • What information do you need from the conversation • What is the intent/goal of the conversation • Validate your input • Handle errors gracefully • Add clarification prompts if required • Test, test and more testing • Understand Metrics after your Bot is deployed in production
  • 44. Challenge 1 – Create a basic chat bot • Be creative • Think of real world problems that you want to solve with this Chat Bot • The sample below shows how you can create a basic chat bot to launch EC2 instances based on the OS and Instance type • https://s3.amazonaws.com/wildrydes- nickil/ChatOps+using+Amazon+Lex.docx • The Slack part of the sample is not required. Feel free to transpose the Lambda function from Python to .NET
  • 45. Challenge 2 – Build a CI/CD pipeline using the ChatBot you created This .NET sample given below should give you a good idea on how you can integrate all the pieces together. https://github.com/awslabs/aws-lex-net-chatbot
  • 46. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thank you!
  • 47. Amazon Lex – A Complete solution End to End Speech to Intent ASR+NLU integrated into one API Dialog Management Native support & maintains context Text to Speech Amazon Polly integrated into API Business Logic Native integration with AWS Lambda Deployment One click deployment Security Encrypted data in transit & at rest Scale Completely managed service Analytics Monitor and improve