Nextcloud Talk high-performance back-end
-
Having this available in the cloudron universe would be simply awesome and a big selling point. I have so far not seen any providers offering a hosted solution with the Talk High Performance Backend. @doodlemania2: please keep us updated on the packaging. If you need help with tests, etc. let us know. I really appreciate that you are willing to give it a try!
Together with a future elasticsearch service (hopefully) for full text search, cloudron will become a great nextlcoud hosting platform. -
I've been playing with this. Most of it is pretty straight forward, but Janus is kicking my butt. I can't get it to install due to wild wacky dependencies flying every which way. Continuing to work on it, but if you have an easy Janus setup script, let me know
-
Many thanks for your efforts @doodlemania2!
@doodlemania2 said in Nextcloud Talk high-performance back-end:
if you have an easy Janus setup script, let me know
I've no idea, but I've asked on the CoTech and Meet.coop forums:
https://community.coops.tech/t/anyone-got-an-ansible-scripts-for-janus-webrtc-server/2150
https://forum.meet.coop/t/anyone-got-an-ansible-scripts-for-janus-webrtc-server/131
Guess you'll have also seen e.g. https://github.com/andycoates/janus-cluster - anything in there that could be reused?
Will be so awesome once this available on Cloudron!
-
Was pointed to this backport: https://gitlab.com/packaging/janus/ going to try it this evening to see if that helps speed things along!
-
So, good news, I've got this working in the Cloudron Base image (I think?) using the signaling test client. My next step will be to wrap things up and start testing against live NextClouds. Currently, I'm thinking I'll disable ALL security since it will only be reachable by a local, on box Nextcloud. Open to suggestions on that.
-
@doodlemania2 hm what do you mean by that? High performance backend needs to be accessible externally as the clients communicate with it via websocket.
-
Yeah, sorry, I meant that signaling would be externally accessible, but it appears nats and janus do not as signaling just calls them. Does that sound about right or am I WAY off?
-
Continuing to play with this. I think it's working, but I think more than just the signaling app needs access to the internet. I think the Janus bits need to be accessible as well. Currently, it's behind the docker net.
-
Going to build Janus and dependencies from source (which will take some time) as the backports are old. While doing this, @nebulon is working on an update to TURN/STUN to enable API access in CR itself! See: https://git.cloudron.io/cloudron/box/-/issues/710
-
@doodlemania2 have you managed to make any further progress with getting this packaged? Thanks!
-
Hi @jdaviescoates - yep - we need to wait for an update to Box to support Auth API things on the Turn server. cc: @girish
-
Sounds tantalisingly close, thanks @doodlemania2 @girish !
-
@jdaviescoates said in Nextcloud Talk high-performance back-end:
Sounds tantalisingly close, thanks @doodlemania2 @girish !
In the meantime, Nextcloud 20 is going to make it easy to sign-up to a hosted Nextcloud High Performance Backend
See:
https://nextcloud.com/press/pr20201003-6/
https://help.nextcloud.com/t/nextcloud-hub-20-debuts-dashboard-unifies-search-and-notifications-integrates-with-other-technologies/93838
https://www.spreed.eu/contact-nextcloud-talk-high-performance-backend/ -
I've got a very early prototype of this working - it just needs some API fun from the Cloudron TURN feature sets. https://git.cloudron.io/doodlemania2/nthpbe
-
Exciting, thanks @doodlemania2!
-
@doodlemania2 You might be interested in this: Nextcloud Talk High Performance Backend with Stun/Turnserver on Ubuntu with docker-compose
-
@doodlemania2 To continue the discussion from the other thread about the TURN server requirements.
Per https://markus-blog.de/index.php/2020/07/30/how-to-install-nextcloud-talk-high-performance-backend-with-stun-turnserver-on-ubuntu/, the turnserver only requires a static-auth-secret and that is already set in existing turn server. I guess you are referring to the
turn_rest_api_key
in the janus configs? That secret is generated and shared between janus and nextcloud-spreed-signaling server from what I can understand. I think the existing turn service should work as-is. -
@doodlemania2 said in Nextcloud Talk high-performance back-end:
okay - let me re-start my efforts and will study it more closely in addition to @oj 's and others suggestions to look at a prebuilt docker for inspiration.
Did you manage to have another look? Would be so great to have this!