Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[help needed] Upgrade to Onlyoffice version to 8.0.0 ( stuck at 7.2.X ) #312

Open
chadek opened this issue Feb 2, 2024 · 7 comments
Open
Labels
help wanted Extra attention is needed

Comments

@chadek
Copy link
Collaborator

chadek commented Feb 2, 2024

I've been trying to update to last Onlyoffice version (7.4.1 and more recently to 8.0.0) but since 7.3.0, they changed a vendor sockjs to socket.io and it drops an error while trying to load a socket.io component on loading a document. I have been digging a bit and this thread might help resolve this for good but unfortunately I'm still not php friendly enough to get to understand how to fix this for now :c

Any PR/help on this would be really appreciated!

@chadek
Copy link
Collaborator Author

chadek commented Feb 2, 2024

@aaronhuggins if by any chance you have some insight on this, it would be great to provide updated onlyoffice version for the (hopefully) near return of this app to the store!

@chadek
Copy link
Collaborator Author

chadek commented Feb 6, 2024

I tried the solution proposed on this thread but unfortunately, it does not work. I suspect it is because this app provide it's own url routing. As document now load a different socket component, it tries now to load this kind of url : wss://some.nextcloud.instance.com/apps/documentserver_community/3rdparty/onlyoffice/documentserver/doc/249551156/c/?EIO=4&transport=websocket

Which probably can not be resolve as it is not existing here for now

@WhoAmI0501
Copy link
Contributor

As of my recent PR for v28 compatibility, i also struggled with this problem in my private soft fork of this project.

Actually, i wasnt able to find a solution. But one hint: From what i know, socket.io requires a permanently running server and a client which is holding a permanent connection to this server. If thats really the case, then i am quite sure, that this cannot be done with this app and PHP.

From my deep dive in the official docker image, i also saw, that they are using a RabbitMQ server. I dont know why and when these dependency came up, but actually, this app needs to work without RabbitMQ - is this possible? Idk.

May this helps, may not... sadly, i couldn't find out anything more than you - i ended in the PHP code for routing of this app and didnt had any further ideas, how to implement this WSS stuff there.

@chadek
Copy link
Collaborator Author

chadek commented Feb 8, 2024

What I did was crawling a while into the release diff here. But anyway, I do not know enough onlyoffice to dive more deeply. In the server component there seams to have interesting stuff, but could not found any trail to follow.

@chadek
Copy link
Collaborator Author

chadek commented Feb 9, 2024

Found interesting commits: here the first on and probably even more interesting,this one which is precisely the code update for the dependency migration.

@robwmi
Copy link

robwmi commented May 3, 2024

Thanks for the work on this. I had just come to the conclusion that upgrading OnlyOffice was the next item to work on when I came here to comment and found this thread. The threads you've provided are quite interesting. If I get a chance sometime, I'll see about creating a test environment and trying to make some of that work.

@chadek
Copy link
Collaborator Author

chadek commented May 3, 2024

Hi @robwmi, thanks for the interest on this and the help proposed here. After digging a bit more, it appears to me that websocket components (even on the lastest working version with sockjs) are not working, which lead to several issues such as no real coediting which is clearly a websocket issue and maybe with everything related to configuration which are never taken into account. I do not know if something could be done on this because websocket imply using a different port and this app aim to not need any server-side adjustment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants