diff --git a/go.mod b/go.mod index 1b594902b..941809fbc 100644 --- a/go.mod +++ b/go.mod @@ -21,7 +21,7 @@ require ( github.com/jxskiss/base62 v1.1.0 github.com/livekit/mageutil v0.0.0-20230125210925-54e8a70427c1 github.com/livekit/mediatransportutil v0.0.0-20241220010243-a2bdee945564 - github.com/livekit/protocol v1.31.1-0.20250122081808-18fcdd87b3bc + github.com/livekit/protocol v1.32.1-0.20250123040441-6ec1903b3635 github.com/livekit/psrpc v0.6.1-0.20241018124827-1efff3d113a8 github.com/mackerelio/go-osstat v0.2.5 github.com/magefile/mage v1.15.0 @@ -137,7 +137,7 @@ require ( golang.org/x/text v0.21.0 // indirect golang.org/x/tools v0.29.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250122153221-138b5a5a4fd4 // indirect google.golang.org/grpc v1.69.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect ) diff --git a/go.sum b/go.sum index 8e5c1af02..6c4bda223 100644 --- a/go.sum +++ b/go.sum @@ -169,8 +169,8 @@ github.com/livekit/mageutil v0.0.0-20230125210925-54e8a70427c1 h1:jm09419p0lqTkD github.com/livekit/mageutil v0.0.0-20230125210925-54e8a70427c1/go.mod h1:Rs3MhFwutWhGwmY1VQsygw28z5bWcnEYmS1OG9OxjOQ= github.com/livekit/mediatransportutil v0.0.0-20241220010243-a2bdee945564 h1:GX7KF/V9ExmcfT/2Bdia8aROjkxrgx7WpyH7w9MB4J4= github.com/livekit/mediatransportutil v0.0.0-20241220010243-a2bdee945564/go.mod h1:36s+wwmU3O40IAhE+MjBWP3W71QRiEE9SfooSBvtBqY= -github.com/livekit/protocol v1.31.1-0.20250122081808-18fcdd87b3bc h1:Voqux82kqm0TIP9wyAKhKV8bzm3b/EEFEZwAI5TYh8g= -github.com/livekit/protocol v1.31.1-0.20250122081808-18fcdd87b3bc/go.mod h1:9PQOu9w06M+14UDIhbmPeRRti5N4kq6n3R5XHDCzN5k= +github.com/livekit/protocol v1.32.1-0.20250123040441-6ec1903b3635 h1:t7ThIfjVdHAW0gZRlJgB+83/P+mPqppqaFy8xzaeyuE= +github.com/livekit/protocol v1.32.1-0.20250123040441-6ec1903b3635/go.mod h1:9PQOu9w06M+14UDIhbmPeRRti5N4kq6n3R5XHDCzN5k= github.com/livekit/psrpc v0.6.1-0.20241018124827-1efff3d113a8 h1:Ibh0LoFl5NW5a1KFJEE0eLxxz7dqqKmYTj/BfCb0PbY= github.com/livekit/psrpc v0.6.1-0.20241018124827-1efff3d113a8/go.mod h1:CQUBSPfYYAaevg1TNCc6/aYsa8DJH4jSRFdCeSZk5u0= github.com/mackerelio/go-osstat v0.2.5 h1:+MqTbZUhoIt4m8qzkVoXUJg1EuifwlAJSk4Yl2GXh+o= @@ -475,8 +475,8 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 h1:fVoAXEKA4+yufmbdVYv+SE73+cPZbbbe8paLsHfkK+U= google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53/go.mod h1:riSXTwQ4+nqmPGtobMFyW5FqVAmIs0St6VPp4Ug7CE4= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f h1:OxYkA3wjPsZyBylwymxSHa7ViiW1Sml4ToBrncvFehI= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f/go.mod h1:+2Yz8+CLJbIfL9z73EW45avw8Lmge3xVElCP9zEKi50= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250122153221-138b5a5a4fd4 h1:yrTuav+chrF0zF/joFGICKTzYv7mh/gr9AgEXrVU8ao= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250122153221-138b5a5a4fd4/go.mod h1:+2Yz8+CLJbIfL9z73EW45avw8Lmge3xVElCP9zEKi50= google.golang.org/grpc v1.69.4 h1:MF5TftSMkd8GLw/m0KM6V8CMOCY6NZ1NQDPGFgbTt4A= google.golang.org/grpc v1.69.4/go.mod h1:vyjdE6jLBI76dgpDojsFGNaHlxdjXN9ghpnd2o7JGZ4= google.golang.org/protobuf v1.36.3 h1:82DV7MYdb8anAVi3qge1wSnMDrnKK7ebr+I0hHRN1BU= diff --git a/pkg/rtc/room.go b/pkg/rtc/room.go index 3241fcd5d..695fb818d 100644 --- a/pkg/rtc/room.go +++ b/pkg/rtc/room.go @@ -279,7 +279,9 @@ func NewRoom( r.protoRoom.DepartureTimeout = roomConfig.DepartureTimeout } if r.protoRoom.CreationTime == 0 { - r.protoRoom.CreationTime = time.Now().Unix() + now := time.Now() + r.protoRoom.CreationTime = now.Unix() + r.protoRoom.CreationTimeMs = now.UnixMilli() } r.protoProxy = utils.NewProtoProxy[*livekit.Room](roomUpdateInterval, r.updateProto) diff --git a/pkg/service/localstore.go b/pkg/service/localstore.go index 65013c5ea..005386ce9 100644 --- a/pkg/service/localstore.go +++ b/pkg/service/localstore.go @@ -53,7 +53,9 @@ func NewLocalStore() *LocalStore { func (s *LocalStore) StoreRoom(_ context.Context, room *livekit.Room, internal *livekit.RoomInternal) error { if room.CreationTime == 0 { - room.CreationTime = time.Now().Unix() + now := time.Now() + room.CreationTime = now.Unix() + room.CreationTimeMs = now.UnixMilli() } roomName := livekit.RoomName(room.Name) diff --git a/pkg/service/redisstore.go b/pkg/service/redisstore.go index 35d02d892..eddf82789 100644 --- a/pkg/service/redisstore.go +++ b/pkg/service/redisstore.go @@ -123,7 +123,9 @@ func (s *RedisStore) Stop() { func (s *RedisStore) StoreRoom(_ context.Context, room *livekit.Room, internal *livekit.RoomInternal) error { if room.CreationTime == 0 { - room.CreationTime = time.Now().Unix() + now := time.Now() + room.CreationTime = now.Unix() + room.CreationTimeMs = now.UnixMilli() } roomData, err := proto.Marshal(room) diff --git a/pkg/service/roomallocator.go b/pkg/service/roomallocator.go index a5b0e5118..656edce42 100644 --- a/pkg/service/roomallocator.go +++ b/pkg/service/roomallocator.go @@ -71,11 +71,13 @@ func (r *StandardRoomAllocator) CreateRoom(ctx context.Context, req *livekit.Cre rm, internal, err := r.roomStore.LoadRoom(ctx, livekit.RoomName(req.Name), true) if errors.Is(err, ErrRoomNotFound) { created = true + now := time.Now() rm = &livekit.Room{ - Sid: guid.New(utils.RoomPrefix), - Name: req.Name, - CreationTime: time.Now().Unix(), - TurnPassword: utils.RandomSecret(), + Sid: guid.New(utils.RoomPrefix), + Name: req.Name, + CreationTime: now.Unix(), + CreationTimeMs: now.UnixMilli(), + TurnPassword: utils.RandomSecret(), } internal = &livekit.RoomInternal{} applyDefaultRoomConfig(rm, internal, &r.config.Room)