Monday 13 July 2015

Workflow Max and Google Calendar Integration




OCTOBER 2015 UPDATE:
We have started on version 2.0.  The below features will be included in the next version:
Sync tasks
Syncing tasks with or without syncing Jobs has been a hotly requested feature. This will be the primary focus for phase 2 of this utility.

Multiple staff on a single job/task
One thing that we overlooked until it was too late in the development was assigning multiple staff to a single job or task, d'oh! Currently the utility works great with one person assigned to a job but it became clear that most people assign more than one person to a job or task.  This is priority 2 for this phase.

Iteration through assigned staff to obtain the registered calendar users
Some Workflow Max users had other staff not in their domain assigned to jobs and tasks such contractors or staff that have left but were not deleted. We will iterate through the list of staff and find any that match known registered calendars and assign the job or task to their Google calendar. Any that don't will be skipped.

Hint: you can create an externally shared calendar in your Google Apps domain and assign your contractor to that calendar in the WFM2GCAL setup. This way you don't need to pay for extra user license's in your domain.

Add URL link to job or task in calendar
Self explanatory but we will include the job or task reference URL to the calendar for your convenience.

Other misc sync improvements and bug fixes

AUGUST 2015:
Jobs and Calendar sync is complete! We are finally finished with this part of the utility so please enquire about a demo using the email address at the end of this post.

JULY 2015:
Hello!  It's been a busy month here at SM with so many new activities and projects starting and of course, finishing.  The latest to join the latter category is our Integration utility for Workflow Max jobs and Google Calendar which keeps your staff scheduling in sync and allows your staff to manage their work in a cross-platform tool they are familiar with, Google calendar.

The journey here has been a little tricky which i'll explain shortly but the support team at Workflow Max have been very helpful and our skilled developer has been able to achieve a very elegant and easy to use solution.

First lets start at the schedule for Jobs in Workflow Max (WFM from here on in)

Scheduling is easy with WFM but it requires users to log into the web console to view the scheduled timeline for jobs.  Our utility synchronises the relevant job details with Google Apps for Work staff calendars giving each staff member notifications, visibility and control from their mobile phones using an app that they are familiar with, Google calendar.

The schedule appears in each staff members calendar as an all day event (Only because WFM jobs are not able to be scheduled for different times of the day) and if the event runs over several days then it's created as an easy to read event spanning multiple days.
Updating the event from either WFM or Google Calendar (GCAL from here on in) syncs the changes on a scheduled basis (currently set to 10 mins which is an optimal time to ensure the quota limit is never breached).  We have run this here for a 24hr period syncing over 10 jobs to 3 calendars every 1 minute with very minor Google quota impact (97% of 1 Million calls remaining) and only 3 events on 1 instance had communications failure to the calendar API weshich has never occurred since.

Assigning the job to a particular staff member is also important as we want each staff member to have an easily accessible schedule while in or out of the office.  This is achieved by matching the WFM staff ID with the GCAL ID and then syncing the appropriate data to that staff members GCAL.  This means that notifications are taken care of by the native GCAL app on their respective device, why re-invent the wheel hey?


I might add, all events are viewable by every member of the team if your Google Apps admin has allowed this in the admin console. Otherwise at the very least each member can share their calendar around.

GCAL event title is made up of the important information from WFM including the job number, job name and client (This is easily customisable to suite your business needs). 

Changing the event title from GCAL has been restricted as this should only be controlled via the WFM console so every sync will overwrite the GCAL event title again.

Adding notes for staff members is also handy so we wanted to sync those too.  Changing or adding to the description in both WFM and GCAL syncs these with ease making adding some info a breeze.... I know, I'm sorry for my poor attempt at poetry.  

Conflict resolution was a little tricky as WFM doesn't give any time stamps correlating to it's last updateupdate in the API so we have created a very beautiful mechanism for fixing these.  When a conflict has occurred the utility will email the manager (or account that the utility runs under in Google Apps for Work) with a link to the Google Sheet database.  Upon opening the Google Sheet a user interface (UI) displays the conflicting data sets and allows the manager to make changes if necessary and upload to both WFM and GCAL with a single click.  For multiple conflicts the UI will cycle through these until completed.  Then the Sheet can be closed and synchronisation for those data sets will continue.

Need to do some house keeping?  Then remove all your current Jobs from all Calendars via the Workflow Max Setup menu in the sheet.  Neat and tidy.  This comes in handy for when we have some updates and new features and you can wipe your current Jobs and re-sync using the new version.  Soon to come we have built in Calendar Tags so every event that has ever been created by the app can be removed! 

We are very proud of what we have achieved here for our clients that use Workflow Max and Google Apps products and we will continue to enhance these in the near future.  If you would like to get on board we have a special offer on at the moment so head on over to the website and register your interest:


Or if you would like to request a feature please email us at:



Kris 
Chief Monkey
Shoosh Monkey Team
Instagram