Обработка пакетов SDP от клиента

This commit is contained in:
set
2026-03-11 21:00:19 +02:00
parent b81ae8a3c0
commit 181ddb921e
4 changed files with 64 additions and 25 deletions

View File

@@ -1,18 +1,14 @@
package sfu
import (
"g365sfu/socket"
connection "g365sfu/socket/struct"
"g365sfu/utils"
"sync"
"github.com/pion/webrtc/v4"
)
// Общие переменные
var (
rooms = make(map[string]*Room)
roomsMu sync.RWMutex
)
// Структуры для управления комнатами и пирами в SFU
type Peer struct {
//Идентификатор пира, который будет использоваться для связи с ним
@@ -25,20 +21,26 @@ type Room struct {
//Уникальный идентификатор комнаты
RoomID string
//Сервер который создал комнату
Server []*socket.Connection
Server *connection.Connection
//Пиры которые подключились к комнате
Peers []Peer
}
// Общие переменные
var (
rooms = make(map[string]*Room)
roomsMu sync.RWMutex
)
// CreateRoom создает комнату
func CreateRoom() (*Room, error) {
func CreateRoom(server *connection.Connection) (*Room, error) {
roomID := "room_" + utils.RandomString(64)
roomsMu.Lock()
defer roomsMu.Unlock()
room := &Room{
RoomID: roomID,
Server: []*socket.Connection{},
Server: server,
Peers: []Peer{},
}
rooms[roomID] = room