本文にスキップする
Version: 6.1

ユーザータイプの設定

PlanetKitは、グループ通話に参加する際にアプリケーションで異なるカテゴリのユーザーを区別できるよう、ユーザータイプを設定する機能を提供します。

この機能を使用すると、カスタムユーザータイプ(例:一般ユーザーとボット)を定義し、ユーザータイプに応じてアプリケーションの動作やUIを変えることができます。なお、LINE Planetは一部のユーザータイプの値をビルトインエージェントの役割のために予約しています。

通話タイプSDKの最低バージョン
グループ通話(カンファレンス)PlanetKit 6.1

ユーザータイプ

ユーザータイプは大きく次のように分類されます。

  • カスタムユーザータイプ
    • アプリケーションで定義し、管理するユーザータイプです。
    • 値の範囲:1~9999
  • PlanetKitユーザータイプ
    • LINE Planetで内部的にエージェントの役割として使用するユーザータイプで、PlanetKitUserTypeに定義されています。
    • 値の範囲:0、10000~99999
    • 詳しくは、エージェント通話を参照してください。

サンプルコード

以下は、ユーザータイプの設定機能を使用するサンプルコードです。

ユーザータイプの定義および設定

要件に合わせてアプリケーションのユーザータイプを定義し、グループ通話に参加する際にPlanetKitConferenceParam.BuildercustomUserType()を使用してユーザータイプを設定してください。

val customUserTypeRegularUser = 1
val customUserTypeBot = 2

fun joinConference() {
val param = PlanetKitConferenceParam.Builder()
.customUserType(customUserTypeRegularUser)
/* Set other parameters as needed */
.build()

val result = Planetkit.joinConference(param, listener)
...
}

各ユーザータイプに適用するロジック実装

各ユーザータイプに合わせて処理するロジックを実装します。PlanetKitUserTypeContainerAPIを使用してユーザータイプを確認できます。

interface ConferenceListener {
fun onPeerListUpdated(param: PlanetKitConferencePeerListUpdatedParam) {
for (peer in param.addedPeers) {
if (peer.userType.isEqualTo(customUserTypeRegularUser)) {
/* customUserTypeRegularUser */
} else if (peer.userType.isEqualTo(customUserTypeBot)) {
/* customUserTypeBot */
} else if (peer.userType.isEqualTo(PlanetKitUserType.UNDEFINED)) {
/* UserType is not specified */
} else {
/* A condition of no interest */
}
}
}
}

関連API