Opinio can be integrated with existing back-office business systems and data in several ways, either by making use of built-in features in the product itself or by making your own customized plugins.
Import of invitee lists
From Opinio version 5.2 it has been possible to import invitee lists exported from any back-office business system or data storage, as long as they follow a certain but simple format (see invitees). Except from the mandatory email address, the information passed into Opinio can be any information about the invitees, such as customer id, name, address, etc. This information will then be tied to the respondent, and is viewable in the "Single response screen" together with the rest of the response. The custom data is included in the data export. The exported data can then be linked with the existing data within the enterprise for further analysis.
Save additional data through survey URL
In addition to having external invitee information passed along to the respondent, an option to save additional data ("opdata_" parameters) through the survey URL was added in Opinio 5.2 (see the section called “Other survey information”).
NOTE: If you like the URL parameters to be automatically saved with the respondents the survey attribute "Save URL parameters" must be turned on. If you rather would like to have a plugin to handle these values this survey attribute should be turned off.
Making customized plugins
By implementing your own plugins you are able customize and extend Opinio's capabilities. Opinio provides a very flexible plugin framework, where the possibilities are many and the limitations are few. One example on how to let a plugin handle integration with Opinio is the "Survey LDAP authentication" plugin found at Opinio Plugin Central. This plugin makes it possible to restrict access to Surveys based on users/passwords stored in an already existing LDAP directory.
As mentioned above, "opdata_" parameters can be included in the survey URL and, if requested, be automatically saved with the respondent. There is also an option to let a plugin handle these values. It is up to the enterprise and the plugin author how to construct the survey URLs to contain appropriate data. The included "opdata_" parameters can be available for the plugin, through the use of Opinio Events and implementation of Plugin Interfaces. See the Plugin API JavaDoc for more information.
In addition to the possibility of retrieving the custom data parameters ("opdata_.."), it is possible for a plugin to set custom data. These data will be carried across the survey pages, and eventually saved by Opinio, if auto-save is turned on for custom data. If saving is turned off, the plugin can be written to handle this data appropriately for the particular plugin in question.
For example, the PreSurveyPageEvent can be used to set custom data in the request. In the plugin handleEvent method, you can write code like:
/* …after casting to the correct event type… */
HashMap resources = preSurveyPageEvent.getResources();
HttpServletRequest request;
request = (HttpServletRequest) resources.get("HttpServletRequest");
request.setAttribute("opdata_employeeId", employeeId
When handling the "opdata_" parameters in a plugin, please note that any values set on the request object after last survey page (when the respondent has completed) will never be set in the respondent attributes. In this case the values should be set directly on the respondent. That is because Opinio is only able to get "opdata_" values that exist in the request's parameter map. "opdata_" values set in the request object by a plugin are copied to the hidden fields after the request has been processed by Opinio, and will exist in the parameter map the next loop.