RFC: 1459
Оригинал: Internet Relay Chat Protocol
Категория: Экспериментальный
Дата публикации:
Авторы: ,
Перевод: Рустам Шихалиев aka russo

6.2. Отклики команд

300     RPL_NONE
                Dummy reply number. Not used.

302     RPL_USERHOST
                ":[<reply>{<space><reply>}]"

        - Формат ответа, используемый командой USERHOST для списка
          ответов к запрашиваемому списку. Строка ответа
          представляет собой следующее:

          <reply> ::= <nick>['*'] '=' <'+'|'-'><hostname>

          '*' обозначает, что клиент зарегистрирован как
          IRC-оператор. Символы '-' или '+' обозначает, что клиент
          установил режим AWAY или не доступен.

303     RPL_ISON
                ":[<nick> {<space><nick>}]"

        - Формат ответа, используемый командой ISON для списка
          ответов к запрашиваемому списку.

301     RPL_AWAY
                "<nick> :<away message>"

305     RPL_UNAWAY
                ":You are no longer marked as being away"
306     RPL_NOWAWAY
                ":You have been marked as being away"

        - Эти ответы используются с командой AWAY (если доступно).
          RPL_AWAY отсылается любому клиенту, пославшему PRIVMSG
          клиенту, который находит в состоянии AWAY. RPL_AWAY
          отсылается только сервером, к котому присоединен клиент.
          Ответы RPL_UNAWAY и RPL_NOWAWAY отправляются, когда
          клиент удаляет или устанавливает режим AWAY.

311     RPL_WHOISUSER
                "<nick> <user> <host> * :<real name>"
312     RPL_WHOISSERVER
                "<nick> <server> :<server info>"
313     RPL_WHOISOPERATOR
                "<nick> :is an IRC operator"
317     RPL_WHOISIDLE
                "<nick> <integer> :seconds idle"
318     RPL_ENDOFWHOIS
                "<nick> :End of /WHOIS list"
319     RPL_WHOISCHANNELS
                "<nick> :{[@|+]<channel><space>}"

        - Ответы 311 - 313, 317 - 319 генерируются в ответ на
          WHOIS-сообщение. Отвечающий сервер должен
          формулировать каждый ответ числовым (если найден
          запрашиваемый никнейм) или возвращать ERROR-ответ. '*' В
          RPL_WHOISUSER не является маской, но буквенным символом.
          Для каждого ответа установка, только RPL_WHOISCHANNELS
          может казаться больше, тогда только (для длинных списков
          имен каналов). '@' и '+' символы, указывающие какой
          клиент является оператором канала или кому разрашается
          говорить на модерируемом канале. RPL_ENDOFWHOIS
          используется для пометки окончания WHOIS-сообщения.

314     RPL_WHOWASUSER
                "<nick> <user> <host> * :<real name>"
369     RPL_ENDOFWHOWAS
                "<nick> :End of WHOWAS"

        - Когда отвечают на WHOWAS-сообщения, сервер должен
          использовать ответы RPL_WHOWASUSER, RPL_WHOISSERVER или
          ERR_WASNISUCHNICK для каждого никнейма в указаном
          списке. К концу всех пакетов ответов, может быть
          RPL_ENDOFWHOWAS (только если будет один ответ или будет
          являться ошибкой).

321     RPL_LISTSTART
                "Channel :Users  Name"
322     RPL_LIST
                "<channel> <# visible> :<topic>"
323     RPL_LISTEND
                ":End of /LIST"

        - Ответы RPL_LISTSTART, RPL_LIST, RPL_LISTEND помечают
          начало текущих ответос с данными и конец серверных
          ответов на команду LIST. Если недоступен ни один канал,
          отправятся только начало и конец ответа.

324     RPL_CHANNELMODEIS
                "<channel> <mode> <mode params>"

331     RPL_NOTOPIC
                "<channel> :No topic is set"
332     RPL_TOPIC
                "<channel> :<topic>"

        - Когда отправляется TOPIC-сообщение, обозначающее топик
          канала, отправиться должен один из двуъ ответов. Если
          топик установлен, отсылается RPL_TOPIC. Иначе -
          RPL_NOTOPIC.

341     RPL_INVITING
                "<channel> <nick>"

        - Возвращается сервером, обозначая что попытка
          INVITE-сообщения была успешно выполнена по отношению к
          приглашенному клиенту.

342     RPL_SUMMONING
                "<user> :Summoning user to IRC"

        - Возвращается сервером, отвечающего на SUMMON-сообщение
          и обозначающего, что вызывается пользователь.

351     RPL_VERSION
                "<version>.<debuglevel> <server> :<comments>"

        - Ответ сервером, показывающий версию в подробностях.
          <version> - версия программного обеспечения,
          (включая все патчи) и <debuglevel> использующийся для
          обозначения того, что сервер запущен "дебаг-режиме".

          Поле "comments" может содержать любые комментарии о
          версии и других подробностях.

352     RPL_WHOREPLY
                "<channel> <user> <host> <server> <nick> \
                 <H|G>[*][@|+] :<hopcount> <real name>"
315     RPL_ENDOFWHO
                "<name> :End of /WHO list"

        - RPL_WHOREPLY и RPL_ENDOFWHO пара, используемая для
          ответа WHO-сообщения. RPL_WHOREPLY отсылается только
          если предназначена подстановкой к WHO-запросу. Если
          список параметров обеспечен WHO-сообщением, RPL_ENDOFWHO
          должен отослаться после обработки каждого пункта
          списка, начинающегося на <name>.

353     RPL_NAMREPLY
                "<channel> :[[@|+]<nick> [[@|+]<nick> [...]]]"
366     RPL_ENDOFNAMES
                "<channel> :End of /NAMES list"

        - Для ответа на NAMES-сообщения, пара ответов, содержащих
          RPL_NAMEREPLY и RPL_ENDOFNAMES отправляются сервером
          обратно к клиенту. Если запрашиваемый канал не найден,
          возвращается RPL_ENDOFNAMES. Исключая то, когда
          NAMES-сообщение отправлено без параметров, и все каналы
          видимые с содержимым - возвращается серия
          RPL_NAMEREPLY-сообщений с RPL_ENDOFNAMES, как пометкой
          окончания.

364     RPL_LINKS
                "<mask> <server> :<hopcount> <server info>"
365     RPL_ENDOFLINKS
                "<mask> :End of /LINKS list"

        - В ответе на LINKS-сообщение, сервер должен отослать
          ответы обратно, используя RPL_LINKS и пометкой конца
          списка - RPL_INDOFREPLY.

367     RPL_BANLIST
                "<channel> <banid>"
368     RPL_ENDOFBANLIST
                "<channel> :End of channel ban list"

        - Когда создается список активных 'банов' для данного канал,
          сервер требует отправки списка обратно, используя
          сообщения RPL_BANLIST и RPL_ENDOFBANLIST. Разделитель
          RPL_BANLIST отсылается для каждого активного забаненного.
          После того, как все забаненные попали в список (или если
          отсутствуют), должен отослаться RPL_ENDOFBANLIST.

371     RPL_INFO
                ":<string>"
374     RPL_ENDOFINFO
                ":End of /INFO list"

        - Сервер, отвечая на INFO-сообщение требует отправления
          всех этих 'info' в серии RPL_INFO-сообщений с
          RPL_ENDOFINFO ответом, указывающем окончание ответов.

375     RPL_MOTDSTART
                ":- <server> Message of the day - "
372     RPL_MOTD
                ":- <text>"
376     RPL_ENDOFMOTD
                ":End of /MOTD command"

        - При ответе на MOTD-сообщение и MOTD-файл найден, файл
          отбражается строка к строке с каждой строкой, не длше80
          символов, используя RPL_MOTD-формат ответов. Их следует
          разместить между RPL_MOTDSTART (перед RPL_MOTD) и
          RPL_ENDOFMOTD (после).

381     RPL_YOUREOPER
                ":You are now an IRC operator"

        - RPL_YOUREOPER отправляется клиенту, который благополучно
          выполнил OPER-сообщение и получил статус IRC-оператора.

382     RPL_REHASHING
                "<config file> :Rehashing"

        - Если использовалась функция REHASH и оператор послал
          REHASH-сообщение, RPL_REHASHING отправилась обратно
          оператору.

391     RPL_TIME
                "<server> :<string showing server's local time>"

        - При ответе на TIME-сообщение, сервер должен отправить
          ответ, используя RPL_TIME-формат. Строка, показывающая
          время, должна содержать только правильный день и время.
          Это не является допольнительным требованием к строке
          времени.

392     RPL_USERSSTART
                ":UserID   Terminal  Host"
393     RPL_USERS
                ":%-8s %-9s %-8s"
394     RPL_ENDOFUSERS
                ":End of users"
395     RPL_NOUSERS
                ":Nobody logged in"

        - Если USERS-сообщение обработано сервером, использовались
          ответы RPL_USERSTART, RPL_USERS, RPL_ENDOFUSERS и
          RPL_NOUSERS. RPL_USERSSTART должен отправится первым,
          следуя за одним из RPL_USERS или одним RPL_NOUSER.
          Следом идет RPL_ENDOFUSERS.

200     RPL_TRACELINK
                "Link <version & debug level> <destination> \
                 <next server>"
201     RPL_TRACECONNECTING
                "Try. <class> <server>"
202     RPL_TRACEHANDSHAKE
                "H.S. <class> <server>"
203     RPL_TRACEUNKNOWN
                "???? <class> [<client IP address in dot form>]"
204     RPL_TRACEOPERATOR
                "Oper <class> <nick>"
205     RPL_TRACEUSER
                "User <class> <nick>"
206     RPL_TRACESERVER
                "Serv <class> <int>S <int>C <server> \
                 <nick!user|*!*>@<host|server>"
208     RPL_TRACENEWTYPE
                "<newtype> 0 <client name>"
261     RPL_TRACELOG
                "File <logfile> <debug level>"

        - Все RPL_TRACE* возвращаются сервером в ответ на
          TRACE-сообщение. Как много будет возвратов на
          TRACE-сообщение зависит от того, посланы они
          IRC-оператором или нет. Ответы RPL_TRACEUNKNOW,
          RPL_TRACECONNECTING И RPL_TRACEHANDSHAKE используются
          для соединений, которые не имеют полного разрешения и
          неизвестны, попытки соединения, оканчивающиеся на
          'server handshake'. RPL_TRACELINK посылается любым
          сервером, который пропустил TRACE-сообщение и отправил
          ее к следующему серверу. Список команд RPL_TRACELINK
          отправится в ответ на TRACE-команду через всю IRC-сеть,
          создавая карту серверных соединений. RPL_TRACENEWTYPE
          будет использован для другого соединения, которое не
          стыкуется с остальными категориями, но было отображено.

211     RPL_STATSLINKINFO
                "<linkname> <sendq> <sent messages> \
                 <sent bytes> <received messages> \
                 <received bytes> <time open>"
212     RPL_STATSCOMMANDS
                "<command> <count>"
213     RPL_STATSCLINE
                "C <host> * <name> <port> <class>"
214     RPL_STATSNLINE
                "N <host> * <name> <port> <class>"
215     RPL_STATSILINE
                "I <host> * <host> <port> <class>"
216     RPL_STATSKLINE
                "K <host> * <username> <port> <class>"
218     RPL_STATSYLINE
                "Y <class> <ping frequency> <connect \
                 frequency> <max sendq>"
219     RPL_ENDOFSTATS
                "<stats letter> :End of /STATS report"
241     RPL_STATSLLINE
                "L <hostmask> * <servername> <maxdepth>"
242     RPL_STATSUPTIME
                ":Server Up %d days %d:%02d:%02d"
243     RPL_STATSOLINE
                "O <hostmask> * <name>"
244     RPL_STATSHLINE
                "H <hostmask> * <servername>"

221     RPL_UMODEIS
                "<user mode string>"

                - Для ответа запроса о режиме владельца клиенту,
                  RPL_UMODEIS отправляектся обратно.

251     RPL_LUSERCLIENT
                ":There are <integer> users and <integer> \
                invisible on <integer> servers"
252     RPL_LUSEROP
                "<integer> :operator(s) online"
253     RPL_LUSERUNKNOWN
                "<integer> :unknown connection(s)"
254     RPL_LUSERCHANNELS
                "<integer> :channels formed"
255     RPL_LUSERME
                ":I have <integer> clients and <integer> \
                  servers"

                - При обработке LUSERS-сообщения, сервер
                  отправляет настроки ответов от RPL_LUSERCLIENT,
                  RPL_LUSEROP, RPL_USERUNKNOWN, RPL_LUSERCHANNELS
                  и RPL_LUSERME. При ответе, сервер должен
                  отослать обратно RPL_LUSERCLIENT и RPL_LUSERME.
                  Другие ответы отсылаются только если найдено их
                  не нулевое значение.

256     RPL_ADMINME
                "<server> :Administrative info"
257     RPL_ADMINLOC1
                ":<admin info>"
258     RPL_ADMINLOC2
                ":<admin info>"
259     RPL_ADMINEMAIL
                ":<admin info>"

                - При ответе на ADMIN-сообщение, сервер ожидает
                  использование ответов RPL_ADMINME через
                  RPL_ADMINEMAIL и предоставляет текст сообщения с
                  каждым. Для RPL_ADMINLOC1 описывапется город,
                  шатат и страна сервера, следуемый подробностями
                  университета и факультета (RPL_ADMINLOC2) и
                  оканчивается административной связью для сервера
                  (здесь потребуется e-mail адрес) в RPL_ADMINEMAIL.
2007 - 2017 © Русские переводы RFC, IETF, ISOC.