LibreOffice collaboration over instant messaging demonstrated
LibreOffice developers have demonstrated a proof-of-concept implementation of collaboration between office suite users over instant messaging, following some weeks of steady work by Eike Rathke and a week of intensive collaboration in Cambridge. One of the tasks for the Google Summer of Code for LibreOffice is to use the Telepathy instant messaging client and its tubes for collaboration. With Document Foundation funding, the development team of Rathke, Will Thompson (of Collabra) and Michael Meeks (of SUSE) got together to "break the back of the problem" before handing it on to the Summer of Code developers.
Telepathy tubes allow applications to connect, locally first to Telepathy over Dbus, then through Telepathy to another instance of Telepathy, and then on to another application. The connection allows arbitrary data to be passed between the applications or for remote procedure calls to be made. The LibreOffice developers modified the Calc spreadsheet so that modifications to the local spreadsheet were transmitted as an operation to the remote Calc application and executed there too so that the spreadsheets stayed in sync. The work resulted in a demonstration of two spreadsheets in a one-to-one IM connection staying synchronised over a number of operations.
There is now a branch of LibreOffice, features/tubes2, which includes the prototype implementation that was developed over the week. "There is a lot of work to turn this into a product" says Meeks "... so unless you actively want to help hack on it – please don't bother the developers with questions". Work needed includes reworking connection setup and negotiation, finishing the messaging contacts list and extracting a controller from the code and ensuring that it is correctly placed between the spreadsheet model and the user's view and control of the document. The collaboration project is one of many ideas for enhancements to be worked on in LibreOffice's Google Summer of Code participation.