ピアクラス
[詳解]
#import <SKWPeer.h>
|
(nonnull NSString *) | + sdkVersion |
| 現在の SDK のバージョンを取得します。
|
|
◆ callWithId:stream:
指定されたリモートへメディア接続を行い、SKWMediaConnection を返します。失敗した場合には、error イベントが発生します。
- 引数
-
peerId | 接続先リモートの peer ブローカー ID です (リモートのピア ID です) |
stream | 使用するローカルメディアストリームです |
- 戻り値
- メディアコネクションオブジェクト
◆ callWithId:stream:options:
指定されたリモートへメディア接続を行い、SKWMediaConnection を返します。失敗した場合には、error イベントが発生します。
- 引数
-
peerId | 接続先リモートの peer ブローカー ID です (リモートのピア ID です) |
stream | 使用するローカルメディアストリームです |
options | 設定を指定します。 |
- 戻り値
- メディアコネクションオブジェクト
◆ connectWithId:
指定されたリモートへデータ接続を行い、SKWDataConnection を返します。失敗した場合には、error イベントが呼び出されます。
- 引数
-
peerId | 接続先リモートの peer ブローカー ID です (リモートのピア ID です) |
- 戻り値
データコネクションオブジェクト
◆ connectWithId:options:
指定されたリモートへデータ接続を行い、SKWDataConnection を返します。失敗した場合には、error イベントが呼び出されます。
- 引数
-
peerId | 接続先リモートの peer ブローカー ID です (リモートのピア ID です) |
options | 設定を指定します。 |
- 戻り値
データコネクションオブジェクト
◆ destroy
ピアオブジェクトを破棄状態にします。
- 戻り値
- 呼び出し結果
◆ disconnect
すべてのコネクションを切断し、シグナリングサーバとの接続を切断します。
- 戻り値
- 呼び出し結果
◆ initWithId:options:
- (instancetype __nullable) initWithId: |
|
(NSString *__nullable) |
peerId |
options: |
|
(SKWPeerOption *__nullable) |
options |
|
|
| |
SKWPeer オブジェクトの初期化を行います。
NSString* curtomPeerId = @"my-peer-id";
options.
key =
@"{your-dev-key}";
options.
domain = @”{your-domain}”;
options.
debug = SKW_PEER_DEBUG_LEVEL_ALL_LOGS;
SKWPeer* peer = [[
SKWPeer alloc] initWithId:curtomPeerId options:options];
- 引数
-
peerId | 接続するピア ID を指定します。nil を指定した場合、ピア ID をサーバから取得する処理を行います。 |
options | 設定情報オブジェクトを指定します。 |
- 戻り値
- ピアオブジェクト
◆ initWithOptions:
- (instancetype __nullable) initWithOptions: |
|
(SKWPeerOption *__nullable) |
options |
|
SKWPeer オブジェクトの初期化を行います。
options.
key =
@"{your-dev-key}";
options.
domain = @”{your-domain}”;
options.
debug = SKW_PEER_DEBUG_LEVEL_ALL_LOGS;
- 引数
-
- 戻り値
- ピアオブジェクト
◆ joinRoomWithName:options:
- (SKWRoom* __nullable) joinRoomWithName: |
|
(NSString *__nonnull) |
roomName |
options: |
|
(SKWRoomOption *__nonnull) |
option |
|
|
| |
ルームに参加します
フルメッシュルーム:
NSString* roomName = @"fullmesh_videochat_room";
option.stream = localStream;
SFU ルーム:
NSString* roomName = @"sfu_textchat_room";
- 引数
-
roomName | ルーム名 |
option | ルームオプション |
- 戻り値
- ルームに参加できた場合はルームオブジェクトが返されます。
◆ listAllPeers:
- (void) listAllPeers: |
|
(void(^)(NSArray *__nullable)) |
callback |
|
SkyWay シグナリングサーバから接続可能な ピア ID の一覧を取得します。
for (NSString* strPeer in aryPeers) {
}
}];
- 引数
-
◆ on:callback:
SKWPeer のイベントコールバック Block を設定します。
[peer
on:SKW_PEER_EVENT_OPEN
callback:^(NSObject* obj) {
if (YES == [obj isKindOfClass:[NSString class]]) {
NSString* ownId = (NSString *)obj;
}
}];
[peer
on:SKW_PEER_EVENT_CONNECTION
callback:^(NSObject* obj) {
}];
[peer
on:SKW_PEER_EVENT_CALL
callback:^(NSObject* obj) {
}];
[peer
on:SKW_PEER_EVENT_CLOSE
callback:^(NSObject* obj) {
}];
[peer
on:SKW_PEER_EVENT_DISCONNECTED
callback:^(NSObject* obj) {
}];
[peer
on:SKW_PEER_EVENT_ERROR
callback:^(NSObject* obj) {
NSLog(@"%@", err);
}];
- 引数
-
event | 設定するイベント種別を指定します。 |
callback | イベント発生時に実行する Block を設定します。 |
◆ reconnect
シグナリングサーバとの再接続を行います。 ピア ID は既に割当済みの ID を使用します。
◆ updateCredential:
認証情報を更新します。
credential.
timestamp = [[NSDate date] timeIntervalSince1970];
credential.
authToken =
@"calculated auth token";
- 引数
-
◆ isDestroyed
破棄状態を表します。
isDestroyed | 状態 |
YES | 破棄状態です。 |
NO | 有効状態です。 |
◆ isDisconnected
切断状態を表します。
isDisconnected | 状態 |
YES | サーバとは切断されています。 |
NO | サーバとは接続されています。 |
NSUInteger ttl
Time to live(ttl)。タイムスタンプ + ttl の時間でクレデンシャルが失効します。
Definition: SKWPeerCredential.h:24
SKWMediaConnection *__nullable callWithId:stream:options:(NSString *__nonnull peerId,[stream] SKWMediaStream *__nullable stream,[options] SKWCallOption *__nullable options)
指定されたリモートへメディア接続を行い、SKWMediaConnection を返します。失敗した場合には、error イベントが発生します。
DataConnection 相当のクラスです。
Definition: SKWDataConnection.h:41
BOOL destroy()
ピアオブジェクトを破棄状態にします。
void on:callback:(SKWPeerEventEnum event,[callback] SKWPeerEventCallback __nullable callback)
SKWPeer のイベントコールバック Block を設定します。
エラー情報クラス
Definition: SKWPeerError.h:55
NSString *__nullable key
SkyWay API キーを指定します
Definition: SKWPeerOption.h:63
ピアクラス
Definition: SKWPeer.h:98
メディアストリーム
Definition: SKWMediaStream.h:18
void reconnect()
シグナリングサーバとの再接続を行います。 ピア ID は既に割当済みの ID を使用します。
Peerを認証するためのクレデンシャル
Definition: SKWPeerCredential.h:14
SKWDataConnection *__nullable connectWithId:(NSString *__nonnull peerId)
指定されたリモートへデータ接続を行い、SKWDataConnection を返します。失敗した場合には、error イベントが呼び出されます。
MediaConnection 相当のクラスです。
Definition: SKWMediaConnection.h:52
NSString *__nullable domain
SkyWay API に関連するドメインを指定します
Definition: SKWPeerOption.h:98
NSUInteger timestamp
現在のUNIXタイムスタンプです。
Definition: SKWPeerCredential.h:19
@ SKW_ROOM_MODE_MESH
フルメッシュルーム
Definition: SKWRoomOption.h:21
NSString *__nullable metadata
メタデータを指定します コネクションに関連付けされるメタデータで、コネクションを開始したpeerに渡されます。
Definition: SKWCallOption.h:23
SKWDebugLevelEnum debug
ログレベルを指定します。デフォルトは PEER_DEBUG_LEVEL_NO_LOGS です。
Definition: SKWPeerOption.h:93
NSString *__nullable label
接続先のPeer IDを識別するのに利用するラベルを指定します。
Definition: SKWConnectOption.h:19
BOOL turn
SkyWay TURN サーバを使用します (TURN サーバの利用を申請する必要があります)
Definition: SKWPeerOption.h:103
BOOL disconnect()
すべてのコネクションを切断し、シグナリングサーバとの接続を切断します。
SKWDataConnection *__nullable connectWithId:options:(NSString *__nonnull peerId,[options] SKWConnectOption *__nullable options)
指定されたリモートへデータ接続を行い、SKWDataConnection を返します。失敗した場合には、error イベントが呼び出されます。
SKWPeer connect オプション
Definition: SKWConnectOption.h:14
NSString * authToken
HMACを利用して生成する認証用トークンです。
Definition: SKWPeerCredential.h:29
@ SKW_ROOM_MODE_SFU
SFU ルーム
Definition: SKWRoomOption.h:25
SKWMediaConnection *__nullable callWithId:stream:(NSString *__nonnull peerId,[stream] SKWMediaStream *__nullable stream)
指定されたリモートへメディア接続を行い、SKWMediaConnection を返します。失敗した場合には、error イベントが発生します。
NSString *__nullable metadata
メタデータを指定します。 コネクションに関連付けされるメタデータで、コネクションを開始したpeerに渡されます。
Definition: SKWConnectOption.h:27
SFU ルームクラス
Definition: SKWSFURoom.h:24
SKWPeer call オプション
Definition: SKWCallOption.h:14
SKWPeer 初期化オプションクラス
Definition: SKWPeerOption.h:53
void listAllPeers:(void(^ __nullable callback)(NSArray *__nullable))
SkyWay シグナリングサーバから接続可能な ピア ID の一覧を取得します。
SKWRoomModeEnum mode
ルームモードを指定します
Definition: SKWRoomOption.h:36
void updateCredential:(SKWPeerCredential *__nonnull newCredential)
認証情報を更新します。
メッシュ接続でのルームを提供するルームクラスです。
Definition: SKWMeshRoom.h:22
ルーム初期化オプションクラス
Definition: SKWRoomOption.h:31
SKWSerializationEnum serialization
データシリアライズ種別を指定します。
Definition: SKWConnectOption.h:32
@ SKW_SERIALIZATION_NONE
NONE
Definition: SKWConnection.h:26