聊天机器人(vk)逻辑,如何在机器人内部为每个用户使用全局变量(字典)

问题描述 投票:0回答:0

我正在从聊天机器人逻辑和机器人中的变量(激活额外的搜索功能)完成机器人

所以,我使用了全局变量,一切顺利。然后我决定使用布尔值,上一行:

greetings = [hi, hello]
  if msg in greetings:

成为:

if first_message is False:

然后我制作了几个变量,如 first_message (age, extended_options) 并将其放入 dict options = {'first_message': False, 'extended_options': False, etc}:

if options['first_message'] is False:

明显的问题是,当多个人访问机器人时,它会重写所有值,并且机器人会根据上次覆盖显示结果。无论是选项字典问题还是重大缺陷,如果我尝试像这样复制选项字典:

options = options_orig.copy()

它只是卡在选项['first_message'],它总是假的,这意味着机器人卡在问候用户的无限循环中。不确定是不是 dict.copy() 问题。也许有一个合乎逻辑的方法来解决这个问题,obv 人们已经想通了,但我的问题与逻辑有关,而不是 bot api 中的工具。

python dictionary for-loop botframework chatbot
© www.soinside.com 2019 - 2024. All rights reserved.