Я подключил Hubot к нашему серверу Rocket.Chat. У нас есть игровой скрипт для карт против человечества. Однажды я и другой игрок присоединились примерно в одно и то же время, и с тех пор Хабот считает, что я другой игрок.
Проверяя это с помощью приведенного ниже сценария, hubot отвечает именем и идентификатором другого пользователя, а не моим (также отвечает ему, а не мне):
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, или какой-либо способ «сбросить» его, чтобы эта проблема исчезла? Я не могу найти какую-либо документацию о том, как пользовательское хранилище перестало синхронизироваться или эта проблема произошла с кем-то еще.
EDIT : Я должен также упомянуть, что идентификатор пользователя и имя в журналах и в выводе консоли (при тестировании вручную) показывают правильное имя и идентификатор (мое). Это только неверно, поскольку оно «интерпретируется» и публикуется на канале. У меня нет кода, модифицирующего объект сообщения.