Documentation
¶
Index ¶
- type AnalyticsService
- type Stats
- type StatsInterceptor
- type StatsInterceptorFactory
- type StatsWorker
- func (s *StatsWorker) AddBuffer(buffer *buffer.Buffer)
- func (s *StatsWorker) Close()
- func (s *StatsWorker) OnDownstreamPacket(bytes int)
- func (s *StatsWorker) OnRTCP(direction livekit.StreamType, stats *livekit.AnalyticsStat)
- func (s *StatsWorker) RemoveBuffer(ssrc uint32)
- func (s *StatsWorker) Update()
- type TelemetryService
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AnalyticsService ¶ added in v0.15.0
type AnalyticsService interface {
SendStats(ctx context.Context, stats []*livekit.AnalyticsStat)
SendEvent(ctx context.Context, events *livekit.AnalyticsEvent)
}
func NewAnalyticsService ¶ added in v0.15.0
func NewAnalyticsService(_ *config.Config, currentNode routing.LocalNode) AnalyticsService
type StatsInterceptor ¶
type StatsInterceptor struct {
interceptor.NoOp
// contains filtered or unexported fields
}
func (*StatsInterceptor) BindRTCPWriter ¶
func (s *StatsInterceptor) BindRTCPWriter(writer interceptor.RTCPWriter) interceptor.RTCPWriter
BindRTCPWriter lets you modify any outgoing RTCP packets. It is called once per PeerConnection. The returned method will be called once per packet batch.
type StatsInterceptorFactory ¶
type StatsInterceptorFactory struct {
// contains filtered or unexported fields
}
func (*StatsInterceptorFactory) NewInterceptor ¶
func (f *StatsInterceptorFactory) NewInterceptor(_ string) (interceptor.Interceptor, error)
type StatsWorker ¶
StatsWorker handles participant stats
func (*StatsWorker) AddBuffer ¶
func (s *StatsWorker) AddBuffer(buffer *buffer.Buffer)
func (*StatsWorker) Close ¶
func (s *StatsWorker) Close()
func (*StatsWorker) OnDownstreamPacket ¶ added in v0.14.2
func (s *StatsWorker) OnDownstreamPacket(bytes int)
func (*StatsWorker) OnRTCP ¶ added in v0.14.2
func (s *StatsWorker) OnRTCP(direction livekit.StreamType, stats *livekit.AnalyticsStat)
func (*StatsWorker) RemoveBuffer ¶
func (s *StatsWorker) RemoveBuffer(ssrc uint32)
func (*StatsWorker) Update ¶ added in v0.14.2
func (s *StatsWorker) Update()
type TelemetryService ¶
type TelemetryService interface {
// stats
NewStatsInterceptorFactory(participantID, identity string) *StatsInterceptorFactory
AddUpTrack(participantID string, buff *buffer.Buffer)
OnDownstreamPacket(participantID string, bytes int)
HandleRTCP(streamType livekit.StreamType, participantID string, pkts []rtcp.Packet)
Report(ctx context.Context, stats []*livekit.AnalyticsStat)
// events
RoomStarted(ctx context.Context, room *livekit.Room)
RoomEnded(ctx context.Context, room *livekit.Room)
ParticipantJoined(ctx context.Context, room *livekit.Room, participant *livekit.ParticipantInfo, clientInfo *livekit.ClientInfo)
ParticipantLeft(ctx context.Context, room *livekit.Room, participant *livekit.ParticipantInfo)
TrackPublished(ctx context.Context, participantID string, track *livekit.TrackInfo)
TrackUnpublished(ctx context.Context, participantID string, track *livekit.TrackInfo, ssrc uint32)
TrackSubscribed(ctx context.Context, participantID string, track *livekit.TrackInfo)
TrackUnsubscribed(ctx context.Context, participantID string, track *livekit.TrackInfo)
RecordingStarted(ctx context.Context, ri *livekit.RecordingInfo)
RecordingEnded(ctx context.Context, ri *livekit.RecordingInfo)
}
func NewTelemetryService ¶
func NewTelemetryService(notifier webhook.Notifier, analytics AnalyticsService) TelemetryService
Source Files
¶
Click to show internal directories.
Click to hide internal directories.