I've built a Microsoft Bot (for Teams) in nodeJs that I'd like to host on Azure.
I have created a bot in https://dev.botframework.com/bots and I can run my bot locally (via ngrok) and connect to the bot.
I didn't create the bot using the bot-builder/Yeoman, just a simple nodeJS app.
I see in the docs that the example of creating a bot and deploying uses bot-builder and the azure CLI. Is there a manual way I can get my nodeJS onto Azure and run as a bot?
Thanks
You are correct. The Microsoft botframework documentation specifies the use of Azure CLI and botbuilder to deploy a bot on Azure. However as an alternative to the Azure CLI, you can also publish from Visual Studio Code using the Azure App Service extension.
In order to make use of Azure, go to the Azure portal and create a web app bot resource via
'Create a resource' > 'AI + Machine Learning' > Web App Bot
Fill out this form with your bot's name and your subscription and resource group in Azure. You can select any nodeJS template, as it will be overwritten by your first deployment. Wait for your bot to finish generating on Azure portal.
In visual studio code, click on the Azure Tab. It will show a blue arrow that reads "deploy". Click on this and you will be prompted to log in to Azure.
Once you sign in, go on and select the folder that contains your bot, and select your subscription, and then select the Azure portal bot you generated earlier. This will deploy your bot to Azure, and it will be accessible within its blade on your dashboard.
One more way is to use the instructions in the Azure Portal build menu. You will need to add "scripts": {"azure-publish": "node publish.js"} to your package.json. Online Code Editor doesn't do it for you, so it has to be manually done if downloading code zip file.
Hope this helps!!