OTR over XMPP on Telepathy

On the last couple of weeks I’ve been working on adding support for the Off-the-Record protocol on the Telepathy communications framework, more precisely on Gabble, the XMPP connection manager (for those who this acronym doesn’t ring a bell, it’s the protocol spoken by the jabber and googletalk IM services, between others).

At the moment of this writing, OTR session establishment is working and it’s possible to exchange encrypted messages with any OTR-enabled IM client  that talks XMPP. A draft interface has been discussed on the Telepathy mailing list at the beginning of this work, but it already has seen some changes during development. Peer authentication is still missing, and it’s going to be added this coming week also working at this moment (as of July 24th). I’ll also start to work on the Empathy bits needed to expose this feature on the UI. The idea is to have this finished and submitted upstream for review by the end of this month.

I’m doing this work as GSoC project for the GNOME foundation, with the help of Will Thompson, a seasoned Telepathy hacker.

10 responses to “OTR over XMPP on Telepathy

  1. Keep up the good work João. Once your code becomes more stable and the spec is less fluid. I think I will still go in and create the Python code for Butterfly OTR support. But I would like to model it after your code. Thank you for implementing this much needed feature.

  2. from what you write it basically means that it is impossible to write a “plugin” for Telepathy that will enable OTR support across ALL client protocols supported by Telepathy (akin to Kopete/Pidgin OTR plugin), doesn’t it?

  3. Tony, technically you are correct and so, yes. Just to differentiate this is not a plug-in that he(João) is writing, rather it is an extension to the Telepathy frame work code base to enhance the Connection Manager so that it will support OTR, in this case Gabble. However as stated this code has to be ported to work with each Connection Manager and in some ways duplicated across each CM, but that was a decision made by the core Telepathy developers early on. Thus you are right there is no single plug-in for Telepathy that will be able to communicate through each Connection Manager. Hopefully each Connection Manager will have built in support for OTR in the future. But as for myself I am only concerned with Gabble, Haze, and Butterfly.

  4. Malachi Constant

    Any news on this project? No updates from you or Jordan for a couple months, and hundreds of users are very eager to start using OTR in Empathy.

  5. First, thanks for taking this project by the horns, this would be a great contribution. I know at this juncture that it’s not going to make it to the Canonical upstream by the Oneiric release considering we’re already frozen, but what I’m most curious about is if even we have a provisional time table.. you know.. for the overly eager.. like me? (We won’t hold you to it, we /promise/ 🙂 Thanks again!

  6. I too am curious for an update as I haven’t seen anything since Wednesday July 27 2011. https://gitorious.org/jprvita-repos/telepathy-gabble

  7. Thank you.

  8. Will Reymaldo

    well, one thing is sure, the programmer did not die on July 27.

    why no updates I am wondering? as i read in the following posts the programmer met with Telepathy programmers in Berlin in September, still no updates on it.

    I do not mean to be rude but it really sucks to finish 80% of the work and then not even provide an explanation for 6 months.

  9. Christopher Hull


  10. it really sucks, brother

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s