Opened 10 years ago

Last modified 4 years ago

#2133 new enhancement

Support XMPP URI query types (JEP-0147)

Reported by: beerfan Owned by: asterix
Priority: normal Milestone:
Component: None Version:
Severity: normal Keywords:
Cc: travis@… Blocked By:
Blocking: OS: All


Websites are starting to use URIs which link to xmpp resources. Other applications also have a need to send a query to Gajim using an XMPP URI. Gajim should probably add support for the standard XMPP URI queries as detailed at the URL below.

These URI queries would look like

Attachments (2)

gajim.fix2133.patch (3.2 KB) - added by misc 10 years ago.
Add preliminary of the xmpp uri support
gajim.2133update.patch (10.7 KB) - added by baggend 9 years ago.

Download all attachments as: .zip

Change History (16)

comment:1 Changed 10 years ago by asterix

  • Summary changed from Consider supporting XMPP URI query types to Support XMPP URI

comment:2 Changed 10 years ago by Liorithiel

comment:3 Changed 10 years ago by misc

Here is a preliminary patch, that add two things :

  • a join_room command, that simply join a room
  • a handle_uri command, that take a uri and try to do the right thing ( ie, for the moment, join the room if there is ?join, or open a chat dialog ).

I plan to add more, but as smaller patch are easier to review, test ( and to write ), I try to keep this one as simple as possible.

What do you think about it ?

Changed 10 years ago by misc

Add preliminary of the xmpp uri support

comment:4 Changed 10 years ago by jim++

  • Milestone set to 0.12

comment:5 Changed 10 years ago by asterix

(In [7a2dbe732f740a88870ad1dcabd6a605cb1e2ebb]) [misc] handle uri like room_jid?join. see #2133

comment:6 Changed 10 years ago by asterix

it's in. I justmodified it a bit to not have room_jid initialized to room_jid?join in join room dialog.

comment:7 Changed 9 years ago by baggend

  • OS set to All

I've added a new module for handling XMPP URI's as defined in RFC 4622, I've also modified to use this module for the handle_uri function, as well as a minor fix to the argv length checking that was conflicting with how some URI's were being handled.

Currently supported methods for handle_uri are join, message (with body and subject support), roster, remove, and vcard.

xmppuri currently only implements about 30% of the the RFC spec. I will be adding more functionality as I have time. Most of it won't be directly applicable to the code in gajim-remote, but there's currently no RFC 4622 Python library out there so it needs to get done.

Changed 9 years ago by baggend

comment:8 Changed 9 years ago by baggend

A few more bug fixes and added support for the 'type' key for the message querytype. Looking more at this code, I think this is the wrong way to be implementing this. I think moving forward the dbus handler should do the URI handling, not the gajim-remote frontend. This way other applications that talk to gajim over dbus could send URI's directly.

comment:9 Changed 9 years ago by nicfit

  • Cc travis@… added

comment:10 Changed 8 years ago by steve-e

  • Milestone 0.12 deleted

Sorry, no time.

comment:11 Changed 7 years ago by asterix

body attribute for message has been added, and roster action too. see #5195

comment:12 Changed 7 years ago by johnny

  • Type changed from task to enhancement

comment:13 Changed 7 years ago by Zash

The link is broken, the page is now at

comment:14 Changed 4 years ago by Yann Leboulanger <asterix@…>

(In [eede7f0239f8]) gajim-remote handles ?message in URIs. Fixes #6804, see #2133 Patch based on joeka's one in #6804

Note: See TracTickets for help on using tickets.