Versions in this module Expand all Collapse all v1 v1.0.0 Sep 12, 2022 Changes in this version + var ErrRelayPeerNotReady = errors.New("relay Peer is not ready") + var ErrRelayPeerSignalDone = errors.New("relay Peer signal already called") + var ErrRelaySignalDCNotReady = errors.New("relay Peer data channel is not ready") + type Message struct + func (m *Message) Payload() []byte + func (m *Message) Reply(msg []byte) error + type Options struct + RelayMiddlewareDC bool + RelaySessionDC bool + type Peer struct + func NewPeer(meta PeerMeta, conf *PeerConfig) (*Peer, error) + func (p *Peer) AddTrack(receiver *webrtc.RTPReceiver, remoteTrack *webrtc.TrackRemote, ...) (*webrtc.RTPSender, error) + func (p *Peer) Answer(request []byte) ([]byte, error) + func (p *Peer) Close() error + func (p *Peer) CreateDataChannel(label string) (*webrtc.DataChannel, error) + func (p *Peer) Emit(event string, data []byte) error + func (p *Peer) ID() string + func (p *Peer) LocalTracks() []webrtc.TrackLocal + func (p *Peer) Offer(signalFn func(meta PeerMeta, signal []byte) ([]byte, error)) error + func (p *Peer) OnClose(fn func()) + func (p *Peer) OnDataChannel(f func(channel *webrtc.DataChannel)) + func (p *Peer) OnReady(f func()) + func (p *Peer) OnRequest(f func(event string, msg Message)) + func (p *Peer) OnTrack(...) + func (p *Peer) Request(ctx context.Context, event string, data []byte) ([]byte, error) + func (p *Peer) WriteRTCP(pkts []rtcp.Packet) error + type PeerConfig struct + ICEServers []webrtc.ICEServer + Logger logr.Logger + SettingEngine webrtc.SettingEngine + type PeerMeta struct + PeerID string + SessionID string + type TrackMeta struct + CodecParameters *webrtc.RTPCodecParameters + StreamID string + TrackID string