Spark support for XEP-147 (URI scheme)

Any way to find out what uri schemes Spark supports? Seems to work with ?message and ?join (XEP-0045), but ?subscribe doesn’t seem to work.

Using Openfire 3.7.0 and Spark 2.6.0

what do you mean with ?subscribe as uri scheme? you are able to register yourself with a chat room.

I have an email application that shows that status of the mail originator and if the sender is not currently in the recipient’s roster, I want to create a URI that can be clicked to launch the registered XMPP client (Spark) to exchange contact details with that user. This would be done with xmpp:user@domain?subscribe. See section 3.3 of the XEP @

?subscribe is nothing to do with chat rooms, it’s about Presence subscription. ?join (from XEP 0045) @ is about chat room.

So, I am really trying to find out what Spark supports in terms of the query types mentioned in those XEP documents. Another example is ?remove, which allows you to remove an existing user from your roster, so the URI would be xmpp:user@host?remove

ok, now i got it! that is amazing. i didn’t know that spark supports uri scheme.

i checked the soruce code for the implementation and it seems that spark only supports ?join and ?message (with body tag). as you already mentioned ?subscribe is not yet implemented.

we should open a ticket for it if someone needs it. but i don’t think that it will be implement very soon…

Hi holger, thanks for the reply. Can you point me at the source where it handles these things. It does not look like Spark is very much developed now, but I’d like to be able to use some of these URIs, so maybe I see how easy it is to make some patches which I can then feed back.

you will find it in (package org.jivesoftware.spark) from line 811 to end of file. its handled by methods like

**public void handleURIMapping(String arguments). **maybe you will need about 2 or 3 hours to implement the ?subscribe URI scheme

added ticket:


done in revision: 12505

Cool, done before I get a chance to look at it!

Thanks a lot!