Options
All
  • Public
  • Public/Protected
  • All
Menu

Class ConnectionPublisher

Role が "sendonly" または "sendrecv" の場合に Sora との WebRTC 接続を扱うクラス

Hierarchy

Index

Constructors

constructor

Properties

authMetadata

authMetadata: JSONType

type offer に含まれる認証 metadata

channelId

channelId: string

チャネルID

clientId

clientId: null | string

クライアントID

connectionId

connectionId: null | string

コネクションID

constraints

constraints: any

PeerConnection に渡す configuration

debug

debug: boolean

デバッグフラグ

encodings

encodings: RTCRtpEncodingParameters[]

サイマルキャストで使用する RTCRtpEncodingParameters のリスト

metadata

metadata: undefined | JSONType

メタデータ

options

接続オプション

pc

pc: null | RTCPeerConnection

PeerConnection インスタンス

remoteConnectionIds

remoteConnectionIds: string[]

リモートコネクションIDのリスト

role

role: string

ロール(sendonly | sendrecv | recvonly)

signalingUrlCandidates

signalingUrlCandidates: string | string[]

シグナリングに使用する URL 候補

stream

stream: null | MediaStream

メディアストリーム

Accessors

audio

  • get audio(): boolean
  • audio が有効かどうか

    Returns boolean

connectedSignalingUrl

  • get connectedSignalingUrl(): string
  • 接続中のシグナリング URL

    Returns string

datachannels

  • DataChannel メッセージング用の DataChannel 情報のリスト

    Returns DataChannelConfiguration[]

e2eeRemoteFingerprints

  • get e2eeRemoteFingerprints(): undefined | Record<string, string>
  • E2EE のリモートのフィンガープリントリスト

    Returns undefined | Record<string, string>

e2eeSelfFingerprint

  • get e2eeSelfFingerprint(): undefined | string
  • E2EE の自分のフィンガープリント

    Returns undefined | string

signalingUrl

  • get signalingUrl(): string | string[]
  • シグナリングに使用する URL

    deprecated

    Returns string | string[]

video

  • get video(): boolean
  • video が有効かどうか

    Returns boolean

Methods

connect

  • connect(stream: MediaStream): Promise<MediaStream>
  • Sora へ接続するメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
    await sendrecv.connect(mediaStream);

    Parameters

    • stream: MediaStream

      メディアストリーム

    Returns Promise<MediaStream>

disconnect

  • disconnect(): Promise<void>
  • 切断処理をするメソッド

    example
    await sendrecv.disconnect();
    

    Returns Promise<void>

on

  • on<T, U>(kind: T, callback: U): void
  • SendRecv Object で発火するイベントのコールバックを設定するメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    sendrecv.on("track", (event) => {
    // callback 処理
    });
    remarks

    addstream イベントは非推奨です. track イベントを使用してください

    removestream イベントは非推奨です. removetrack イベントを使用してください

    Type parameters

    Parameters

    • kind: T

      イベントの種類(disconnect, push, track, removetrack, notify, log, timeout, timeline, signaling, message, datachannel)

    • callback: U

      コールバック関数

    Returns void

replaceAudioTrack

  • replaceAudioTrack(stream: MediaStream, audioTrack: MediaStreamTrack): Promise<void>
  • audio track を入れ替えするメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
    await sendrecv.connect(mediaStream);

    const replacedMediaStream = await navigator.mediaDevices.getUserMedia({audio: true});
    await sendrecv.replaceAudioTrack(mediaStream, replacedMediaStream.getAudioTracks()[0]);
    remarks

    stream の audio track を停止後、新しい audio track をセットします

    Parameters

    • stream: MediaStream

      audio track を削除する MediaStream

    • audioTrack: MediaStreamTrack

      新しい audio track

    Returns Promise<void>

replaceVideoTrack

  • replaceVideoTrack(stream: MediaStream, videoTrack: MediaStreamTrack): Promise<void>
  • video track を入れ替えするメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
    await sendrecv.connect(mediaStream);

    const replacedMediaStream = await navigator.mediaDevices.getUserMedia({video: true});
    await sendrecv.replaceVideoTrack(mediaStream, replacedMediaStream.getVideoTracks()[0]);
    remarks

    stream の video track を停止後、新しい video track をセットします

    Parameters

    • stream: MediaStream

      video track を削除する MediaStream

    • videoTrack: MediaStreamTrack

      新しい video track

    Returns Promise<void>

sendMessage

  • sendMessage(label: string, message: Uint8Array): void
  • DataChannel を使用してメッセージを送信するメソッド

    Parameters

    • label: string

      メッセージを送信する DataChannel のラベル

    • message: Uint8Array

      Uint8Array

    Returns void

stopAudioTrack

  • stopAudioTrack(stream: MediaStream): Promise<void>
  • audio track を停止するメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
    await sendrecv.connect(mediaStream);

    sendrecv.stopAudioTrack(mediaStream);
    remarks

    stream の audio track を停止後、PeerConnection の senders から対象の sender を削除します

    Parameters

    • stream: MediaStream

      audio track を削除する MediaStream

    Returns Promise<void>

stopVideoTrack

  • stopVideoTrack(stream: MediaStream): Promise<void>
  • video track を停止するメソッド

    example
    const sendrecv = connection.sendrecv("sora");
    const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
    await sendrecv.connect(mediaStream);

    sendrecv.stopVideoTrack(mediaStream);
    remarks

    stream の video track を停止後、PeerConnection の senders から対象の sender を削除します

    Parameters

    • stream: MediaStream

      video track を削除する MediaStream

    Returns Promise<void>

Generated using TypeDoc