From d2f0496223e65e2ec3b818ae3129d38f7f527d1d Mon Sep 17 00:00:00 2001 From: David Colburn Date: Thu, 9 Feb 2023 00:10:54 -0800 Subject: [PATCH] list egress by id (#1404) * list egress by id * update proto ref --- go.mod | 2 +- go.sum | 4 ++-- pkg/service/egress.go | 24 +++++++++++++++++------- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/go.mod b/go.mod index b46c58542..679d48277 100644 --- a/go.mod +++ b/go.mod @@ -18,7 +18,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-20230130133657-96cfb115473a - github.com/livekit/protocol v1.3.3-0.20230206022348-f6d32e15b011 + github.com/livekit/protocol v1.3.3-0.20230209080154-800036bdb4cb github.com/livekit/psrpc v0.2.5 github.com/livekit/rtcscore-go v0.0.0-20220815072451-20ee10ae1995 github.com/mackerelio/go-osstat v0.2.3 diff --git a/go.sum b/go.sum index 853439e8d..e67c6ed2f 100644 --- a/go.sum +++ b/go.sum @@ -234,8 +234,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-20230130133657-96cfb115473a h1:5UkGQpskXp7HcBmyrCwWtO7ygDWbqtjN09Yva4l/nyE= github.com/livekit/mediatransportutil v0.0.0-20230130133657-96cfb115473a/go.mod h1:1Dlx20JPoIKGP45eo+yuj0HjeE25zmyeX/EWHiPCjFw= -github.com/livekit/protocol v1.3.3-0.20230206022348-f6d32e15b011 h1:KUuxp1D8ok4tgQ5gzxfUSj0o0GFMy1zwveru1r5kk9w= -github.com/livekit/protocol v1.3.3-0.20230206022348-f6d32e15b011/go.mod h1:gwCG03nKlHlC9hTjL4pXQpn783ALhmbyhq65UZxqbb8= +github.com/livekit/protocol v1.3.3-0.20230209080154-800036bdb4cb h1:5UPq90al/Yqngtxh2d35pRpPLVxc+8fmHBTm4JWp0bM= +github.com/livekit/protocol v1.3.3-0.20230209080154-800036bdb4cb/go.mod h1:gwCG03nKlHlC9hTjL4pXQpn783ALhmbyhq65UZxqbb8= github.com/livekit/psrpc v0.2.5 h1:+EZS78MGdBZxzCUwinDQ6pOeqPDURisrGtfyyqwUDSI= github.com/livekit/psrpc v0.2.5/go.mod h1:DyphtRRWvcIuCaldYg9VGpwGhu/HiKmNcysgpN6xKrM= github.com/livekit/rtcscore-go v0.0.0-20220815072451-20ee10ae1995 h1:vOaY2qvfLihDyeZtnGGN1Law9wRrw8BMGCr1TygTvMw= diff --git a/pkg/service/egress.go b/pkg/service/egress.go index 9ba8a19d3..8c8b842f6 100644 --- a/pkg/service/egress.go +++ b/pkg/service/egress.go @@ -6,15 +6,15 @@ import ( "fmt" "reflect" + "github.com/twitchtv/twirp" + "github.com/livekit/livekit-server/pkg/rtc" "github.com/livekit/livekit-server/pkg/service/rpc" + "github.com/livekit/livekit-server/pkg/telemetry" "github.com/livekit/protocol/egress" "github.com/livekit/protocol/livekit" "github.com/livekit/protocol/logger" "github.com/livekit/protocol/utils" - "github.com/twitchtv/twirp" - - "github.com/livekit/livekit-server/pkg/telemetry" ) type EgressService struct { @@ -281,12 +281,22 @@ func (s *EgressService) ListEgress(ctx context.Context, req *livekit.ListEgressR return nil, ErrEgressNotConnected } - infos, err := s.es.ListEgress(ctx, livekit.RoomName(req.RoomName)) - if err != nil { - return nil, err + var items []*livekit.EgressInfo + if req.EgressId != "" { + info, err := s.es.LoadEgress(ctx, req.EgressId) + if err != nil { + return nil, err + } + items = []*livekit.EgressInfo{info} + } else { + var err error + items, err = s.es.ListEgress(ctx, livekit.RoomName(req.RoomName)) + if err != nil { + return nil, err + } } - return &livekit.ListEgressResponse{Items: infos}, nil + return &livekit.ListEgressResponse{Items: items}, nil } func (s *EgressService) StopEgress(ctx context.Context, req *livekit.StopEgressRequest) (*livekit.EgressInfo, error) {