|Version 2 (modified by 8 years ago) (diff),|
Jabber2Trac - Integrate jabber with trac
Just a simple script that formats and imports into wiki a series of jabber-muc logs inside a series of tracs, organised by chatrooms.
If you have any issues, create a new ticket.
Download the zipped source from [download:jabbertracscript here].
Howto integrate trac with jabber
First you'll need to have a working trac environment. Then, install plugin (and enable it) TicketBackLinksMacro This script. A jabber server with logging enabled, for chatrooms, configured to be ordered by subdirectories (dates). Jabber with jcr and muc is known to work ok.
You'll have to config j2t (config done from inside the script) to fit your needs (tracs main location, conference server address etc) Do a touch /etc/j2t.cfg Then, launch "j2t -c chatroom tracname" foreach chatroom you want.
You can make a cron to launch j2t (without args) each time you want it to be updated.
WARNING: This should be at most once a day, otherwise it will make too much noise on your timelines.
Now, you'll have logs uploaded to wiki and shown in tickets' description. I recommend using TracFineGrainedPermissions to block undesired traffic to the conversations.
Chatrooms will not be created automatically, so, if they don't exists, you'll have to join to them. A workaround for automatising this is having a gozerbot doing that work for you.
I've also built a gozerplug for this: j2t.py ( original, isn't it? ;-) ) You'll have to modify it a bit, since it's ready to get config trought ssh, and that might not be what you want. Also, you'll have to configure that user to don't require passwords if you use ssh (you know, certificates and so).
If you wan't you can configure your bot nick inside j2t (botnick variable) so its messages won't be shown, also, commands are not saved (!whatever strings) into wiki.
Check out my other gozerplugs: showticket and showrevision, to better integration with trac.
I know there are gozerplugs already for trac integration, but those are adapted for
this system (using j2t.cfg same way as j2t does, so it interact perfectly with them).