首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hubot错误识别单个用户

问Hubot错误识别单个用户
EN

Stack Overflow用户
提问于 2018-10-29 15:16:48
回答 1查看 65关注 0票数 0

我在我们的Rocket.Chat服务器上附加了一个Hubot。我们有反人类纸牌的游戏脚本。有一天,我和另一位球员在同一时间加入,从那以后,Hubot认为我就是另一个球员。

通过下面的脚本进行测试,hubot使用其他用户的名称和Id进行响应,而不是我自己的(也是响应他而不是我):

代码语言:javascript
复制
return robot.respond(/who am i(\?)?/ig, function(msg) {
  return msg.reply("*Id: *" + msg.message.user.id + "\n*Name: *" + msg.message.user.name);
});

我尝试过停止hubot进程并重新部署,这并不能解决这个问题。它似乎存在于所有的Hubot脚本中,就像其他脚本从那时起就把我当作另一个玩家一样。

是否有任何方法来撤销Hubot所做的任何玩家映射,或者是否有任何方法来“重置”它以使这个问题消失?我找不到任何关于用户存储不同步的文档,也找不到与其他人发生这种问题的文档。

编辑:我还应该提到日志和控制台输出中的用户id和名称(手动测试时)显示了正确的名称和id (我自己的)。这是不正确的,因为它是“解释”和张贴到频道。我没有修改消息对象的代码。

EN

回答 1

Stack Overflow用户

发布于 2018-10-29 17:53:08

解决了这个问题。我们用的是MySQL Hubot脑适配器。出于某种原因,它覆盖了大脑数据中的用户名。通过更新大脑来修复。

不确定它是如何做到的,因为我看不到任何更新用户名的代码。我猜这不是线程安全,两个电话太近导致了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53048574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档