Deputy Integration
Submitted by tanderson on Fri, 20/12/2019 - 18:31
Starting with OpenVPMS 2.1.2, there is support to integrate Workflow - Rostering with Deputy:
- Two-way shift synchronisation is supported.
- Synchronisation is performed for OpenVPMS Roster Areas that have been mapped to a corresponding Area in Deputy.
- Synchronisation is performed for shifts starting today, and 30 days (by default) into the future. Historical shifts are not synchronised
- OpenVPMS shifts that cannot be synchronised will be flagged as an error in Workflow - Rostering
This requires:
- a Deputy account
- rostering to be configured
- a Permanent Token for plugin authorisation
- the Deputy plugin to be installed
- the Deputy plugin to be configured
1. Deputy Account
Deputy accounts can be obtained at https://www.deputy.com.
This includes free trial accounts.
2. Configuring Rostering
See https://openvpms.org/documentation/csh/2.1/how/rostering
3. Plugin authorisation token
In order for OpenVPMS to connect to Deputy, a Permanent Token must be generated.
There is an animated GIF showing this under the Permanent Token section of Deputy's API Authentication page.
- Go to https://<your deputy host>.deputy.com/exec/devapp/oauth_clients
- Click 'New OAuth Client'
- Fill out the fields:
Name: OpenVPMS
Redirect Uri: http://localhost - Click 'Save This OAuth Client'
- Click 'Get An Access Token'
This will display a prompt:Access Token is 9878a0425d4b6287131501751a407e19. This is a long life token that will last 10 years.
- Record your Access Token.
4. Plugin Installation
To install the Deputy plugin:
- Go to Administration - System - Plugins
- Click 'Install Plugin'
- Upload the Deputy plugin from <OPENVPMS_HOME>/plugins/available/openvpms-deputy-plugin.jar
For OpenVPMS 2.1.2, the plugin is named openvpms-deputy-plugin-2.1.2.jar - Log-out/in. This is required as the plugin archetypes aren't visible
5. Plugin Configuration
To configure the Deputy plugin:
- Go to Administration - Organisation
- Click New - Deputy Service
Fill out the fields:
- URL - the URL of your Deputy host. e.g.: https://3ec09100736332.au.deputy.com
- Access Token - the access token you generated in 3.5 above
- Click Apply
- If no Mappings are displayed, click Refresh
- Map Roster Areas and Employees
- Only those Roster Areas that are mapped will be synchronised.
- If a Roster Area is synchronised that has users that aren't mapped to Deputy Employees, affected shifts will be highlighted in the Workflow - Rostering
- Configure the synchronisation frequency
By default, synchronisation happens every 30 minutes.
This can be set to 5 minutes. Any lower frequency setting will be treated as 5 minutes.