iOS SDK API リファレンス

実体メソッド | プロパティ | 全メンバ一覧
SKWSFURoom クラス

SFU ルームクラス [詳解]

#import <SKWSFURoom.h>

SKWSFURoom の継承関係図
SKWRoom

実体メソッド

(void) - close
 ルームを退出し、ルーム内のすべてのユーザーとのコネクションをcloseします。
 
(void) - replaceStream:
 送信しているメディアストリームを更新します。 受信のみモードから双方向に切り替えることもできます。 [詳解]
 
(BOOL) - send:
 現在のルームに入室中のピアにデータを送信します。NSString* または NSData* を送信できます。送信するデータサイズの上限は20MBです。送信頻度は100msecに1回に制限されています。送信頻度の制限を超えた送信データはキューに入り、100msec毎に順次送信されます。 [詳解]
 
(void) - on:callback:
 SKWRoom のイベントコールバック block を設定します。 [詳解]
 
(void) - offAll
 SKWRoom の設定済みイベントコールバック block を解除します。 [詳解]
 
(void) - getLog
 シグナリングサーバにルームのログ取得を要求します。結果は SKW_ROOM_EVENT_LOG イベントで返されます。 [詳解]
 

プロパティ

NSString *__nullable name
 ルーム名
 

詳解

SFU ルームクラス

SFU接続でのルームを提供するルームクラスです。

メソッド詳解

◆ getLog

- (void) getLog

シグナリングサーバにルームのログ取得を要求します。結果は SKW_ROOM_EVENT_LOG イベントで返されます。

SKWRoom* room;
[room on:SKW_ROOM_EVENT_LOG callback:^(NSObject* arg1, NSObject* arg2) {
NSArray* logs = (NSArray*)arg1;
[logs enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL* stop) {
NSString* logStr = (NSString*)obj;
NSError* error = nil;
id logData = [NSJSONSerialization JSONObjectWithData:[logStr dataUsingEncoding:NSUTF8StringEncoding]
options:0
error:&error];
if (nil == error)
{
NSLog(@"SKW_ROOM_EVENT_LOG: %@", logData);
}
}];
}];
[room getLog];

◆ offAll

- (void) offAll

SKWRoom の設定済みイベントコールバック block を解除します。

SKWRoom* room;
[room offAll];

◆ on:callback:

- (void) on: (SKWRoomEventEnum event
callback: (SKWRoomEventCallback __nullable)  callback 

SKWRoom のイベントコールバック block を設定します。

SKWRoom* room;
[room on:SKW_ROOM_EVENT_STREAM callback:^(NSObject* arg1, NSObject* arg2) {
SKWMediaStream* stream = (SKWMediaStream*)arg1;
}];
[room on:SKW_ROOM_EVENT_REMOVE_STREAM callback:^(NSObject* arg1, NSObject* arg2) {
SKWMediaStream* stream = (SKWMediaStream*)arg1;
}];
[room on:SKW_ROOM_EVENT_OPEN callback:^(NSObject* arg1, NSObject* arg2) {
NSString* roomName = (NSString*)arg1;
}];
[room on:SKW_ROOM_EVENT_CLOSE callback:^(NSObject* arg1, NSObject* arg2) {
NSString* roomName = (NSString*)arg1;
}];
[room on:SKW_ROOM_EVENT_PEER_JOIN callback:^(NSObject* arg1, NSObject* arg2) {
NSString* peerId = (NSString*)arg1;
}];
[room on:SKW_ROOM_EVENT_PEER_LEAVE callback:^(NSObject* arg1, NSObject* arg2) {
NSString* peerId = (NSString*)arg1;
}];
[room on:SKW_ROOM_EVENT_ERROR callback:^(NSObject* arg1, NSObject* arg2) {
SKWPeerError* error = (SKWPeerError*)arg1;
}];
[room on:SKW_ROOM_EVENT_DATA callback:^(NSObject* arg1, NSObject* arg2) {
NSString* peerId = (NSString*)arg1;
if ([arg2 isKindOfClass:[NSString class]]) {
NSString* data = (NSString*)arg2;
}
else if ([arg2 isKindOfClass:[NSData class]]) {
NSData* data = (NSData*)arg2;
}
}];
[room on:SKW_ROOM_EVENT_LOG callback:^(NSObject* arg1, NSObject* arg2) {
NSArray* logs = (NSArray*)arg1;
}];
引数
event設定するイベント種別を指定します。
callbackイベント発生時に実行する Block を設定します。

◆ replaceStream:

- (void) replaceStream: (SKWMediaStream *__nullable)  newStream

送信しているメディアストリームを更新します。 受信のみモードから双方向に切り替えることもできます。

SKWSFURoom* room;
[room replaceStream:stream];
引数
newStream交換対象となる新しいMediaStream

◆ send:

- (BOOL) send: (NSObject *__nonnull)  data

現在のルームに入室中のピアにデータを送信します。NSString* または NSData* を送信できます。送信するデータサイズの上限は20MBです。送信頻度は100msecに1回に制限されています。送信頻度の制限を超えた送信データはキューに入り、100msec毎に順次送信されます。

SKWRoom* room;
[room send:@"Hello."];
引数
data送信データ
戻り値
呼び出し結果
-[SKWRoom send:]
BOOL send:(NSObject *__nonnull data)
現在のルームに入室中のピアにデータを送信します。NSString* または NSData* を送信できます。送信するデータサイズの上限は20MBです。送信頻度は100msecに1回に制限されています。送...
SKWPeerError
エラー情報クラス
Definition: SKWPeerError.h:55
-[SKWRoom on:callback:]
void on:callback:(SKWRoomEventEnum event,[callback] SKWRoomEventCallback __nullable callback)
SKWRoom のイベントコールバック block を設定します。
-[SKWRoom offAll]
void offAll()
SKWRoom の設定済みイベントコールバック block を解除します。
-[SKWRoom getLog]
void getLog()
シグナリングサーバにルームのログ取得を要求します。結果は SKW_ROOM_EVENT_LOG イベントで返されます。
SKWMediaStream
メディアストリーム
Definition: SKWMediaStream.h:18
SKWRoom
SKWMeshRoom / SKWSFURoom の基底クラスです。
Definition: SKWRoom.h:64
SKWSFURoom
SFU ルームクラス
Definition: SKWSFURoom.h:24
-[SKWSFURoom replaceStream:]
void replaceStream:(SKWMediaStream *__nullable newStream)
送信しているメディアストリームを更新します。 受信のみモードから双方向に切り替えることもできます。