Базовый Readme, понятные переменные окружения

This commit is contained in:
set
2026-03-17 14:28:15 +02:00
parent e703ac22e6
commit 3c810407db
5 changed files with 84 additions and 31 deletions

View File

@@ -9,6 +9,7 @@ import (
"g365sfu/socket"
connection "g365sfu/socket/struct"
"g365sfu/turn"
"g365sfu/utils"
"net/http"
"os"
@@ -32,18 +33,26 @@ func Bootstrap() {
sfu.OnServerOffer = OnServerOffer
sfu.OnRoomDelete = OnRoomDelete
sfu.OnPeerDisconnected = OnPeerDisconnected
turnServer, err := turn.Start(turn.Config{
ListenAddr: "0.0.0.0:3478",
PublicIP: os.Getenv("TURN_PUBLIC_IP"),
Realm: "g365sfu",
Username: os.Getenv("TURN_USER"),
Password: os.Getenv("TURN_PASS"),
})
if err != nil {
logger.LogWarnMessage("TURN start failed: " + err.Error())
if os.Getenv("TURN_ALLOW") == "true" {
turnServer, err := turn.Start(turn.Config{
ListenAddr: "0.0.0.0:3478",
PublicIP: os.Getenv("TURN_PUBLIC_IP"),
Realm: "g365sfu",
Username: os.Getenv("TURN_USER"),
Password: os.Getenv("TURN_PASS"),
MinRelayPort: uint16(utils.AtoiOrDefault(os.Getenv("TURN_PORT_RANGE_FROM"), 40000)),
MaxRelayPort: uint16(utils.AtoiOrDefault(os.Getenv("TURN_PORT_RANGE_TO"), 50000)),
})
if err != nil {
logger.LogWarnMessage("error while starting TURN server: " + err.Error())
logger.LogInfoMessage("starting without TURN server, peer connections may fail if clients are behind symmetric NATs")
} else {
logger.LogInfoMessage("server TURN started at 0.0.0.0:3478")
defer turnServer.Close()
}
} else {
logger.LogInfoMessage("TURN started on 0.0.0.0:3478")
defer turnServer.Close()
// TURN сервер выключен в конфиге, что может влиять на соединение некоторых пользователей
logger.LogInfoMessage("starting without TURN server, peer connections may fail if clients are behind symmetric NATs")
}
logger.LogInfoMessage("server started at x.x.x.x:" + port)
http.ListenAndServe(":"+port, nil)