Automated deployment - Serverless Bot Framework

Automated deployment

Before you launch the automated deployment, please review the architectural components and solution features discussed in this guide. Follow the step-by-step instructions in this section to configure and deploy the Serverless Bot Framework solution into your account.

Time to deploy: Approximately 5 minutes

Deployment overview

The procedure for deploying this architecture on AWS consists of the following steps. For detailed instructions, follow the links for each step.

Optional step: Create weather API keys

To create these API keys, see AccuWeather APIs Getting Started or the OpenWeatherMap API guide.

Step 1. Launch the stack

  • Launch the AWS CloudFormation template into your AWS account.

  • Enter values for required parameters: Bot Name, Bot Language, Bot Gender, Admin Email, Admin Name, Weather API Provider, Weather API key, and ChildDirected.

  • Review the other template parameters and adjust if necessary.

Step 2. Interact with the sample web application

  • Launch the web application.

  • Sign in using the credentials provided in the email.

  • Interact with the included bots.

Step 1. Launch the stack

This automated AWS CloudFormation template deploys the Serverless Bot Framework solution in the AWS Cloud.


You are responsible for the cost of the AWS services used while running this solution. Refer to the Cost section for more details. For full details, refer to the pricing webpage for each AWS service used in this solution.

  1. Sign in to the AWS Management Console and select the button below to launch the serverless-bot-framework AWS CloudFormation template.

                            Serverless Bot Framework launch button

    You can also download the template as a starting point for your own implementation.

  2. The template launches in the US East (N. Virginia) Region by default. To launch this solution in a different AWS Region, use the Region selector in the console navigation bar.


    This solution uses Amazon Cognito, which is currently available in specific AWS Regions only. Therefore, you must launch this solution in an AWS Region where Amazon Cognito is available. For the most current AWS service availability by Region, refer to AWS service offerings by Region.

  3. On the Specify stack details page, assign a name to your solution stack.

  4. Under Parameters, review the parameters for the template, and modify them as necessary. This solution uses the following default values.

    Parameter Default Description
    (Bot) Name Joe Specify the name that the bot responds to.
    (Bot) Language English Choose the language that the bot converses in.
    (Bot) Gender <Requires input> Choose the bot voice gender, male or female.
    AdminName <Requires input> Username for signing in to the sample web application.
    AdminEmail <Requires input> Email address to receive the credentials to sign in to the sample web application.
    Weather API provider Random Weather Generator

    Select Random Weather Generator, AccuWeather, or OpenWeather.

    Weather API Key <Optional input> API key from provider. Not required for Random Weather Generator.
    ChildDirected <Requires input> The use of this bot is subject to the Children’s Online Privacy Protection Act (COPPA).
  5. Choose Next.

  6. On the Configurate stack options page, choose Next.

  7. On the Review page, review and confirm the settings. Check the boxes acknowledging that the template will create AWS Identity and Access Management (IAM) resources and capabilities required.

  8. Choose Create stack to deploy the stack.

    You can view the status of the stack in the AWS CloudFormation console in the Status column. You should see a status of CREATE_COMPLETE in approximately five minutes.


    In addition to the primary Core, weather-forecast, leave-feedback, and order-pizza AWS Lambda functions, this solution includes the solution-helper and custom-resource functions, which run only during initial configuration or when resources are updated or deleted. Do not delete these functions as they are necessary to manage associated resources.

Step 2. Interact with the sample web application

After this solution successfully deploys in your AWS account, you can test the web application and interact with the sample bots using the following procedure.

  1. Navigate to the Outputs tab.

  2. Select the provided Sample WebClient URL.


    This solution performs best if you use the sample web application in a Google Chrome web browser, which supports speech to text functionality.

  3. Sign in and then interact with the sample bots and web application.

                Figure 2: Sample web application interface

Figure 2: Sample web application interface