Opened 11 years ago

Last modified 3 years ago

#5811 new plugin request

XMPP, XEP-0136: Message Archiving -support

Reported by: olmari Owned by: deryni
Milestone: Component: XMPP
Version: 2.4.1 Keywords: xmpp, chat, history, log, XEP-0136
Cc: mcepl, ildar, lkraav, f3nr1s, NickBrown, marsjaninzmarsa

Description

http://www.xmpp.org/extensions/xep-0136.html

I'd really need Pidgin to support this. Essentially it means that chat history is (automatically) stored in XMPP server, and is also retrievable from the server. In essence I'd like to have plugin in Pidgin that does this retrieving automatically and shows the information just like the "normal" history plugin (history.so) does... I am not an good programmer, but I am most willing to do an field bug hunting :)

Change History (19)

comment:1 follow-up: Changed 11 years ago by deryni

  • Owner changed from nwalp to deryni

Do you know that your server supports this?

comment:2 Changed 11 years ago by olmari

I do, I run my own server :p :D

comment:3 Changed 10 years ago by olmari

Any news about this? I would be more than glad to beta test this... While I am computer "power user" somewhat, I don't know programming languages that good I could do this on my own :)

comment:4 in reply to: ↑ 1 Changed 10 years ago by mcepl

Replying to deryni:

Do you know that your server supports this?

There are plugins doing this:

  • mod_archive for ejabberd -- not sure what is the current state of the module; last time I checked it was somewhere on the way between alpha and beta ;-)

It seems that our Adium friends have bug filed for this as well and they are waiting on us.

comment:5 follow-up: Changed 10 years ago by olmari

But the point is to Pidgin supporting XEP-0136 so I could actually use this feature... It doesn't help that XMPP server offers this feature if client can't use it...

comment:6 in reply to: ↑ 5 Changed 10 years ago by mcepl

Replying to olmari:

But the point is to Pidgin supporting XEP-0136 so I could actually use this feature... It doesn't help that XMPP server offers this feature if client can't use it...

Don't worry, I hear you, but:

  1. no one will develop a client for functionality, if there is no server against which to use it; it's kind of chicken and egg problem really, because of course opposite holds as well -- you need a lot of internal motivation to develop a server-side feature which has no client (although that's usually the direction by which the developments goes),
  2. I understood deryni's question as request for a developing platform -- it is exceedingly hard to develop a client when there is no server against which you can test your implementation.

comment:7 Changed 10 years ago by olmari

Well I can create an XMPP account(s) for developers to test and ofcourse participate myself in testing too if this would really come available :)

comment:8 Changed 10 years ago by smartypants

As far as I could tell this issue isn't that easy to implement because the logviewer doesn't get its information from the jabber protocol plugin. So to get the server archived logs I think there is no way around than to implement a second logviewer which takes its information from the jabber server. This would be a really ugly way to do it but so far I see no other solution.

If somebody has more insight in this issue and sees a different way to integrate it let me know.

comment:9 follow-up: Changed 10 years ago by olmari

It doesn't have to be logviewer that gets the data, it can be plugin that retrieves updated log right after signed in to the XMPP account, and then ofcourse keep log updated to the server as the conversation goes on. This way there is no need to touch pidgins logviewer at all...

comment:10 in reply to: ↑ 9 Changed 8 years ago by hobarrera

Replying to olmari:

It doesn't have to be logviewer that gets the data, it can be plugin that retrieves updated log right after signed in to the XMPP account, and then ofcourse keep log updated to the server as the conversation goes on. This way there is no need to touch pidgins logviewer at all...

I was just about to propuse this; downloading server-logs into the local logs directory. You should just be careful that this is *not* the default behaviour, as this can: (1) make it painfull to log on through really slow connections, and (2) make it a *huge* privacy issue if I open my xmpp account on someone else's computer.

Something else that need to be taken into consideration, it that pidgin might log something that is being logged server-side, so upon the next "download" of logs, we might end up with duplicate data.

Syncing stuff is always a pain, but I sure do second the request. ejabberd supports XEP-0136.

comment:11 Changed 8 years ago by shadowcaster

At least one client - Vacuum IM (XMPP only client) supports this XEP. see http://code.google.com/p/vacuum-im/ - open source, cross-platform. It works the way it's proposed here - it syncs server-side history with local client history upon logging in. I got server-side history running with ejabberd+mod_archive(mysql) on server and Vacuum IM on clients. Works like a charm, but implementation in libpurple would be great!

comment:12 follow-up: Changed 7 years ago by roms

A plugin working version for Pidgin and XEP-0136 support is available at https://github.com/danielkraic

The plugin compile well for Linux version of Pidgin.

Today I have test a working one for Windows version of Pidgin. I need some tests to retry the compilation and get a patch for Windows version (I will contact the plugin's author to publish the patch).

If you want to try it on Windows, you can download the plugin at http://roms2000.free.fr/download/pidgin/2.10.0/xep136_plugin.dll It has been compiled for Pidgin 2.10.0.

To get it work, download the file and save it to your plugins directory of Pidgin, then enable this plugin in Pidgin (Tools / Plugins) and restart Pidgin.

comment:13 in reply to: ↑ 12 Changed 7 years ago by shadowcaster

Works as described with windows x86 pidgin. "Configure plugin" button in plugins menu is grayed out (so I can't configure history button position). All basic XEP-0136 features seems to work fine, better interface integration is a next step, I suppose.

comment:14 Changed 7 years ago by hobarrera

The plugin needs to be installed to /usr/lib/purple-2, not /root/.purple/plugins when "make install" is run as root.

comment:15 Changed 6 years ago by lkraav

Interested in this, cc:ing

comment:16 Changed 5 years ago by f3nr1s

Also interested in this, cc:ing

comment:17 Changed 5 years ago by qvarzeichen

Thank you for plugin, roms, it works fine ;)

Server that uses XEP-0136 -> tigase: tigase.im sure.im jabber.me

Last edited 5 years ago by qvarzeichen (previous) (diff)

comment:18 Changed 4 years ago by marsjaninzmarsa

That extension should be merged witch core.

comment:19 Changed 3 years ago by NickBrown

XEP 313 looks to be simpler version of XEP 136, so perhaps https://developer.pidgin.im/ticket/15653 could be considered a successor to this.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!