nextcloud / whiteboard

GNU Affero General Public License v3.0
2 stars 0 forks source link

Integrated sync backend #27

Open juliushaertl opened 1 month ago

juliushaertl commented 1 month ago

Now that we have the basic sync running with the websocket_server, we should look into how we can mirror the behaviour with a PHP-only backend.

socket.io supports long polling https://socket.io/docs/v3/how-it-works/#http-long-polling which we could make use of

We could potentially require redis with https://github.com/phpredis/phpredis?tab=readme-ov-file#publish or just use a db backend if that is not present.

Required protocols to implement https://github.com/socketio/engine.io-protocol https://socket.io/docs/v4/socket-io-protocol#introduction

Additional resources https://github.com/socketIo-php https://github.com/socketIo-php/engine.io-parser https://github.com/socketIo-php/socket.io-parser

juliushaertl commented 2 days ago

We might go with just using https://github.com/cloud-py-api/app_api for easy deployment of the node backend.