live-sfu-demo/gen/live_sfu.pb.go

1782 lines
53 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.11
// protoc (unknown)
// source: live_sfu.proto
package gen
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
unsafe "unsafe"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type BackendKind int32
const (
BackendKind_BACKEND_KIND_UNSPECIFIED BackendKind = 0
BackendKind_BACKEND_KIND_CLOUDFLARE BackendKind = 1 // Cloudflare Realtime(主 SFU)
BackendKind_BACKEND_KIND_SRS BackendKind = 2 // SRS(次级 / 本地对照)
)
// Enum value maps for BackendKind.
var (
BackendKind_name = map[int32]string{
0: "BACKEND_KIND_UNSPECIFIED",
1: "BACKEND_KIND_CLOUDFLARE",
2: "BACKEND_KIND_SRS",
}
BackendKind_value = map[string]int32{
"BACKEND_KIND_UNSPECIFIED": 0,
"BACKEND_KIND_CLOUDFLARE": 1,
"BACKEND_KIND_SRS": 2,
}
)
func (x BackendKind) Enum() *BackendKind {
p := new(BackendKind)
*p = x
return p
}
func (x BackendKind) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (BackendKind) Descriptor() protoreflect.EnumDescriptor {
return file_live_sfu_proto_enumTypes[0].Descriptor()
}
func (BackendKind) Type() protoreflect.EnumType {
return &file_live_sfu_proto_enumTypes[0]
}
func (x BackendKind) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use BackendKind.Descriptor instead.
func (BackendKind) EnumDescriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{0}
}
type IceServer struct {
state protoimpl.MessageState `protogen:"open.v1"`
Urls []string `protobuf:"bytes,1,rep,name=urls,proto3" json:"urls,omitempty"`
Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
Credential string `protobuf:"bytes,3,opt,name=credential,proto3" json:"credential,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *IceServer) Reset() {
*x = IceServer{}
mi := &file_live_sfu_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *IceServer) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IceServer) ProtoMessage() {}
func (x *IceServer) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use IceServer.ProtoReflect.Descriptor instead.
func (*IceServer) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{0}
}
func (x *IceServer) GetUrls() []string {
if x != nil {
return x.Urls
}
return nil
}
func (x *IceServer) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *IceServer) GetCredential() string {
if x != nil {
return x.Credential
}
return ""
}
type GetConfigRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetConfigRequest) Reset() {
*x = GetConfigRequest{}
mi := &file_live_sfu_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetConfigRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConfigRequest) ProtoMessage() {}
func (x *GetConfigRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[1]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetConfigRequest.ProtoReflect.Descriptor instead.
func (*GetConfigRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{1}
}
type BackendInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
Kind BackendKind `protobuf:"varint,1,opt,name=kind,proto3,enum=gospeak.livedemo.v1.BackendKind" json:"kind,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
Configured bool `protobuf:"varint,3,opt,name=configured,proto3" json:"configured,omitempty"`
Primary bool `protobuf:"varint,4,opt,name=primary,proto3" json:"primary,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *BackendInfo) Reset() {
*x = BackendInfo{}
mi := &file_live_sfu_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *BackendInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BackendInfo) ProtoMessage() {}
func (x *BackendInfo) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[2]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BackendInfo.ProtoReflect.Descriptor instead.
func (*BackendInfo) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{2}
}
func (x *BackendInfo) GetKind() BackendKind {
if x != nil {
return x.Kind
}
return BackendKind_BACKEND_KIND_UNSPECIFIED
}
func (x *BackendInfo) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *BackendInfo) GetConfigured() bool {
if x != nil {
return x.Configured
}
return false
}
func (x *BackendInfo) GetPrimary() bool {
if x != nil {
return x.Primary
}
return false
}
type GetConfigResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Backends []*BackendInfo `protobuf:"bytes,1,rep,name=backends,proto3" json:"backends,omitempty"`
Candidate string `protobuf:"bytes,2,opt,name=candidate,proto3" json:"candidate,omitempty"`
TokenRequired bool `protobuf:"varint,3,opt,name=token_required,json=tokenRequired,proto3" json:"token_required,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetConfigResponse) Reset() {
*x = GetConfigResponse{}
mi := &file_live_sfu_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetConfigResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConfigResponse) ProtoMessage() {}
func (x *GetConfigResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[3]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetConfigResponse.ProtoReflect.Descriptor instead.
func (*GetConfigResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{3}
}
func (x *GetConfigResponse) GetBackends() []*BackendInfo {
if x != nil {
return x.Backends
}
return nil
}
func (x *GetConfigResponse) GetCandidate() string {
if x != nil {
return x.Candidate
}
return ""
}
func (x *GetConfigResponse) GetTokenRequired() bool {
if x != nil {
return x.TokenRequired
}
return false
}
type StreamTarget struct {
state protoimpl.MessageState `protogen:"open.v1"`
Backend BackendKind `protobuf:"varint,1,opt,name=backend,proto3,enum=gospeak.livedemo.v1.BackendKind" json:"backend,omitempty"`
SessionId string `protobuf:"bytes,2,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
Stream string `protobuf:"bytes,3,opt,name=stream,proto3" json:"stream,omitempty"`
PublishToken string `protobuf:"bytes,4,opt,name=publish_token,json=publishToken,proto3" json:"publish_token,omitempty"`
Url string `protobuf:"bytes,5,opt,name=url,proto3" json:"url,omitempty"`
PublishedAt int64 `protobuf:"varint,6,opt,name=published_at,json=publishedAt,proto3" json:"published_at,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StreamTarget) Reset() {
*x = StreamTarget{}
mi := &file_live_sfu_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StreamTarget) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamTarget) ProtoMessage() {}
func (x *StreamTarget) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[4]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use StreamTarget.ProtoReflect.Descriptor instead.
func (*StreamTarget) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{4}
}
func (x *StreamTarget) GetBackend() BackendKind {
if x != nil {
return x.Backend
}
return BackendKind_BACKEND_KIND_UNSPECIFIED
}
func (x *StreamTarget) GetSessionId() string {
if x != nil {
return x.SessionId
}
return ""
}
func (x *StreamTarget) GetStream() string {
if x != nil {
return x.Stream
}
return ""
}
func (x *StreamTarget) GetPublishToken() string {
if x != nil {
return x.PublishToken
}
return ""
}
func (x *StreamTarget) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
func (x *StreamTarget) GetPublishedAt() int64 {
if x != nil {
return x.PublishedAt
}
return 0
}
type Room struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Targets []*StreamTarget `protobuf:"bytes,2,rep,name=targets,proto3" json:"targets,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Room) Reset() {
*x = Room{}
mi := &file_live_sfu_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Room) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Room) ProtoMessage() {}
func (x *Room) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[5]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Room.ProtoReflect.Descriptor instead.
func (*Room) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{5}
}
func (x *Room) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Room) GetTargets() []*StreamTarget {
if x != nil {
return x.Targets
}
return nil
}
type ListRoomsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListRoomsRequest) Reset() {
*x = ListRoomsRequest{}
mi := &file_live_sfu_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRoomsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRoomsRequest) ProtoMessage() {}
func (x *ListRoomsRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRoomsRequest.ProtoReflect.Descriptor instead.
func (*ListRoomsRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{6}
}
type ListRoomsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Rooms []*Room `protobuf:"bytes,1,rep,name=rooms,proto3" json:"rooms,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListRoomsResponse) Reset() {
*x = ListRoomsResponse{}
mi := &file_live_sfu_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRoomsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRoomsResponse) ProtoMessage() {}
func (x *ListRoomsResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[7]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRoomsResponse.ProtoReflect.Descriptor instead.
func (*ListRoomsResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{7}
}
func (x *ListRoomsResponse) GetRooms() []*Room {
if x != nil {
return x.Rooms
}
return nil
}
type PublishRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"`
Backend BackendKind `protobuf:"varint,2,opt,name=backend,proto3,enum=gospeak.livedemo.v1.BackendKind" json:"backend,omitempty"`
Identity string `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PublishRequest) Reset() {
*x = PublishRequest{}
mi := &file_live_sfu_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PublishRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PublishRequest) ProtoMessage() {}
func (x *PublishRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[8]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PublishRequest.ProtoReflect.Descriptor instead.
func (*PublishRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{8}
}
func (x *PublishRequest) GetRoom() string {
if x != nil {
return x.Room
}
return ""
}
func (x *PublishRequest) GetBackend() BackendKind {
if x != nil {
return x.Backend
}
return BackendKind_BACKEND_KIND_UNSPECIFIED
}
func (x *PublishRequest) GetIdentity() string {
if x != nil {
return x.Identity
}
return ""
}
type PublishResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
Stream string `protobuf:"bytes,2,opt,name=stream,proto3" json:"stream,omitempty"`
PublishToken string `protobuf:"bytes,3,opt,name=publish_token,json=publishToken,proto3" json:"publish_token,omitempty"`
IceServers []*IceServer `protobuf:"bytes,4,rep,name=ice_servers,json=iceServers,proto3" json:"ice_servers,omitempty"`
Target *StreamTarget `protobuf:"bytes,5,opt,name=target,proto3" json:"target,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PublishResponse) Reset() {
*x = PublishResponse{}
mi := &file_live_sfu_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PublishResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PublishResponse) ProtoMessage() {}
func (x *PublishResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[9]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PublishResponse.ProtoReflect.Descriptor instead.
func (*PublishResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{9}
}
func (x *PublishResponse) GetSessionId() string {
if x != nil {
return x.SessionId
}
return ""
}
func (x *PublishResponse) GetStream() string {
if x != nil {
return x.Stream
}
return ""
}
func (x *PublishResponse) GetPublishToken() string {
if x != nil {
return x.PublishToken
}
return ""
}
func (x *PublishResponse) GetIceServers() []*IceServer {
if x != nil {
return x.IceServers
}
return nil
}
func (x *PublishResponse) GetTarget() *StreamTarget {
if x != nil {
return x.Target
}
return nil
}
type SubscribeRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"`
Backend BackendKind `protobuf:"varint,2,opt,name=backend,proto3,enum=gospeak.livedemo.v1.BackendKind" json:"backend,omitempty"`
Identity string `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SubscribeRequest) Reset() {
*x = SubscribeRequest{}
mi := &file_live_sfu_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SubscribeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubscribeRequest) ProtoMessage() {}
func (x *SubscribeRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[10]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SubscribeRequest.ProtoReflect.Descriptor instead.
func (*SubscribeRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{10}
}
func (x *SubscribeRequest) GetRoom() string {
if x != nil {
return x.Room
}
return ""
}
func (x *SubscribeRequest) GetBackend() BackendKind {
if x != nil {
return x.Backend
}
return BackendKind_BACKEND_KIND_UNSPECIFIED
}
func (x *SubscribeRequest) GetIdentity() string {
if x != nil {
return x.Identity
}
return ""
}
type SubscribeResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
Stream string `protobuf:"bytes,2,opt,name=stream,proto3" json:"stream,omitempty"`
PublisherSessionId string `protobuf:"bytes,3,opt,name=publisher_session_id,json=publisherSessionId,proto3" json:"publisher_session_id,omitempty"`
IceServers []*IceServer `protobuf:"bytes,4,rep,name=ice_servers,json=iceServers,proto3" json:"ice_servers,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SubscribeResponse) Reset() {
*x = SubscribeResponse{}
mi := &file_live_sfu_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SubscribeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubscribeResponse) ProtoMessage() {}
func (x *SubscribeResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[11]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SubscribeResponse.ProtoReflect.Descriptor instead.
func (*SubscribeResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{11}
}
func (x *SubscribeResponse) GetSessionId() string {
if x != nil {
return x.SessionId
}
return ""
}
func (x *SubscribeResponse) GetStream() string {
if x != nil {
return x.Stream
}
return ""
}
func (x *SubscribeResponse) GetPublisherSessionId() string {
if x != nil {
return x.PublisherSessionId
}
return ""
}
func (x *SubscribeResponse) GetIceServers() []*IceServer {
if x != nil {
return x.IceServers
}
return nil
}
type StopStreamRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"`
Backend BackendKind `protobuf:"varint,2,opt,name=backend,proto3,enum=gospeak.livedemo.v1.BackendKind" json:"backend,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StopStreamRequest) Reset() {
*x = StopStreamRequest{}
mi := &file_live_sfu_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StopStreamRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StopStreamRequest) ProtoMessage() {}
func (x *StopStreamRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[12]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use StopStreamRequest.ProtoReflect.Descriptor instead.
func (*StopStreamRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{12}
}
func (x *StopStreamRequest) GetRoom() string {
if x != nil {
return x.Room
}
return ""
}
func (x *StopStreamRequest) GetBackend() BackendKind {
if x != nil {
return x.Backend
}
return BackendKind_BACKEND_KIND_UNSPECIFIED
}
type StopStreamResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StopStreamResponse) Reset() {
*x = StopStreamResponse{}
mi := &file_live_sfu_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StopStreamResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StopStreamResponse) ProtoMessage() {}
func (x *StopStreamResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[13]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use StopStreamResponse.ProtoReflect.Descriptor instead.
func (*StopStreamResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{13}
}
func (x *StopStreamResponse) GetOk() bool {
if x != nil {
return x.Ok
}
return false
}
type WatchRoomRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *WatchRoomRequest) Reset() {
*x = WatchRoomRequest{}
mi := &file_live_sfu_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *WatchRoomRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WatchRoomRequest) ProtoMessage() {}
func (x *WatchRoomRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[14]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use WatchRoomRequest.ProtoReflect.Descriptor instead.
func (*WatchRoomRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{14}
}
func (x *WatchRoomRequest) GetRoom() string {
if x != nil {
return x.Room
}
return ""
}
type RoomEvent struct {
state protoimpl.MessageState `protogen:"open.v1"`
Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"`
Targets []*StreamTarget `protobuf:"bytes,2,rep,name=targets,proto3" json:"targets,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RoomEvent) Reset() {
*x = RoomEvent{}
mi := &file_live_sfu_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RoomEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RoomEvent) ProtoMessage() {}
func (x *RoomEvent) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[15]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RoomEvent.ProtoReflect.Descriptor instead.
func (*RoomEvent) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{15}
}
func (x *RoomEvent) GetRoom() string {
if x != nil {
return x.Room
}
return ""
}
func (x *RoomEvent) GetTargets() []*StreamTarget {
if x != nil {
return x.Targets
}
return nil
}
// ===== Auth & RBAC (Casbin) =====
type UserInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
CreatedAt int64 `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UserInfo) Reset() {
*x = UserInfo{}
mi := &file_live_sfu_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UserInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserInfo) ProtoMessage() {}
func (x *UserInfo) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[16]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UserInfo.ProtoReflect.Descriptor instead.
func (*UserInfo) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{16}
}
func (x *UserInfo) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *UserInfo) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
func (x *UserInfo) GetCreatedAt() int64 {
if x != nil {
return x.CreatedAt
}
return 0
}
type LoginRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LoginRequest) Reset() {
*x = LoginRequest{}
mi := &file_live_sfu_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LoginRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginRequest) ProtoMessage() {}
func (x *LoginRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[17]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LoginRequest.ProtoReflect.Descriptor instead.
func (*LoginRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{17}
}
func (x *LoginRequest) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *LoginRequest) GetPassword() string {
if x != nil {
return x.Password
}
return ""
}
type LoginResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
User *UserInfo `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
ExpiresAt int64 `protobuf:"varint,3,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LoginResponse) Reset() {
*x = LoginResponse{}
mi := &file_live_sfu_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LoginResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginResponse) ProtoMessage() {}
func (x *LoginResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[18]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LoginResponse.ProtoReflect.Descriptor instead.
func (*LoginResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{18}
}
func (x *LoginResponse) GetToken() string {
if x != nil {
return x.Token
}
return ""
}
func (x *LoginResponse) GetUser() *UserInfo {
if x != nil {
return x.User
}
return nil
}
func (x *LoginResponse) GetExpiresAt() int64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
type RegisterRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
Role string `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RegisterRequest) Reset() {
*x = RegisterRequest{}
mi := &file_live_sfu_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RegisterRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterRequest) ProtoMessage() {}
func (x *RegisterRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[19]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RegisterRequest.ProtoReflect.Descriptor instead.
func (*RegisterRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{19}
}
func (x *RegisterRequest) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *RegisterRequest) GetPassword() string {
if x != nil {
return x.Password
}
return ""
}
func (x *RegisterRequest) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
type RegisterResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
User *UserInfo `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
ExpiresAt int64 `protobuf:"varint,3,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RegisterResponse) Reset() {
*x = RegisterResponse{}
mi := &file_live_sfu_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RegisterResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterResponse) ProtoMessage() {}
func (x *RegisterResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[20]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RegisterResponse.ProtoReflect.Descriptor instead.
func (*RegisterResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{20}
}
func (x *RegisterResponse) GetToken() string {
if x != nil {
return x.Token
}
return ""
}
func (x *RegisterResponse) GetUser() *UserInfo {
if x != nil {
return x.User
}
return nil
}
func (x *RegisterResponse) GetExpiresAt() int64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
type GetMeRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetMeRequest) Reset() {
*x = GetMeRequest{}
mi := &file_live_sfu_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetMeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMeRequest) ProtoMessage() {}
func (x *GetMeRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[21]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetMeRequest.ProtoReflect.Descriptor instead.
func (*GetMeRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{21}
}
type GetMeResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
User *UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
ExpiresAt int64 `protobuf:"varint,2,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
IssuedAt int64 `protobuf:"varint,3,opt,name=issued_at,json=issuedAt,proto3" json:"issued_at,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetMeResponse) Reset() {
*x = GetMeResponse{}
mi := &file_live_sfu_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetMeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMeResponse) ProtoMessage() {}
func (x *GetMeResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[22]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetMeResponse.ProtoReflect.Descriptor instead.
func (*GetMeResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{22}
}
func (x *GetMeResponse) GetUser() *UserInfo {
if x != nil {
return x.User
}
return nil
}
func (x *GetMeResponse) GetExpiresAt() int64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
func (x *GetMeResponse) GetIssuedAt() int64 {
if x != nil {
return x.IssuedAt
}
return 0
}
type ListUsersRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListUsersRequest) Reset() {
*x = ListUsersRequest{}
mi := &file_live_sfu_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListUsersRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListUsersRequest) ProtoMessage() {}
func (x *ListUsersRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[23]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListUsersRequest.ProtoReflect.Descriptor instead.
func (*ListUsersRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{23}
}
type ListUsersResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Users []*UserInfo `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListUsersResponse) Reset() {
*x = ListUsersResponse{}
mi := &file_live_sfu_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListUsersResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListUsersResponse) ProtoMessage() {}
func (x *ListUsersResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[24]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListUsersResponse.ProtoReflect.Descriptor instead.
func (*ListUsersResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{24}
}
func (x *ListUsersResponse) GetUsers() []*UserInfo {
if x != nil {
return x.Users
}
return nil
}
type UpdateUserRoleRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateUserRoleRequest) Reset() {
*x = UpdateUserRoleRequest{}
mi := &file_live_sfu_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateUserRoleRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateUserRoleRequest) ProtoMessage() {}
func (x *UpdateUserRoleRequest) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[25]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateUserRoleRequest.ProtoReflect.Descriptor instead.
func (*UpdateUserRoleRequest) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{25}
}
func (x *UpdateUserRoleRequest) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *UpdateUserRoleRequest) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
type UpdateUserRoleResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"`
User *UserInfo `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateUserRoleResponse) Reset() {
*x = UpdateUserRoleResponse{}
mi := &file_live_sfu_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateUserRoleResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateUserRoleResponse) ProtoMessage() {}
func (x *UpdateUserRoleResponse) ProtoReflect() protoreflect.Message {
mi := &file_live_sfu_proto_msgTypes[26]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateUserRoleResponse.ProtoReflect.Descriptor instead.
func (*UpdateUserRoleResponse) Descriptor() ([]byte, []int) {
return file_live_sfu_proto_rawDescGZIP(), []int{26}
}
func (x *UpdateUserRoleResponse) GetOk() bool {
if x != nil {
return x.Ok
}
return false
}
func (x *UpdateUserRoleResponse) GetUser() *UserInfo {
if x != nil {
return x.User
}
return nil
}
var File_live_sfu_proto protoreflect.FileDescriptor
const file_live_sfu_proto_rawDesc = "" +
"\n" +
"\x0elive_sfu.proto\x12\x13gospeak.livedemo.v1\"[\n" +
"\tIceServer\x12\x12\n" +
"\x04urls\x18\x01 \x03(\tR\x04urls\x12\x1a\n" +
"\busername\x18\x02 \x01(\tR\busername\x12\x1e\n" +
"\n" +
"credential\x18\x03 \x01(\tR\n" +
"credential\"\x12\n" +
"\x10GetConfigRequest\"\x91\x01\n" +
"\vBackendInfo\x124\n" +
"\x04kind\x18\x01 \x01(\x0e2 .gospeak.livedemo.v1.BackendKindR\x04kind\x12\x12\n" +
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1e\n" +
"\n" +
"configured\x18\x03 \x01(\bR\n" +
"configured\x12\x18\n" +
"\aprimary\x18\x04 \x01(\bR\aprimary\"\x96\x01\n" +
"\x11GetConfigResponse\x12<\n" +
"\bbackends\x18\x01 \x03(\v2 .gospeak.livedemo.v1.BackendInfoR\bbackends\x12\x1c\n" +
"\tcandidate\x18\x02 \x01(\tR\tcandidate\x12%\n" +
"\x0etoken_required\x18\x03 \x01(\bR\rtokenRequired\"\xdb\x01\n" +
"\fStreamTarget\x12:\n" +
"\abackend\x18\x01 \x01(\x0e2 .gospeak.livedemo.v1.BackendKindR\abackend\x12\x1d\n" +
"\n" +
"session_id\x18\x02 \x01(\tR\tsessionId\x12\x16\n" +
"\x06stream\x18\x03 \x01(\tR\x06stream\x12#\n" +
"\rpublish_token\x18\x04 \x01(\tR\fpublishToken\x12\x10\n" +
"\x03url\x18\x05 \x01(\tR\x03url\x12!\n" +
"\fpublished_at\x18\x06 \x01(\x03R\vpublishedAt\"W\n" +
"\x04Room\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12;\n" +
"\atargets\x18\x02 \x03(\v2!.gospeak.livedemo.v1.StreamTargetR\atargets\"\x12\n" +
"\x10ListRoomsRequest\"D\n" +
"\x11ListRoomsResponse\x12/\n" +
"\x05rooms\x18\x01 \x03(\v2\x19.gospeak.livedemo.v1.RoomR\x05rooms\"|\n" +
"\x0ePublishRequest\x12\x12\n" +
"\x04room\x18\x01 \x01(\tR\x04room\x12:\n" +
"\abackend\x18\x02 \x01(\x0e2 .gospeak.livedemo.v1.BackendKindR\abackend\x12\x1a\n" +
"\bidentity\x18\x03 \x01(\tR\bidentity\"\xe9\x01\n" +
"\x0fPublishResponse\x12\x1d\n" +
"\n" +
"session_id\x18\x01 \x01(\tR\tsessionId\x12\x16\n" +
"\x06stream\x18\x02 \x01(\tR\x06stream\x12#\n" +
"\rpublish_token\x18\x03 \x01(\tR\fpublishToken\x12?\n" +
"\vice_servers\x18\x04 \x03(\v2\x1e.gospeak.livedemo.v1.IceServerR\n" +
"iceServers\x129\n" +
"\x06target\x18\x05 \x01(\v2!.gospeak.livedemo.v1.StreamTargetR\x06target\"~\n" +
"\x10SubscribeRequest\x12\x12\n" +
"\x04room\x18\x01 \x01(\tR\x04room\x12:\n" +
"\abackend\x18\x02 \x01(\x0e2 .gospeak.livedemo.v1.BackendKindR\abackend\x12\x1a\n" +
"\bidentity\x18\x03 \x01(\tR\bidentity\"\xbd\x01\n" +
"\x11SubscribeResponse\x12\x1d\n" +
"\n" +
"session_id\x18\x01 \x01(\tR\tsessionId\x12\x16\n" +
"\x06stream\x18\x02 \x01(\tR\x06stream\x120\n" +
"\x14publisher_session_id\x18\x03 \x01(\tR\x12publisherSessionId\x12?\n" +
"\vice_servers\x18\x04 \x03(\v2\x1e.gospeak.livedemo.v1.IceServerR\n" +
"iceServers\"c\n" +
"\x11StopStreamRequest\x12\x12\n" +
"\x04room\x18\x01 \x01(\tR\x04room\x12:\n" +
"\abackend\x18\x02 \x01(\x0e2 .gospeak.livedemo.v1.BackendKindR\abackend\"$\n" +
"\x12StopStreamResponse\x12\x0e\n" +
"\x02ok\x18\x01 \x01(\bR\x02ok\"&\n" +
"\x10WatchRoomRequest\x12\x12\n" +
"\x04room\x18\x01 \x01(\tR\x04room\"\\\n" +
"\tRoomEvent\x12\x12\n" +
"\x04room\x18\x01 \x01(\tR\x04room\x12;\n" +
"\atargets\x18\x02 \x03(\v2!.gospeak.livedemo.v1.StreamTargetR\atargets\"Y\n" +
"\bUserInfo\x12\x1a\n" +
"\busername\x18\x01 \x01(\tR\busername\x12\x12\n" +
"\x04role\x18\x02 \x01(\tR\x04role\x12\x1d\n" +
"\n" +
"created_at\x18\x03 \x01(\x03R\tcreatedAt\"F\n" +
"\fLoginRequest\x12\x1a\n" +
"\busername\x18\x01 \x01(\tR\busername\x12\x1a\n" +
"\bpassword\x18\x02 \x01(\tR\bpassword\"w\n" +
"\rLoginResponse\x12\x14\n" +
"\x05token\x18\x01 \x01(\tR\x05token\x121\n" +
"\x04user\x18\x02 \x01(\v2\x1d.gospeak.livedemo.v1.UserInfoR\x04user\x12\x1d\n" +
"\n" +
"expires_at\x18\x03 \x01(\x03R\texpiresAt\"]\n" +
"\x0fRegisterRequest\x12\x1a\n" +
"\busername\x18\x01 \x01(\tR\busername\x12\x1a\n" +
"\bpassword\x18\x02 \x01(\tR\bpassword\x12\x12\n" +
"\x04role\x18\x03 \x01(\tR\x04role\"z\n" +
"\x10RegisterResponse\x12\x14\n" +
"\x05token\x18\x01 \x01(\tR\x05token\x121\n" +
"\x04user\x18\x02 \x01(\v2\x1d.gospeak.livedemo.v1.UserInfoR\x04user\x12\x1d\n" +
"\n" +
"expires_at\x18\x03 \x01(\x03R\texpiresAt\"\x0e\n" +
"\fGetMeRequest\"~\n" +
"\rGetMeResponse\x121\n" +
"\x04user\x18\x01 \x01(\v2\x1d.gospeak.livedemo.v1.UserInfoR\x04user\x12\x1d\n" +
"\n" +
"expires_at\x18\x02 \x01(\x03R\texpiresAt\x12\x1b\n" +
"\tissued_at\x18\x03 \x01(\x03R\bissuedAt\"\x12\n" +
"\x10ListUsersRequest\"H\n" +
"\x11ListUsersResponse\x123\n" +
"\x05users\x18\x01 \x03(\v2\x1d.gospeak.livedemo.v1.UserInfoR\x05users\"G\n" +
"\x15UpdateUserRoleRequest\x12\x1a\n" +
"\busername\x18\x01 \x01(\tR\busername\x12\x12\n" +
"\x04role\x18\x02 \x01(\tR\x04role\"[\n" +
"\x16UpdateUserRoleResponse\x12\x0e\n" +
"\x02ok\x18\x01 \x01(\bR\x02ok\x121\n" +
"\x04user\x18\x02 \x01(\v2\x1d.gospeak.livedemo.v1.UserInfoR\x04user*^\n" +
"\vBackendKind\x12\x1c\n" +
"\x18BACKEND_KIND_UNSPECIFIED\x10\x00\x12\x1b\n" +
"\x17BACKEND_KIND_CLOUDFLARE\x10\x01\x12\x14\n" +
"\x10BACKEND_KIND_SRS\x10\x022\xe8\a\n" +
"\aLiveSFU\x12Z\n" +
"\tGetConfig\x12%.gospeak.livedemo.v1.GetConfigRequest\x1a&.gospeak.livedemo.v1.GetConfigResponse\x12Z\n" +
"\tListRooms\x12%.gospeak.livedemo.v1.ListRoomsRequest\x1a&.gospeak.livedemo.v1.ListRoomsResponse\x12T\n" +
"\aPublish\x12#.gospeak.livedemo.v1.PublishRequest\x1a$.gospeak.livedemo.v1.PublishResponse\x12Z\n" +
"\tSubscribe\x12%.gospeak.livedemo.v1.SubscribeRequest\x1a&.gospeak.livedemo.v1.SubscribeResponse\x12]\n" +
"\n" +
"StopStream\x12&.gospeak.livedemo.v1.StopStreamRequest\x1a'.gospeak.livedemo.v1.StopStreamResponse\x12T\n" +
"\tWatchRoom\x12%.gospeak.livedemo.v1.WatchRoomRequest\x1a\x1e.gospeak.livedemo.v1.RoomEvent0\x01\x12N\n" +
"\x05Login\x12!.gospeak.livedemo.v1.LoginRequest\x1a\".gospeak.livedemo.v1.LoginResponse\x12W\n" +
"\bRegister\x12$.gospeak.livedemo.v1.RegisterRequest\x1a%.gospeak.livedemo.v1.RegisterResponse\x12N\n" +
"\x05GetMe\x12!.gospeak.livedemo.v1.GetMeRequest\x1a\".gospeak.livedemo.v1.GetMeResponse\x12Z\n" +
"\tListUsers\x12%.gospeak.livedemo.v1.ListUsersRequest\x1a&.gospeak.livedemo.v1.ListUsersResponse\x12i\n" +
"\x0eUpdateUserRole\x12*.gospeak.livedemo.v1.UpdateUserRoleRequest\x1a+.gospeak.livedemo.v1.UpdateUserRoleResponseB\x1bZ\x19gospeak-live-sfu-demo/genb\x06proto3"
var (
file_live_sfu_proto_rawDescOnce sync.Once
file_live_sfu_proto_rawDescData []byte
)
func file_live_sfu_proto_rawDescGZIP() []byte {
file_live_sfu_proto_rawDescOnce.Do(func() {
file_live_sfu_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_live_sfu_proto_rawDesc), len(file_live_sfu_proto_rawDesc)))
})
return file_live_sfu_proto_rawDescData
}
var file_live_sfu_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_live_sfu_proto_msgTypes = make([]protoimpl.MessageInfo, 27)
var file_live_sfu_proto_goTypes = []any{
(BackendKind)(0), // 0: gospeak.livedemo.v1.BackendKind
(*IceServer)(nil), // 1: gospeak.livedemo.v1.IceServer
(*GetConfigRequest)(nil), // 2: gospeak.livedemo.v1.GetConfigRequest
(*BackendInfo)(nil), // 3: gospeak.livedemo.v1.BackendInfo
(*GetConfigResponse)(nil), // 4: gospeak.livedemo.v1.GetConfigResponse
(*StreamTarget)(nil), // 5: gospeak.livedemo.v1.StreamTarget
(*Room)(nil), // 6: gospeak.livedemo.v1.Room
(*ListRoomsRequest)(nil), // 7: gospeak.livedemo.v1.ListRoomsRequest
(*ListRoomsResponse)(nil), // 8: gospeak.livedemo.v1.ListRoomsResponse
(*PublishRequest)(nil), // 9: gospeak.livedemo.v1.PublishRequest
(*PublishResponse)(nil), // 10: gospeak.livedemo.v1.PublishResponse
(*SubscribeRequest)(nil), // 11: gospeak.livedemo.v1.SubscribeRequest
(*SubscribeResponse)(nil), // 12: gospeak.livedemo.v1.SubscribeResponse
(*StopStreamRequest)(nil), // 13: gospeak.livedemo.v1.StopStreamRequest
(*StopStreamResponse)(nil), // 14: gospeak.livedemo.v1.StopStreamResponse
(*WatchRoomRequest)(nil), // 15: gospeak.livedemo.v1.WatchRoomRequest
(*RoomEvent)(nil), // 16: gospeak.livedemo.v1.RoomEvent
(*UserInfo)(nil), // 17: gospeak.livedemo.v1.UserInfo
(*LoginRequest)(nil), // 18: gospeak.livedemo.v1.LoginRequest
(*LoginResponse)(nil), // 19: gospeak.livedemo.v1.LoginResponse
(*RegisterRequest)(nil), // 20: gospeak.livedemo.v1.RegisterRequest
(*RegisterResponse)(nil), // 21: gospeak.livedemo.v1.RegisterResponse
(*GetMeRequest)(nil), // 22: gospeak.livedemo.v1.GetMeRequest
(*GetMeResponse)(nil), // 23: gospeak.livedemo.v1.GetMeResponse
(*ListUsersRequest)(nil), // 24: gospeak.livedemo.v1.ListUsersRequest
(*ListUsersResponse)(nil), // 25: gospeak.livedemo.v1.ListUsersResponse
(*UpdateUserRoleRequest)(nil), // 26: gospeak.livedemo.v1.UpdateUserRoleRequest
(*UpdateUserRoleResponse)(nil), // 27: gospeak.livedemo.v1.UpdateUserRoleResponse
}
var file_live_sfu_proto_depIdxs = []int32{
0, // 0: gospeak.livedemo.v1.BackendInfo.kind:type_name -> gospeak.livedemo.v1.BackendKind
3, // 1: gospeak.livedemo.v1.GetConfigResponse.backends:type_name -> gospeak.livedemo.v1.BackendInfo
0, // 2: gospeak.livedemo.v1.StreamTarget.backend:type_name -> gospeak.livedemo.v1.BackendKind
5, // 3: gospeak.livedemo.v1.Room.targets:type_name -> gospeak.livedemo.v1.StreamTarget
6, // 4: gospeak.livedemo.v1.ListRoomsResponse.rooms:type_name -> gospeak.livedemo.v1.Room
0, // 5: gospeak.livedemo.v1.PublishRequest.backend:type_name -> gospeak.livedemo.v1.BackendKind
1, // 6: gospeak.livedemo.v1.PublishResponse.ice_servers:type_name -> gospeak.livedemo.v1.IceServer
5, // 7: gospeak.livedemo.v1.PublishResponse.target:type_name -> gospeak.livedemo.v1.StreamTarget
0, // 8: gospeak.livedemo.v1.SubscribeRequest.backend:type_name -> gospeak.livedemo.v1.BackendKind
1, // 9: gospeak.livedemo.v1.SubscribeResponse.ice_servers:type_name -> gospeak.livedemo.v1.IceServer
0, // 10: gospeak.livedemo.v1.StopStreamRequest.backend:type_name -> gospeak.livedemo.v1.BackendKind
5, // 11: gospeak.livedemo.v1.RoomEvent.targets:type_name -> gospeak.livedemo.v1.StreamTarget
17, // 12: gospeak.livedemo.v1.LoginResponse.user:type_name -> gospeak.livedemo.v1.UserInfo
17, // 13: gospeak.livedemo.v1.RegisterResponse.user:type_name -> gospeak.livedemo.v1.UserInfo
17, // 14: gospeak.livedemo.v1.GetMeResponse.user:type_name -> gospeak.livedemo.v1.UserInfo
17, // 15: gospeak.livedemo.v1.ListUsersResponse.users:type_name -> gospeak.livedemo.v1.UserInfo
17, // 16: gospeak.livedemo.v1.UpdateUserRoleResponse.user:type_name -> gospeak.livedemo.v1.UserInfo
2, // 17: gospeak.livedemo.v1.LiveSFU.GetConfig:input_type -> gospeak.livedemo.v1.GetConfigRequest
7, // 18: gospeak.livedemo.v1.LiveSFU.ListRooms:input_type -> gospeak.livedemo.v1.ListRoomsRequest
9, // 19: gospeak.livedemo.v1.LiveSFU.Publish:input_type -> gospeak.livedemo.v1.PublishRequest
11, // 20: gospeak.livedemo.v1.LiveSFU.Subscribe:input_type -> gospeak.livedemo.v1.SubscribeRequest
13, // 21: gospeak.livedemo.v1.LiveSFU.StopStream:input_type -> gospeak.livedemo.v1.StopStreamRequest
15, // 22: gospeak.livedemo.v1.LiveSFU.WatchRoom:input_type -> gospeak.livedemo.v1.WatchRoomRequest
18, // 23: gospeak.livedemo.v1.LiveSFU.Login:input_type -> gospeak.livedemo.v1.LoginRequest
20, // 24: gospeak.livedemo.v1.LiveSFU.Register:input_type -> gospeak.livedemo.v1.RegisterRequest
22, // 25: gospeak.livedemo.v1.LiveSFU.GetMe:input_type -> gospeak.livedemo.v1.GetMeRequest
24, // 26: gospeak.livedemo.v1.LiveSFU.ListUsers:input_type -> gospeak.livedemo.v1.ListUsersRequest
26, // 27: gospeak.livedemo.v1.LiveSFU.UpdateUserRole:input_type -> gospeak.livedemo.v1.UpdateUserRoleRequest
4, // 28: gospeak.livedemo.v1.LiveSFU.GetConfig:output_type -> gospeak.livedemo.v1.GetConfigResponse
8, // 29: gospeak.livedemo.v1.LiveSFU.ListRooms:output_type -> gospeak.livedemo.v1.ListRoomsResponse
10, // 30: gospeak.livedemo.v1.LiveSFU.Publish:output_type -> gospeak.livedemo.v1.PublishResponse
12, // 31: gospeak.livedemo.v1.LiveSFU.Subscribe:output_type -> gospeak.livedemo.v1.SubscribeResponse
14, // 32: gospeak.livedemo.v1.LiveSFU.StopStream:output_type -> gospeak.livedemo.v1.StopStreamResponse
16, // 33: gospeak.livedemo.v1.LiveSFU.WatchRoom:output_type -> gospeak.livedemo.v1.RoomEvent
19, // 34: gospeak.livedemo.v1.LiveSFU.Login:output_type -> gospeak.livedemo.v1.LoginResponse
21, // 35: gospeak.livedemo.v1.LiveSFU.Register:output_type -> gospeak.livedemo.v1.RegisterResponse
23, // 36: gospeak.livedemo.v1.LiveSFU.GetMe:output_type -> gospeak.livedemo.v1.GetMeResponse
25, // 37: gospeak.livedemo.v1.LiveSFU.ListUsers:output_type -> gospeak.livedemo.v1.ListUsersResponse
27, // 38: gospeak.livedemo.v1.LiveSFU.UpdateUserRole:output_type -> gospeak.livedemo.v1.UpdateUserRoleResponse
28, // [28:39] is the sub-list for method output_type
17, // [17:28] is the sub-list for method input_type
17, // [17:17] is the sub-list for extension type_name
17, // [17:17] is the sub-list for extension extendee
0, // [0:17] is the sub-list for field type_name
}
func init() { file_live_sfu_proto_init() }
func file_live_sfu_proto_init() {
if File_live_sfu_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_live_sfu_proto_rawDesc), len(file_live_sfu_proto_rawDesc)),
NumEnums: 1,
NumMessages: 27,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_live_sfu_proto_goTypes,
DependencyIndexes: file_live_sfu_proto_depIdxs,
EnumInfos: file_live_sfu_proto_enumTypes,
MessageInfos: file_live_sfu_proto_msgTypes,
}.Build()
File_live_sfu_proto = out.File
file_live_sfu_proto_goTypes = nil
file_live_sfu_proto_depIdxs = nil
}