ユーザー概要
ユーザーとは、Agent/workflowとの対話を開始するエンドユーザーを指します。GPTBotsは、開発者が異なるユーザーに対して一意の識別ID(user_id
)を設定することをサポートしています。このuser_id
を通じて、異なるチャネル間でユーザーのアイデンティティを関連付け、クロスチャネルでのユーザー識別の統合、Toolsを介したビジネスクエリの実行、ユーザー属性やチャット履歴の管理などが可能になります。
ユーザーのCDP情報はAgent/workflowの下に保存され、同一ユーザーであっても異なるAgent/Workflow間でデータは相互に分離されています。
ユーザーシステム概要図
flowchart LR subgraph Col1["ユーザーソースプラットフォーム"] LC["Livechat"] IC["Intercom"] WG[" Widget "] TG["Telegram"] end subgraph Col2_5["ソースプラットフォームのサブChannel"] tgb01["TGBOT01"] tgb02["TGBOT02"] end subgraph Col2["匿名 ID"] a1["lc0001"] a2["ic0001"] a3["wg0001"] tga1["tb0001"] tga2["tg0001"] end subgraph Col3["UserId"] U1["ABC123"] U2["ABC456"] end subgraph Col4["ConversationId"] c1["c001"] c2["c002"] c3["c003"] c4["c004"] c5["c005"] end subgraph Col5["Agent/Workflow"] Bot["Agent Workflow"] end LC -- 匿名IDを自動生成 --> a1 IC -- 匿名IDを自動生成 --> a2 WG -- 匿名IDを自動生成 --> a3 TG -- サブchannelからのユーザー --> tgb01 & tgb02 tgb01 -- 匿名IDを自動生成 --> tga1 tgb02 -- 匿名IDを自動生成 --> tga2 a1 -- user_idを設定 --> U1 a2 -- user_idを設定 --> U1 a3 -- user_idを設定 --> U2 tga1 -- user_idを設定 --> U2 tga2 -- user_idを設定 --> U2 U1 -- 新規会話IDを生成 --> c1 U1 -- 新規会話IDを生成 --> c2 U2 -- 新規会話IDを生成 --> c3 U2 -- 既存の会話IDを使用 --> c4 c4 -- 期限切れの場合(>60分) 新規会話IDを自動生成 --> c5 c1 --> Bot c2 --> Bot c3 --> Bot c4 --> Bot c5 --> Bot LC:::redStyle IC:::blueStyle WG:::greenStyle TG:::purpleStyle tgb01:::purpleStyle tgb02:::purpleStyle a1:::redStyle a2:::blueStyle a3:::greenStyle tga1:::purpleStyle tga2:::purpleStyle U1:::userGray U2:::userGray c1:::redStyle c2:::blueStyle c3:::greenStyle c4:::purpleStyle c5:::purpleStyle classDef userGray fill:#f5f5f5,stroke:#e6e6e6,color:#222 classDef redStyle fill:#ffd6d6,stroke:#ffbdbd,color:#222 classDef blueStyle fill:#dff0ff,stroke:#cfeaff,color:#222 classDef greenStyle fill:#ecffd9,stroke:#d5ffb3,color:#222 classDef purpleStyle fill:#f1e0ff,stroke:#e1c7ff,color:#222 style Col1 stroke:#757575
- 匿名ID(anonymous_id)は、GPTBotsシステムサービスによってユーザーの利用プラットフォームに基づいて自動的に生成されます。
- user_idの設定はオプションです。開発者は、ビジネス要件に応じて、異なるチャネル間でのユーザー識別の関連付けやユーザー属性の共有を実現するために、ユーザーに
user_id
を設定するかどうかを決定できます。
定義
ユーザー
エージェントと対話を行うエンドユーザーを指します。
ユーザーID(user_id)
企業の開発者がエンドユーザーに付与する一意の識別子です。API経由で特定の匿名ID
にUserId
を設定することができます。UserIdの利用シーンや高度な使用方法についてはユーザーIDの設定をご参照ください。
user_id
はanonymous_id
よりも優先度が高くなります- 複数の
anonymous_id
を1つのuser_id
に紐付けることが可能です
匿名ID(anonymous_id)
ユーザーがサードパーティプラットフォーム(Telegram、WhatsApp、LINEなど)でエージェントと対話する際、GPTBotsはそのプラットフォームのユーザー固有識別子をanonymous_id
として使用します。匿名IDの生成ロジックについては匿名IDの値設定ロジックをご参照ください。
サードパーティプラットフォーム
GPTBotsプラットフォームは現在、多数のサードパーティプラットフォームとの連携をサポートしています。Intercom、WebChat、LiveChat、Telegram、WhatsAppなどが含まれます。
会話ID(conversation_id)
会話ID(conversation_id)は、エージェント、会話タイプ、およびuser_id(またはanonymous_id)から生成される一意の識別子です。conversation_id
は異なるビジネスシーンを分離する最小単位となり、通常複数のメッセージIDを含みます。
conversation_id
の自動有効期限は60分です。ただし、API経由で生成されたconversation_id
には有効期限はありません- サードパーティプラットフォームやウィジェットバブルなどのチャネルで生成された
conversation_id
は、期限切れ後に新しいconversation_id
が生成され、新しい対話が開始されます
メッセージID(message_id)
メッセージID(message_id
)は、エージェントとユーザー間の1回の対話メッセージを識別するために使用され、対話の最小単位となります。
message_id
はGPTBotsプラットフォームによって生成され、開発者が独自に設定することはできませんmessage_id
はconversation_id
に属し、1つのconversation_id
は通常複数のmessage_id
を含みます
会話タイプ
会話タイプ(conversation_type)は、ユーザーが会話を開始するシーンを識別するために使用されます。例:ワークスペース-Workflow、WhatsApp、API、ワークスペース-Searchなど。
会話ID(conversation_id)の生成原理
ユーザーがサードパーティプラットフォームを通じてエージェントとの会話を開始すると、システムはそのプラットフォームに基づいてanonymous_id
を生成し、そのanonymous_id
を基にconversation_id
を自動生成して、ユーザーとエージェント間の1回の会話を管理します。
- 開発者がAPI経由で利用する場合は、まず
conversation_id
を生成してから、エージェント/Workflowとの対話を開始することができます - API以外のチャネルプラットフォームでは、GPTBotsが自動的に
conversation_id
を生成します
匿名ID(anonymous_id)の値設定ロジック
連携チャネル | 匿名IDの設定ロジック | プラットフォームフィールド | 説明 |
---|---|---|---|
Telegram | Telegramユーザーの固有ID | tg_user_id | Telegramユーザーを識別するための固有の数値識別子 |
Telegram グループチャット | Telegram chatID + Telegram ユーザーID | tg_chat_id + tg_user_id | グループチャットでのユーザー識別のため、チャットIDとユーザーIDを組み合わせた識別子 |
LINE | LINE ユーザーID | line_user_id | LINEプラットフォーム内でユーザーを識別するための固有識別子 |
LiveChat | LiveChat スレッドID | lc_thread_id | LiveChatの会話スレッドを追跡・管理するための固有識別子 |
Slack | Slack ユーザーID | slack_user_id | Slackプラットフォーム内でユーザーを識別するための固有識別子 |
Slack パブリックチャンネル | Slack(チームID+チャンネルID+ユーザーID) | slack_team_id + slack_channel_id + slack_user_id | パブリックチャンネルでユーザーを識別するための、チーム、チャンネル、ユーザーの各識別子の組み合わせ |
Intercom | Intercomユーザーの固有ID | intercom_user_id | カスタマーサポートプラットフォームでユーザーを追跡・管理するための固有識別子 |
DingTalk | DingTalk 送信者ID | dd_user_id | DingTalkプラットフォーム内でユーザーを識別するための固有識別子 |
DingTalkグループチャット | DingTalk(送信者ID+グループID) | dd_chat_id + dd_senderId | グループチャットでのユーザー識別のため、送信者IDとグループIDを組み合わせた識別子 |
WhatsApp by Meta | WhatsApp ユーザーID | wa_user_id | WhatsAppユーザーの固有識別子(通常、国際形式の電話番号に@c.usを付加) |
WhatsApp by EngageLab | WhatsApp ユーザーID | wa_user_id | WhatsAppユーザーの固有識別子(通常、国際形式の電話番号に@c.usを付加) |
Discord | Discordユーザーの固有ID | discord_user_id | Discordプラットフォーム内でユーザーを識別するための数値識別子 |
Instagram 送信者ID | instagram_user_id | Instagramメッセージ送信者の固有識別子 | |
送信者ID | facebook_user_id | Facebookメッセージ送信者の固有識別子 | |
Sobot | Sobot メンバーID | sobot_memberId | Sobotプラットフォームのユーザー識別子 |
Sobotグループメンション | Sobot(ギルドID+チャンネルID+メンバーID) | guildId + channelId + memberId | グループチャットでメンションされたユーザーを識別するための固有識別子 |
Intercom | 送信者ID | intercom_senderId | Intercomプラットフォームのユーザー識別子 |
Zoho Sales IQ | Zoho 会話ID | zoho_sales_iq_conversationId | Zoho Sales IQの会話を識別するための固有識別子 |
WeChat カスタマーサービス | WeChatカスタマーサービスユーザーID | wechat_customer_service_user_id | WeChatカスタマーサービスのユーザー識別子 |
GPTBots内蔵チャネルの匿名ID(anonymous_id)設定ロジック
連携チャネル | 匿名IDの設定ロジック | 説明 |
---|---|---|
API | 匿名IDなし | ユーザーはuser_idのみを使用して会話IDを生成可能 |
ワークスペース | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
シェア | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
Iframe | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
AI検索 | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
AI検索(iframe) | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
ウィジェット | 匿名ID=ブラウザフィンガープリントID | ブラウザフィンガープリントに基づくランダムID生成。キャッシュクリアやシークレットモードで新しいIDが生成される可能性あり |
GPTBotsプラットフォームにユーザーがログインしている場合、システムは自動的にその「GPTBotsアカウントID」を
user_id
として設定し、同時にanonymous_id
(ブラウザフィンガープリントID)も自動的に関連付けます。
会話タイプ(conversation_type)
会話タイプ(conversation_type)は、ユーザーが会話を開始するシーンを識別し、conversation_type
フィールド値でシーンごとにログデータを検索できます。
会話タイプ | フィールド値 | 説明 |
---|---|---|
全て | ALL | 全てのタイプの会話ID |
ワークスペース-Search | C | ワークスペースAgentが生成した会話ID |
ワークスペース-Agent | CHAT | ワークスペースSearchが生成した会話ID |
ワークスペース-Workflow | C_WORKFLOW | ワークスペースWorkflowが生成した会話ID |
ワークスペース-Apps | C_APPS | ワークスペースMarketの各AIアプリが生成した会話ID |
API | API | API呼び出しで生成された会話ID |
Iframe | EMBED | Iframeで生成された会話ID |
ウィジェット | WIDGET | ウィジェットバブルで生成された会話ID |
AI検索 | AI_SEARCH | AI検索で生成された会話ID |
シェア | SHARE | シェアで生成された会話ID |
WhatsApp by Meta | WHATSAPP_META | WhatsApp by Metaで生成された会話ID |
WhatsApp by EngageLab | WHATSAPP_ENGAGELAB | WhatsApp by EngageLabで生成された会話ID |
DingTalkボット | DINGTALK | DingTalkボットで生成された会話ID |
Discord | DISCORD | Discordで生成された会話ID |
Slack | SLACK | Slackで生成された会話ID |
Zapier | ZAPIER | Zapierで生成された会話ID |
WeChatカスタマーサービス | WXKF | WeChatカスタマーサービスで生成された会話ID |
Telegram | TELEGRAM | Telegramで生成された会話ID |
LiveChat | LIVECHAT | LiveChatで生成された会話ID |
LINE | LINE | LINEで生成された会話ID(複数のLINE Channelが存在する場合、複数のChannelオプションがあります) |
Instagramで生成された会話ID | ||
Facebookで生成された会話ID | ||
Sobot | SO_BOT | Sobotで生成された会話ID |
Zoho Sales IQ | ZOHO_SALES_IQ | Zoho Sales IQで生成された会話ID |
Intercom | INTERCOM | Intercomで生成された会話ID |
⚠️ 注意:表内のフィールド値は、APIで会話リストを取得する際のフィルタ条件として利用できます。
LINEやTelegramなど複数チャネルを追加できるサードパーティプラットフォームでは、「Agent-ログ」で2階層の会話タイプによる絞り込みが可能です。
表内のフィールド値は、ユーザーID更新APIのanonymous_id_source
フィールド値としても利用できます。