RoomPublication
@objc
open class RoomPublication : NSObject, Identifiable
Room SDKにおけるPublication
Core SDKのPublicationのラッパークラス
PublicationはLocalMemberがPublishした時に取得でき、Roomに参加している他クライアント(RemoteMember)がSubscribeされると通信を行います。
Roomなどから他の人のPublicationも取得することはできますが、その場合Streamは含まれません。
-
Publicationを識別するためのID
Declaration
Swift
@objc public var id: String { get }
-
このPublicationを生成したMember
Declaration
Swift
@objc public var publisher: RoomMember? { get }
-
このPublicationに紐づくSubscription一覧
Declaration
Swift
@objc public var subscriptions: [RoomSubscription] { get }
-
PublishしているStreamのコンテントタイプ
Declaration
Swift
@objc public var contentType: ContentType { get }
-
メタデータ
Declaration
Swift
@objc public var metadata: String? { get }
-
コーデック指定
Declaration
Swift
@objc public var codecCapabilities: [Codec] { get }
-
エンコーディング設定
詳しい設定例については開発者ドキュメントの大規模会議アプリを実装する上での注意点をご覧ください。
Declaration
Swift
@objc public var encodings: [Encoding] { get }
-
ステート
Canceledの場合、このオブジェクトの操作は無効です。
Declaration
Swift
@objc public var state: PublicationState { get }
-
このPublicationに紐づくStream
LocalRoomMemberがPublishした時に得られるPublicationのみセットされます。
Declaration
Swift
@objc public var stream: LocalStream? { get }
-
イベントデリゲート
Declaration
Swift
@objc public var delegate: RoomPublicationDelegate? { get set }
-
updateMetadata(_:
Asynchronous) メタデータを更新します。
Declaration
Swift
@available(iOS 13.0, *) @objc public func updateMetadata(_ metadata: String) async throws
Parameters
metadata
更新するメタデータ
-
メタデータを更新します。
Declaration
Swift
@objc public func updateMetadata(_ metadata: String, completion: ((Error?) -> Void)?)
Parameters
metadata
更新するメタデータ
completion
完了コールバック
-
cancel()
AsynchronousPublishを中止します。
Warning
SkyWayRoom v2.0.7で非推奨となりました。Declaration
Swift
@available(iOS, deprecated, introduced: 13.0, message: "SkyWayRoom v2.0.7で非推奨となりました。") @objc public func cancel() async throws
-
Publishを中止します。
Warning
SkyWayRoom v2.0.7で非推奨となりました。Declaration
Swift
@available(*, deprecated, message: "SkyWayRoom v2.0.7で非推奨となりました。") @objc public func cancel(completion: ((Error?) -> Void)?)
Parameters
completion
完了コールバック
-
enable()
AsynchronousPublicationを有効状態にします。
このAPIはLocalPublicationのみ機能します。
既に有効状態の場合は何もしません。
Declaration
Swift
@available(iOS 13.0, *) @objc public func enable() async throws
-
Publicationを有効状態にします。
このAPIはLocalPublicationのみ機能します。
既に有効状態の場合は何もしません。
Declaration
Swift
@objc public func enable(completion: ((Error?) -> Void)?)
Parameters
completion
完了コールバック
-
disable()
AsynchronousPublicationを無効状態にします。
既に無効状態の場合は何もしません。
Declaration
Swift
@available(iOS 13.0, *) @objc public func disable() async throws
-
Publicationを無効状態にします。
既に無効状態の場合は何もしません。
Declaration
Swift
@objc public func disable(completion: ((Error?) -> Void)?)
Parameters
completion
完了コールバック
-
Warning
SkyWayRoom v2.0.0で非推奨となりました。Declaration
Swift
@available(*, deprecated, message: "SkyWayRoom v2.0.0で非推奨となりました。") @objc public func getStats(memberId: String) -> WebRTCStats?
-
エンコーディング設定を更新します。
更新はLocalRoomMemberのPublishしたPublicationのみ有効で、ContentTypeがAudioまたはVideoの時のみ更新ができます。
Publish時に設定したエンコーディングの数と一致している必要があります。
IDの変更は行えません。
Declaration
Swift
@objc public func update(_ encodings: [Encoding])
Parameters
encodings
エンコーディング設定
-
送信するストリームを切り替えます。
このAPIはLocalRoomMemberがPublishしたPublication(Streamがnilではない)のみ操作可能で、切り替え前と同じContentTypeである必要があります。
DataStreamを入れ替えることはできません。
Declaration
Swift
@objc public func replace(_ stream: LocalStream)
Parameters
stream
ストリーム
-
Undocumented
Declaration
Swift
override open func isEqual(_ object: Any?) -> Bool
-
Undocumented
Declaration
Swift
open override var hash: Int { get }