Wildfire Support for JEP-0060

I am just starting to develop with Wildfire and need to develop pubsub applications.

My client code can open the session and log-in. However, when I try to create a node, I get an error that indicates the feature is not supported. I am using Wildfire 3.1.1 and following specification XEP-0060 V1.9. My question: Am I doing something fundamentally incorrect or is JEP-0060 not really impemented in 3.1.1.

The request is:

Hey Brett,

Welcome to the Wildfire world!

Wildfire does have support for XEP-60. In your example you are sending the IQ packet to the server itself instead of the pubsub service hosted in the server. If you server name is example.com then the pubsub service will usually be located in pubsub.example.com. For more information about pubsub you can follow this link.

Regards,

– Gato

Thank you very much for this information. Although I Googled quite a bit on this topic, the information is sparse.

After digging and playing with the server, the only reference I could find to the service is through item discovery. I don’‘t know if this is a spec issue, but I don’‘t see any way to get to the pubsub service from the discovery except for using the “name”. The name is “Publish-Subscribe service” but it is not clear if this is globally unique (that is, would any client would know to look for this name). In most service discovery specs there is usually a registered GUID that a client can use to locate a service, but I didn’'t see one in the iq response.

Here is the req/resp I am referring to:

The only way a client would know how to locate the pubsub service is to either know that “pubsub.” is always pre-pended to the server name (radisson.labs.mot.com) and look for the jid, or, to always know that the name will be “Publish-Subscribe service”. Maybe it is just spec overload, but I didn’'t find any specific statements in the spec that indicated either one can be universally used by a client to locate the service.

Thanks for your assistance.

Brett Lindsley, Motorola Labs.

Hey Brett,

The way to discover that a disco#item is providing a pubsub service is by sending a disco#info to the disco#item. Service discovery is like a hierarchy of disco#items. Usually a client would use a sequence of disco#items and disco#info to traverse the hierarchical tree. As defined in the XEP-60 you will need to check for category=’‘pubsub’’ and type=’‘service’’. BTW, registered category and type values can be found here.

Regards,

– Gato

Hey all- according to this page:

http://www.igniterealtime.org/builds/wildfire/docs/latest/documentation/protocol -support.html

XEP-0060 is not supported by Wildfire, though this discussion says otherwise. What’'s the real story? Is it supported? If so, to what degree?

Thanks,

Dan

Hey Dan,

Hmm… Have you checked the list of supported JEPs of that link? Wildfire does have support for Pub-Sub. The supported version is 1.8.

Regards,

– Gato

Oops- my bad… I assumed the ‘’-’’ character meant “not supported”. Thanks for correcting me

Cheers,

Dan