The standard way to send a message from Maximo to an external system is by setting up a Publish Channel and enabling Event Listener. By default, Integration Framework doesn’t re-publish a change if it comes from another inbound interface to prevent recursion on a bi-directional interface. Although I don’t agree with this logic as one-way integration is much more common, but anyway, IBM said it is easy to override that by extending the Event Filter javaclass.
The problem is, with the rise of automation script, no one wants java customization anymore. Of course, for massive systems where performance is critical, it is still the best choice. But, for
most medium-sized clients I work with, they’re all moving away from java
customization.
Anyway, an approach we can deal with this is not to use
Event Listener at all. Instead, we can trigger a publish from an Object Save
launch point from automation script using the example python code below:
from psdi.iface.mic import PublishChannelCachePublishChannelCache.getInstance().getPublishChannel("PUBLISH_CHANNEL_NAME>").publish(mbo, True)