Hi,
I’m using smack 4.4.4, I’ve published avatar data and then avatar metadata to the metadata node, the event is published successfully and sent to my roster, problem is, it’s not captured by PepEventListener. Below is my listener code and avatarmetadata event sent to the roster
Adding a listener to the PepManager
PepManager pepManager = PepManager.getInstanceFor(connection);
pepManager.addPepEventListener(AvatarMetadata.NAMESPACE, AvatarMetadata.class, new PepAvatarListener2());
I fear that I can only suggest to attach a debugger and follow the processing chain of the incoming message that carries the PEP notification to determine where the notification gets lost.
Thanks @Flow for your quick response and suggestion, I attached a debugger but a breakpoint only in the listener. Let me add one dipper beyond the listener.
There was a bug in some OF releases last year until [OF-2337] PEP publishing fails after reboot - Ignite Realtime Jira was merged… which prevents OF to push events to some subscribers / roster contacts… you should also check if you have a OF version with this bug installed
To be fair, you maybe wouldn’t need to test with a different server implementation by setting SmackConfiguration.DEBUG to true would have probably revealed that the notification was never received by the client (assuming that is what happened).
At the moment the notification is received by the client, challenge is, it’s not delivered to the PepEventListener
For clarity when adding a PepEventListener, three parameters are required, (String node, Class extensionElementType, PepEventListener pepEventListener)
PepManager pepManager = PepManager.getInstanceFor(connection);
pepManager.addPepEventListener(AvatarMetadata.NAMESPACE, AvatarMetadata.class, new PepAvatarListener2());
My question, is parameter “String node” for nodeId or node title…?