我想帮助用PircBot创建一个接力机器人。我希望它为每条消息发送消息到具有该消息的通道。我希望有这个多网络。我发了命令
if (split[0].equalsIgnoreCase(commandPrefix + "addnet")) {
// sendRawLine("QUIT : joining " + split[1]);
BrookieBot bot = new BrookieBot();
bot.setVerbose(true);
addnet = addnet + " " + split[1];
try {
bot.connect(split[1]);
sendMessage("nickserv", "identify pass");
bot.joinChannel("#brookies-use-of-bot");
} catch (NickAlreadyInUseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IrcException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
bot = new BrookieBot();
quit = 6;
this.joinChannel("#brookies-use-of-bot");
}
这就是我将它连接到多个网络的方式,但是我希望它能够重新调整网络并在每次收到消息时发送消息,无论网络是什么。
消息采用以下格式:[<net>] [<sender>] [<message>]
。谢谢你的帮助!我有这个版本:http://www.jibble.org/pircbot.php
答案 0 :(得分:0)
我之前做过一个这样的接力机器人。让我们来讨论你需要什么。
当机器人收到要转发的频道中的消息时,根据服务器和频道组合,使用机器人阵列将消息发送到各自的频道,提供:
退出,部分,加入以及您想要的任何其他内容也是如此。
答案 1 :(得分:0)
1)PircBot对多网络不利。此外,它有几个设计问题。 我推荐PircBotX。
2)如果你真的必须使用PircBot:
每个连接创建一个PircBot对象 这将为每个PircBot创建一个线程 然后,创建一个将在PircBot实例之间分发消息的总线 小心同步。
有关如何在PircBot对象外部发送消息的示例,请参阅基于它的JawaBot。