Help us shape the future of Go! Take the 2026 Go Developer Survey

signalling

package
v1.13.11 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidMessageType          = errors.New("invalid message type")
	ErrNameExceedsLimits           = errors.New("name length exceeds limits")
	ErrMetadataExceedsLimits       = errors.New("metadata size exceeds limits")
	ErrAttributesExceedsLimits     = errors.New("attributes size exceeds limits")
	ErrUpdateOwnMetadataNotAllowed = errors.New("update own metadata not allowed")
)

Functions

This section is empty.

Types

type ParticipantSignalHandler

type ParticipantSignalHandler interface {
	HandleMessage(msg proto.Message) error
}

type ParticipantSignaller

type ParticipantSignaller interface {
	SwapResponseSink(sink routing.MessageSink, reason types.SignallingCloseReason)
	GetResponseSink() routing.MessageSink
	CloseSignalConnection(reason types.SignallingCloseReason)

	// HandshakePending reports whether a resumed connection is still waiting for the
	// ReconnectResponse it has to open with
	HandshakePending() bool
	// OpenHandshake lets messages flow on a resumed connection that does not open with
	// a ReconnectResponse
	OpenHandshake()

	WriteMessage(msg proto.Message) error
}

func NewSignallerAsync

func NewSignallerAsync(params SignallerAsyncParams) ParticipantSignaller

type ParticipantSignalling

type ParticipantSignalling interface {
	SignalJoinResponse(join *livekit.JoinResponse) proto.Message
	SignalParticipantUpdate(participants []*livekit.ParticipantInfo) proto.Message
	SignalSpeakerUpdate(speakers []*livekit.SpeakerInfo) proto.Message
	SignalRoomUpdate(room *livekit.Room) proto.Message
	SignalConnectionQualityUpdate(connectionQuality *livekit.ConnectionQualityUpdate) proto.Message
	SignalRefreshToken(token string) proto.Message
	SignalRequestResponse(requestResponse *livekit.RequestResponse) proto.Message
	SignalRoomMovedResponse(roomMoved *livekit.RoomMovedResponse) proto.Message
	SignalReconnectResponse(reconnect *livekit.ReconnectResponse) proto.Message
	SignalICECandidate(trickle *livekit.TrickleRequest) proto.Message
	SignalTrackMuted(mute *livekit.MuteTrackRequest) proto.Message
	SignalTrackPublished(trackPublished *livekit.TrackPublishedResponse) proto.Message
	SignalTrackUnpublished(trackUnpublished *livekit.TrackUnpublishedResponse) proto.Message
	SignalTrackSubscribed(trackSubscribed *livekit.TrackSubscribed) proto.Message
	SignalLeaveRequest(leave *livekit.LeaveRequest) proto.Message
	SignalSdpAnswer(answer *livekit.SessionDescription) proto.Message
	SignalSdpOffer(offer *livekit.SessionDescription) proto.Message
	SignalStreamStateUpdate(streamStateUpdate *livekit.StreamStateUpdate) proto.Message
	SignalSubscribedQualityUpdate(subscribedQualityUpdate *livekit.SubscribedQualityUpdate) proto.Message
	SignalSubscriptionResponse(subscriptionResponse *livekit.SubscriptionResponse) proto.Message
	SignalSubscriptionPermissionUpdate(subscriptionPermissionUpdate *livekit.SubscriptionPermissionUpdate) proto.Message
	SignalMediaSectionsRequirement(mediaSectionsRequirement *livekit.MediaSectionsRequirement) proto.Message
	SignalSubscribedAudioCodecUpdate(subscribedAudioCodecUpdate *livekit.SubscribedAudioCodecUpdate) proto.Message
	SignalPublishDataTrackResponse(publishDataTrackResponse *livekit.PublishDataTrackResponse) proto.Message
	SignalUnpublishDataTrackResponse(unpublishDataTrackResponse *livekit.UnpublishDataTrackResponse) proto.Message
	SignalDataTrackSubscriberHandles(dataTrackSubscriberHandles *livekit.DataTrackSubscriberHandles) proto.Message
	SignalStoreDataBlobResponse(storeDataBlobResponse *livekit.StoreDataBlobResponse) proto.Message
	SignalGetDataBlobResponse(getDataBlobResponse *livekit.GetDataBlobResponse) proto.Message
}

func NewSignalling

func NewSignalling(params SignallingParams) ParticipantSignalling

type SignalHandlerParams

type SignalHandlerParams struct {
	Logger      logger.Logger
	Participant types.LocalParticipant
}

type SignallerAsyncParams

type SignallerAsyncParams struct {
	Logger            logger.Logger
	Participant       types.LocalParticipant
	OnHandshakeOpened func()
}

type SignallingParams

type SignallingParams struct {
	Logger logger.Logger
}

Jump to

Keyboard shortcuts

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