Automatically Updating Project Time Tracked on Dashboard and Trigger Notification Alerts

Introduction

HookSupport is an ongoing development support portal. A service offered by Zyxware Technologies, HookSupport is a way for us to help Drupal site owners of any size. For this, we had to track the time taken to do each of the tasks in the project base. We chose Time Doctor for this though there are many tracking systems available, such as Hubstaff, RescueTime, ManicTime, etc. The advantage of Time Doctor over these are cost-effectiveness, application tracking, etc.

Time Doctor

Time Doctor uses an interactive approach to ensure that employees are actually on top of their assigned tasks. It is primarily designed for managers, as a way to monitor performance. Employees enter their work priorities and specify the tasks they are working on. Then, the app uses the compiled data to generate various reports, including timesheets for payroll purposes, poor time use reports, absence/late time reports, web usage reports, and so on. Time Doctor offers screenshot software, website and application tracking, and time-based reporting. Time Doctor provides detailed analytics of where time is spent on a project. Time Doctor API allows the software application to interact directly with the Time Doctor application. The API includes both JSON and XML format as a response and also has both read and write requests. So we can pull data from the Time Doctor API and also add new projects or tasks to Time Doctor through the API.

 

 

Pain Areas

We faced some issues during the development time of HookSupport (HookSupport.com): we had to manually add the time tracked in Time Doctor to the HookSupport dashboard. For this, we first downloaded the daily tracked details from time doctor as an excel sheet converted this to another excel sheet in a defined format, and added this file to our system. This method was very time consuming and needed daily human effort which took away more time than was necessary for Drupal project time tracking in our system.

Approach

To overcome this problem we created a module. This module helps to track Drupal developer’s time from the Time Doctor and uploads it to the dashboard automatically.

Tools and Platforms:

Drupal 7

 

 

Third Party Integrations:

Time Doctor API

Solutions and Results

After creating the Time Doctor module in Drupal 7 (https://www.drupal.org/project/time_doctor) we automated the time tracking mechanism of our projects. This module was also contributed to Drupal.org. The impact is that the time tracked in Time Doctor automatically gets tracked in our custom project without any additional time and manual input or human effort. Thus we can reduce the consumed time from the total available hours in our system. And thus notify or alert the dependencies as the time consumed reduces below a certain value.

References

1. https://webapi.timedoctor.com/doc/#overview