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

Description

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.

http://www.jabber.org/registrar/querytypes.html

These URI queries would look like

xmpp:room@conference.jabber.org?join
xmpp:pubsub.shakespeare.lit?pubsub;action=subscribe;node=princely_musings

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, xmppuri.py. I've also modified gajim-remote.py 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 http://xmpp.org/registrar/querytypes.html

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.