Ticket Summarizer (ConnectWise)
π Introductionβ
This agent is designed to assist account managers by providing detailed ticket summaries for a specified company.
By querying the ConnectWise Manage API, the agent identifies tickets that require attention and highlights patterns or trends.
Goal: Streamline the account managerβs workflow, enabling quick decision-making and better client management.
Target Audience: Account managers who need an overview of ticket statuses and trends for their assigned clients.
βοΈ Featuresβ
The agent provides the following key functionalities:
- Open Tickets: Identifies tickets that have been open for an unusually long time.
- High Logged Hours: Highlights tickets with significant time logged.
- Negative Sentiment: Flags tickets with customer notes or feedback indicating dissatisfaction.
- Critical Priority: Lists tickets marked as critical.
- Trends and Patterns: Observes and reports recurring issues or trends across tickets.
Example interaction:
Users can simply type:
"Give me ticket details about companyXYZ."
π‘ Usage Examplesβ
Example 1: Querying Ticket Details
Input:
Give me ticket details about companyXYZ.
Output:
- Open Tickets: 3 tickets open for over 10 days.
- High Logged Hours: 2 tickets with over 20 hours logged.
- Negative Sentiment: 1 ticket flagged with negative feedback.
- Critical Priority: 1 ticket marked as critical.
- Trends: Recurring issues with delayed responses.
Example 2: Insights for Another Company
Input:
Whatβs the ticket summary for companyABC?
Output:
- Summary of tickets following the same structure as above.
π₯οΈ Backend Architectureβ
The backend of the Ticket Summarizer agent is designed using a modular workflow.
Below is a detailed breakdown of each node and its functionality:
-
Input Data (JSON)
- Receives user input.
- Returns data in JSON format.
-
List All Companies (Python 3.9 Script)
- Queries the ConnectWise Manage API to retrieve all active companies.
- Filters companies to include only active clients.
- Outputs list of companies for validation in subsequent steps (alongside user input).
-
OpenAI Integration
- Processes the account managerβs query.
- Validates if the company name matches an active company.
- Prepares a structured response, including the company ID for ticket fetching.
-
FetchTicketDetails L14D (Python 3.9 Script)
- Retrieves ticket details for the last 14 days.
- Includes details like priority, status, and logged hours.
- Fetches additional ticket data:
- Notes: Internal and external notes.
- Time Entries: Logged hours and timestamps.
- Enriches ticket data for further processing.
-
Company-Level Ticket Summary (OpenAI)
- Generates a detailed summary with insights:
- Tickets open for too long.
- Tickets with high logged hours.
- Tickets with negative sentiment.
- Critical priority tickets.
- Patterns or recurring issues.
- Generates a detailed summary with insights:
-
Output Data (String Compiler)
- Formats final output using Synthreo String Compiler.
- Responds conversationally with structured summaries.
- Ensures user-friendly results, ready for immediate use.
π Key Notesβ
- Workflow combines Python scripts + OpenAI modules for real-time insights.
- Modular design enables easy debugging and scalability.
π Troubleshootingβ
If you encounter any issues, please contact:
π§ help@synthreo.ai
β FAQsβ
Q: What if I donβt have an API token?
A: Contact your ConnectWise Manage administrator to generate a token with required permissions.
It must include access to: companies
, tickets
, notes
, and time entries
.
Q: Can the agent summarize tickets for multiple companies at once?
A: No, it currently supports only one company at a time.
Q: How does the agent determine negative sentiment?
A: The agent uses natural language processing (NLP) to analyze ticket notes and feedback for negative language patterns.