我尝试将V1应用程序迁移到新的API V2,并且我遇到了followupEvent功能的问题。
这是我的用例:
为此,在V1中,我的webhook响应是:
{
"contextOut":[{
"name":"zone",
"lifespan":3
}],
"followupEvent":{
"name":"unknown_zone",
"data":{
"context_lifespan":"3",
"current_action":"light_on",
"zone":"garage"
}
}
}
在V2中,我尝试发送以下回复:
{
"outputContexts": [{
"name": "zone",
"lifespanCount": 3
}],
"followupEventInput": {
"name": "unknown_zone",
"parameters": {
"zone": "garage",
"current_action": "light_on",
"context_lifespan": "3"
},
"languageCode":"en-US"
}
}
永远不会调用意图“unknown_zone”。我只收到“light_on”意图的默认回复。
我搜索了文档:WebhookResponse,EventInput但没有任何帮助。 我也发现了这个话题v2-followupevent-from-webhook-upgrade-from-v1,但没有成功。
有人可以帮助我吗?
答案 0 :(得分:3)
我只知道为什么我的回答不起作用。我没有关注输出上下文名称的新V2 format。
格式:projects / {Project ID} / agent / sessions / {Session ID} / contexts / {my_context_name}
意图永远不会匹配,因为上下文没有正确设置。
答案 1 :(得分:0)
followupEventInput对象中的name属性是指在intent中定义的事件,而不是intent本身。您必须在intent的事件部分中添加事件“unknown_zone”,如图所示 this screenshot