TRTCKaraoke 関連インターフェース

TRTCKaraokeRoomは、Tencent CloudのTRTCおよびIMサービスを基に組み合わせたコンポーネントで、以下の機能をサポートしています。
管理者が作成した新しいKaraokeルームが配信を開始すると、リスナーはKaraokeルームに入室して聴取/インタラクションを行います。
管理者は、楽曲の順序を管理し、マイク・オンのキャスターをキックアウトすることもできます。
管理者はまた、座席をクローズすることができ、その他のリスナーはマイク・オンを申請することができなくなります。
リスナーはマイク・オンを申請して、マイク・オンのキャスターになり、マイク・オン後は楽曲の選択や歌唱ができるようになります。また、いつでもマイク・オフにして、通常のリスナーになることも可能です。
ギフトや各種のテキストメッセージ、カスタムメッセージの送信をサポートします。カスタムメッセージを弾幕、「いいね」などを実装するために使用することができます。
説明:
TUIKitシリーズコンポーネントはTencent CloudのTRTCIMという2つの基本的なPaaSサービスを同時に使用し、TRTCをアクティブにした後、IMサービスを同期的にアクティブにすることができます。IMサービスの課金ルールの詳細については、Instant Messagingの料金説明をご参照ください。TRTCをアクティブにすると、デフォルトでは、100DAUまでサポートするIM SDK体験版もアクティブにします。
TRTCKaraokeRoomはオープンソースのClassであり、Tencent Cloudの2つのクローズドソースのSDKに依存しています。具体的な実現プロセスは、 Karaoke(iOS)をご参照ください。
TRTC SDK:TRTC SDKを低遅延のボイスチャットコンポーネントとして使用しています。
IM SDK:IM SDKのAVChatroomを使用してチャットルーム機能を実装します。同時にIMの属性インターフェースによって、マイクリストなどのルーム情報を保存し、招待シグナリングはマイク・オン/ピックのリクエストに用いることができます。

TRTCKaraokeRoom API概要

SDK基本関数

API
説明
シングルトンオブジェクトを取得します。
シングルトンオブジェクトを廃棄します。
イベントコールバックを設定します。
イベントコールバックが配置されているスレッドを設定します。
ログイン。
ログアウト。
個人情報を修正します。

ルーム関連インターフェース関数

API
説明
ルームの作成(管理者が呼び出し)。ルームが存在しない場合は、システムが新しいルームを自動的に作成します。
ルームの破棄(管理者が呼び出し)。
入室(リスナーが呼び出し)。
退室(リスナーが呼び出し)。
ルームリストの詳細情報を取得します。
指定されたuserIdのユーザー情報を取得します。nilの場合は、ルーム内全員の情報を取得します。

音楽再生インターフェース

API
説明
音楽の再生を開始します。
音楽の再生を停止します。
音楽の再生を一時停止します。
音楽の再生を再開します。

マイク管理インターフェース

API
説明
ユーザーが発言者になります(リスナー側/管理者ともに呼び出し可)。
ユーザーが視聴者になります(キャスターが呼び出し)。
視聴者が発言できるように招待(管理者が呼び出し)。
キックアウトしてマイク・オフ(管理者が呼び出し)。
任意のマイクのミュート/ミュート解除(管理者が呼び出し)。
任意のマイクのクローズ/解除(管理者が呼び出し)。

ローカルのオーディオ操作インターフェース

API
説明
マイクの集音開始。
マイクの集音停止。
音質の設定。
ローカルオーディオミュートの開始/停止。
スピーカーの起動設定。
マイクの集音音量設定。
再生音量の設定。
インイヤーモニタリングのオン/オフ。

リモートユーザー音声操作インターフェース

API
説明
指定メンバーをミュート/ミュート解除。
全メンバーをミュート/ミュート解除。

BGMサウンドエフェクト関連インターフェース

API
説明
BGMサウンドエフェクト管理オブジェクトTXAudioEffectManagerを取得します。

メッセージ送信関連インターフェース

API
説明
ルーム内でのテキストメッセージのブロードキャスト。通常、弾幕によるチャットに使用します。
カスタマイズしたテキストメッセージを送信します。

招待シグナリング関連インターフェース

API
説明
ユーザーに招待を送信。
招待の同意。
招待の辞退。
招待の取り消し。

TRTCKaraokeRoomDelegate API概要

一般的なイベントコールバック

API
説明
エラーのコールバック。
警告のコールバック。
Logコールバック。

ルームイベントのコールバック

API
説明
ルームが廃棄された時のコールバック。
ボイスチャットルーム情報変更のコールバック。
ユーザー通話音量のコールバック。

マイク変更コールバック

API
説明
全量のマイクリストの変更。
発言者のメンバーがいます(ユーザーが発言者になります/管理者が視聴者を発言できるように招待)。
視聴者のメンバーがいます(ユーザーが視聴者になる/管理者がキックアウトしてマイク・オフ)。
管理者のマイクミュート。
ユーザーのマイクがミュートされているかどうか。
管理者のマイククローズ。

リスナーの入退室イベントのコールバック

API
説明
リスナー入室通知の受信。
リスナー退室通知の受信。

メッセージイベントのコールバック

API
説明
テキストメッセージを受信します。
カスタムメッセージを受信します。

シグナリングイベントのコールバック

API
説明
新規招待リクエストを受信。
被招待者が招待に同意。
被招待者が招待を拒否。
招待者が招待を取り消し。

楽曲イベントコールバック

API
説明
楽曲再生進捗度のコールバック。
音楽再生準備のコールバック。
音楽再生完了のコールバック。

SDK基本関数

sharedInstance

TRTCKaraokeRoomシングルトンオブジェクトを取得します。
/**
* TRTCKaraokeRoomシングルトンオブジェクトの取得
*
* - returns: TRTCKaraokeRoomインスタンス
* - note: {@link TRTCKaraokeRoom#destroySharedInstance()}を呼び出してシングルトンオブジェクトを破棄することができます
*/
+ (instancetype)sharedInstance NS_SWIFT_NAME(shared());

destroySharedInstance

TRTCKaraokeRoomシングルトンオブジェクトを破棄します。
説明:
インスタンスの破棄後は、外部にキャッシュされたTRTCKaraokeRoomインスタンスの再使用ができません。改めてsharedInstanceを呼び出し、インスタンスを新規取得する必要があります。
/**
* TRTCKaraokeRoomシングルトンオブジェクトの破棄
*
* - note:インスタンスの破棄後は、外部にキャッシュされたTRTCKaraokeRoomインスタンスは再使用ができません。改めて{@link TRTCKaraokeRoom#sharedInstance()}を呼び出し、インスタンスを新規取得する必要があります
*/
+ (void)destroySharedInstance NS_SWIFT_NAME(destroyShared());

setDelegate

TRTCKaraokeRoomイベントコールバック。 TRTCKaraokeRoomDelegate を介してTRTCKaraokeLiveRoomの各種ステータス通知を受け取ることができます。
/**
* コンポーネントコールバックインターフェースの設定
*
* TRTCKaraokeRoomDelegateによってTRTCKaraokeRoomの各種ステータス通知を取得することができます
*
* - parameter delegateコールバックインターフェース
* - note: TRTCKaraokeRoomのコールバックイベントです。デフォルトではMain Queueでコールバックされます。イベントのコールバックが設定されているキューを指定する必要がある場合は、{@link TRTCKaraokeRoom#setDelegateQueue(queue)}を使用することができます
*/
- (void)setDelegate:(id<TRTCKaraokeRoomDelegate>)delegate NS_SWIFT_NAME(setDelegate(delegate:));
説明:
setDelegateはTRTCKaraokeRoomのプロキシコールバックです。

setDelegateQueue

イベントコールバックが所在するスレッドキューを設定し、デフォルトはメインスレッド MainQueue に送信します。
/**
* イベントコールバックが配置されているキューの設定
*
* - parameter queueキューです。TRTCKaraokeRoomの各種ステータス通知コールバックは、指定したqueueに送信されます。
*/
- (void)setDelegateQueue:(dispatch_queue_t)queue NS_SWIFT_NAME(setDelegateQueue(queue:));

パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
queue
dispatch_queue_t
TRTCKaraokeRoomの各種ステータス通知は、指定したスレッドキューに送信されます。

login

ログイン。
- (void)login:(int)sdkAppID
userId:(NSString *)userId
userSig:(NSString *)userSig
callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(login(sdkAppID:userId:userSig:callback:));

パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
sdkAppId
int
TRTCコンソール> 【アプリケーション管理】>アプリケーション情報の中でSDKAppIDを確認できます。
userId
String
現在のユーザーID。文字列タイプであり、英語のアルファベット(a-zとA-Z)、数字(0-9)、ハイフン(-)とアンダーライン(_)のみ使用できます。
userSig
String
Tencent Cloudによって設計されたセキュリティ保護署名。取得方法については、 UserSigの計算、使用方法をご参照ください。
callback
ActionCallback
ログインのコールバック。成功時にcodeは0になります。

logout

ログアウト。
- (void)logout:(ActionCallback _Nullable)callback NS_SWIFT_NAME(logout(callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
callback
ActionCallback
ログアウトのコールバック。成功時にcodeは0になります。

setSelfProfile

個人情報の修正。
- (void)setSelfProfile:(NSString *)userName avatarURL:(NSString *)avatarURL callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(setSelfProfile(userName:avatarURL:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userName
String
ニックネーム。
avatarURL
String
プロフィール画像のアドレス。
callback
ActionCallback
個人情報設定のコールバック。成功時にcodeは0になります。

ルーム関連インターフェース関数

createRoom

ルームの作成(管理者が呼び出し)。
- (void)createRoom:(int)roomID roomParam:(RoomParam *)roomParam callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(createRoom(roomID:roomParam:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
roomId
int
ルームIDです。ご自身でアサインし、一元管理する必要があります。複数のroomIDを、1つのボイスチャットルームリストにまとめることができます。Tencent Cloudでは現在、ボイスチャットルームリストの管理サービスを行っていませんので、ご自身でボイスチャットルームリストを管理してください。
roomParam
TRTCCreateRoomParam
ルーム情報です。ルーム名、マイク情報、カバー情報など、ルームを説明するために用いる情報に使用します。マイク管理が必要な場合は、ルームのマイク数を記入する必要があります。
callback
ActionCallback
ルームの新規作成結果のコールバック。成功時にcodeは0になります。
管理者が配信を開始する際の通常の呼び出しプロセスは次のとおりです:
1. 管理者は、createRoomを呼び出して新しいKaraokeルームを作成します。この時、ルームID、マイク・オンにすることの管理者の確認の要否、ルームタイプなどルームの属性情報を渡します。
2. 管理者は、ルーム作成に成功した後、enterSeatを呼び出して参加します。
3. 管理者は、コンポーネントのonSeatListChangeマイクリスト変更イベント通知を受信します。この時、マイクリスト変更をUI上に更新することができます。
4. 管理者は、マイクリストのメンバーが参加したonAnchorEnterSeatというイベント通知も受信します。この時、マイク集音は自動的に開始されます。

destroyRoom

ルームの破棄(管理者が呼び出し)。管理者は、ルーム作成後、この関数を呼び出してルームを破棄します。
- (void)destroyRoom:(ActionCallback _Nullable)callback NS_SWIFT_NAME(destroyRoom(callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
callback
ActionCallback
ルームの廃棄結果のコールバック。成功時にcodeは0になります。

enterRoom

入室(リスナーが呼び出し)。
- (void)enterRoom:(NSInteger)roomID callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(enterRoom(roomID:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
roomId
int
ルームID。
callback
ActionCallback
入室結果のコールバック。成功時にcodeは0になります。
リスナーが入室し聴取する際の通常の呼び出しプロセスは次のとおりです:
1. リスナーがサーバーから最新のKaraokeルームリストを取得します。その中には、多くのボイスチャットルームのroomIdおよびルーム情報が含まれる場合があります。
2. リスナーは1つのKaraokeルームを選択し、enterRoomを呼び出してルームナンバーを渡すと、そのルームに参加できます。
3. 入室後、コンポーネントのonRoomInfoChange ルーム属性変更イベント通知を受信します。この時、ルーム属性を記録し、それに応じた修正を行うことができます。例:UIに表示するルーム名、発言者にする際の管理者への同意リクエストの要否の記録など。
4. 入室後は、コンポーネントのonSeatListChangeマイクリスト変更イベント通知を受信します。この時にマイクリストの変更をUI上に更新することができます。
5. 入室後にマイクリストにキャスターが参加したonAnchorEnterSeatのイベント通知も受信します。

exitRoom

ルームから退出します。
- (void)exitRoom:(ActionCallback _Nullable)callback NS_SWIFT_NAME(exitRoom(callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
callback
ActionCallback
退室結果のコールバック。成功時にcodeは0になります。

getRoomInfoList

ルームリストの詳細情報を取得します。このうち、ルーム名、ルームカバーは、管理者がcreateRoom()作成時にroomInfoによって設定したものになります。
説明:
ルームリストおよびルーム情報をご自身で管理する場合は、この関数は無視できます。
- (void)getRoomInfoList:(NSArray<NSNumber *> *)roomIdList callback:(KaraokeInfoCallback _Nullable)callback NS_SWIFT_NAME(getRoomInfoList(roomIdList:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
roomIdList
List<Integer>
ルームナンバーリスト。
callback
RoomInfoCallback
ルーム詳細情報のコールバック。

getUserInfoList

指定されたuserIdのユーザー情報を取得します。
- (void)getUserInfoList:(NSArray<NSString *> * _Nullable)userIDList callback:(KaraokeUserListCallback _Nullable)callback NS_SWIFT_NAME(getUserInfoList(userIDList:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userIdList
List<String>
取得すべきユーザーIDリスト。nullの場合は、ルーム内全員の情報を取得します。
userlistcallback
UserListCallback
ユーザーの詳細情報のコールバック。

音楽再生インターフェース

startPlayMusic

音楽を再生します(マイク・オン後に呼び出し)。
説明:
音楽を再生すると、onMusicPrepareToPlayというイベント通知を受信します。
音楽の再生中、ルーム内の全メンバーは、onMusicProgressUpdateというイベント通知を継続して受け取ります。
音楽の再生が完了すると、onMusicCompletePlayingというイベント通知を受信します。
- (void)startPlayMusic:(int32_t)musicID originalUrl:(NSString *)originalUrl accompanyUrl:(NSString *)backingUrl NS_SWIFT_NAME(startPlayMusic(musicID:originalUrl:accompanyUrl:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
musicID
int32_t
音楽のID。
originalUrl
String
原曲の絶対パス。
accompanyUrl
String
伴奏の絶対パス。
このインターフェースを呼び出すと、最後に再生されていた楽曲が停止します。

stopPlayMusic

音楽の再生を停止します(音楽を再生するときに呼び出します)。
説明:
再生が停止すると、onMusicCompletePlayingというイベント通知を受信します。
- (void)stopPlayMusic NS_SWIFT_NAME(stopPlayMusic());

pausePlayMusic

音楽の再生を一時停止します(音楽を再生するときに呼び出します)。
説明:
onMusicProgressUpdateというイベント通知が一時停止されます
onMusicCompletePlayingというイベント通知を受信しません。
- (void)pausePlayMusic NS_SWIFT_NAME(pausePlayMusic());

resumePlayMusic

一時停止した音楽を再開します(一時停止後に呼び出します)。
説明:
onMusicPrepareToPlayというイベント通知を受信しません。
- (void)resumePlayMusic NS_SWIFT_NAME(resumePlayMusic());

マイク管理インターフェース

enterSeat

ユーザーが発言者になります(リスナー側/管理者ともに呼び出し可)。
説明:
マイク・オンの成功後、ルーム内の全メンバーは、onSeatListChangeおよび onAnchorEnterSeatというイベント通知を受信します。
- (void)enterSeat:(NSInteger)seatIndex callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(enterSeat(seatIndex:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatIndex
int
マイク・オンの必要があるマイク番号。
callback
ActionCallback
操作コールバック。
このインターフェースを呼び出すと、直ちにマイクリストが変更されます。リスナーによるマイク・オンの申請に管理者の同意が必要となるケースの場合は、まずsendInvitationを呼び出してから管理者に申請し、onInvitationAcceptを受信するとこの関数を呼び出せるようになります。

leaveSeat

ユーザーが視聴者になります(キャスターが呼び出し)。
説明:
マイク・オフの成功後、ルーム内の全メンバーは、onSeatListChangeおよびonAnchorLeaveSeatというイベント通知を受信します。
- (void)leaveSeat:(ActionCallback _Nullable)callback NS_SWIFT_NAME(leaveSeat(callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
callback
ActionCallback
操作コールバック。

pickSeat

視聴者が発言できるように招待(管理者が呼び出し)。
説明:
管理者が視聴者を発言できるように招待すると、ルーム内の全メンバーは、onSeatListChangeonAnchorEnterSeatというイベント通知を受信します。
- (void)pickSeat:(NSInteger)seatIndex userId:(NSString *)userId callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(pickSeat(seatIndex:userId:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatIndex
int
視聴者が発言できるように招待する必要があるマイク番号。
userId
String
ユーザーID。
callback
ActionCallback
操作コールバック。
このインターフェースを呼び出すと、すぐにマイクリストが修正されます。管理者がリスナーの同意がなければマイク・オンできないケースの場合は、まずsendInvitationを呼び出してからリスナーに申請し、onInvitationAcceptを受信すると、この関数を呼び出せるようになります。

kickSeat

キックアウトしてマイク・オフ(管理者が呼び出し)。
説明:
管理者がキックアウトしてマイク・オフにすると、ルーム内の全メンバーは、onSeatListChangeおよびonAnchorLeaveSeatというイベント通知を受信します。
- (void)kickSeat:(NSInteger)seatIndex callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(kickSeat(seatIndex:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatIndex
int
キックアウトしてマイク・オフの必要があるマイク番号。
callback
ActionCallback
操作コールバック。
このインターフェースを呼び出すと、すぐにマイクリストが修正されます。

muteSeat

任意のマイクのミュート/ミュート解除(管理者が呼び出し)。
説明:
任意のマイクをミュート/ミュート解除します。ルーム内の全メンバーがonSeatListChangeおよびonSeatMuteというイベント通知を受信します。
- (void)muteSeat:(NSInteger)seatIndex isMute:(BOOL)isMute callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(muteSeat(seatIndex:isMute:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatIndex
int
操作の必要があるマイク番号。
isMute
boolean
true:該当するマイクをミュートします;false:該当するマイクをミュート解除します。
callback
ActionCallback
操作コールバック。
このインターフェースを呼び出すと、直ちにマイクリストが変更されます。seatIndexの座席に該当するキャスターは、muteAudioを自動的に呼び出してミュート/ミュート解除にします。

closeSeat

任意のマイクのクローズ/解除(管理者が呼び出し)。
説明:
管理者は、該当するマイクをクローズ/解除し、ルーム内の全メンバーはonSeatListChangeおよびonSeatCloseというイベント通知を受信します。
- (void)closeSeat:(NSInteger)seatIndex isClose:(BOOL)isClose callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(closeSeat(seatIndex:isClose:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatIndex
int
操作の必要があるマイク番号。
isClose
boolean
true:該当するマイクをクローズします; false:該当するマイクをクローズ解除します。
callback
ActionCallback
操作コールバック。
このインターフェースを呼び出すと、すぐにマイクリストが修正されます。該当するseatIndexの座席上のキャスターはクローズされ、自動的にマイク・オフになります。

ローカル音声操作のインターフェース

startMicrophone

マイクの集音開始。
- (void)startMicrophone;

stopMicrophone

マイクの集音停止。
- (void)stopMicrophone;

setAudioQuality

音質の設定。
- (void)setAuidoQuality:(NSInteger)quality NS_SWIFT_NAME(setAuidoQuality(quality:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
quality
int
音声品質。詳細は TRTC SDKをご参照ください。

muteLocalAudio

ローカルの音声のミュート/ミュート取り消し。
- (void)muteLocalAudio:(BOOL)mute NS_SWIFT_NAME(muteLocalAudio(mute:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
mute
boolean
ミュート/ミュート取り消し。詳細は TRTC SDKをご参照ください。

setSpeaker

スピーカーの起動設定。
- (void)setSpeaker:(BOOL)userSpeaker NS_SWIFT_NAME(setSpeaker(userSpeaker:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
useSpeaker
boolean
true:スピーカー、false:ヘッドホン。

setAudioCaptureVolume

マイクの集音音量設定。
- (void)setAudioCaptureVolume:(NSInteger)volume NS_SWIFT_NAME(setAudioCaptureVolume(volume:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
volume
int
集音音量、0 - 100、 デフォルト100。

setAudioPlayoutVolume

再生音量の設定。
- (void)setAudioPlayoutVolume:(NSInteger)volume NS_SWIFT_NAME(setAudioPlayoutVolume(volume:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
volume
int
再生音量、0 - 100、 デフォルト100。

muteRemoteAudio

指定メンバーのミュート/ミュート解除。
- (void)muteRemoteAudio:(NSString *)userId mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteAudio(userId:mute:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userId
String
指定ユーザーID。
mute
boolean
true:ミュートをオンにします;false:ミュートをオフにします。

muteAllRemoteAudio

全メンバーのミュート/ミュート解除。
- (void)muteAllRemoteAudio:(BOOL)isMute NS_SWIFT_NAME(muteAllRemoteAudio(isMute:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
isMute
boolean
true:ミュートをオンにします;false:ミュートをオフにします。

setVoiceEarMonitorEnable

インイヤーモニタリングのオン/オフ。
- (void)setVoiceEarMonitorEnable:(BOOL)enable NS_SWIFT_NAME(setVoiceEarMonitor(enable:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
enable
boolean
true:インイヤーモニタリングをオン。false:インイヤーモニタリングをオフ。

BGMサウンドエフェクト関連インターフェース関数

getAudioEffectManager

BGMサウンドエフェクト管理オブジェクト TXAudioEffectManagerを取得します。
- (TXAudioEffectManager * _Nullable)getAudioEffectManager;

メッセージ送信関連インターフェース関数

sendRoomTextMsg

ルーム内でテキストメッセージをブロードキャストします。通常、弾幕によるチャットに使用します。
- (void)sendRoomTextMsg:(NSString *)message callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(sendRoomTextMsg(message:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
message
String
テキストメッセージ。
callback
ActionCallback
送信結果のコールバック。

sendRoomCustomMsg

カスタマイズしたテキストメッセージを送信します。
- (void)sendRoomCustomMsg:(NSString *)cmd message:(NSString *)message callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(sendRoomCustomMsg(cmd:message:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
cmd
String
コマンドワードです。開発者がカスタマイズするものであり、主にさまざまなメッセージタイプを区別するために使用されます。
message
String
テキストメッセージ。
callback
ActionCallback
送信結果のコールバック。

招待シグナリング関連インターフェース

sendInvitation

ユーザーに招待を送信。
- (NSString *)sendInvitation:(NSString *)cmd
userId:(NSString *)userId
content:(NSString *)content
callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(sendInvitation(cmd:userId:content:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
cmd
String
業務カスタマイズコマンド。
userId
String
招待ユーザーID。
content
String
招待コンテンツ。
callback
ActionCallback
送信結果のコールバック。
戻り値:
戻り値
タイプ
意味
inviteId
String
今回の招待IDの識別に使用。

acceptInvitation

招待の同意。
- (void)acceptInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(acceptInvitation(identifier:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
callback
ActionCallback
送信結果のコールバック。

rejectInvitation

招待の拒否。
- (void)rejectInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(rejectInvitation(identifier:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
callback
ActionCallback
送信結果のコールバック。

cancelInvitation

招待の取り消し。
- (void)cancelInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(cancelInvitation(identifier:callback:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
callback
ActionCallback
送信結果のコールバック。


TRTCKaraokeRoomDelegateイベントコールバック

一般的なイベントコールバック

onError

エラーのコールバック。
説明:
SDKリカバリー不能なエラーは必ず監視し、状況に応じてユーザーに適切なインターフェースプロンプトを表示します。
- (void)onError:(int)code
message:(NSString*)message
NS_SWIFT_NAME(onError(code:message:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
code
int
エラーコード。
message
String
エラーメッセージ。

onWarning

警告のコールバック。
- (void)onWarning:(int)code
message:(NSString *)message
NS_SWIFT_NAME(onWarning(code:message:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
code
int
エラーコード。
message
String
警告メッセージ。

onDebugLog

Logコールバック。
- (void)onDebugLog:(NSString *)message
NS_SWIFT_NAME(onDebugLog(message:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
message
String
ログ情報。

ルームイベントのコールバック

onRoomDestroy

ルーム破棄のコールバック。管理者がルームを解散するとき、ルーム内の全ユーザーはこの通知を受信します。
- (void)onRoomDestroy:(NSString *)message
NS_SWIFT_NAME(onRoomDestroy(message:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
message
String
コールバック情報。

onRoomInfoChange

入室に成功後、このインターフェースをコールバックします。roomInfoの情報は、管理者がルームを作成するときに渡されます。
- (void)onRoomInfoChange:(KaraokeInfo *)roomInfo
NS_SWIFT_NAME(onRoomInfoChange(roomInfo:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
roomInfo
RoomInfo
ルーム情報。

onUserMicrophoneMute

ユーザーのマイクがミュートになっているかどうかのコールバックです。ユーザーがmuteLocalAudioを呼び出すと、ルームの他のユーザーがこの通知を受信します。
- (void)onUserMicrophoneMute:(NSString *)userId mute:(BOOL)mute
NS_SWIFT_NAME(onUserMicrophoneMute(userId:mute:));

パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userId
String
ユーザーID。
mute
boolean
音量の大きさ。値:0~100。

onUserVolumeUpdate

音量レベルリマインダを有効にすると、各メンバーの音量を通知します。
- (void)onUserVolumeUpdate:(NSArray<TRTCVolumeInfo *> *)userVolumes totalVolume:(NSInteger)totalVolume
NS_SWIFT_NAME(onUserVolumeUpdate(userVolumes:totalVolume:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userVolumes
List
ユーザーリスト。
totalVolume
int
音量の大きさ。値:0~100。

マイクコールバック

onSeatListChange

全量のマイクリストの変更です。全てのマイクリストを含みます。
- (void)onSeatInfoChange:(NSArray<KaraokeSeatInfo *> *)seatInfolist
NS_SWIFT_NAME(onSeatListChange(seatInfoList:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
seatInfoList
List<SeatInfo>
全量のマイクリスト。

onAnchorEnterSeat

発言者のメンバーがいます(ユーザーが発言者になる/管理者が視聴者を発言できるように招待)。
- (void)onAnchorEnterSeat:(NSInteger)index
user:(KaraokeUserInfo *)user
NS_SWIFT_NAME(onAnchorEnterSeat(index:user:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
index
int
メンバーがマイク・オンのマイク。
user
UserInfo
マイク・オンのユーザーの詳細情報。

onAnchorLeaveSeat

視聴者のメンバーがいます(ユーザーが視聴者になる/管理者がキックアウトしてマイク・オフ)。
- (void)onAnchorLeaveSeat:(NSInteger)index
user:(KaraokeUserInfo *)user
NS_SWIFT_NAME(onAnchorLeaveSeat(index:user:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
index
int
マイク・オフのマイク。
user
UserInfo
マイク・オンのユーザーの詳細情報。

onSeatMute

管理者のマイクミュート。
- (void)onSeatMute:(NSInteger)index
isMute:(BOOL)isMute
NS_SWIFT_NAME(onSeatMute(index:isMute:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
index
int
操作するマイク。
isMute
boolean
true:マイクミュート; false:ミュート解除。

onSeatClose

管理者のマイククローズ。
- (void)onSeatClose:(NSInteger)index
isClose:(BOOL)isClose
NS_SWIFT_NAME(onSeatClose(index:isClose:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
index
int
操作するマイク。
isClose
boolean
true:マイクのクローズ; false:マイクのクローズ解除。

リスナーの入退室イベントのコールバック

onAudienceEnter

リスナー入室通知の受信。
- (void)onAudienceEnter:(KaraokeUserInfo *)userInfo
NS_SWIFT_NAME(onAudienceEnter(userInfo:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userInfo
UserInfo
入室したリスナーの情報。

onAudienceExit

リスナー退室通知の受信。
- (void)onAudienceExit:(KaraokeUserInfo *)userInfo
NS_SWIFT_NAME(onAudienceExit(userInfo:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
userInfo
UserInfo
退室したリスナーの情報。

メッセージイベントのコールバック

onRecvRoomTextMsg

テキストメッセージを受信します。
- (void)onRecvRoomTextMsg:(NSString *)message
userInfo:(KaraokeUserInfo *)userInfo
NS_SWIFT_NAME(onRecvRoomTextMsg(message:userInfo:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
message
String
テキストメッセージ。
userInfo
UserInfo
送信者のユーザー情報。

onRecvRoomCustomMsg

カスタムメッセージを受信します。
- (void)onRecvRoomCustomMsg:(NSString *)cmd
message:(NSString *)message
userInfo:(KaraokeUserInfo *)userInfo
NS_SWIFT_NAME(onRecvRoomCustomMsg(cmd:message:userInfo:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
command
String
コマンドワードです。開発者がカスタマイズするもので、主にさまざまなメッセージタイプを区別するために使用されます。
message
String
テキストメッセージ。
userInfo
UserInfo
送信者のユーザー情報。

招待シグナリングイベントのコールバック

onReceiveNewInvitation

新規招待リクエストの受信。
- (void)onReceiveNewInvitation:(NSString *)identifier
inviter:(NSString *)inviter
cmd:(NSString *)cmd
content:(NSString *)content
NS_SWIFT_NAME(onReceiveNewInvitation(identifier:inviter:cmd:content:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
inviter
String
招待者のユーザーID。
cmd
String
開発者がカスタマイズする業務指定のコマンドワードです。
content
UserInfo
業務指定のコンテンツ。

onInviteeAccepted

被招待者が招待に同意。
- (void)onInviteeAccepted:(NSString *)identifier
invitee:(NSString *)invitee
NS_SWIFT_NAME(onInviteeAccepted(identifier:invitee:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
invitee
String
被招待者のユーザーID。

onInviteeRejected

被招待者による招待の拒否。
- (void)onInviteeRejected:(NSString *)identifier
invitee:(NSString *)invitee
NS_SWIFT_NAME(onInviteeRejected(identifier:invitee:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
invitee
String
被招待者のユーザーID。

onInvitationCancelled

招待者が招待を取り消し。
- (void)onInvitationCancelled:(NSString *)identifier
invitee:(NSString *)invitee NS_SWIFT_NAME(onInvitationCancelled(identifier:invitee:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
id
String
招待ID。
invitee
String
招待者のユーザーID。

音楽再生ステータスコールバック

onMusicPrepareToPlay

音楽再生準備のコールバック
- (void)onMusicPrepareToPlay:(int32_t)musicID
NS_SWIFT_NAME(onMusicPrepareToPlay(musicID:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
musicID
int32_t
再生時に渡されたmusicID。

onMusicProgressUpdate

楽曲再生進捗度のコールバック
- (void)onMusicProgressUpdate:(int32_t)musicID
progress:(NSInteger)progress total:(NSInteger)total
NS_SWIFT_NAME(onMusicProgressUpdate(musicID:progress:total:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
musicID
int32_t
再生時に渡されたmusicID。
progress
NSInteger
現在の再生時間。単位: ms。
total
NSInteger
合計時間。単位: ms。

onMusicCompletePlaying

音楽再生完了のコールバック
- (void)onMusicCompletePlaying:(int32_t)musicID
NS_SWIFT_NAME(onMusicCompletePlaying(musicID:));
パラメータは下表に示すとおりです:
パラメータ
タイプ
意味
musicID
int32_t
再生時に渡されたmusicID。