Session IBM Watson Assistant:Skill如何使用WA API'的V2访问会话id;s

Session IBM Watson Assistant:Skill如何使用WA API'的V2访问会话id;s,session,ibm-cloud,watson-assistant,ibm-cloud-functions,Session,Ibm Cloud,Watson Assistant,Ibm Cloud Functions,IBM Watson Assistant的V2 API要求您获取会话id,然后在对该助手的后续调用中使用它,以便在调用之间保留全局上下文值。查看我们与助手关联的预览链接网页,该请求似乎包含一个值对象(包含技能有效负载的所有预期部分)和一个会话id 我想以我的技能访问此会话id,将其传递给可能希望利用V2 API实现URI技能的云函数。这可能吗?换句话说,JSON内容中的一个引用将获得对session_id值的访问权 我假设预览链接导致助手使用V2 API(似乎有一个中介服务于预览链接网页并向实际

IBM Watson Assistant的V2 API要求您获取会话id,然后在对该助手的后续调用中使用它,以便在调用之间保留全局上下文值。查看我们与助手关联的预览链接网页,该请求似乎包含一个值对象(包含技能有效负载的所有预期部分)和一个会话id

我想以我的技能访问此会话id,将其传递给可能希望利用V2 API实现URI技能的云函数。这可能吗?换句话说,JSON内容中的一个引用将获得对session_id值的访问权

我假设预览链接导致助手使用V2 API(似乎有一个中介服务于预览链接网页并向实际助手发出请求)我进一步假设,在我的技能中设置context.global值会导致助手回显它们,因为预览链接应该重用会话id


技能如何向助手提供可以删除会话id(例如,对话已结束)的反馈,从而强制预览链接网页访问新会话id?

您可以使用
context[variableName]
$variableName
访问上下文变量。看

会话id(如果存在)(这取决于接口)是系统变量的一部分(
context.system.session\u id
)。我只是尝试通过添加以下响应文本在预览中访问和打印它:

我的会话ID:

用于计算文本中的表达式


我在我的中使用V2 API对其进行了测试,会话ID被很好地打印为响应。

您可以使用
context[variableName]
$variableName
访问上下文变量。看

会话id(如果存在)(这取决于接口)是系统变量的一部分(
context.system.session\u id
)。我只是尝试通过添加以下响应文本在预览中访问和打印它:

我的会话ID:

用于计算文本中的表达式


我在我的中使用V2 API对其进行了测试,会话ID被很好地打印为响应。

我尝试添加上下文:{“session_ID”:“”},但在使用Try it时,这会导致null。json中的其他设置起作用,因此我认为会话_id不在context.system中。查看返回到预览网页的内容确实会将会话id显示为对等输出,但我们无法访问它。不确定如何调试助手(代理)和技能之间发生的事情。只有当接口使用V2 API时,会话id才会出现。“试一试”很老,而且是基于V1的。新的预览和其他集成似乎基于V2 API,因此有了它。我尝试添加上下文:{“session_id”:“”},但使用Try-it时结果为null。json中的其他设置起作用,因此我认为会话_id不在context.system中。查看返回到预览网页的内容确实会将会话id显示为对等输出,但我们无法访问它。不确定如何调试助手(代理)和技能之间发生的事情。只有当接口使用V2 API时,会话id才会出现。“试一试”很老,而且是基于V1的。新的预览和其他集成似乎基于v2api,因此有了它。