Submitted for CWB Hackathon 2025
Automate and enhance the handling of incoming customer service emails in a banking environment using modular AI-powered agents that collaborate intelligently to streamline operations.
The solution uses Azure Logic Apps to automate the end-to-end workflow of handling service requests via email. The steps are:- Trigger: When a new email arrives in the monitored inbox (
When a new email arrives (V2)). - Processing: The app invokes the EmailProcessor Azure Function (
service-request-handling-agent-EmailProcessor), which analyzes the email content, determines intent, extracts data, and interacts with the SR system. - Response: A reply email is automatically sent to the original sender (
Send an email (V2)).
The system uses the Handoff Orchestration pattern in Microsoft Semantic Kernel. Each agent has a focused role, and agents hand off control to the next stage in the workflow.
-
EmailTriageAgent Classifies the incoming email to determine if it’s a new service request or a follow-up.
-
SRCreatorAgent Handles service request creation based on email content, and passes control to ReplyGeneratorAgent.
-
FollowUpHandlerAgent Checks SR status for follow-up emails, and passes control to ReplyGeneratorAgent.
-
ReplyGeneratorAgent Generates the final customer reply using structured logic depending on the SR state (created, in progress, closed, or not found).
[EmailTriageAgent]
├──> [SRCreatorAgent] ─────┐
└──> [FollowUpHandlerAgent] ───┐
└──> [ReplyGeneratorAgent]
This modular pipeline enables intelligent, dynamic agent collaboration to automate decision-making and response generation in customer service workflows.
- Read and classify customer emails using LLM.
- Automatically create service requests via API.
- Reply with personalized responses using LLM.
- Handle follow-ups by checking SR status and sending updates.
- Orchestrate the flow using Semantic Kernel deployed on Azure Functions.
- Microsoft Semantic Kernel
- Azure Functions (.NET)
- Azure Logic Apps
- LLM (Azure OpenAI GPT-4.1-nano)
- GitHub API
- Azure Key Vault
- Azure Application Insights
Send a service request email to our monitored inbox at:
duuinh [at] outlook [dot] com
Try sending:
- A new service request (e.g., request a new credit card, report a lost card)
- A follow-up email asking for status updates on your existing requests
Watch how you get a personalized response — powered by AI agents working behind the scenes!