tinode / chat

Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbots
GNU General Public License v3.0
11.74k stars 1.84k forks source link

ICE, STUN & TURN included #766

Open rkgarcia opened 2 years ago

rkgarcia commented 2 years ago

If you are not requesting a feature, please post to https://groups.google.com/d/forum/tinode instead.

Is your feature request related to a problem? Please describe. Some users will have problems installing and configuring an ICE Server or probably can't pay for that.

Describe the solution you'd like Embedding the requirements for Audio and Video Calls can be a plus to this application.

Describe alternatives you've considered Another option we can consider is create a separated project under tinode that cover the ICE requirement, with easy integration.

Additional context Audio and Videocalls will be a killer feature, we can work creating a better experience deploying the solution.

pwFoo commented 1 year ago

Would be nice to have some prepared stun / turn for Tinode. I added config with a free stun server that works for me.

Instead of integrate / embedding stun / turn I think it would be better to have an example how to run own stun / turn servers as docker containers in a stack with tinode?

or-else commented 1 year ago

Feel free to share your configs. I will add them to the installation instructions.

pwFoo commented 1 year ago

For now I just added a public stun server...

turn-config.json
[
  {
    "urls": [
      "stun:stun.l.google.com"
    ]
  }
]

But I'll take a look into coturn or something else in the future with a little bit more time. Any suggestion about a good / simple self hosted stun / coturn service?

or-else commented 1 year ago
        "ice_servers": [
            {
                "urls": [
                    "stun:openrelay.metered.ca:80"
                ]
            },
            {
                "username": "openrelayproject",
                "credential": "openrelayproject",
                "urls": [
                    "turn:openrelay.metered.ca:80",
                    "turn:openrelay.metered.ca:443",
                    "turn:openrelay.metered.ca:443?transport=tcp"
                ]
            }
        ],
uphargaur commented 2 weeks ago

can u please add config for turn server @pwFoo