You are here

PEP revisted

Sander brought my attention to a project by Armando Jagucki to produce a PEP server component for OpenFire and his recent advances. Since there is a test server at I wasn't late to test it.

Since he has used Coccinella (and others) for testing, I could see a risk that the first implementations would be used as a guideline when the protocol wasn't precise. When retracting a node I got an error, and after a long chat with Armando we figured out that the problem was a missing id attribute of the item tag. So the id for the published item must match the id of the retracted item. Pretty clear. But the PEP XEP shows xml without any id attribute. Also, Magnus PEP patch for ejabberd accepts item tags without an id. The id isn't actually necessary since there is only one item per pubsub node anyway.

If a client decides to use a fixed id, such as "current" or whatever, problem arises if you use one client for publishing, and then another one, with another habit, when retracting the node. You could always say that a client should always cache the id it gets when first notified when logging in, and then use it when retracting, or publishing, this creates an unnecessary complexity since PEP works very well without any item id attribute.