TUICallObserver

TUICallObserver APIの概要

TUICallObserverはTUICallEngineに対応するコールバックイベントクラスです。このコールバックによって、関心のあるコールバックイベントを監視することができます。

コールバックイベントの概要

API
説明
通話中のエラーコールバック
通話リクエストのコールバック
通話キャンセルのコールバック
通話接続のコールバック
通話終了のコールバック
通話メディアタイプ変更発生のコールバック
xxxxユーザーによる通話拒否のコールバック
xxxxユーザーの応答なしのコールバック
xxxxユーザーが通話中である場合のコールバック
xxxxユーザーの通話参加のコールバック
xxxxユーザーの通話からの退出のコールバック
xxxユーザーのビデオストリームの有無のコールバック
xxxユーザーのオーディオストリームの有無のコールバック
全ユーザーの音量レベルフィードバックのコールバック
全ユーザーのネットワーク品質フィードバックのコールバック

コールバックイベントの詳細

onError

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

onCallReceived

新しい通話リクエストコールバックを受信します。着呼側が受信します。このイベントを監視することで、通話応答画面を表示するかどうかを決定できます。
void onCallReceived(String callerId, List<String> calleeIdList, String groupId,
TUICallDefine.MediaType callMediaType);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
callerId
String
発呼側ID(招待者)
calleeIdList
List
着呼側IDリスト(被招待者)
groupId
String
グループ通話ID
callMediaType
TUICallDefine.MediaType
通話のメディアタイプ。ビデオ通話、音声通話など

onCallCancelled

今回の通話が発呼側からキャンセルされたことを表します(キャンセルの原因は発呼側の自主的なキャンセル、または通話タイムアウトによるキャンセルの両方の可能性があります)。着呼側が受信します。このイベントを監視することで、未応答通話などに類似した表示ロジックを実現できます。
void onCallCancelled(String callerId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
callerId
String
キャンセルしたユーザーのID

onCallBegin

通話接続を表します。発呼側と着呼側がどちらも受信できます。このイベントを監視することで、クラウドレコーディング、コンテンツ審査などのフローを開始できます。
void onCallBegin(TUICommonDefine.RoomId roomId, TUICallDefine.MediaType callMediaType, TUICallDefine.Role callRole);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
roomId
TUICommonDefine.RoomId
今回の通話のオーディオビデオルームID。現在は数字のルームナンバーのみサポートしています。文字列のルームナンバーは今後のバージョンでサポート予定です
callMediaType
TUICallDefine.MediaType
通話のメディアタイプ。ビデオ通話、音声通話
callRole
TUICallDefine.Role
ロール。列挙タイプ:発呼側、着呼側

onCallEnd

通話の終了を表します。発呼側と着呼側がどちらも受信できます。このイベントを監視することで、通話時間、通話タイプなどの情報を表示したり、クラウドのレコーディングフローを停止したりすることができます。
void onCallEnd(TUICommonDefine.RoomId roomId, TUICallDefine.MediaType callMediaType, TUICallDefine.Role callRole, long totalTime);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
roomId
TUICommonDefine.RoomId
今回の通話のオーディオビデオルームID。現在は数字のルームナンバーのみサポートしています。文字列のルームナンバーは今後のバージョンでサポート予定です
callMediaType
TUICallDefine.MediaType
通話のメディアタイプ。ビデオ通話、音声通話
callRole
TUICallDefine.Role
ロール。列挙タイプ:発呼側、着呼側
totalTime
long
今回の通話時間
ご注意:
クライアントのイベントは一般的にすべて、プロセスキルなどの異常イベントに伴って消失します。通話時間の監視によって料金計算などのロジックを完成させたい場合は、REST APIを使用してこの種のフローを完成させることをお勧めします。

onCallMediaTypeChanged

通話のメディアタイプに変更が発生したことを表します。
void onCallMediaTypeChanged(TUICallDefine.MediaType oldCallMediaType,TUICallDefine.MediaType newCallMediaType);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
oldCallMediaType
TUICallDefine.MediaType
変更前の通話タイプ
newCallMediaType
TUICallDefine.MediaType
変更後の通話タイプ

onUserReject

通話が拒否された場合のコールバックです。1v1通話では、発呼側のみが拒否のコールバックを受信します。グループ通話では、すべての被招待者がこのコールバックを受信することができます。
void onUserReject(String userId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
拒否したユーザーのID

onUserNoResponse

相手方が応答しない場合のコールバック。
void onUserNoResponse(String userId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
応答しないユーザーのID

onUserLineBusy

通話中である場合のコールバック。
void onUserLineBusy(String userId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
通話中のユーザーのID

onUserJoin

今回の通話に参加したユーザーがいる場合のコールバック。
void onUserJoin(String userId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
現在の通話に参加したユーザーのID

onUserLeave

今回の通話から退出したユーザーがいる場合のコールバック。
void onUserLeave(String userId);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
現在の通話から退出したユーザーのID

onUserVideoAvailable

ユーザーがビデオアップストリームを開始したかどうかのコールバック。
void onUserVideoAvailable(String userId, boolean isVideoAvailable);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
通話ユーザーID
isVideoAvailable
boolean
ユーザーのビデオが使用可能かどうか

onUserAudioAvailable

ユーザーがオーディオアップストリームを開始したかどうかのコールバック。
void onUserAudioAvailable(String userId, boolean isAudioAvailable);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
userId
String
ユーザーID
isAudioAvailable
boolean
ユーザーのオーディオが使用可能かどうか

onUserVoiceVolumeChanged

ユーザーの通話音量のコールバック。
void onUserVoiceVolumeChanged(Map<String, Integer> volumeMap);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
volumeMap
Map< String, Integer>
ボリュームメーター。各useridにつき、対応するユーザーの音量レベルを取得できます。音量の最小値は0、最大値は100です

onUserNetworkQualityChanged

ユーザーのネットワーク品質のコールバック。
void onUserNetworkQualityChanged(List<TUICallDefine.NetworkQualityInfo> networkQualityList);
パラメータは下表に示すとおりです。
パラメータ
タイプ
意味
networkQualityList
List
ネットワーク状態。各userIdにつき、対応するユーザーの現在のネットワーク品質を取得できます