Следующий код успешно подключается к IRC Twitch и запускает метод onConnect, на котором все останавливается. Поскольку в pIRCbot включены подробные сведения, я вижу, что он отправляет JOIN #twitchplayspokemon
после подключения, но в спецификации сказано, что я должен получить немедленный ответ с тем же текстом, за которым следует список пользователей (что вызовет срабатывание методов onJoin и onUserList), который не случаться.
Я также пытался подключиться к своему каналу и отправить сообщение с помощью joinChannel("#[mychannelname]");
sendMessage("#[mychannelname]", "Hello World");
Все, что он делает, это отправляет две команды JOIN и никогда не присоединяется, и сообщение не появляется в чате.
Я использую учебник/справочник: http://help.twitch.tv/customer/portal/articles/1302780-twitch-irc
Другие ответы также не выводятся. Я получаю MOTD, но не вижу «Конец команды /MOTD».
import org.jibble.pircbot.*;
public class MyBotMain extends PircBot {
public static void main(String[] args) throws Exception {
MyBotMain bot = new MyBotMain();
bot.setVerbose(true);
bot.setName("[myname]");
bot.setLogin("[myname]");
try {
bot.connect("irc.twitch.tv", 6667, "oauth:db4aai4mh474ikbgzzuh76fv67n"); // Not the key I'm using
} catch (NickAlreadyInUseException e) {
System.err.println("Nickname is currently in use");
} catch (IrcException e) {
System.err.println("Server did not accept connection");
e.printStackTrace();
}
}
@Override
protected void onConnect() {
System.out.println("Connected!");
joinChannel("#witchplayspokemon");
super.onConnect();
}
@Override
protected void onJoin(String channel, String sender, String login, String hostname) {
System.out.println(login + " joined channel " + channel);
super.onJoin(channel, sender, login, hostname);
}
@Override
protected void onUserList(String channel, User[] users) {
for (User user : users) {
System.out.println(user);
}
super.onUserList(channel, users);
}
}