• [^] # Re: WOPI

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche WoPiX, un serveur WOPI libre, indépendant, simple et léger. Évalué à 7.

    C'est pas compliqué : WOPI ne propose rien de plus que ce que sait déjà faire WebDAV. WOPI ne sert à rien (et bam).

    99,99% (chiffre tiré de ma lecture du code de Collabora, OnlyOffice et NextCloud) des implémentations WOPI n'utilisent que 3 méthodes WOPI : GetFile (équivalent de HTTP GET), PutFile (même chose que HTTP PUT, sauf que ici c'est un POST, lol), et CheckFileInfo (idem que HTTP PROPFIND dans WebDAV, sauf que ça renvoie du JSON au lieu du XML).

    Le reste n'est pas utilisé.

    Alors comment ça marche l'édition collaborative avec WOPI ?

    Bah c'est pas compliqué : Collabora/OO ont un serveur de document, qui charge (GetFile) le document et le garde en mémoire, partagé entre tous les clients qui font de l'édition collaborative. C'est eux qui gèrent tout la gestion des conflits etc. Ensuite régulièrement (intervalle, selon les modifs, ou selon si un utilisateur a fait Ctrl+S), ils envoient le document mis à jour (PutFile).

    WOPI ne gère en rien l'aspect collaboratif. Il ne sert à rien pour ça. Peut-être en interne chez Microsoft, je sais pas, mais personne d'autre ne l'implémente.

    On pourrait tout à fait remplacer WOPI par une URL HTTP en WebDAV et un token renvoyé dans le header Authorization. Ça ferait exactement la même chose, ça serait facile à faire, sans réinventer un protocole...

    WOPI permet aussi de lock les fichiers, par exemple si tu veux être seul à éditer un document à la fois. Mais WebDAV gère déjà ça... Et seul OnlyOffice gère ça au niveau API, mais j'ai pas trouvé comment faire dans l'interface.

    « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)