Как использовать Twisted для получения списка пользователей IRC-канала - PullRequest
5 голосов
/ 15 марта 2011

Я пытаюсь получить список пользователей канала, используя {{self.say(channel, "WHO",100)}}.Как я могу получить ответ?Какой метод мне следует переопределить?

1 Ответ

7 голосов
/ 15 марта 2011

Вот некоторые дополнительные методы, которые должны помочь вам продвинуться дальше. Вы обрабатываете данный ответ RPL_NAME, определяя метод irc_RPL_NAME. Таким образом, для RPL_WHOREPLY вы определяете irc_WHOREPLY:

    def who(self, channel):
        "List the users in 'channel', usage: client.who('#testroom')"
        self.sendLine('WHO %s' % channel)

    def irc_RPL_WHOREPLY(self, *nargs):
        "Receive WHO reply from server"
        print 'WHO:', nargs

    def irc_RPL_ENDOFWHO(self, *nargs):
        "Called when WHO output is complete"
        print 'WHO COMPLETE'

    def irc_unknown(self, prefix, command, params):
        "Print all unhandled replies, for debugging."
        print 'UNKNOWN:', prefix, command, params
...