Spreed Signaling server configuration issues

Hi folks.

I’m trying to setup NC with the Spreed Signaling server: https://github.com/strukturag/nextcloud-spreed-signaling

I have NC and the Talk app installed, and I have Spreed running on another container. However, when I try to connect to Spreed (either with curl, a browser, or configuring it in Talk) I get an HTTP 404 error with a trivial “page not found” body.

This happens for the root and for the /standalone-signaling path that the Spreed README (above) says to use. The documentation doesn’t indicate where else to point it. Am I missing something?

Related: Does the Spreed server need any open ports beyond 80/443? It seems like the optional external NATS server does, but I am not using that. (Because my web host doesn’t support non-HTTP ports.)

Hi @Crell

there is an excellent tutorial on how to set up the different components available here:

Unfortunately it’s in German but I guess your favorite translation tool should do the job.


If I am following the translation and its linked articles correctly, to set up this system requires:

  • Nextcloud
  • Spreed
  • NATS (optional but recommended, doesn’t use HTTP ports)
  • Coturn (doesn’t use HTTP ports)
  • Janus (I don’t even know what this is, doesn’t use HTTP ports)

Is this really a 4-5 server setup, using non-HTTP ports? If so, that puts it out of reach for me in this situation. :frowning:

Yes, it’s not that simple indeed. Check the comments of the linked post for some simplifications, someone provides pre-built packages. That at least takes away some of the complexity but it still is a non-trivial setup.

There is a dockerized solution: https://github.com/gary-kim/nextcloud-spreed-signaling/tree/enh/noid/docker .
Use the documentation at that place and some hours, and you’ll have a working setup. Depending on your environment and requirements, you might prefer a bigbluebutton setup.

Technically what I’m trying to do here is make a BigBlueButton setup for running Talk on the webhost I work for, Platform.sh. We’re all container based, but not Docker based, so I can’t just yoink a Docker setup. We also only support incoming/outgoing HTTP ports to the public right now (for security), which seems to kill the idea. :-/

Well this is just what happens with video calls based on webrtc.

  • Nextcloud must run on 443 (otherwise browsers do not allow access microphone/camera)
  • “Spreed” aka High-performance backend should run on 443 for maximum compatibility (to prevent firewall issues for the participants)
  • Coturn by default runs on 3478 (should run on a different server because of the high traffic)
  • Janus by default runs on 20000-40000 (can run on the same server as the HPB)
1 Like