Pircbot,检索完整userList的问题

时间:2016-05-19 17:02:28

标签: java list connection pircbot

做一个twitchbot作为一个小爱好项目,并发现一个小问题。 我想制作一个观众列表,当观众进入我的频道时,它会自动显示。我得到的问题是,正在检索的列表只显示机器人。我已经阅读了javadocs,我认为我做的一切都正确,但我不能让它工作。

因此,当bot连接到服务器时,调用onuserlist()方法并检索用户列表,但它获得的唯一用户是bot。即使我的频道中有5,10,100人。

@Override
    protected void onUserList(String channel, User[] users) {

        for (User user1 : users) {
            System.out.println(user1);
            model.addElement(user1.getNick());
        }
        super.onUserList(channel, users);

    }

onjoin()方法应该使用以下代码更新用户列表,并在每次有人加入时调用它。但即使在这里它也是同样的问题,它能找到的唯一用户就是机器人。我想知道是否有人对pircbots有更好的了解并知道我可能做错了什么?

  User[] user=bot.getUsers("#mychannel");
        for(int i =0; i<user.length;i++){
            System.out.println(user[i]);
    }

根据java doc,它应该给我一个包含我频道中所有人的用户数组,但它只给我一个。

http://www.jibble.org/javadocs/pircbot/

2 个答案:

答案 0 :(得分:0)

User[] user=bot.getUsers("#mychannel");
   for (User usr : user){
         System.out.println(usr.toString());
     }
}  

答案 1 :(得分:0)

所以我今天刚刚解决了这个问题,如果您使用的是JOIn / Part系统,则需要在使用

进行连接时请求服务器的权限。
bot_Object.sendRawLine("CAP REQ :twitch.tv/membership");

这让Twitch知道你想要使用Join / Part功能。

如果你想了解更多,这里是他们设置不同IRC客户端的帮助指南,我只是将命令提取出来并在我的机器人中使用它。

http://help.twitch.tv/customer/portal/articles/1302780-twitch-irc