Just learning how to use Azure Bot Service and Azure Bot Framework
. I created a Bot in Azure portal following this Official Azure tutorial. Does this bot need to be published somewhere? I read somewhere that you Build-->Test-->Publish-->Evaluate
. I've tested it in Azure portal itself as explained here. Not sure about the Publish part of it.

- 21,967
- 37
- 158
- 332
3 Answers
How do you intend to use your bot? Azure Bots work by connecting them to existing channels like Skype, Facebook Messenger, SMS, etc or making REST calls from a custom application.
However you can also reach your bot directly from: https://webchat.botframework.com/embed/YOUR_BOT_ID?t=YOUR_TOKEN_HERE
You can embed it on any web page with this HTML tag:
<iframe src="https://webchat.botframework.com/embed/YOUR_BOT_ID?t=YOUR_TOKEN_HERE"></iframe>
Please note that both of these methods expose your token and would allow other developers to add your bot to their pages as well.
Bot ID is the name of your bot and you can get the token from the portal by going to your bot and choosing "Channel" blade and then clicking the "Get bot embed codes" link.
Edit: I went ahead and wrote a blog post on this topic https://medium.com/@joelatwar/how-to-embed-your-azure-web-app-bot-in-any-web-page-120dfda91fdc

- 4,760
- 4
- 12
- 26
-
1@JoelGuerraMSFT Please bear with me as this is a new adventure for me. In Azure portal (where I created the bot), where do I get the token (bot_id)? – nam May 18 '18 at 17:22
-
Bot ID is the name of your bot and you can get the token from the portal by going to your bot and choosing "Channel" blade and then clicking the "Get bot embed codes" link. I have added this to the original answer. – Joel Guerra May 18 '18 at 17:29
When you create a web app bot in the Azure portal, an App service for the same bot would have been created. You can check this by going to the resource group in azure where you had created the bot in. Now what the web app ensures is that, the bot is already online (available to the world), so its already published.
Now the next question that comes is, how to make the other people / users use the bot, so that's where the channel comes in. Consider channel as a medium by which you enable your bot for others to use with a much better user experience.
There are multiple channels available for the bot to be published in, and yes you can publish the same bot in all the channels. Like Joel Guerra mentioned, webchat is just one channel and the one which is enabled by default and the way to see it is :
- Open your bot in the Azure Portal and click Channels blade.
- Click Edit for the Web Chat channel
- Under Secret keys, click Show for the first key
- Copy the Secret key and the Embed code.
- Click Done
So the embed code is actually an iframe which you can place in your website or share with others who want to use your bot. Or you can use the src
of the iFrame too to reach the bot directly.
Again this is just one channel. You can take a look at the Configure channels documentation for steps to enable the bot in more channels like Skype, Microsoft Teams, Email, Facebook, Slack, Telegram, etc.

- 1,228
- 7
- 24
-
You have made the concepts much more clear. Thank you for posting your post as it will definitely help others understand the concept behind building and publishing a bot. I though your first two paragraphs on the subject were very helpful (at least to newbies like me). – nam May 20 '18 at 17:29
-
Happy that my answer added more clarity about azure bots to you :) – Ashwin Kumar May 20 '18 at 18:55
You can find information here Publish bot to BotService
Hope this helps.

- 209
- 1
- 2
- 11
-
Thank you Northern Virginian for providing the link. I'll use it when using Visual Studio. So far, I've not used Visual Studio for Azure Bot - but probably will in future. – nam May 18 '18 at 18:16