The extension point allows you to delegate the routing responsibility of issues to an external platform.
By implementing the interface
ExternalRoutingConnector your plugin takes the responsibility to make routing decisions for issues and notifies the novomind iAGENT backend to fulfill the routing decision and to deliver the issues to the desired agent.
Please annotate your implementation of ExternalRoutingConnector with the runtime annotation ExternalRoutingConnectorPlugin to ensure, that your plugin will be loaded during runtime within the novomind iAGENT routing process and be assigned to any
ExternalRouting configured with the name specified by the 'name' parameter of the annotation
Plugin classes annotated with the ExternalRoutingConnectorPlugin annotation need to define the required annotation parameters.
@ExternalRoutingConnectorPluginwith the same name. Please ensure to implement all desired interfaces by your plugin class depending on the requirements e.g. if your plugin needs to be notified of agent availability changes it should also implement the interface AgentAvailabilityEventListener.
The extension point ExternalRoutingConnector must be implemented by your plugin to delegate the responsibility of making routing decisions for issues to the plugin or an external platform. The
ExternalRoutingConnector is initialized with an
RoutingWorkItemDecisionEventListener. The methods of this listener must be called to inform the novomind iAGENT system about the routing decisions of the plugin or external platform. In addition the
ExternalRoutingConnector has to implement several methods called from the novomind iAGENT system to start or cancel routing request or to retrieve their current state.
To provide configuration options for your custom ExternalRoutingConnector you can use the extension point ExternalRoutingConnectorTabProvider.