plugins

package
v0.0.0-...-5d1e9c5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2021 License: MIT Imports: 2 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var TypeMap = map[string]map[string]func() interface{}{
	"janus.plugin.videoroom": {
		"error":   func() interface{} { return &VideoroomErrorResponse{} },
		"list":    func() interface{} { return &VideoroomListResponse{} },
		"create":  func() interface{} { return &VideoroomCreateResponse{} },
		"edit":    func() interface{} { return &VideoroomEditResponse{} },
		"destroy": func() interface{} { return &VideoroomDestroyResponse{} },
	},
	"janus.plugin.textroom": {
		"error":   func() interface{} { return &TextroomErrorResponse{} },
		"list":    func() interface{} { return &TextroomListResponse{} },
		"create":  func() interface{} { return &TextroomCreateResponse{} },
		"edit":    func() interface{} { return &TextroomEditResponse{} },
		"destroy": func() interface{} { return &TextroomDestroyResponse{} },
	},
}

Functions

This section is empty.

Types

type BasePluginRequest

type BasePluginRequest struct {
	Plugin   string
	Action   string
	AdminKey string
}

func (*BasePluginRequest) ActionName

func (r *BasePluginRequest) ActionName() string

func (*BasePluginRequest) Payload

func (r *BasePluginRequest) Payload() map[string]interface{}

func (*BasePluginRequest) PluginName

func (r *BasePluginRequest) PluginName() string

type PluginError

type PluginError struct {
	Code   int    `json:"error_code"`
	Reason string `json:"error"`
}

func (*PluginError) Error

func (err *PluginError) Error() string

type PluginRequest

type PluginRequest interface {
	PluginName() string
	ActionName() string
	Payload() map[string]interface{}
}

type PluginRequestFactory

type PluginRequestFactory struct {
	Plugin   string
	AdminKey string
}

func NewPluginRequestFactory

func NewPluginRequestFactory(plugin, adminKey string) *PluginRequestFactory

type TextroomCreateRequest

type TextroomCreateRequest struct {
	TextroomRequest
	Room      *TextroomRoom
	Permanent bool
	Allowed   []string
}

func (*TextroomCreateRequest) Payload

func (r *TextroomCreateRequest) Payload() map[string]interface{}

type TextroomCreateResponse

type TextroomCreateResponse struct {
	TextroomResponse
	RoomID    int  `json:"room"`
	Permanent bool `json:"permanent"`
}

type TextroomDestroyRequest

type TextroomDestroyRequest struct {
	TextroomRequest
	RoomID    int
	Secret    string
	Permanent bool
}

func (*TextroomDestroyRequest) Payload

func (r *TextroomDestroyRequest) Payload() map[string]interface{}

type TextroomDestroyResponse

type TextroomDestroyResponse struct {
	TextroomResponse
	RoomID int `json:"room"`
}

type TextroomEditRequest

type TextroomEditRequest struct {
	TextroomRequest
	Room      *TextroomRoomForEdit
	Secret    string
	Permanent bool
}

func (*TextroomEditRequest) Payload

func (r *TextroomEditRequest) Payload() map[string]interface{}

type TextroomEditResponse

type TextroomEditResponse struct {
	TextroomResponse
	RoomID int `json:"room"`
}

type TextroomErrorResponse

type TextroomErrorResponse struct {
	TextroomResponse
	PluginError
}

func (*TextroomErrorResponse) Error

func (err *TextroomErrorResponse) Error() string

type TextroomListResponse

type TextroomListResponse struct {
	TextroomResponse
	Rooms []*TextroomRoomFromListResponse `json:"list"`
}

type TextroomRequest

type TextroomRequest struct {
	BasePluginRequest
	Transaction string
}

func (*TextroomRequest) Payload

func (r *TextroomRequest) Payload() map[string]interface{}

type TextroomRequestFactory

type TextroomRequestFactory struct {
	PluginRequestFactory
}

func MakeTextroomRequestFactory

func MakeTextroomRequestFactory(adminKey string) *TextroomRequestFactory

func (*TextroomRequestFactory) CreateRequest

func (f *TextroomRequestFactory) CreateRequest(room *TextroomRoom, permanent bool, allowed []string) *TextroomCreateRequest

func (*TextroomRequestFactory) DestroyRequest

func (f *TextroomRequestFactory) DestroyRequest(roomID int, permanent bool, secret string) *TextroomDestroyRequest

func (*TextroomRequestFactory) EditRequest

func (f *TextroomRequestFactory) EditRequest(room *TextroomRoomForEdit, permanent bool, secret string) *TextroomEditRequest

func (*TextroomRequestFactory) ListRequest

func (f *TextroomRequestFactory) ListRequest() *TextroomRequest

type TextroomResponse

type TextroomResponse struct {
	Textroom string `json:"textroom"`
}

type TextroomRoom

type TextroomRoom struct {
	Room        int    `json:"room"`
	Description string `json:"description,omitempty"`
	IsPrivate   bool   `json:"is_private"`
	Secret      string `json:"secret,omitempty"`
	Pin         string `json:"pin,omitempty"`
	Post        string `json:"post,omitempty"`
}

func (*TextroomRoom) AsMap

func (r *TextroomRoom) AsMap() map[string]interface{}

type TextroomRoomForEdit

type TextroomRoomForEdit struct {
	Room        int    `json:"room"`
	Description string `json:"new_description,omitempty"`
	IsPrivate   bool   `json:"new_is_private"`
	Secret      string `json:"new_secret,omitempty"`
	Pin         string `json:"new_pin,omitempty"`
	Post        string `json:"new_post,omitempty"`
}

func (*TextroomRoomForEdit) AsMap

func (r *TextroomRoomForEdit) AsMap() map[string]interface{}

type TextroomRoomFromListResponse

type TextroomRoomFromListResponse struct {
	TextroomRoom
	PinRequired     bool `json:"pin_required"`
	NumParticipants int  `json:"num_participants"`
}

type VideoroomCreateRequest

type VideoroomCreateRequest struct {
	BasePluginRequest
	Room      *VideoroomRoom
	Permanent bool
	Allowed   []string
}

func (*VideoroomCreateRequest) Payload

func (r *VideoroomCreateRequest) Payload() map[string]interface{}

type VideoroomCreateResponse

type VideoroomCreateResponse struct {
	VideoroomResponse
	RoomID    int  `json:"room"`
	Permanent bool `json:"permanent"`
}

type VideoroomDestroyRequest

type VideoroomDestroyRequest struct {
	BasePluginRequest
	RoomID    int
	Secret    string
	Permanent bool
}

func (*VideoroomDestroyRequest) Payload

func (r *VideoroomDestroyRequest) Payload() map[string]interface{}

type VideoroomDestroyResponse

type VideoroomDestroyResponse struct {
	VideoroomResponse
	RoomID int `json:"room"`
}

type VideoroomEditRequest

type VideoroomEditRequest struct {
	BasePluginRequest
	Room      *VideoroomRoomForEdit
	Secret    string
	Permanent bool
}

func (*VideoroomEditRequest) Payload

func (r *VideoroomEditRequest) Payload() map[string]interface{}

type VideoroomEditResponse

type VideoroomEditResponse struct {
	VideoroomResponse
	RoomID int `json:"room"`
}

type VideoroomErrorResponse

type VideoroomErrorResponse struct {
	VideoroomResponse
	PluginError
}

func (*VideoroomErrorResponse) Error

func (err *VideoroomErrorResponse) Error() string

type VideoroomListResponse

type VideoroomListResponse struct {
	VideoroomResponse
	Rooms []*VideoroomRoomFromListResponse `json:"list"`
}

type VideoroomRequestFactory

type VideoroomRequestFactory struct {
	PluginRequestFactory
}

func MakeVideoroomRequestFactory

func MakeVideoroomRequestFactory(adminKey string) *VideoroomRequestFactory

func (*VideoroomRequestFactory) CreateRequest

func (f *VideoroomRequestFactory) CreateRequest(room *VideoroomRoom, permanent bool, allowed []string) *VideoroomCreateRequest

func (*VideoroomRequestFactory) DestroyRequest

func (f *VideoroomRequestFactory) DestroyRequest(roomID int, permanent bool, secret string) *VideoroomDestroyRequest

func (*VideoroomRequestFactory) EditRequest

func (f *VideoroomRequestFactory) EditRequest(room *VideoroomRoomForEdit, permanent bool, secret string) *VideoroomEditRequest

func (*VideoroomRequestFactory) ListRequest

func (f *VideoroomRequestFactory) ListRequest() *BasePluginRequest

type VideoroomResponse

type VideoroomResponse struct {
	Videoroom string `json:"videoroom"`
}

type VideoroomRoom

type VideoroomRoom struct {
	Room               int    `json:"room"`
	Description        string `json:"description,omitempty"`
	IsPrivate          bool   `json:"is_private"`
	Secret             string `json:"secret,omitempty"`
	Pin                string `json:"pin,omitempty"`
	RequirePvtID       bool   `json:"require_pvtid"`
	RequireE2ee        bool   `json:"require_e2ee"`
	Publishers         int    `json:"publishers"`
	Bitrate            int    `json:"bitrate"`
	FirFreq            int    `json:"fir_freq"`
	AudioCodec         string `json:"audiocodec,omitempty"`
	VideoCodec         string `json:"videocodec,omitempty"`
	Vp9Profile         string `json:"vp9_profile,omitempty"`
	H264Profile        string `json:"h264_profile,omitempty"`
	OpusFec            bool   `json:"opus_fec"`
	VideoSvc           bool   `json:"video_svc"`
	AudioLevelExt      bool   `json:"audiolevel_ext"`
	AudioLevelEvent    bool   `json:"audiolevel_event"`
	AudioActivePackets int    `json:"audio_active_packets,omitempty"`
	AudioLevelAverage  int    `json:"audio_level_average,omitempty"`
	VideoOrientExt     bool   `json:"videoorient_ext"`
	PlayoutDelayExt    bool   `json:"playoutdelay_ext"`
	TransportWideCCExt bool   `json:"transport_wide_cc_ext"`
	Record             bool   `json:"record"`
	RecDir             string `json:"rec_dir,omitempty"`
	LockRecord         bool   `json:"lock_record"`
	NotifyJoining      bool   `json:"notify_joining"`
}

func (*VideoroomRoom) AsMap

func (r *VideoroomRoom) AsMap() map[string]interface{}

type VideoroomRoomForEdit

type VideoroomRoomForEdit struct {
	Room         int    `json:"room"`
	Description  string `json:"new_description,omitempty"`
	IsPrivate    bool   `json:"new_is_private"`
	Secret       string `json:"new_secret,omitempty"`
	Pin          string `json:"new_pin,omitempty"`
	RequirePvtID bool   `json:"new_require_pvtid"`
	Publishers   int    `json:"new_publishers"`
	Bitrate      int    `json:"new_bitrate"`
	FirFreq      int    `json:"new_fir_freq"`
	LockRecord   bool   `json:"new_lock_record"`
}

func (*VideoroomRoomForEdit) AsMap

func (r *VideoroomRoomForEdit) AsMap() map[string]interface{}

type VideoroomRoomFromListResponse

type VideoroomRoomFromListResponse struct {
	VideoroomRoom
	PinRequired     bool `json:"pin_required"`
	MaxPublishers   int  `json:"max_publishers"`
	BitrateCap      bool `json:"bitrate_cap"`
	NumParticipants int  `json:"num_participants"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL