Documentation
¶
Index ¶
- type ACLHook
- type AuthHook
- func (h *AuthHook) ID() string
- func (h *AuthHook) OnConnect(cl *mqtt.Client, pk packets.Packet) error
- func (h *AuthHook) OnConnectAuthenticate(cl *mqtt.Client, pk packets.Packet) bool
- func (h *AuthHook) OnDisconnect(cl *mqtt.Client, err error, expire bool)
- func (h *AuthHook) OnPublish(cl *mqtt.Client, pk packets.Packet) (packets.Packet, error)
- func (h *AuthHook) OnSubscribe(cl *mqtt.Client, pk packets.Packet) packets.Packet
- func (h *AuthHook) OnUnsubscribe(cl *mqtt.Client, pk packets.Packet) packets.Packet
- func (h *AuthHook) Provides(b byte) bool
- type Broker
- type ConnectionHook
- type Participant
- type RoomManager
- func (rm *RoomManager) AddParticipant(roomName, clientID, userID string) bool
- func (rm *RoomManager) FindActiveRoom(userID string) string
- func (rm *RoomManager) GetOrCreateRoom(roomName, userID, deviceID string) *ScreenshareRoom
- func (rm *RoomManager) GetPeers(roomName, senderClientID string) []Participant
- func (rm *RoomManager) RemoveParticipant(clientID string) (roomName, creatorUserID, creatorDeviceID string, wasLastParticipant bool)
- func (rm *RoomManager) RoomExists(roomName string) bool
- type ScreenshareRoom
- type SignalingMessage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ACLHook ¶
func (*ACLHook) OnACLCheck ¶
type AuthHook ¶
func (*AuthHook) OnConnectAuthenticate ¶
func (*AuthHook) OnDisconnect ¶
func (*AuthHook) OnSubscribe ¶
func (*AuthHook) OnUnsubscribe ¶
type ConnectionHook ¶
func (*ConnectionHook) ID ¶
func (h *ConnectionHook) ID() string
func (*ConnectionHook) OnDisconnect ¶
func (h *ConnectionHook) OnDisconnect(cl *mqtt.Client, err error, expire bool)
func (*ConnectionHook) OnPacketRead ¶
func (*ConnectionHook) Provides ¶
func (h *ConnectionHook) Provides(b byte) bool
type Participant ¶
type Participant struct {
// contains filtered or unexported fields
}
type RoomManager ¶
type RoomManager struct {
// contains filtered or unexported fields
}
func NewRoomManager ¶
func NewRoomManager() *RoomManager
func (*RoomManager) AddParticipant ¶
func (rm *RoomManager) AddParticipant(roomName, clientID, userID string) bool
func (*RoomManager) FindActiveRoom ¶
func (rm *RoomManager) FindActiveRoom(userID string) string
func (*RoomManager) GetOrCreateRoom ¶
func (rm *RoomManager) GetOrCreateRoom(roomName, userID, deviceID string) *ScreenshareRoom
func (*RoomManager) GetPeers ¶
func (rm *RoomManager) GetPeers(roomName, senderClientID string) []Participant
func (*RoomManager) RemoveParticipant ¶
func (rm *RoomManager) RemoveParticipant(clientID string) (roomName, creatorUserID, creatorDeviceID string, wasLastParticipant bool)
func (*RoomManager) RoomExists ¶
func (rm *RoomManager) RoomExists(roomName string) bool
type ScreenshareRoom ¶
type ScreenshareRoom struct {
// contains filtered or unexported fields
}
type SignalingMessage ¶
type SignalingMessage struct {
Type string `json:"type"`
Room string `json:"room"`
RoomId string `json:"roomId"`
UserData string `json:"userdata"`
AccessCodes []string `json:"accessCodes"`
ClientId string `json:"clientId"`
Payload map[string]interface{} `json:"payload"`
IceServers map[string]interface{} `json:"iceServers"`
}
Click to show internal directories.
Click to hide internal directories.