我的Twitch bot(使用Pircbot)不会保持与频道的连接

时间:2015-08-17 19:54:16

标签: java irc

我正在尝试创建一个抽搐机器人,我要做的第一件事就是回复聊天消息。但是,当机器人连接到聊天室时,它似乎没有保持连接。它可以很好地发送聊天消息,但它没有收到它们。

这是代码,如果你想看看它。我觉得我错过了一些我应该记住的基本内容,所以如果你能弄明白我想知道的是什么。

package me.acezephyr.lavabot;

import java.io.IOException;

import org.jibble.pircbot.IrcException;
import org.jibble.pircbot.NickAlreadyInUseException;
import org.jibble.pircbot.PircBot;

public class LavaStreamBot extends PircBot {

private static LavaStreamBot INSTANCE = new LavaStreamBot();

public static void main(String[] args) {
    INSTANCE.setVerbose(true);
    INSTANCE.setName("LavaStreamBot");
    try {
        INSTANCE.connect("irc.twitch.tv", 6667,
                "oauth:******************************");
    } catch (NickAlreadyInUseException e) {
        System.err
                .println("Tried to join Twitch server, but someone else online already has the nick LavaStreamBot.");
    } catch (IOException e) {
        e.printStackTrace();
    } catch (IrcException e) {
        e.printStackTrace();
    }
    join("#AceLava");
}

public static void join(String channel) {
    INSTANCE.joinChannel(channel);
    INSTANCE.sendMessage(channel, "LavaStreamBot is now in this channel.");
}

@Override
public void onConnect() {
    System.out.println("Connected to server");
    super.onConnect();
}

@Override
public void onMessage(String channel, String sender, String login, String hostname, String message){
    System.out.println("Got a message!");
    super.onMessage(channel, sender, login, hostname, message);
}

}

1 个答案:

答案 0 :(得分:1)

您使用大写字母编写了频道名称("#AceLava")。在IRC中,这是一个与#acelava不同的通道--Twitch总是处理全部小写的通道。只要改变它,你就会好起来的。

与问题无关,但您可能想了解抽搐将很快改变其背景信息服务的事实,并且它不会通过IRC完成,因此您必须更改您的机器人因此(以及我必须做>。<)。

有关详细信息并了解最新信息,请访问http://discuss.dev.twitch.tv/