当我使用 iOS sdk 时,我的 sessionAttributes 没有在 Lex 中更新。
我将会话属性发送到 Lex,如下所示:
self.interactionKit?.text(inTextOut: chatTextField.text!,
sessionAttributes: ["stage" : getStage() , "bot" : getBot()])
其中 getStage() 和 getBot() 是返回字符串的函数。
我的问题是,当我为“stage”和“bot”发送一组会话属性时,Lex 将这些值用于所有后续调用,而不管我发送什么更新值。
即如果在呼叫#1 我发送
["stage" : "one" , "bot" : "first"]
在电话#2我发送
["stage" : "two" , "bot" : "second"]
Lex 将对这两个调用使用“one”和“first”。
是否有一些我不知道的缓存?或者我是否需要对“AWSLexSwitchModeResponse”做一些事情来更新会话属性?