network

package
v1.1.1 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2018 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NewDataChannel int = iota + 1
	NewMessage
)

Enums for DataChannelEventType

Variables

This section is empty.

Functions

This section is empty.

Types

type BufferTransportGenerator

type BufferTransportGenerator func(uint32, uint8) chan<- *rtp.Packet

BufferTransportGenerator generates a new channel for the associated SSRC This channel is used to send RTP packets to users of pion-WebRTC

type DataChannelCreated

type DataChannelCreated struct {
	Label string
	// contains filtered or unexported fields
}

DataChannelCreated is emitted when a new DataChannel is created

func (*DataChannelCreated) StreamIdentifier

func (d *DataChannelCreated) StreamIdentifier() uint16

StreamIdentifier returns the streamIdentifier

type DataChannelEvent

type DataChannelEvent interface {
	StreamIdentifier() uint16
}

DataChannelEvent is the interface for all events that flow across the DataChannelEventHandler

type DataChannelEventHandler

type DataChannelEventHandler func(DataChannelEvent)

DataChannelEventHandler notifies the RTCPeerConnection of events relating to DataChannels

type DataChannelEventType

type DataChannelEventType int

DataChannelEventType is the enum used to represent different types of DataChannelEvent

type DataChannelMessage

type DataChannelMessage struct {
	Payload datachannel.Payload
	// contains filtered or unexported fields
}

DataChannelMessage is emitted when a DataChannel receives a message

func (*DataChannelMessage) StreamIdentifier

func (d *DataChannelMessage) StreamIdentifier() uint16

StreamIdentifier returns the streamIdentifier

type DataChannelOpen

type DataChannelOpen struct{}

DataChannelOpen is emitted when all channels should be opened

func (*DataChannelOpen) StreamIdentifier

func (d *DataChannelOpen) StreamIdentifier() uint16

StreamIdentifier returns the streamIdentifier

type ICENotifier

type ICENotifier func(ice.ConnectionState)

ICENotifier notifies the RTCPeerConnection if ICE state has changed

type Manager

type Manager struct {
	IceAgent *ice.Agent
	// contains filtered or unexported fields
}

Manager contains all network state (DTLS, SRTP) that is shared between ports It is also used to perform operations that involve multiple ports

func NewManager

func NewManager(btg BufferTransportGenerator, dcet DataChannelEventHandler, ntf ICENotifier) (m *Manager, err error)

NewManager creates a new network.Manager

func (*Manager) AddURL

func (m *Manager) AddURL(url *ice.URL) error

AddURL takes an ICE Url, allocates any state and adds the candidate

func (*Manager) Close

func (m *Manager) Close()

Close cleans up all the allocated state

func (*Manager) DTLSFingerprint

func (m *Manager) DTLSFingerprint() string

DTLSFingerprint generates the fingerprint included in an SessionDescription

func (*Manager) SendDataChannelMessage

func (m *Manager) SendDataChannelMessage(payload datachannel.Payload, streamIdentifier uint16) error

SendDataChannelMessage sends a DataChannel message to a connected peer

func (*Manager) SendOpenChannelMessage

func (m *Manager) SendOpenChannelMessage(streamIdentifier uint16, label string) error

SendOpenChannelMessage sends the message to open a datachannel to the connected peer

func (*Manager) SendRTCP

func (m *Manager) SendRTCP(pkt []byte)

SendRTCP finds a connected port and sends the passed RTCP packet

func (*Manager) SendRTP

func (m *Manager) SendRTP(packet *rtp.Packet)

SendRTP finds a connected port and sends the passed RTP packet

func (*Manager) Start

func (m *Manager) Start(isOffer bool, remoteUfrag, remotePwd string) error

Start allocates DTLS/ICE state that is dependent on if we are offering or answering

Jump to

Keyboard shortcuts

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