Метод IRCClient.whois
всегда возвращает None
.Так что вы видите именно то, что я ожидаю от этого кода.:)
IRCClient.whois
отправляет на сервер команду a WHOIS .Когда он возвращается, результат неизвестен, поскольку сервер еще не отправил его (скорее всего, он еще даже не получил запрос).
Чтобы получить данные в ответе, необходимо переопределитьнесколько методов в вашем подклассе IRCClient
.
Способ, которым большая часть информации с IRC-сервера предоставляется с помощью IRCClient
, обеспечивается с помощью irc_
методов обратного вызова с префиксом.Например, один из нескольких ответов на команду IRC WHOIS , задокументированный в RFC IRC, содержит мнемонику RPL_WHOISCHANNELS
.Чтобы получить этот ответ, вы должны переопределить метод irc_RPL_WHOISCHANNELS
.Когда клиент получает этот ответ от сервера, метод вызывается с параметрами ответа.
См. Также этот связанный вопрос для получения дополнительной информации о irc_
обратных вызовах.
Обратитесь к IRC RFC для получения списка всех ответов, которые вы должны ожидать (хотя различные IRC-серверы могут дать вам больше или меньше).Затем переопределите необходимые методы.
К сожалению, это не так удобно, как метод whois
, который просто возвращает пользовательские данные, но это то, что необходимо для получения информации с IRCClient
в его текущемформа.