tencent cloud

フィードバック

TRTCVoiceRoom (iOS)

最終更新日:2022-07-19 16:21:32

    TRTCVoiceRoomは、Tencent CloudのTencent Real-Time Communication (TRTC)およびIMサービスを基に組み合わせたコンポーネントで、以下の機能をサポートしています:

    • 管理者が新しいボイスチャットルームを作成して配信を開始し、リスナーがボイスチャットルームに参加して視聴/インタラクティブなコミュニケーションを行います。
    • 管理者は、リスナーを招待してマイク・オンにしたり、マイク・オンのキャスターをキックアウトしたりすることもできます。
    • 管理者はまた、座席をクローズすることができ、その他のリスナーはマイク・オンを申請することができなくなります。
    • リスナーはマイク・オンを申請して、マイク・オンのキャスターになり、他者と音声インタラクションを行うことができます。また、いつでもマイク・オフにして、通常のリスナーになることも可能です。
    • 各種のテキストメッセージやカスタマイズメッセージの発信をサポートし、カスタムメッセージは弾幕、「いいね」、ギフトなどに使用することきます。
    説明:

    TUIKitシリーズコンポーネントはTencent CloudのTRTCIMという2つの基本的なPaaSサービスを同時に使用し、TRTCをアクティブにした後、IMサービスを同期的にアクティブにすることができます。IMサービスの課金ルールの詳細については、Instant Messagingの料金説明をご参照ください。TRTCをアクティブにすると、デフォルトでは、100DAUまでサポートするIM SDK体験版もアクティブにします。

    TRTCVoiceRoomは、オープンソースのClassであり、Tencent Cloudの2つのクローズソースであるSDKに依存しています。具体的な実装プロセスは ボイスチャットルーム (iOS)をご参照ください。

    • TRTC SDK:TRTC SDKを低遅延のボイスチャットコンポーネントとして使用しています。
    • IM SDK:IM SDKのAVChatroomを使用してチャットルーム機能を実装します。同時にIMの属性インターフェースによって、マイクリストなどのルーム情報を保存し、招待シグナリングはマイク・オン/ピックのリクエストに用いることができます。

    TRTCVoiceRoom API 概要

    SDK基本関数

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    TRTCVoiceRoomDelegate API概要

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

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

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

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

    マイク変更コールバック

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

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

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

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

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

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

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

    SDK基本関数

    sharedInstance

    TRTCVoiceRoom シングルトンオブジェクトを取得します。

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

    destroySharedInstance

    TRTCVoiceRoom シングルトンオブジェクトを破棄します。

    説明:

    インスタンスの破棄後は、外部にキャッシュされた TRTCVoiceRoomインスタンスの再使用ができません。改めて sharedInstance を呼び出し、インスタンスを新規取得する必要があります。

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

    setDelegate

    TRTCVoiceRoom イベントコールバック、 TRTCVoiceRoomDelegate を介して TRTCVoiceRoom の各種ステータス通知を受け取ることができます。

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

    setDelegate は、 TRTCVoiceRoom のプロキシコールバックです。

    setDelegateQueue

    イベントコールバックが所在するスレッドキューを設定し、デフォルトはメインスレッド MainQueue に送信します。

    /**
    * イベントコールバックが配置されているキューの設定
    *
    * - parameter queueキュー,TRTCVoiceRoomの各種ステータス通知コールバックは、指定したqueueに発信されます。
    */
    - (void)setDelegateQueue:(dispatch_queue_t)queue NS_SWIFT_NAME(setDelegateQueue(queue:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    queue dispatch_queue_t TRTCVoiceRoomの各種ステータス通知は、指定したスレッドキューに発信されます。

    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 NSString 現在のユーザーID。文字列タイプでは、英語のアルファベット(a-zとA-Z)、数字(0-9)、ハイフン(-)とアンダーライン(_)のみ使用できます。
    userSig NSString 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 NSString ニックネーム。
    avatarURL NSString プロフィール画像のアドレス。
    callback ActionCallback 個人情報設定のコールバック。成功時にcodeは0になります。

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

    createRoom

    ルームの作成(管理者が呼び出し)。

    - (void)createRoom:(int)roomID roomParam:(VoiceRoomParam *)roomParam callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(createRoom(roomID:roomParam:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    roomId int ルームIDです。ご自身でアサインし、一元管理してください。複数のroomIDを、1つのボイスチャットルームリストにまとめることができます。Tencent Cloudでは現在、ボイスチャットルームリストの管理サービスを行っていませんので、ご自身でボイスチャットルームリストを管理してください。
    roomParam VoiceRoomParam ルーム情報は、ルーム名、マイク情報、カバー情報など、ルームを説明するために用いる情報に使用します。マイク管理が必要な場合は、ルームのマイク数を入力してください。
    callback ActionCallback ルームの新規作成結果のコールバック。成功時にcodeは0になります。

    管理者が配信を開始する際の通常の呼び出しプロセスは次のとおりです:

    1. 管理者は、createRoomを呼び出して新しいボイスチャットルームを作成します。この時にルーム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 NSInteger ルームID。
    callback ActionCallback 入室結果のコールバック。成功時にcodeは0になります。

    リスナーが入室し聴取する際の通常の呼び出しプロセスは次のとおりです:

    1. リスナーがサーバーから取得する最新のボイスチャットルームリストには、多くのボイスチャットルームのroomIdおよびルーム情報が含まれる場合があります。
      2.リスナーが1つのボイスチャットルームを選択し、enterRoomを呼び出してルームナンバーを渡すと、そのルームに参加できます。
    2. 入室後、コンポーネントのonRoomInfoChange ルーム属性変更イベント通知を受信します。この時、ルーム属性を記録し、それに応じた修正を行うことができます。例:UIに表示するルーム名、発言者にする際の管理者への同意リクエストの要否の記録など。
    3. 入室後は、コンポーネントのonSeatListChangeマイクリスト変更イベント通知を受信します。この時にマイクリストの変更をUI上に更新することができます。
    4. 入室後にマイクリストにキャスターが参加した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:(VoiceRoomInfoCallback _Nullable)callback NS_SWIFT_NAME(getRoomInfoList(roomIdList:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    roomIdList NSArray<NSNumber> ルームナンバーリスト。
    callback RoomInfoCallback ルーム詳細情報のコールバック。

    getUserInfoList

    指定されたuserIdのユーザー情報を取得します。

    - (void)getUserInfoList:(NSArray<NSString *> * _Nullable)userIDList callback:(VoiceRoomUserListCallback _Nullable)callback NS_SWIFT_NAME(getUserInfoList(userIDList:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userIdList NSArray<NSString> 取得すべきユーザーIDリスト。nullの場合は、ルーム内全員の情報を取得します。
    userlistcallback UserListCallback ユーザーの詳細情報のコールバック。

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

    enterSeat

    ユーザーが発言者になります(リスナー側/管理者ともに呼び出し可)。

    説明:

    マイク・オンの成功後、ルーム内の全メンバーは、onSeatListChangeおよび onAnchorEnterSeatというイベント通知を受信します。

    - (void)enterSeat:(NSInteger)seatIndex callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(enterSeat(seatIndex:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    seatIndex NSInteger マイク・オンの必要があるマイク番号。
    callback ActionCallback 操作コールバック。

    このインターフェースを呼び出すと、直ちにマイクリストが変更されます。リスナーによるマイク・オンの申請に管理者の同意が必要となるケースの場合は、まずsendInvitationを呼び出してから管理者に申請し、onInvitationAcceptを受信するとこの関数を呼び出せるようになります。

    moveSeat

    マイクの移動 (マイク・オンするキャスター側で呼び出せます)。

    説明:

    マイクの移動に成功したら、ルーム内のすべてのメンバーがonSeatListChangeonAnchorLeaveSeatonAnchorEnterSeatのイベント通知を受け取ります。(キャスターが呼び出した後に変更できるのは、マイクのシート番号情報のみで、ユーザーのキャスターロールを切り替えることはできません。)

    - (NSInteger)moveSeat:(NSInteger)seatIndex callback:(ActionCallback _Nullable)callback
    NS_SWIFT_NAME(moveSeat(seatIndex:callback:))
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    seatIndex NSInteger 移動の必要があるマイク番号。
    callback ActionCallback 操作コールバック。

    戻り値:

    戻り値 タイプ 意味
    code NSInteger マイク移動操作の結果(0は成功、その他は失敗、10001はインターフェース呼び出し頻度制限)。

    このインターフェースを呼び出すと、直ちにマイクリストが変更されます。リスナーによるマイク・オンの申請に管理者の同意が必要となるケースの場合は、まず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 NSInteger マイク・オンの必要があるマイク番号。
    userId NSString ユーザーID。
    callback ActionCallback 操作コールバック。

    このインターフェースを呼び出すと、すぐにマイクリストが修正されます。管理者がリスナーの同意がなければマイク・オンできないケースの場合は、まずsendInvitationを呼び出してからリスナーに申請し、onInvitationAcceptを受信すると、この関数を呼び出せるようになります。

    kickSeat

    キックアウトしてマイク・オフ(管理者が呼び出し)。

    説明:

    管理者がキックアウトしてマイク・オフにすると、ルーム内の全メンバーは、onSeatListChangeおよびonAnchorLeaveSeatというイベント通知を受信します。

    - (void)kickSeat:(NSInteger)seatIndex callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(kickSeat(seatIndex:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    seatIndex NSInteger キックアウトしてマイク・オフの必要があるマイク番号。
    callback ActionCallback 操作コールバック。

    このインターフェースを呼び出すと、すぐにマイクリストが修正されます。

    muteSeat

    任意のマイクのミュート/ミュート解除(管理者が呼び出し)。

    説明:

    任意のマイクをミュート/ミュート解除します。ルーム内の全メンバーがonSeatListChangeおよびonSeatMuteというイベント通知を受信します。

    - (void)muteSeat:(NSInteger)seatIndex isMute:(BOOL)isMute callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(muteSeat(seatIndex:isMute:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    seatIndex NSInteger 操作が必要なマイク番号。
    isMute BOOL YES:該当するマイクのミュート;NO:該当するマイクのミュート解除。
    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 NSInteger 操作が必要なマイク番号。
    isClose BOOL YES:該当するマイクのクローズ; NO:該当するマイクのクローズ解除。
    callback ActionCallback 操作コールバック。

    このインターフェースを呼び出すと、すぐにマイクリストが修正されます。該当するseatIndexの座席上のキャスターはクローズされ、自動的にマイク・オフになります。

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

    startMicrophone

    マイクの集音開始。

    - (void)startMicrophone;
    

    stopMicrophone

    マイクの集音停止。

    - (void)stopMicrophone;
    

    setAudioQuality

    音質の設定。

    - (void)setAuidoQuality:(NSInteger)quality NS_SWIFT_NAME(setAuidoQuality(quality:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    quality NSInteger オーディオ品質。詳細については、TRTC SDKをご参照ください。

    muteLocalAudio

    ローカルの音声のミュート/ミュート取り消し。

    - (void)muteLocalAudio:(BOOL)mute NS_SWIFT_NAME(muteLocalAudio(mute:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    mute BOOL ミュート/ミュートの取り消し。詳細については、TRTC SDKをご参照ください。

    setSpeaker

    スピーカーの起動設定。

    - (void)setSpeaker:(BOOL)userSpeaker NS_SWIFT_NAME(setSpeaker(userSpeaker:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    useSpeaker BOOL YES:スピーカー;NO:ヘッドホン。

    setAudioCaptureVolume

    マイクの集音音量設定。

    - (void)setAudioCaptureVolume:(NSInteger)voluem NS_SWIFT_NAME(setAudioCaptureVolume(volume:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    volume NSInteger 集音音量、0 - 100、デフォルト100。

    setAudioPlayoutVolume

    再生音量の設定。

    - (void)setAudioPlayoutVolume:(NSInteger)volume NS_SWIFT_NAME(setAudioPlayoutVolume(volume:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    volume NSInteger 再生音量、0 - 100、デフォルト100。

    muteRemoteAudio

    指定メンバーのミュート/ミュート解除。

    - (void)muteRemoteAudio:(NSString *)userId mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteAudio(userId:mute:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userId NSString 指定のユーザーID。
    mute BOOL YES:ミュート起動;NO:ミュート停止。

    muteAllRemoteAudio

    全メンバーのミュート/ミュート解除。

    - (void)muteAllRemoteAudio:(BOOL)isMute NS_SWIFT_NAME(muteAllRemoteAudio(isMute:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    mute BOOL YES:ミュート起動;NO:ミュート停止。

    setVoiceEarMonitorEnable

    インイヤーモニタリングのオン/オフ。

    - (void)setVoiceEarMonitorEnable:(BOOL)enable NS_SWIFT_NAME(setVoiceEarMonitor(enable:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    enable BOOL YES:インイヤーモニタリング起動;NO:インイヤーモニタリング停止。

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

    getAudioEffectManager

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

    - (TXAudioEffectManager * _Nullable)getAudioEffectManager;
    

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

    sendRoomTextMsg

    ルーム内でテキストメッセージをブロードキャストします。通常、弾幕によるチャットに使用します。

    - (void)sendRoomTextMsg:(NSString *)message callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(sendRoomTextMsg(message:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    message NSString テキストメッセージ。
    callback ActionCallback 送信結果のコールバック。

    sendRoomCustomMsg

    カスタマイズしたテキストメッセージを送信します。

    - (void)sendRoomCustomMsg:(NSString *)cmd message:(NSString *)message callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(sendRoomCustomMsg(cmd:message:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    cmd NSString コマンドワードです。開発者がカスタマイズするものであり、主にさまざまなメッセージタイプを区別するために使用されます。
    message NSString テキストメッセージ。
    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 NSString 業務カスタマイズコマンド。
    userId NSString 招待するユーザーID。
    content NSString 招待するコンテンツ。
    callback ActionCallback 送信結果のコールバック。

    戻り値:

    戻り値 タイプ 意味
    inviteId NSString 今回の招待IDの識別に使用。

    acceptInvitation

    招待の同意。

    - (void)acceptInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(acceptInvitation(id:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    callback ActionCallback 送信結果のコールバック。

    rejectInvitation

    招待の拒否。

    - (void)rejectInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(rejectInvitation(id:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    callback ActionCallback 送信結果のコールバック。

    cancelInvitation

    招待の取り消し。

    - (void)cancelInvitation:(NSString *)identifier callback:(ActionCallback _Nullable)callback NS_SWIFT_NAME(cancelInvitation(id:callback:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    callback ActionCallback 送信結果のコールバック。

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

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

    onError

    エラーのコールバック。

    説明:

    SDKリカバリー不能なエラーは必ず監視し、状況に応じてユーザーに適切なインターフェースプロンプトを表示します。

    - (void)onError:(int)code
                  message:(NSString*)message
    NS_SWIFT_NAME(onError(code:message:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    code int エラーコード。
    message NSString エラー情報。

    onWarning

    警告のコールバック。

    - (void)onWarning:(int)code
                    message:(NSString  *)message
    NS_SWIFT_NAME(onWarning(code:message:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    code int エラーコード。
    message NSString 警告メッセージ。

    onDebugLog

    Logコールバック。

    - (void)onDebugLog:(NSString *)message
    NS_SWIFT_NAME(onDebugLog(message:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    message NSString ログ情報。

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

    onRoomDestroy

    ルーム破棄のコールバック。管理者がルームを解散するとき、ルーム内の全ユーザーはこの通知を受信します。

    - (void)onRoomDestroy:(NSString *)roomId
    NS_SWIFT_NAME(onRoomDestroy(roomId:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    roomId NSString ルーム ID。

    onRoomInfoChange

    入室に成功後、このインターフェースをコールバックします。roomInfoの情報は、管理者がルームを作成するときに渡されます。

    - (void)onRoomInfoChange:(VoiceRoomInfo *)roomInfo
    NS_SWIFT_NAME(onRoomInfoChange(roomInfo:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    roomInfo VoiceRoomInfo ルーム情報。

    onUserMicrophoneMute

    ユーザーのマイクがミュートになっているかどうかのコールバックです。ユーザーがmuteLocalAudioを呼び出すと、ルームの他のユーザーがこの通知を受信します。

    - (void)onUserMicrophoneMute:(NSString *)userId mute:(BOOL)mute
    NS_SWIFT_NAME(onUserMicrophoneMute(userId:mute:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userId NSString ユーザーID。
    mute BOOL YES:マイクミュート; NO:ミュート解除。

    onUserVolumeUpdate

    音量レベルリマインダを有効にすると、各メンバーの音量を通知します。

    - (void)onUserVolumeUpdate:(NSArray<TRTCVolumeInfo *> *)userVolumes totalVolume:(NSInteger)totalVolume
    NS_SWIFT_NAME(onUserVolumeUpdate(userVolumes:totalVolume:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userVolumes NSArray ユーザーリスト。
    totalVolume NSInteger 音量の大きさ。値:0 - 100。

    マイクコールバック

    onSeatListChange

    全量のマイクリストの変更です。全てのマイクリストを含みます。

    - (void)onSeatInfoChange:(NSArray<VoiceRoomSeatInfo *> *)seatInfolist
    NS_SWIFT_NAME(onSeatListChange(seatInfoList:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    seatInfoList NSArray<VoiceRoomSeatInfo> 全量のマイクリスト。

    onAnchorEnterSeat

    発言者のメンバーがいます(ユーザーが発言者になる/管理者が視聴者を発言できるように招待)。

    - (void)onAnchorEnterSeat:(NSInteger)index
                                user:(VoiceRoomUserInfo *)user
    NS_SWIFT_NAME(onAnchorEnterSeat(index:user:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    index NSInteger メンバーがマイク・オンするマイク。
    user VoiceRoomUserInfo マイク・オンユーザーの詳細情報。

    onAnchorLeaveSeat

    視聴者のメンバーがいます(ユーザーが視聴者になる/管理者がキックアウトしてマイク・オフ)。

    - (void)onAnchorLeaveSeat:(NSInteger)index
                       user:(VoiceRoomUserInfo *)user
    NS_SWIFT_NAME(onAnchorLeaveSeat(index:user:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    index NSInteger マイク・オフのマイク。
    user VoiceRoomUserInfo マイク・オンユーザーの詳細情報。

    onSeatMute

    管理者のマイクミュート。

    - (void)onSeatMute:(NSInteger)index
              isMute:(BOOL)isMute
    NS_SWIFT_NAME(onSeatMute(index:isMute:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    index NSInteger 操作するマイク。
    isMute BOOL YES:マイクミュート; NO:ミュート解除。

    onSeatClose

    管理者のマイククローズ。

    - (void)onSeatClose:(NSInteger)index
              isClose:(BOOL)isClose
    NS_SWIFT_NAME(onSeatClose(index:isClose:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    index NSInteger 操作するマイク。
    isClose BOOL YES:マイクのクローズ; NO: マイクのクローズ解除。

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

    onAudienceEnter

    リスナー入室通知の受信。

    - (void)onAudienceEnter:(VoiceRoomUserInfo *)userInfo
    NS_SWIFT_NAME(onAudienceEnter(userInfo:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userInfo VoiceRoomUserInfo 入室したリスナーの情報。

    onAudienceExit

    リスナー退室通知の受信。

    - (void)onAudienceExit:(VoiceRoomUserInfo *)userInfo
    NS_SWIFT_NAME(onAudienceExit(userInfo:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    userInfo VoiceRoomUserInfo 退室したリスナーの情報。

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

    onRecvRoomTextMsg

    テキストメッセージを受信します。

    - (void)onRecvRoomTextMsg:(NSString *)message
                   userInfo:(VoiceRoomUserInfo *)userInfo
    NS_SWIFT_NAME(onRecvRoomTextMsg(message:userInfo:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    message NSString テキストメッセージ。
    userInfo VoiceRoomUserInfo 送信者のユーザー情報。

    onRecvRoomCustomMsg

    カスタムメッセージを受信します。

    - (void)onRecvRoomCustomMsg:(NSString *)command
                      message:(NSString  *)message
                     userInfo:(VoiceRoomUserInfo *)userInfo
    NS_SWIFT_NAME(onRecvRoomCustomMsg(command:message:userInfo:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    command NSString コマンドワードです。開発者がカスタマイズするものであり、主にさまざまなメッセージタイプを区別するために使用されます。
    message NSString テキストメッセージ。
    userInfo VoiceRoomUserInfo 送信者のユーザー情報。

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

    onReceiveNewInvitation

    新規招待リクエストの受信。

    - (void)onReceiveNewInvitation:(NSString *)identifier
                         inviter:(NSString *)inviter
                             cmd:(NSString *)cmd
                         content:(NSString *)content
    NS_SWIFT_NAME(onReceiveNewInvitation(id:inviter:cmd:content:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    inviter NSString 招待者のユーザーID。
    cmd NSString 開発者がカスタマイズする業務指定のコマンドワードです。
    content NSString 業務指定のコンテンツ。

    onInviteeAccepted

    被招待者が招待に同意。

    - (void)onInviteeAccepted:(NSString *)identifier
                    invitee:(NSString *)invitee
    NS_SWIFT_NAME(onInviteeAccepted(id:invitee:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    invitee NSString 被招待者のユーザーID。

    onInviteeRejected

    被招待者による招待の拒否。

    - (void)onInviteeRejected:(NSString *)identifier
                    invitee:(NSString *)invitee
    NS_SWIFT_NAME(onInviteeRejected(id:invitee:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    invitee NSString 被招待者のユーザーID。

    onInvitationCancelled

    招待者が招待を取り消し。

    - (void)onInvitationCancelled:(NSString *)identifier
                        invitee:(NSString *)invitee NS_SWIFT_NAME(onInvitationCancelled(id:invitee:));
    

    パラメータは下表に示すとおりです:

    パラメータ タイプ 意味
    id NSString 招待ID。
    inviter NSString 招待者のユーザーID。
    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)