Forum Discussion

LeeJinWoo's avatar
LeeJinWoo
Copper Contributor
Jul 11, 2023
Solved

How to deploy a Bot developed with Teams Toolkit (5.x) to a self-managed server?

Greetings, I'm developing a Workflow Bot or Command Bot as a pilot project for use in our organization. Using Teams Toolkit, local testing is automatically supported from app registration without m...
  • Nivedipa-MSFT's avatar
    Nivedipa-MSFT
    Jul 14, 2023
    Azure Bot Service is not mandatory for Teams bot development, and you can deploy your bot to a self-managed server or any other hosting platform that meets your requirements.

    Follow the below steps to configure the backend for a Teams bot on a self-managed server:

    Set up your server: Prepare your self-managed server or hosting environment by ensuring it meets the necessary requirements for hosting your bot's backend. This typically includes installing the required software, dependencies, and configuring network settings.

    Develop your bot's backend: Implement the backend logic for your Teams bot using the programming language and framework of your choice. This includes handling incoming messages, processing user interactions, and integrating with other services or APIs as needed.

    Expose your bot's endpoint: Make your bot's backend accessible over the internet by exposing the endpoint or URL where the bot is hosted. Configure the necessary firewall rules, network settings, and routing to allow external communication to reach your bot's endpoint.

    Configure the Teams app manifest: Update the Teams app manifest to specify the endpoint or URL where your bot's backend is hosted. This ensures that Teams knows where to send incoming messages and events for your bot.

    Register your bot with Azure Bot Framework: While Azure Bot Service is not mandatory, you can still register your bot with Azure Bot Framework. This provides you with capabilities like using the Bot Framework Emulator for local testing, managing bot channels, and utilizing the Bot Framework SDK for advanced features.

    Test and deploy: Test your bot by interacting with it in the Teams client or using tools like the Bot Framework Emulator. Once you are satisfied with its functionality, deploy your bot's backend to your self-managed server, ensuring that it is publicly accessible.

Resources