Plug-ins
What are plug-ins?
The ORTEC Relevance Plug-in system is designed to allow our customers and third parties to extend Relevance Apps with customer-specific functions or integrations.
Plug-ins can be configured in the dashboard and can make use of user profile information already available in the platform (e.g. single sign on). What information is passed to a plug-in is configured in the dashboard.
Examples of (existing) plug-ins:
- ORTEC Workforce Scheduling Roster plug-in
- Matchwinner, a soccer World Cup game
- Lunch Menu plug-in
- Roombooking plug-in
- Hour-entry plug-in
- Safety / Facility reporting plug-in
In essence, a plug-in is a mini-website that offers a certain (useful) function to users.
How does it work?
Our (native and web) apps contain hooks that can be configured to launch a plug-in. By configuring a plug-in in the dashboard, an endpoint is dynamically created that can be pointed to the plug-in URL.
Hooks
Our apps support these launch points:
- a specific button or icon
- a channel tile
- an announcement
Profile information
User profile information that is required in the plug-in is configured in the dashboard. This information is encrypted by the platform backend and gets sent to the plug-in as a url parameter called "token". It contains a json web token (JWT) with the configured profile information. The token is encrypted using a unique certificate per plugin and has a (configurable) limited validity.
Plugins in webapps
Our webapps support these plugin rendering options:
- show plugin in full view iframe within the current tab.
- open plugin page in a new tab
Important note: Various browsers impose limitations on the use of third-party cookies in iframes either by default (e.g. safari) or optionally (e.g. chrome). One of the following approaches can be followed in this case:
- the webapp is configured to launch the plugin in a new tab in case a specific browser is identified (e.g. safari)
- have a plugin that does not rely on cookies
- the plugin is deployed on the same domain as the webapp
For more info on cookies in iframes:
- https://web.dev/samesite-cookies-explained
- https://web.dev/samesite-cookie-recipes