我正在为拥有大量流量的网站构建聊天机会
我决定在AWS lex中构建chatbot
我想将所有聊天对话保存在Dynamo数据库中的单个属性,因为我为该属性选择了列表数据类型
我可以将所有插槽数据转换为不同的变量,但是如何保存用户输入的话语并提示我们在lex控制台中定义的内容以及如何像谈话一样安排它们。
如果有存储聊天对话的替代方法吗?
答案 0 :(得分:1)
因为它是你的机器人,你知道会话超时值。在lambda函数中,您可以生成会话ID(随机UUID)并将其放在会话属性中(阅读更多here)。您可以在帐户中创建一个DDB表,并按照以下方式进行设计:
现在只要会话有效,您就可以随时检索放在会话属性映射中的sessionId。使用此功能,您始终可以创建范围键(sessionId + "#" + currentTimeStamp
)。在lambda中的每个调用中,您还可以获得机器人的用户ID。您可以通过所有这些信息以您希望的方式存储话语。