Good afternoon. Our engineering team is currently developing a custom real-time dashboard to monitor agent occupancy and adherence. We are utilizing a MuleSoft integration to bridge Genesys Cloud with our internal Apache Kafka cluster. We have successfully subscribed to the v2.users.{id}.activity and v2.users.{id}.adherence notification topics. However, I am encountering significant challenges with the JSON schema of these events. The data appears to be fragmented and we are struggling to reconstruct a coherent ‘Current State’ for each agent. Is there a standardized enterprise methodology for parsing these real-time notifications to build an accurate adherence model, or should we be utilizing a different set of topics for this purpose?
Hey! I feel your pain. I managed a similar setup for a 800-agent enterprise in Japan. The notification topics are notoriously noisy and they do not send a full snapshot every time.
What you have to do is maintain a ‘Local State’ in your middleware. When the first event comes in, you save it.
Then every subsequent event is just a delta that you have to apply to your local record. If you miss one event, your whole dashboard goes out of sync! We ended up having to do a ‘Full Refresh’ via the Platform API every thirty minutes just to make sure our Kafka stream was still matching reality.
It is a bit of a hack, but it works!
Hello. To add to the previous comment, you must ensure that your after-hours and emergency routing scenarios are properly accounted for in your adherence logic. When we designed our emergency routing dashboards, we found that the adherence topic sometimes lags during high-volume periods.
You should consider subscribing to the v2.analytics.queues.{id}.observations topic as well. By correlating the user’s presence state with the queue observation data, you can build a much more robust model of true agent occupancy that accounts for both the WFM schedule and the actual interaction flow.
It requires more complex parsing in MuleSoft, but it is the only way to get a single source of truth.