client

package
v0.0.0-...-6ec608e Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewWebSocketConn

func NewWebSocketConn(host, token string, opts *Options) (*websocket.Conn, error)

func SetAuthorizationToken

func SetAuthorizationToken(header http.Header, token string)

Types

type Options

type Options struct {
	AutoSubscribe             bool
	Publish                   string
	ClientInfo                *livekit.ClientInfo
	DisabledCodecs            []webrtc.RTPCodecCapability
	SignalRequestInterceptor  SignalRequestInterceptor
	SignalResponseInterceptor SignalResponseInterceptor
}

type RTCClient

type RTCClient struct {
	OnConnected    func()
	OnDataReceived func(data []byte, sid string)
	// contains filtered or unexported fields
}

func NewRTCClient

func NewRTCClient(conn *websocket.Conn, opts *Options) (*RTCClient, error)

func (*RTCClient) AddFileTrack

func (c *RTCClient) AddFileTrack(path string, id string, label string) (writer *TrackWriter, err error)

func (*RTCClient) AddStaticTrack

func (c *RTCClient) AddStaticTrack(mime string, id string, label string) (writer *TrackWriter, err error)

func (*RTCClient) AddStaticTrackWithCodec

func (c *RTCClient) AddStaticTrackWithCodec(codec webrtc.RTPCodecCapability, id string, label string) (writer *TrackWriter, err error)

func (*RTCClient) AddTrack

func (c *RTCClient) AddTrack(track *webrtc.TrackLocalStaticSample, path string) (writer *TrackWriter, err error)

func (*RTCClient) BytesReceived

func (c *RTCClient) BytesReceived() uint64

func (*RTCClient) GetPublishedTrackIDs

func (c *RTCClient) GetPublishedTrackIDs() []string

func (*RTCClient) GetRemoteParticipant

func (c *RTCClient) GetRemoteParticipant(sid livekit.ParticipantID) *livekit.ParticipantInfo

func (*RTCClient) GetSubscriptionResponseAndClear

func (c *RTCClient) GetSubscriptionResponseAndClear() *livekit.SubscriptionResponse

func (*RTCClient) ID

func (*RTCClient) LastAnswer

func (c *RTCClient) LastAnswer() *webrtc.SessionDescription

LastAnswer return SDP of the last answer for the publisher connection

func (*RTCClient) PongReceivedAt

func (c *RTCClient) PongReceivedAt() int64

func (*RTCClient) PublishData

func (c *RTCClient) PublishData(data []byte, kind livekit.DataPacket_Kind) error

func (*RTCClient) ReadResponse

func (c *RTCClient) ReadResponse() (*livekit.SignalResponse, error)

func (*RTCClient) RefreshToken

func (c *RTCClient) RefreshToken() string

func (*RTCClient) RemoteParticipants

func (c *RTCClient) RemoteParticipants() []*livekit.ParticipantInfo

func (*RTCClient) Run

func (c *RTCClient) Run() error

create an offer for the server

func (*RTCClient) SendAddTrack

func (c *RTCClient) SendAddTrack(cid string, name string, trackType livekit.TrackType) error

send AddTrack command to server to initiate server-side negotiation

func (*RTCClient) SendIceCandidate

func (c *RTCClient) SendIceCandidate(ic *webrtc.ICECandidate, target livekit.SignalTarget) error

func (*RTCClient) SendNacks

func (c *RTCClient) SendNacks(count int)

func (*RTCClient) SendPing

func (c *RTCClient) SendPing() error

func (*RTCClient) SendRequest

func (c *RTCClient) SendRequest(msg *livekit.SignalRequest) error

func (*RTCClient) Stop

func (c *RTCClient) Stop()

func (*RTCClient) SubscribedTracks

func (c *RTCClient) SubscribedTracks() map[livekit.ParticipantID][]*webrtc.TrackRemote

func (*RTCClient) WaitUntilConnected

func (c *RTCClient) WaitUntilConnected() error

type SignalRequestHandler

type SignalRequestHandler func(msg *livekit.SignalRequest) error

type SignalRequestInterceptor

type SignalRequestInterceptor func(msg *livekit.SignalRequest, next SignalRequestHandler) error

type SignalResponseHandler

type SignalResponseHandler func(msg *livekit.SignalResponse) error

type SignalResponseInterceptor

type SignalResponseInterceptor func(msg *livekit.SignalResponse, next SignalResponseHandler) error

type TrackWriter

type TrackWriter struct {
	// contains filtered or unexported fields
}

Writes a file to an RTP track. makes it easier to debug and create RTP streams

func NewTrackWriter

func NewTrackWriter(ctx context.Context, track *webrtc.TrackLocalStaticSample, filePath string) *TrackWriter

func (*TrackWriter) Start

func (w *TrackWriter) Start() error

func (*TrackWriter) Stop

func (w *TrackWriter) Stop()

Jump to

Keyboard shortcuts

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