MediaChannel
public final class MediaChannel
extension MediaChannel: CustomStringConvertible
一度接続を行ったメディアチャネルは再利用できません。 同じ設定で接続を行いたい場合は、新しい接続を行う必要があります。
接続が解除されるタイミング
メディアチャネルの接続が解除される条件を以下に示します。 いずれかの条件が 1 つでも成立すると、メディアチャネルを含めたすべてのチャネル (シグナリングチャネル、ピアチャネル、 WebSocket チャネル) の接続が解除されます。
- シグナリングチャネル (
SignalingChannel) の接続が解除される。 - WebSocket チャネル (
WebSocketChannel) の接続が解除される。 - ピアチャネル (
PeerChannel) の接続が解除される。 - サーバーから受信したシグナリング
pingに対してpongを返さない。 これはピアチャネルの役目です。
-
イベントハンドラ
Declaration
Swift
public var handlers: MediaChannelHandlers
-
クライアントの設定
Declaration
Swift
public let configuration: Configuration -
最初に type: connect メッセージを送信した URL (デバッグ用)
Sora から type: redirect メッセージを受信した場合、 contactUrl と connectedUrl には異なる値がセットされます type: redirect メッセージを受信しなかった場合、 contactUrl と connectedUrl には同じ値がセットされます
Declaration
Swift
public var contactUrl: URL? { get } -
接続中の URL
Declaration
Swift
public var connectedUrl: URL? { get } -
メディアチャンネルの内部で利用している RTCPeerConnection
Declaration
Swift
public var native: RTCPeerConnection? { get } -
クライアント ID 。接続後にセットされます。
Declaration
Swift
public var clientId: String? { get } -
バンドル ID 。接続後にセットされます。
Declaration
Swift
public var bundleId: String? { get } -
接続 ID 。接続後にセットされます。
Declaration
Swift
public var connectionId: String? { get } -
接続状態
Declaration
Swift
public private(set) var state: ConnectionState { get set } -
接続中 (
state == .connected) であればtrueDeclaration
Swift
public var isAvailable: Bool { get } -
接続開始時刻。 接続中にのみ取得可能です。
Declaration
Swift
public private(set) var connectionStartTime: Date? { get } -
接続時間 (秒) 。 接続中にのみ取得可能です。
Declaration
Swift
public var connectionTime: Int? { get }
-
同チャネルに接続中のクライアントの数。 サーバーから通知を受信可能であり、かつ接続中にのみ取得可能です。
Declaration
Swift
public private(set) var connectionCount: Int? { get } -
同チャネルに接続中のクライアントのうち、パブリッシャーの数。 サーバーから通知を受信可能であり、接続中にのみ取得可能です。
Declaration
Swift
public private(set) var publisherCount: Int? { get } -
同チャネルに接続中のクライアントの数のうち、サブスクライバーの数。 サーバーから通知を受信可能であり、接続中にのみ取得可能です。
Declaration
Swift
public private(set) var subscriberCount: Int? { get }
-
ストリームのリスト
Declaration
Swift
public var streams: [MediaStream] { get } -
最初のストリーム。 マルチストリームでは、必ずしも最初のストリームが 送信ストリームとは限りません。 送信ストリームが必要であれば
senderStreamを使用してください。Declaration
Swift
public var mainStream: MediaStream? { get } -
送信に使われるストリーム。 ストリーム ID が
configuration.publisherStreamIdに等しいストリームを返します。Declaration
Swift
public var senderStream: MediaStream? { get } -
受信ストリームのリスト。 ストリーム ID が
configuration.publisherStreamIdと異なるストリームを返します。Declaration
Swift
public var receiverStreams: [MediaStream] { get }
-
接続を解除します。
Declaration
Swift
public func disconnect(error: Error?)Parameters
error接続解除の原因となったエラー
-
DataChannel を利用してメッセージを送信します
Declaration
Swift
public func sendMessage(label: String, data: Data) -> Error?
View on GitHub
Install in Dash