Skip to content

Instantly share code, notes, and snippets.

@benbrown
Last active February 11, 2021 16:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save benbrown/396f1807bd45cb693ee8121b2a0d9ec3 to your computer and use it in GitHub Desktop.
Save benbrown/396f1807bd45cb693ee8121b2a0d9ec3 to your computer and use it in GitHub Desktop.
How to test the multibot template

How to use multi-bot template:

Get the yeoman generator

Run npm install inside the generator packages

cd generators/generator-preview-calendar-skill
npm install
cd ../generator-multibot
npm install

Run npm link inside the multibot generator to make it available on your system

npm link

Run the generator somewhere

yo multibot mymultibot

Build the root bot

cd mymultibot/mymultibot
dotnet restore mymultibot.csproj
bf dialog:merge mymultibot.csproj --imports dialogs/imported --output schemas/sdk

Build the calendar bot

cd ../calendar
dotnet restore calendar.csproj
bf dialog:merge calendar.csproj --imports dialogs/imported --output schemas/sdk

You should now be ready to open and run the bot project in Composer.

First, you need to grab the latest version of Composer and build it. https://github.com/microsoft/BotFramework-Compose

git clone https://github.com/microsoft/BotFramework-Composer.git
cd BotFramework-Composer
cd Composer
yarn
yarn build

// on windows
set NEW_CREATION_FLOW=true
yarn start

// on a mac
NEW_CREATION_FLOW=true yarn start

Start bot and test

  • Open the root bot in Composer.
  • Wait til the Calendar skill opens as well
  • Review any errors or warnings
  • Hit start in the upper right
  • Open root bot in emulator
  • Try to trigger the calendar skill

Success == seeing an orchestrator trace, then having the calendar skill respond with a message.

NOTE: The calendar skill must be further configured (see below) to actually perform calendar tasks.

Update root bot allowedCallers setting

  • Navigate to settings

  • Toggle advanced settings

  • Under skillConfiguration, set allowedCallers to ["*"]

  • Set an app id and app secret for this bot

Update Calendar bot allowedCallers setting

  • Navigate to settings

  • Toggle advanced settings

  • Under skillConfiguration, set allowedCallers to ["*"]

  • Set an app id and app secret for this bot

Configure calendar skill graph access

  • Set up an oauth client with graph access. DOCS TBD.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment