Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Transporter

Hierarchy

  • Transporter

Index

Constructors

constructor

  • new Transporter(config: ExtendedRTCConfiguration, onConnectionConnect: (id: string) => Promise<void>, onConnectionDisconnect: (id: string) => Promise<void>, onChannelOpen: (id: string) => Promise<void>, onChannelClose: (id: string) => Promise<void>): Transporter
  • Parameters

    • config: ExtendedRTCConfiguration
    • onConnectionConnect: (id: string) => Promise<void>
        • (id: string): Promise<void>
        • Parameters

          • id: string

          Returns Promise<void>

    • onConnectionDisconnect: (id: string) => Promise<void>
        • (id: string): Promise<void>
        • Parameters

          • id: string

          Returns Promise<void>

    • onChannelOpen: (id: string) => Promise<void>
        • (id: string): Promise<void>
        • Parameters

          • id: string

          Returns Promise<void>

    • onChannelClose: (id: string) => Promise<void>
        • (id: string): Promise<void>
        • Parameters

          • id: string

          Returns Promise<void>

    Returns Transporter

Properties

Private asyncResolver

asyncResolver: Emittery = new Emittery()

Private channels

channels: Map<string, RTCDataChannel> = new Map<string, RTCDataChannel>()

Private config

config: ExtendedRTCConfiguration

Private connections

connections: Map<string, RTCPeerConnection> = new Map<string, RTCPeerConnection>()

Private logger

logger: Logger = getLogger()

Private onChannelClose

onChannelClose: (id: string) => Promise<void>

Type declaration

    • (id: string): Promise<void>
    • Parameters

      • id: string

      Returns Promise<void>

Private onChannelOpen

onChannelOpen: (id: string) => Promise<void>

Type declaration

    • (id: string): Promise<void>
    • Parameters

      • id: string

      Returns Promise<void>

Private onConnectionConnect

onConnectionConnect: (id: string) => Promise<void>

Type declaration

    • (id: string): Promise<void>
    • Parameters

      • id: string

      Returns Promise<void>

Private onConnectionDisconnect

onConnectionDisconnect: (id: string) => Promise<void>

Type declaration

    • (id: string): Promise<void>
    • Parameters

      • id: string

      Returns Promise<void>

Private queuedCandidates

queuedCandidates: Map<string, string[]> = new Map<string, string[]>()

Private queuedMessages

queuedMessages: Map<string, Uint8Array[]> = new Map<string, Uint8Array[]>()

Methods

Private addQueuedCandidates

  • addQueuedCandidates(id: string): Promise<void>

close

  • close(): Promise<void>

Private getChannelKey

  • getChannelKey(id: string): string

Private getMessageKey

  • getMessageKey(id: string): string

getOffer

  • getOffer(answererId: string, handleCandidate: (candidate: string) => Promise<void>): Promise<string>
  • Parameters

    • answererId: string
    • handleCandidate: (candidate: string) => Promise<void>
        • (candidate: string): Promise<void>
        • Parameters

          • candidate: string

          Returns Promise<void>

    Returns Promise<string>

handleAnswer

  • handleAnswer(id: string, answer: string): Promise<void>

handleCandidate

  • handleCandidate(id: string, candidate: string): Promise<void>

Private handleConnectionStatusChange

  • handleConnectionStatusChange(connectionState: string, id: string): Promise<void>

handleOffer

  • handleOffer(id: string, offer: string, handleCandidate: (candidate: string) => Promise<void>): Promise<string>
  • Parameters

    • id: string
    • offer: string
    • handleCandidate: (candidate: string) => Promise<void>
        • (candidate: string): Promise<void>
        • Parameters

          • candidate: string

          Returns Promise<void>

    Returns Promise<string>

Private queueAndEmitMessage

  • queueAndEmitMessage(id: string, rawMsg: ArrayBuffer): Promise<void>

recv

  • recv(id: string): Promise<Uint8Array>

send

  • send(id: string, msg: Uint8Array): Promise<void>

shutdown

  • shutdown(id: string): Promise<void>

Generated using TypeDoc