会话数

会话表示 Dialogflow CX 代理与最终用户之间的对话。 您在对话开始时创建会话,并在每个对话回合中使用该会话。 对话结束后,您将停止使用该会话。

在同一时间与不同最终用户进行对话时,不应使用同一个会话。在会话的最后一个请求发送后的 30 分钟内,会话将保持活动状态并且其数据会被保存。

每个会话均由系统生成的会话 ID 唯一确定。 您可以通过在检测意图请求和其他会话方法中提供新的会话 ID 来创建新会话。会话 ID 是一个字符串,最长 36 个字节。 系统负责生成不重复的会话 ID。 它们可以是随机数字、经过哈希处理的最终用户标识符或任何其他便于生成的值。

如需了解会话名称中的位置 ID 值,请参阅区域化文档。

长时间会话

默认情况下,Dialogflow CX 会将对话数据保留 30 分钟。您可以通过以下两种方式延长会话的生命周期:

  • (首选) 使用 QueryParameters.session_ttl 设置会话 TTL。允许的最大值为 24 小时。
  • 您可以通过在 DetectIntentRequest 中设置 QueryParameters.current_pageQueryParameters.parameters 来恢复之前的会话状态。

    该工作流的示例如下:

    1. 最终用户在会话 A 下与代理进行通信。
    2. 您的代码记录了与 API 响应中返回的会话 A 关联的状态(即 QueryResult.current_pageQueryResult.parameters)。
    3. 50 分钟后,最终用户停止与代理互动。
    4. 最终用户再次与代理进行通信。
    5. 您的代码会发送最终用户输入以及之前在请求中记录的 QueryParameters.current_pageQueryParameters.parameters,以使用之前的会话状态检测意图。您无需使用会话 A 所用的会话 ID。

参考

如需了解会话价格,请参阅价格页面

如需详细了解会话,请

为会话参考选择协议和版本

协议 V3 V3beta1
REST 会话资源 会话资源
RPC 会话接口 会话接口
C++ SessionsClient 不可用
C# SessionsClient 不可用
Go SessionsClient 不可用
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP 不可用 不可用
Python SessionsClient SessionsClient
Ruby 不可用 不可用