Add ice-proxy example

This commit is contained in:
Anton Manakin
2025-08-17 18:59:17 +03:00
committed by Joe Turki
parent 1557d318e2
commit afcb3487d9
8 changed files with 439 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
// SPDX-FileCopyrightText: 2025 The Pion community <https://pion.ly>
// SPDX-License-Identifier: MIT
//go:build !js
// +build !js
package main
import (
"net"
"github.com/pion/turn/v4"
)
func newTURNServer() *turn.Server {
tcpListener, err := net.Listen("tcp4", turnServerAddr)
if err != nil {
panic(err)
}
server, err := turn.NewServer(turn.ServerConfig{
AuthHandler: func(_, realm string, _ net.Addr) ([]byte, bool) {
// Accept any request with provided username and password.
return turn.GenerateAuthKey(turnUsername, realm, turnPassword), true
},
ListenerConfigs: []turn.ListenerConfig{
{
Listener: tcpListener,
RelayAddressGenerator: &turn.RelayAddressGeneratorNone{
Address: "localhost",
},
},
},
})
if err != nil {
panic(err)
}
return server
}