【问题标题】:irc bot auto modeirc 机器人自动模式
【发布时间】:2012-10-04 03:15:13
【问题描述】:

我一直在研究这个 irc 机器人,只是想看看我是否可以重新创建 ChanServ 或任何其他机器人可以提供的一些基本功能,我尝试制作这个小东西,但它仅限于一个昵称:

if '@wikia/Example JOIN #channel' in line:
    print 'Giving op status to @wikia/Example'
    self.s.send('MODE #channel Example +o\n')

仅当@wikia/Example 在开始时使用昵称Example 加入#channel 时才有效,但如果说@wikia/Example 使用昵称Example_rules 加入#channel,那么它将不起作用,因为我收到错误,即昵称“示例”不存在。不管昵称是什么,@wikia/Example 怎么可能是 +o?

这是一条线的样子
:Nickname!~login@wikia/Example PRIVMSG #channel :This is a message.

【问题讨论】:

  • 你看过Twisted吗? - 它有一个非常好的生成机器人的框架 - 加上你应该能够解析行,而不仅仅是寻找类似的东西......所以,有点困惑?
  • 还有 IIRC(我写了频道服务机器人)——在这种情况下,它需要是一个伪服务器,否则,只有 eggdrop/stormbot 等有什么问题......你需要检查 AUP提供者的...
  • 我知道其他类型的机器人,但我宁愿在此基础上创建它。

标签: python bots irc


【解决方案1】:

你应该给加入的昵称+o,而不是硬编码的昵称。 变化:

self.s.send('MODE #channel +o Example\r\n')

将“示例”更改为保存连接的昵称的变量,问题将得到解决。 IRC 也是一个旧协议,它需要 \r\n。

【讨论】:

    猜你喜欢
    • 2023-03-07
    • 2018-12-31
    • 2017-05-13
    • 1970-01-01
    • 1970-01-01
    • 2017-01-26
    • 2012-07-28
    • 2012-08-20
    • 2011-07-28
    相关资源
    最近更新 更多