Room
@objc
open class Room : NSObject, Identifiable
Room抽象クラス
RoomとはCore SDKのChannelのラッパークラスです。
Room SDKをご利用いただく場合はChannelというドメインは隠蔽されているので、ChannelではなくRoomを扱います。
RoomにはP2PRoomとSFURoomが存在し、ユースケースに応じて選択してください。
RoomにはMemberが入退出できます。Room作成時点のように、Memberのいない状態のRoomも存在できます。
詳しくは公式ホームページのドキュメントをご確認ください。
-
Room初期化オプション
See moreDeclaration
Swift
@objc public class InitOptions : NSObject
-
Room検索クエリ
See moreDeclaration
Swift
@objc public class Query : NSObject
-
RoomMember初期化オプション
See moreDeclaration
Swift
@objc public class MemberInitOptions : NSObject
-
Roomを識別するID
Declaration
Swift
@objc public var id: String { get }
-
Roomの名前
Declaration
Swift
@objc public var name: String? { get }
-
メタデータ
Declaration
Swift
@objc public var metadata: String? { get }
-
ステート
closedの場合、このオブジェクトの操作は無効です。
Declaration
Swift
@objc public var state: RoomState { get }
-
入室しているメンバーの一覧
Declaration
Swift
@objc public var members: [RoomMember] { get }
-
このRoomでPublishされているStreamのPublication一覧
Declaration
Swift
@objc public var publications: [RoomPublication] { get }
-
このRoomでSubscribeされているSubscription一覧
Declaration
Swift
@objc public var subscriptions: [RoomSubscription] { get }
-
イベントデリゲート
Declaration
Swift
@objc public weak var delegate: RoomDelegate?
-
join(with:
Asynchronous) RoomにLocalRoomMemberを作成し、入室させます。
1RoomインスタンスにJoinできるLocalRoomMemberは1人だけです。
Declaration
Swift
@available(iOS 13.0, *) @objc public func join(with options: MemberInitOptions?) async throws -> LocalRoomMember
Parameters
options
Member初期化オプション
Return Value
LocalRoomMember
-
RoomにLocalRoomMemberを作成し、入室させます。
1RoomインスタンスにJoinできるLocalRoomMemberは1人だけです。
Declaration
Swift
@objc public func join( with options: MemberInitOptions?, completion: ((LocalRoomMember?, Error?) -> Void)? )
Parameters
options
Member初期化オプション
completion
完了コールバック
-
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
完了コールバック
-
leave(_:
Asynchronous) RoomからMemberを退出させます。
権限があればLocalRoomMemberだけでなく、RemoteRoomMemberも退出させることができます。
Declaration
Swift
@available(iOS 13.0, *) @objc public func leave(_ member: RoomMember) async throws
Parameters
member
退出するMember
-
RoomからMemberを退出させます。
権限があればLocalRoomMemberだけでなく、RemoteRoomMemberも退出させることができます。
Declaration
Swift
@objc public func leave(_ member: RoomMember, completion: ((Error?) -> Void)?)
Parameters
member
退出するMember
completion
完了コールバック
-
close()
AsynchronousRoomを閉じます。
dispose()
とは異なり、Roomを閉じると参加しているMemberは全て退出し、Roomは破棄されます。入室している全てのMemberがPublishとSubscribeをしている場合は中止してから退出します。
Close後のRoomインスタンスおよび、そのRoomで生成されたインスタンス(Publication etc.)は利用できません。
インスタンスにアクセスした場合、クラッシュする可能性があります。
Declaration
Swift
@available(iOS 13.0, *) @objc public func close() async throws
-
Roomを閉じます。
dispose()
とは異なり、Roomを閉じると参加しているMemberは全て退出し、サーバ上におけるRoomは破棄されます。入室している全てのMemberがPublishとSubscribeをしている場合は中止してから退出します。
Close後のRoomインスタンスおよび、そのRoomで生成されたインスタンス(Publication etc.)は利用できません。
インスタンスにアクセスした場合、クラッシュする可能性があります。
Declaration
Swift
@objc public func close(completion: ((Error?) -> Void)?)
Parameters
completion
完了コールバック
-
dispose()
AsynchronousRoomを閉じずにRoomインスタンスを無効にし、リソースを解放します。
close()
とは異なり、Roomは破棄しないため入室しているMemberには影響しません。Dispose完了後にSDKで生成されたリソースにアクセスしないでください。クラッシュする可能性があります。
Declaration
Swift
@available(iOS 13.0, *) @objc public func dispose() async throws
-
Roomを閉じずにRoomインスタンスを無効にし、リソースを解放します。
close()
とは異なり、Roomは破棄しないため入室しているMemberには影響しません。Dispose完了後にSDKで生成されたリソースにアクセスしないでください。クラッシュする可能性があります。
Declaration
Swift
@objc public func dispose(completion: ((Error?) -> Void)?)
-
SDKのバージョンを取得します
Declaration
Swift
@objc public static func getSDKVersion() -> String
Return Value
バージョン
-
Undocumented
Declaration
Swift
override open func isEqual(_ object: Any?) -> Bool
-
Undocumented
Declaration
Swift
open override var hash: Int { get }