Hubstaff Activity Synchronization Log

This Activity Log represents the entire history of synchronization between the remote Hubstaff Activity dataset and the local WHMCS assets.

Synchronization between the two systems is performed daily during the standard WHMCS Cron operation. Reference Automation for more details and options.

Sync Targets

Hubstaff Activity syncronization is maintained by tracking the history of previous syncronization session maps.

During syncronization Hubstaff requests are cached for 1 hour. New records will not show until the cache has expired.

During syncronization if the Hubstaff Activity is not found in the local history, then the Project Mapping rule and Activity Sync Target addon setting will dictate what local record is created. There are three potential targets:

  • WHMCS Billable Items The description for a billable item is limited to a single line of text. The billable item once created can be moved into an invoice using the standard WHMCS invoicing conventions.
  • wbTeamPro Timelog Timelog records within wbTeamPro will be related to the WHMCS Client or wbTeamPro project, dependant on what Mapping rules are defined. wbTeamPro Project Timelogs can be automatically invoiced as part of the Project invoice automation.
  • wbTimeLog Debits Debit records within wbTimeLog will be related to the WHMCS Client and levied against the clients Credit balance. Credits are purchased in advance, with the option to invoice the client automatically when a negative credit balance exists.

Sync Target Templates

From the Hubstaff settings you can customize how the Hubstaff Activity and Activity Notes will be translated into the Sync Target. The templates are translated using the same Smarty handler used by WHMCS. The folliwing values can be used for the template:

Activity Record

Example Usage

{$activity.overall_minutes} minutes on {$activity.starts_at_formatted}

Available fields

{$activity.id}
{$activity.time_slot}
{$activity.time_slot_time }
{$activity.time_slot_formatted}
{$activity.starts_at}
{$activity.starts_at_time}
{$activity.starts_at_formatted}
{$activity.stops_at_time}
{$activity.stops_at_formatted}
{$activity.user_id}
{$activity.project_id}
{$activity.keyboard}
{$activity.mouse}
{$activity.mouse_hours}
{$activity.mouse_minutes}
{$activity.overall}
{$activity.overall_hours}
{$activity.overall_minutes}
{$activity.tracked}
{$activity.tracked_hours}
{$activity.tracked_minutes}
{$activity.paid}

Activity Note Record(s)

Notes are passed as a $notes array, to be looped and manipulated as needed.

Example Usage

{foreach from=$notes item=note}
{$note.recorded_at_formatted}: {$note.description}
{/foreach}

Available fields

{$note.id}
{$note.description}
{$note.time_slot}
{$note.time_slot_time}
{$note.time_slot_formatted}
{$note.recorded_at}
{$note.recorded_at_time}
{$note.recorded_at_formatted}
{$note.user_id}
{$note.project_id}

Abandoned Sync Targets

If a local asset is deleted after a Hubstaff Activity record has been synchronized (resulting in the creation of a WHMCS Billable Item for example), the Activity Log will show the history with an indication that the local asset is no longer found.