SprintBot is a dedicated Microsoft Teams assistant designed to streamline our internal Sprint Planning and execution. It bridges the gap between our daily communication in Teams and our project tracking in Excel.
Updating spreadsheets manually is tedious and prone to errors. SprintBot allows developers and QA to update their task status directly within the chat interface they use every day, ensuring our data is always real-time.
- Automatic Identification: The bot recognizes users by their Teams email and filters the task list to show only relevant items.
- Status Management: Update workflow stages (Dev-WIP, QA-WIP, Done) with a single click.
- Smart Validation: The bot prevents invalid data entry and enforces mandatory remarks if a Planned Date is missed.
- Deployment: hosted on Azure App Service with "Always On" reliability.
- Language: Python 3.11
- Framework: Microsoft Bot Framework SDK (AIOHTTP)
- Data Store: Excel (OpenPyXL for direct file manipulation)
- Hosting: Azure App Service (Linux Container)
To run this bot locally for testing:
-
Install Dependencies: pip install -r requirements.txt
-
Run the Server: python app.py
-
Emulate: Connect using the Microsoft Bot Framework Emulator at http://localhost:3978/api/messages
This repository is deployed to Azure via Zip Deploy. The production environment utilizes persistent storage to ensure the Excel sheet retains data across restarts.
Maintained by the Engineering Team.