If you create any custom scenario- or messaging-related code for ATG Knowledge or ATG Self Service, you need to make sure that your code is in a module that is loaded on both the management and the agent-facing servers, and you need to make sure that your data is stored in the appropriate database tables. This includes customizations to any of the following ATG entities:
event
action
slot
targeter
message sink
message source
any other components referred to by
scenarioManager.xml
ordynamoMessaging.xml
If your customizations are for external scenarios only, you still need to make sure that your ATG Knowledge agent-facing server loads the code. It is not sufficient to add the customizations to the ATG Self Service server, because the ATG Knowledge server will not notice them, and will fail to launch the external Scenario Manager, causing your customizations to be ignored. Use the scenarioManager.xml
file to register such customizations, and load this file on both the ATG Knowledge and ATG Self Service servers.
ATG provides a module called personalization-minimal
by default, to allow you to make these customizations.
When creating custom events and actions, the ATG Knowledge and ATG Self Service implementations are very similar; they use the same set of methods to work with scenario events. They share the atg.svc.agent.events.EventTools
event logging mechanism with minor variations:
ATG Knowledge uses
AgentEventToolsImpl
to implement theEventTools
class.ATG Self Service uses
ATG SelfServiceEventToolsImpl
to implement theEventTools
class.