Making Collabora Online and it's LibreOffice technology as simple as possible to consume for users with limited time or technical skill is vital. Hear how we bundled COOL as an AppImage, plugged it into PHP, and implemented a websocket proxy-protocol to make that happen.
Collabora Online uses websockets to bring the LibreOffice core's rendering to users' browsers and mobiles. This gives us a smooth low latency editing experience. This however requires a persistent server process, something inimical to the PHP processes we integrate with. Hear how we overcame this limitation, to get an AppImage that can bootstrap, and a protocol that re-uses the HTTP keep-alive to rather successfully emulate a polling websocket based on PHP. Hear about some of the pit-falls we fell into, and the 'obvious' ideas to make things better that didn't pan out.
Speakers: Michael Meeks