SoraMediaChannel

class SoraMediaChannel @JvmOverloads constructor(    context: Context,     signalingEndpoint: String? = null,     signalingEndpointCandidates: List<String> = emptyList(),     channelId: String,     signalingMetadata: Any? = "",     mediaOption: SoraMediaOption,     timeoutSeconds: Long = DEFAULT_TIMEOUT_SECONDS,     listener: SoraMediaChannel.Listener?,     clientId: String? = null,     signalingNotifyMetadata: Any? = null,     peerConnectionOption: PeerConnectionOption = PeerConnectionOption(),     dataChannelSignaling: Boolean? = null,     ignoreDisconnectWebSocket: Boolean? = null,     dataChannels: List<Map<String, Any>>? = null,     bundleId: String? = null)

Sora への接続を行うクラスです.

SignalingChannelPeerChannel の管理、協調動作制御を行っています. このクラスを利用することでシグナリングの詳細が隠蔽され、単一の Listener でイベントを受けることが出来ます.

シグナリングの手順とデータに関しては下記の Sora のドキュメントを参照ください.

Parameters

context

android.content.Context

signalingEndpoint

シグナリングの URL

signalingEndpointCandidates

シグナリングの URL (クラスター機能で複数の URL を利用したい場合はこちらを指定する)

signalingMetadata

connect メッセージに含める metadata

channelId

Sora に接続するためのチャネル ID

mediaOption

映像、音声に関するオプション

timeoutSeconds

WebSocket の接続タイムアウト (秒)

listener

イベントリスナー

clientId

connect メッセージに含める client_id

signalingNotifyMetadata

connect メッセージに含める signaling_notify_metadata

dataChannelSignaling

connect メッセージに含める data_channel_signaling

ignoreDisconnectWebSocket

connect メッセージに含める ignore_disconnect_websocket

dataChannels

connect メッセージに含める data_channels

bundleId

connect メッセージに含める bundle_id

Constructors

Link copied to clipboard
fun SoraMediaChannel(    context: Context,     signalingEndpoint: String? = null,     signalingEndpointCandidates: List<String> = emptyList(),     channelId: String,     signalingMetadata: Any? = "",     mediaOption: SoraMediaOption,     timeoutSeconds: Long = DEFAULT_TIMEOUT_SECONDS,     listener: SoraMediaChannel.Listener?,     clientId: String? = null,     signalingNotifyMetadata: Any? = null,     peerConnectionOption: PeerConnectionOption = PeerConnectionOption(),     dataChannelSignaling: Boolean? = null,     ignoreDisconnectWebSocket: Boolean? = null,     dataChannels: List<Map<String, Any>>? = null,     bundleId: String? = null)

SoraMediaChannel インスタンスを生成します.

Types

Link copied to clipboard
object Companion
Link copied to clipboard
interface Listener

SoraMediaChannel からコールバックイベントを受けるリスナー

Functions

Link copied to clipboard
fun connect()

Sora に接続します.

Link copied to clipboard
fun dataToString(data: ByteBuffer): String

メッセージングで受信したデータを UTF-8 の文字列に変換します.

Link copied to clipboard
fun disconnect()

Sora への接続を切断します.

Link copied to clipboard
fun sendDataChannelMessage(label: String, data: ByteBuffer): SoraMessagingError
fun sendDataChannelMessage(label: String, data: String): SoraMessagingError

メッセージを送信します.

Properties

Link copied to clipboard
var connectedSignalingEndpoint: String? = null

接続中のエンドポイント.

Link copied to clipboard
var connectionId: String? = null

コネクション ID.

Link copied to clipboard
var contactSignalingEndpoint: String? = null

最初に type: connect を最初に送信したエンドポイント.

Link copied to clipboard
val role: SoraChannelRole

ロール

Sources

Link copied to clipboard