Уведомление «AUTH AUTH» при подключении к IRC-серверу - PullRequest
2 голосов
/ 27 января 2010

В качестве учебного упражнения я пишу программу на Python для подключения к каналу в сети IRC, чтобы я мог выводить сообщения в канале на стандартный вывод. Я использую asynchat и вручную отправляю сообщения протокола, а не использую что-то вроде Twisted или существующего кода бота из сети - опять же, таким образом, это более полезный опыт обучения.

Я могу с радостью отправлять команды JOIN и USER, и могу выполнять PING / PONG по мере необходимости. Тем не менее, я заметил, что при открытии сокета для порта 6667 я получу несколько сообщений:

NOTICE AUTH :*** Looking up your hostname...
NOTICE AUTH :*** Checking ident
NOTICE AUTH :*** Found your hostname
NOTICE AUTH :*** No identd (auth) response

, даже если я еще не отправил команды JOIN / USER.

Итак, указана ли где-нибудь эта начальная последовательность уведомлений? Насколько я вижу, RFC не указывает, что конкретно должно происходить до того, как клиент отправит команду JOIN, и я не был уверен, стоит ли ждать получения этих уведомлений перед отправкой команды JOIN, и если да, то как мне определить, что я получил все уведомления?

1 Ответ

3 голосов
/ 27 января 2010

Для этого не требуется RFC, это обычная вещь, которую делают серверы в дикой природе. Заметьте, что это обычные старые команды NOTICE (т.е. просто сообщения). Просто относитесь к ним как к сообщениям, отправляемым псевдо-пользователю "AUTH" (поскольку у сервера пока нет лучшего имени для вас). Вам не нужно ждать их, и сервер не обязан их отправлять.

...