【发布时间】:2015-12-25 01:55:03
【问题描述】:
我正在运行一个 IRC 机器人,我终于弄清楚了如何通过 whois 正确获取用户的身份验证。我现在希望实现此检查以引用我的数据库,而不是依赖他们的用户名。
我有一个命令
def privmsg(self, user, channel, msg):
if msg.startswith(".join"):
# sends whois signal
irc.IRCClient.whois(self, user, None)
我需要从被输出源(IRC 服务器)调用的函数中获取变量,因此我不能只添加回调
auth = ???
player = db.getplayer(auth)
我正在通过
接收身份验证def irc_330(self, prefix, params):
auth = params[2]
我似乎无法弄清楚如何将变量准确地发送回第一个函数,甚至无法确定如何等待该信号返回。我的第一个函数会在 irc_330() 开始之前传递任何东西。
我能想到的唯一解决方案是创建一个回调函数,该函数将等待其中的函数调用,然后返回我需要的内容。但这似乎根本不对。
【问题讨论】: