Challenge: Keeping Teams Updated on KPIs The Vtiger engineering team comprises smaller units focusing on performance, security, user experience, and customer issues. Each team has its own set of KPIs to track progress against goals. To ensure everyone stays informed, we wanted a way to update teams on their targets and current performance regularly. Solution: Google Spaces and VTAP Server Scripts and Jobs We utilize Google Workspace for internal communication, including Google Chats and Google Groups. Each team has a dedicated Google Space with members who directly influence the metrics and are responsible for achieving targets. Google Chats offers webhooks for sending automated messages to Spaces. You can configure these webhooks by navigating to Space Settings > Apps and Integrations > Webhooks > Add Webhook. For each team, we created a dedicated Space. For instance, the Ferrari group tracks performance issues captured by internal tools and reported by customers. These issues are categorized by impact and assigned priority levels with corresponding weightages. Critical issues affecting multiple users or servers receive the highest weight (e.g., 10 points), while issues confined to specific users or features receive lower weightage (e.g., 5 points). We aggregate all reported issues and calculate an index score. A higher score indicates a greater need for resolution, while a lower score signifies positive progress. The update frequency for each team varies based on their workflow. Customer-facing teams require daily updates at 10:00 AM to stay on top of critical issues. Performance teams, whose work involves analysis and validation, receive updates twice a week to allow for thorough investigation before releasing fixes. Creating a Scheduled Job for Daily Updates Here's how we set up a server-side job to remind the customer-facing team about their score every day at 10:00 AM: - Navigate to the Platform app in the main Menu and select Server Jobs.
- Create a new Server Job. These function similarly to cron jobs and have a two-minute execution limit.
Server Job Functionality Requirement: Send a daily notification about the customer issue index to Google Space. Solution: - We leveraged Vtiger's web service APIs to access report data.
- A custom report in Vtiger was created to count open issues categorized by priority.
- Issues were reported within Vtiger's Tasks module.
- The server script utilized VTAP's HTTP APIs to access the report and fetch data in JSON format.
- Scores were calculated and aggregated, and a template was prepared for sending the information to the Space webhook.
- Finally, VTAP's HTTP APIs within the server job transmitted the details to the Space.
- Note: More will be discussed about the new web service APIs in the coming months.
Scheduling: The server job frequency ensures timely information delivery to the group. Code |