2 68cb1a8c 2013-01-02 alex ngIRCd - Next Generation IRC Server
3 68cb1a8c 2013-01-02 alex http://ngircd.barton.de/
5 13122bc9 2019-06-29 alex (c)2001-2019 Alexander Barton and Contributors.
6 68cb1a8c 2013-01-02 alex ngIRCd is free software and published under the
7 68cb1a8c 2013-01-02 alex terms of the GNU General Public License.
9 68cb1a8c 2013-01-02 alex -- Commands.txt --
12 68cb1a8c 2013-01-02 alex This file lists all commands available on ngIRCd. It is written in a format
13 68cb1a8c 2013-01-02 alex that is human readable as well as machine parseable and therefore can be used
14 68cb1a8c 2013-01-02 alex as "help text file" of the daemon.
16 7fce7191 2013-02-09 alex In short, the daemon reads this file on startup and parses it as following
17 7fce7191 2013-02-09 alex when an user issues a "HELP <cmd>" command:
19 68cb1a8c 2013-01-02 alex 1. Search the file for a line "- <cmd>",
20 68cb1a8c 2013-01-02 alex 2. Output all subsequent lines that start with a TAB (ASCII 9) character
21 68cb1a8c 2013-01-02 alex to the client using NOTICE commands, treat lines containing a single "."
22 68cb1a8c 2013-01-02 alex after the TAB as empty lines.
23 68cb1a8c 2013-01-02 alex 3. Break at the first line not starting with a TAB character.
25 68cb1a8c 2013-01-02 alex This format allows to have information to each command stored in this file
26 68cb1a8c 2013-01-02 alex which will not be sent to an IRC user requesting help which enables us to
27 68cb1a8c 2013-01-02 alex have additional annotations stored here which further describe the origin,
28 7fce7191 2013-02-09 alex implementation details, or limits of the specific command which are not
29 7fce7191 2013-02-09 alex relevant to an end-user but administrators and developers.
31 68cb1a8c 2013-01-02 alex A special "Intro" block is returned to the user when the HELP command is
32 68cb1a8c 2013-01-02 alex used without a command name:
36 68cb1a8c 2013-01-02 alex This is ngIRCd, a server software for Internet Relay Chat (IRC)
37 68cb1a8c 2013-01-02 alex networks. You can find more information about ngIRCd on its homepage:
38 68cb1a8c 2013-01-02 alex <http://ngircd.barton.de>
40 68cb1a8c 2013-01-02 alex Use "HELP COMMANDS" to get a list of all available commands and
41 68cb1a8c 2013-01-02 alex "HELP <command-name>" to get help for a specific IRC command, for
42 68cb1a8c 2013-01-02 alex example "HELP quit" or "HELP privmsg".
45 7fce7191 2013-02-09 alex Connection Handling Commands
46 7fce7191 2013-02-09 alex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
51 7fce7191 2013-02-09 alex CAP REQ <capabilities>
52 7fce7191 2013-02-09 alex CAP ACK <capabilities>
53 7fce7191 2013-02-09 alex CAP NAK <capabilities>
57 7fce7191 2013-02-09 alex List, request, and clear "IRC Capabilities".
59 7fce7191 2013-02-09 alex Using this command, an IRC client can request additional "IRC
60 7fce7191 2013-02-09 alex capabilities" during login or later on, which influences the
61 7fce7191 2013-02-09 alex communication between server and client. Normally, these commands
62 7fce7191 2013-02-09 alex aren't directly used by humans, but automatically by their client
63 7fce7191 2013-02-09 alex software. And please note that issuing such commands manually can
64 7fce7191 2013-02-09 alex irritate the client software used, because of the "non-standard"
65 7fce7191 2013-02-09 alex behavior of the server!
67 7fce7191 2013-02-09 alex - CAP LS: list all available capabilities.
68 7fce7191 2013-02-09 alex - CAP LIST: list active capabilities of this connection.
69 7fce7191 2013-02-09 alex - CAP REQ: Request particular capabilities.
70 7fce7191 2013-02-09 alex - CAP ACK: Acknowledge a set of capabilities to be enabled/disabled.
71 7fce7191 2013-02-09 alex - CAP NAK: Reject a set of capabilities.
72 7fce7191 2013-02-09 alex - CAP CLEAR: Clear all set capabilities.
73 7fce7191 2013-02-09 alex - CAP END: Indicate end of capability negotiation during login,
74 7fce7191 2013-02-09 alex ignored in an fully registered session.
76 7fce7191 2013-02-09 alex Please note that the <capabilities> must be given in a single
77 7fce7191 2013-02-09 alex parameter but whitespace separated, therefore a command could look
78 7fce7191 2013-02-09 alex like this: "CAP REQ :capability1 capability2 capability3" for example.
81 f6b7764e 2015-06-24 alex - <http://ircv3.net/specs/core/capability-negotiation-3.1.html>
82 7fce7191 2013-02-09 alex - <http://ngircd.barton.de/doc/Capabilities.txt>
83 7fce7191 2013-02-09 alex - doc/Capabilities.txt
86 7fce7191 2013-02-09 alex CHARCONV <client-charset>
88 7fce7191 2013-02-09 alex Set client character set encoding to <client-charset>.
90 7fce7191 2013-02-09 alex After receiving such a command, the server translates all message
91 7fce7191 2013-02-09 alex data received from the client using the set <client-charset> to the
92 7fce7191 2013-02-09 alex server encoding (UTF-8), and all message data which is to be sent to
93 7fce7191 2013-02-09 alex the client from the server encoding (UTF-8) to <client-charset>.
95 7fce7191 2013-02-09 alex This enables older clients and clients using "strange" character sets
96 7fce7191 2013-02-09 alex to transparently participate in channels and direct messages to
97 7fce7191 2013-02-09 alex clients using UTF-8, which should be the default today.
100 fef10f59 2013-08-01 alex - IRC+, <http://ngircd.barton.de/doc/Protocol.txt>
101 fef10f59 2013-08-01 alex - IRC+, doc/Protocol.txt
104 659d1264 2013-07-30 alex NICK <nickname>
105 659d1264 2013-07-30 alex NICK <nickname> [<hops>]
106 659d1264 2013-07-30 alex NICK <nickname> <hops> <username> <host> <servertoken> <usermodes> <realname>
108 659d1264 2013-07-30 alex Set or change the <nickname> of a client (first form) and register
109 659d1264 2013-07-30 alex remote clients (second and third form; servers only).
111 659d1264 2013-07-30 alex References:
112 659d1264 2013-07-30 alex - RFC 1459, 4.1.2 "Nick message" (old client and server protocol)
113 659d1264 2013-07-30 alex - RFC 2812, 3.1.2 "Nick message" (client protocol)
114 659d1264 2013-07-30 alex - RFC 2813, 4.1.3 "Nick" (server protocol)
117 659d1264 2013-07-30 alex PASS <password>
118 7fce7191 2013-02-09 alex PASS <password> <version> <flags> [<options>]
120 659d1264 2013-07-30 alex Set a connection <password>. This command must be the first command
121 659d1264 2013-07-30 alex sent to the server, even before the NICK/USER or SERVER commands.
123 659d1264 2013-07-30 alex The first form is used by user sessions or (old) RFC 1459 servers,
124 659d1264 2013-07-30 alex the second form is used by RFC 2812 or IRC+ compliant servers and
125 659d1264 2013-07-30 alex enables the server to indicate its version and supported protocol
128 659d1264 2013-07-30 alex References:
129 659d1264 2013-07-30 alex - RFC 1459, 4.1.1 "Password message" (old client and server protocol)
130 659d1264 2013-07-30 alex - RFC 2812, 3.1.1 "Password message" (client protocol)
131 659d1264 2013-07-30 alex - RFC 2813, 4.1.1 "Password message" (server protocol)
132 fef10f59 2013-08-01 alex - IRC+, <http://ngircd.barton.de/doc/Protocol.txt>
133 fef10f59 2013-08-01 alex - IRC+, doc/Protocol.txt
136 659d1264 2013-07-30 alex PING <token> [<target>]
138 659d1264 2013-07-30 alex Tests the presence of a connection to a client or server.
140 659d1264 2013-07-30 alex If no <target> has been given, the local server is used. User clients
141 659d1264 2013-07-30 alex can only use other servers as <target>, no user clients.
143 659d1264 2013-07-30 alex A PING message results in a PONG reply containing the <token>, which
144 659d1264 2013-07-30 alex can be arbitrary text.
146 659d1264 2013-07-30 alex Please note:
147 659d1264 2013-07-30 alex The RFCs state that the <token> parameter is used to specify the
148 fcdb5cf8 2013-08-05 fgsch origin of the PING command when forwarded in the network, but this
149 659d1264 2013-07-30 alex is not the case: the sender is specified using the prefix as usual,
150 659d1264 2013-07-30 alex and the parameter is used to identify the PONG reply in practice.
152 659d1264 2013-07-30 alex References:
153 659d1264 2013-07-30 alex - RFC 2812, 3.7.2 "Ping message"
156 659d1264 2013-07-30 alex PONG <target> [<token>]
158 659d1264 2013-07-30 alex Reply to a "PING" command, indicate that the connection is alive.
160 659d1264 2013-07-30 alex The <token> is the arbitrary text received in the "PING" command and
161 659d1264 2013-07-30 alex can be used to identify the correct PONG sent as answer.
163 659d1264 2013-07-30 alex When the "PONG" command is received from a user session, the <target>
164 659d1264 2013-07-30 alex parameter is ignored; otherwise the PONG is forwarded to this client.
166 659d1264 2013-07-30 alex References:
167 659d1264 2013-07-30 alex - RFC 2812, 3.7.3 "Pong message"
170 7fce7191 2013-02-09 alex QUIT [<quit-message>]
172 659d1264 2013-07-30 alex Terminate a user session.
174 659d1264 2013-07-30 alex When received from a user, the server acknowledges this by sending
175 659d1264 2013-07-30 alex an "ERROR" message back to the client and terminates the connection.
177 659d1264 2013-07-30 alex When a <quit-message> has been given, it is sent to all the channels
178 659d1264 2013-07-30 alex that the client is a member of when leaving.
180 659d1264 2013-07-30 alex References:
181 659d1264 2013-07-30 alex - RFC 2812, 3.1.7 "Quit"
182 659d1264 2013-07-30 alex - RFC 2813, 4.1.5 "Quit"
185 659d1264 2013-07-30 alex USER <username> <hostname> <unused> <realname>
187 659d1264 2013-07-30 alex Register (and authenticate) a new user session with a short <username>
188 659d1264 2013-07-30 alex and a human-readable <realname>.
190 659d1264 2013-07-30 alex The parameter <hostname> is only used when received by an other server
191 659d1264 2013-07-30 alex and ignored otherwise; and the parameter <unused> is always ignored.
192 659d1264 2013-07-30 alex But both parameters are required on each invocation by the protocol
193 659d1264 2013-07-30 alex and can be set to arbitrary characters/text when not used.
195 659d1264 2013-07-30 alex If <username> contains an "@" character, the full <username> is used
196 659d1264 2013-07-30 alex for authentication, but only the first part up to this character is
197 659d1264 2013-07-30 alex set as "user name" for this session.
199 659d1264 2013-07-30 alex References:
200 659d1264 2013-07-30 alex - RFC 2812, 3.1.3 "User message"
203 659d1264 2013-07-30 alex WEBIRC <password> <username> <hostname> <ip-address>
205 659d1264 2013-07-30 alex Allow Web-to-IRC gateway software (for example) to set the correct
206 659d1264 2013-07-30 alex user name and host name of users instead of their own.
208 659d1264 2013-07-30 alex It must be the very first command sent to the server, even before
209 659d1264 2013-07-30 alex USER and NICK commands!
211 659d1264 2013-07-30 alex The <password> must be set in the server configuration file to prevent
212 659d1264 2013-07-30 alex unauthorized clients to fake their identity; it is an arbitrary string.
214 659d1264 2013-07-30 alex References:
215 fef10f59 2013-08-01 alex - IRC+, <http://ngircd.barton.de/doc/Protocol.txt>
216 fef10f59 2013-08-01 alex - IRC+, doc/Protocol.txt
219 7fce7191 2013-02-09 alex General Commands
220 7fce7191 2013-02-09 alex ~~~~~~~~~~~~~~~~
223 7fce7191 2013-02-09 alex AWAY [<message>]
225 7fce7191 2013-02-09 alex Provides the server with a message to automatically send in reply to a
226 7fce7191 2013-02-09 alex PRIVMSG directed at the user, but not to a channel they are on.
228 7fce7191 2013-02-09 alex If <message> is omitted, the away status is removed.
230 a8ecde25 2013-08-01 alex References:
231 a8ecde25 2013-08-01 alex - RFC 2812, 4.1 "Away"
234 68cb1a8c 2013-01-02 alex HELP [<command>]
236 68cb1a8c 2013-01-02 alex Show help information for a specific IRC <command>. The <command> name
237 68cb1a8c 2013-01-02 alex is case-insensitive.
239 68cb1a8c 2013-01-02 alex Use the command "HELP Commands" to get a list of all available commands.
241 68cb1a8c 2013-01-02 alex The HELP command isn't specified by any RFC but implemented by most
242 68cb1a8c 2013-01-02 alex daemons. If no help text could be read in, ngIRCd outputs a list of all
243 68cb1a8c 2013-01-02 alex implemented commands when receiving a plain "HELP" command as well as
244 68cb1a8c 2013-01-02 alex on "HELP Commands".
246 68cb1a8c 2013-01-02 alex ngIRCd replies using "NOTICE" commands like ircd 2.10/2.11; other
247 68cb1a8c 2013-01-02 alex implementations are using numerics 704, 705, and 706.
250 a8ecde25 2013-08-01 alex MODE <nickname> [{+|-}<mode>[<mode>] [{+|-}<mode>[<mode>] [...]]]
251 a8ecde25 2013-08-01 alex MODE <channel> [{+|-}<mode>[<mode>] [<arg> [<arg> [...]]] [{+|-}<mode>[<mode>] [<arg> [<arg> [...]]] [...]]]
253 a8ecde25 2013-08-01 alex Set and get user and channel modes.
255 a8ecde25 2013-08-01 alex When no mode parameters are given, the currently set user or channel
256 a8ecde25 2013-08-01 alex modes are returned. Otherwise the modes are adjusted accordingly
257 a8ecde25 2013-08-01 alex and the changes will be reported back to the client.
259 fcdb5cf8 2013-08-05 fgsch All user and channel "modes" are indicated by single case-sensitive
260 a8ecde25 2013-08-01 alex characters.
262 a8ecde25 2013-08-01 alex Please note that a user can only get and set his own modes, and not
263 a8ecde25 2013-08-01 alex all user "levels" are allowed to change all channel modes ...
265 a8ecde25 2013-08-01 alex The mode parameters can become quite complex, especially when dealing
266 a8ecde25 2013-08-01 alex with channel modes that require additional arguments:
268 a8ecde25 2013-08-01 alex {+|-}<mode(s}> -- set or unset one or more modes.
269 a8ecde25 2013-08-01 alex +<mode(s)> -<mode(s)> -- set some modes and unset others.
270 a8ecde25 2013-08-01 alex +<modes> <arg1> <arg2> -- set (at least) two modes with arguments.
272 a8ecde25 2013-08-01 alex Some examples:
274 a8ecde25 2013-08-01 alex MODE nick +i -- set user to "invisible".
275 a8ecde25 2013-08-01 alex MODE #chan +tn -- set "topic lock" and "no external messages".
276 a8ecde25 2013-08-01 alex MODE #chan -t +l 50 -- remove "topic lock", set "user limit" to 50.
277 a8ecde25 2013-08-01 alex MODE #chan +ov nick1 nick2 -- set "channel op" and "voice" mode
278 a8ecde25 2013-08-01 alex to nick1 and nick2 in channel #chan.
280 a8ecde25 2013-08-01 alex A complete list of all modes supported by ngIRCd can be found online
281 a8ecde25 2013-08-01 alex here: <http://ngircd.barton.de/doc/Modes.txt>.
283 a8ecde25 2013-08-01 alex References:
284 a8ecde25 2013-08-01 alex - RFC 2811, 4. "Channel Modes"
285 a8ecde25 2013-08-01 alex - RFC 2812, 3.1.5 "User mode message"
286 a8ecde25 2013-08-01 alex - RFC 2812, 3.2.3 "Channel mode message"
287 a8ecde25 2013-08-01 alex - <http://ngircd.barton.de/doc/Modes.txt>
288 a8ecde25 2013-08-01 alex - doc/Modes.txt
291 76dcb082 2013-07-19 alex NOTICE <target>[,<target>[,...]] <message>
293 76dcb082 2013-07-19 alex Send a <message> to a given <target>, which can be a user or a
294 76dcb082 2013-07-19 alex channel, but DON'T report any error.
296 76dcb082 2013-07-19 alex The "NOTICE" command exactly behaves like the "PRIVMSG" command, but
297 76dcb082 2013-07-19 alex doesn't report any errors it encounters (like an unknown <target>).
298 76dcb082 2013-07-19 alex Please see the help text of the "PRIVMSG" command for a detailed
299 76dcb082 2013-07-19 alex description of the parameters!
301 76dcb082 2013-07-19 alex References:
302 76dcb082 2013-07-19 alex - RFC 2812, 2.3.1 "Message format in Augmented BNF"
303 76dcb082 2013-07-19 alex - RFC 2812, 3.3 "Sending messages"
304 76dcb082 2013-07-19 alex - RFC 2812, 3.3.2 "Notice"
307 76dcb082 2013-07-19 alex PRIVMSG <target>[,<target>[,...]] <message>
309 76dcb082 2013-07-19 alex Send a <message> to a given <target>, which can be a user or a
310 76dcb082 2013-07-19 alex channel, and report all errors.
312 76dcb082 2013-07-19 alex The <target> must follow one of these syntax variants:
314 76dcb082 2013-07-19 alex - <nickname>
315 76dcb082 2013-07-19 alex - <channel>
316 76dcb082 2013-07-19 alex - <user>[%<host>]@<server>
317 76dcb082 2013-07-19 alex - <user>%<host>
318 76dcb082 2013-07-19 alex - <nickname>!<user>@<host>
320 76dcb082 2013-07-19 alex If the <target> is a user, a private message is sent directly to this
321 76dcb082 2013-07-19 alex user; if it resolves to a channel name, a public message is sent
322 76dcb082 2013-07-19 alex to all the members of that channel.
324 76dcb082 2013-07-19 alex In addition, IRC Ops can use these two forms to specify the <target>:
326 76dcb082 2013-07-19 alex - #<hostmask>
327 40bea95c 2016-01-04 alex - $<servermask>
329 76dcb082 2013-07-19 alex The <mask> can contain the wildcard characters "*" and "?", but must
330 76dcb082 2013-07-19 alex contain at least one dot (".") and no wildcard after the last one.
331 76dcb082 2013-07-19 alex Then, the <message> is sent to all users matching this <mask>.
333 76dcb082 2013-07-19 alex All warnings and errors are reported back to the initiator using
334 76dcb082 2013-07-19 alex numeric status codes, which is the only difference to the "NOTICE"
335 76dcb082 2013-07-19 alex command, which doesn't report back any errors or warnings at all.
337 76dcb082 2013-07-19 alex Please note that clients often use "MSG" as an alias to PRIVMSG, and
338 76dcb082 2013-07-19 alex a command "QUERY <nick> [<message>]" to initiate private chats. Both
339 76dcb082 2013-07-19 alex are command extensions of the client and never sent to the server.
341 76dcb082 2013-07-19 alex References:
342 76dcb082 2013-07-19 alex - RFC 2812, 2.3.1 "Message format in Augmented BNF"
343 76dcb082 2013-07-19 alex - RFC 2812, 3.3 "Sending messages"
344 76dcb082 2013-07-19 alex - RFC 2812, 3.3.1 "Private messages"
346 68cb1a8c 2013-01-02 alex Status and Informational Commands
347 68cb1a8c 2013-01-02 alex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
350 7fce7191 2013-02-09 alex ADMIN [<target>]
352 7fce7191 2013-02-09 alex Show administrative information about an IRC server in the network.
354 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
355 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
356 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
358 7fce7191 2013-02-09 alex References:
359 7fce7191 2013-02-09 alex - RFC 2812, 3.4.9 "Admin command"
362 7fce7191 2013-02-09 alex INFO [<target>]
364 7fce7191 2013-02-09 alex Show the version, birth & online time of an IRC server in the network.
366 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
367 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
368 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
370 7fce7191 2013-02-09 alex References:
371 7fce7191 2013-02-09 alex - RFC 2812, 3.4.10 "Info command"
374 7fce7191 2013-02-09 alex ISON <nickname> [<nickname> [...]]
376 7fce7191 2013-02-09 alex Query online status of a list of nicknames. The server replies with
377 ac32d07a 2013-02-09 alex a list only containing nicknames actually connected to a server in
378 7fce7191 2013-02-09 alex the network. If no nicknames of the given list are online, an empty
379 7fce7191 2013-02-09 alex list is returned to the client requesting the information.
381 7fce7191 2013-02-09 alex Please note that "all" IRC daemons even parse separate nicknames in
382 7fce7191 2013-02-09 alex a single parameter (like ":nick1 nick2"), and therefore ngIRCd
383 cb3a4321 2015-09-06 alex implements this behavior, too.
385 7fce7191 2013-02-09 alex References:
386 7fce7191 2013-02-09 alex - RFC 2812, 4.9 "Ison message"
389 13122bc9 2019-06-29 alex LINKS [[<target>] <mask>]
391 7fce7191 2013-02-09 alex List all servers currently registered in the network matching <mask>,
392 7fce7191 2013-02-09 alex or all servers if <mask> has been omitted, as seen by the server
393 7fce7191 2013-02-09 alex specified by <target> or the local server when <target> is omitted.
395 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
396 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
398 7fce7191 2013-02-09 alex References:
399 7fce7191 2013-02-09 alex - RFC 2812, 3.4.5 "Links message"
402 7fce7191 2013-02-09 alex LUSERS [<mask> [<target>]]
404 7fce7191 2013-02-09 alex Return statistics about the number of clients (users, servers,
405 7fce7191 2013-02-09 alex services, ...) in the network as seen by the server <target>.
407 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
408 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
409 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
411 7fce7191 2013-02-09 alex Please note that ngIRCd ignores the <mask> parameter entirely: it
412 7fce7191 2013-02-09 alex is not possible to get information for a part of the network only.
414 7fce7191 2013-02-09 alex References:
415 7fce7191 2013-02-09 alex - RFC 2812, 3.4.2 "Lusers message"
418 7fce7191 2013-02-09 alex MOTD [<target>]
420 7fce7191 2013-02-09 alex Show the "Message of the Day" (MOTD) of an IRC server in the network.
422 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
423 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
424 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
426 7fce7191 2013-02-09 alex References:
427 7fce7191 2013-02-09 alex - RFC 2812, 3.4.1 "Motd message"
430 7fce7191 2013-02-09 alex NAMES [<channel>[,<channel>[,...]] [<target>]]
432 7fce7191 2013-02-09 alex Show the list of users that are members of a particular <channel>
433 7fce7191 2013-02-09 alex (and that are visible for the client requesting this information) as
434 7fce7191 2013-02-09 alex seen by the server <target>. More than one <channel> can be given
435 7fce7191 2013-02-09 alex separated by "," (but not whitespaces!).
437 7fce7191 2013-02-09 alex If <channel> has been omitted, all visible users are shown, grouped
438 7fce7191 2013-02-09 alex by channel name, and all visible users not being members of at least
439 7fce7191 2013-02-09 alex one channel are shown as members of the pseudo channel "*".
441 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
442 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
443 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
445 7fce7191 2013-02-09 alex References:
446 7fce7191 2013-02-09 alex - RFC 2812, 3.2.5 "Names message"
449 7fce7191 2013-02-09 alex STATS [<query> [<target>]]
451 7fce7191 2013-02-09 alex Show statistics and other information of type <query> of a particular
452 7fce7191 2013-02-09 alex IRC server in the network.
454 ec5ab4fc 2013-09-24 alex The following <query> types are supported (case-insensitive where
455 ec5ab4fc 2013-09-24 alex applicable):
457 7fce7191 2013-02-09 alex - g Network-wide bans ("G-Lines").
458 7fce7191 2013-02-09 alex - k Server-local bans ("K-Lines").
459 ec5ab4fc 2013-09-24 alex - L Link status (servers and user links).
460 ec5ab4fc 2013-09-24 alex - l Link status (servers and own link).
461 7fce7191 2013-02-09 alex - m Command usage count.
462 7fce7191 2013-02-09 alex - u Server uptime.
464 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
465 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
466 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
468 ec5ab4fc 2013-09-24 alex To use "STATS L" the user must be an IRC Operator.
470 7fce7191 2013-02-09 alex References:
471 7fce7191 2013-02-09 alex - RFC 2812, 3.4.4 "Stats message"
474 7fce7191 2013-02-09 alex TIME [<target>]
476 7fce7191 2013-02-09 alex Show the local time of an IRC server in the network.
478 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
479 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
480 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
483 7fce7191 2013-02-09 alex - RFC 2812, 3.4.6 "Time message"
486 24183b1a 2013-08-02 alex TRACE [<target>]
488 a8ecde25 2013-08-01 alex Find the route to a specific server and send information about its
489 a8ecde25 2013-08-01 alex peers. Each server that processes this command reports back to the
490 a8ecde25 2013-08-01 alex sender about it: the replies from pass-through servers form a chain
491 a8ecde25 2013-08-01 alex which shows the route to the destination.
493 24183b1a 2013-08-02 alex <target> can be a server name, the nickname of a client connected to
494 24183b1a 2013-08-02 alex a specific server, or a mask matching a server name in the network.
495 24183b1a 2013-08-02 alex The server of the current connection is used when <target> is omitted.
497 a8ecde25 2013-08-01 alex References:
498 a8ecde25 2013-08-01 alex - RFC 2812, 3.4.8 "Trace message"
501 7fce7191 2013-02-09 alex USERHOST <nickname> [<nickname> [...]]
503 7fce7191 2013-02-09 alex Show flags and the hostmasks (<user>@<host>) of the <nickname>s,
504 ac32d07a 2013-02-09 alex separated by spaces. The following flags are used:
506 7fce7191 2013-02-09 alex - "-" The client is "away" (the mode "+a" is set on this client).
507 7fce7191 2013-02-09 alex - "+" Client seems to be available, at least it isn't marked "away".
508 7fce7191 2013-02-09 alex - "*" The client is an IRC operator (the mode "+o" is set).
510 7fce7191 2013-02-09 alex References:
511 7fce7191 2013-02-09 alex - RFC 2812, 4.8 "Userhost message"
514 7fce7191 2013-02-09 alex VERSION [<target>]
516 7fce7191 2013-02-09 alex Show version information about a particular IRC server in the network.
518 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to
519 7fce7191 2013-02-09 alex a specific server, or a mask matching a server name in the network.
520 ac32d07a 2013-02-09 alex The server of the current connection is used when <target> is omitted.
522 7fce7191 2013-02-09 alex Please note: in normal operation, the version number ends in a dot
523 7fce7191 2013-02-09 alex (".", for example "ngIRCd-20.1."). If it ends in ".1" (for example
524 7fce7191 2013-02-09 alex "ngIRCd-20.1.1", same version than before!), the server is running in
525 7fce7191 2013-02-09 alex debug-mode; and if it ends in ".2", the "network sniffer" is active!
526 7fce7191 2013-02-09 alex Keep your privacy in mind ...
528 7fce7191 2013-02-09 alex References:
529 7fce7191 2013-02-09 alex - RFC 2812, 3.4.3 "Version message"
532 7fce7191 2013-02-09 alex WHO [<mask> ["o"]]
534 7fce7191 2013-02-09 alex Show a list of users who match the <mask>, or all visible users when
535 7fce7191 2013-02-09 alex the <mask> has been omitted. (Special case: the <mask> "0" is
536 7fce7191 2013-02-09 alex equivalent to "*")
538 7fce7191 2013-02-09 alex If the flag "o" is given, the server will only return information about
539 7fce7191 2013-02-09 alex IRC Operators.
541 7fce7191 2013-02-09 alex References:
542 7fce7191 2013-02-09 alex - RFC 2812, 3.6.1 "Who query"
545 7fce7191 2013-02-09 alex WHOIS [<target>] <mask>[,<mask>[,...]]
547 7fce7191 2013-02-09 alex Query information about users matching the <mask> parameter(s) as seen
548 7fce7191 2013-02-09 alex by the server <target>; up to 3 <masks> are supported.
550 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to a
551 7fce7191 2013-02-09 alex specific server, or a mask matching a server name in the network. The
552 ac32d07a 2013-02-09 alex server of the current connection is used when <target> is omitted.
554 7fce7191 2013-02-09 alex References:
555 7fce7191 2013-02-09 alex - RFC 2812, 3.6.2 "Whois query"
558 7fce7191 2013-02-09 alex WHOWAS <nickname>[,<nickname>[,...]] [<count> [<target>]]
560 7fce7191 2013-02-09 alex Query information about nicknames no longer in use in the network,
561 7fce7191 2013-02-09 alex either because of nickname changes or disconnects. The history is
562 7fce7191 2013-02-09 alex searched backwards, returning the most recent entry first. If there
563 7fce7191 2013-02-09 alex are multiple entries, up to <count> entries will be shown (or all of
564 7fce7191 2013-02-09 alex them, if no <count> has been given).
566 7fce7191 2013-02-09 alex <target> can be a server name, the nickname of a client connected to a
567 7fce7191 2013-02-09 alex specific server, or a mask matching a server name in the network. The
568 ac32d07a 2013-02-09 alex server of the current connection is used when <target> is omitted.
570 7fce7191 2013-02-09 alex References:
571 7fce7191 2013-02-09 alex - RFC 2812, 3.6.3 "Whowas"
574 68cb1a8c 2013-01-02 alex Channel Commands
575 68cb1a8c 2013-01-02 alex ~~~~~~~~~~~~~~~~
578 be08349d 2013-02-24 alex INVITE <nickname> <channel>
580 be08349d 2013-02-24 alex Invite <nickname> to join channel <channel>.
582 be08349d 2013-02-24 alex <channel> does not have to exist, but if it does, only members of the
583 be08349d 2013-02-24 alex channel are allowed to invite other users. If the channel mode "+i"
584 be08349d 2013-02-24 alex is set, only channel "half-ops" (and above) may invite other clients,
585 be08349d 2013-02-24 alex and if channel mode "+V" is set, nobody can invite other users.
587 be08349d 2013-02-24 alex References:
588 be08349d 2013-02-24 alex - RFC 2812, 3.2.7 "Invite message"
591 a8ecde25 2013-08-01 alex JOIN {<channel>[,<channel>[,...]] [<key>[,<key>[,...]]] | 0}
593 a8ecde25 2013-08-01 alex Makes the client join the <channel> (comma-separated list), specifying
594 a8ecde25 2013-08-01 alex the channel keys ("passwords"). A <channel-key> is only needed if the
595 a8ecde25 2013-08-01 alex <channel> has the mode "+k" set.
597 7fce7191 2013-02-09 alex If the channel(s) do not exist, then they will be created.
599 a8ecde25 2013-08-01 alex Using "JOIN 0" parts all channels at once.
601 a8ecde25 2013-08-01 alex References:
602 a8ecde25 2013-08-01 alex - RFC 2812, 3.2.1 "Join message" (client protocol)
603 a8ecde25 2013-08-01 alex - RFC 2813, 4.2.1 "Join message" (server protocol)
606 b25fd8a9 2013-02-24 alex KICK <channel>[,<channel>[,...]] <nickname>[,<nickname>[,...]] [<reason>]
608 b25fd8a9 2013-02-24 alex Remove users(s) with <nickname>(s) from <channel>(s).
610 b25fd8a9 2013-02-24 alex There must be either exactly one <channel> parameter and multiple
611 b25fd8a9 2013-02-24 alex <nickname> parameters, or as many <channel> parameters as there are
612 b25fd8a9 2013-02-24 alex <nickname> parameters. The <reason> is shown to the users being
613 b25fd8a9 2013-02-24 alex kicked, and the nickname of the current user is used when <reason>
614 b25fd8a9 2013-02-24 alex is omitted.
616 b25fd8a9 2013-02-24 alex References:
617 b25fd8a9 2013-02-24 alex - RFC 2812, 3.2.8 "Kick command"
620 13122bc9 2019-06-29 alex LIST [<mask>[,<mask>[,...]] [<server>]]
622 13122bc9 2019-06-29 alex List all visible channels matching the <mask> (comma-separated list),
623 13122bc9 2019-06-29 alex or all channels when no <mask> was specified.
625 7fce7191 2013-02-09 alex If <server> is given, the command will be forwarded to <server> for
626 7fce7191 2013-02-09 alex evaluation.
628 a8ecde25 2013-08-01 alex References:
629 a8ecde25 2013-08-01 alex - RFC 2812, 3.2.6 "List message"
632 a8ecde25 2013-08-01 alex PART <channel>[,<channel>[,...]] [<part-message>]
634 a8ecde25 2013-08-01 alex Leave <channel> (comma-separated list), optionally with sending a
635 a8ecde25 2013-08-01 alex <part-message> to all the other channel members.
637 a8ecde25 2013-08-01 alex References:
638 a8ecde25 2013-08-01 alex - RFC 2812, 3.2.2 "Part message"
641 a8ecde25 2013-08-01 alex TOPIC <channel> [<topic>]
643 fcdb5cf8 2013-08-05 fgsch Change or view the topic of a channel.
645 a8ecde25 2013-08-01 alex The topic for channel <channel> is returned if there is no <topic>
646 a8ecde25 2013-08-01 alex given. If the <topic> parameter is present, the topic for that
647 a8ecde25 2013-08-01 alex channel will be changed, if this action is allowed for the user
648 a8ecde25 2013-08-01 alex requesting it. If the <topic> parameter is an empty string, the
649 a8ecde25 2013-08-01 alex topic for that channel will be removed.
651 a8ecde25 2013-08-01 alex References:
652 a8ecde25 2013-08-01 alex - RFC 2812, 3.2.4 "Topic message"
655 68cb1a8c 2013-01-02 alex Administrative Commands
656 68cb1a8c 2013-01-02 alex ~~~~~~~~~~~~~~~~~~~~~~~
659 adc8d4f6 2013-08-02 alex CONNECT <server> [<port> [<remote-server> [<my-pwd> <peer-pwd>]]]
661 adc8d4f6 2013-08-02 alex Instructs the current server, or <remote-server> if specified,
662 adc8d4f6 2013-08-02 alex to connect to the server named <server>, which must be configured
663 adc8d4f6 2013-08-02 alex in the server configuration file.
665 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator. To establish
666 adc8d4f6 2013-08-02 alex a connection on a <remote-server>, you must have remote IRC operator
667 adc8d4f6 2013-08-02 alex privileges.
669 adc8d4f6 2013-08-02 alex If <port>, <my-pwd> and <peer-pwd> are given, these values override
670 adc8d4f6 2013-08-02 alex the ones specified in the server configuration file.
672 adc8d4f6 2013-08-02 alex References:
673 adc8d4f6 2013-08-02 alex - RFC 2812, 3.4.7 "Connect message"
676 e5cdd61f 2013-09-04 alex DIE [<message>]
678 7fce7191 2013-02-09 alex Instructs the server to shut down.
680 e5cdd61f 2013-09-04 alex The optional (and non-standard) <message> text is sent to each client
681 e5cdd61f 2013-09-04 alex connected to this server before all connections are closed.
683 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
685 adc8d4f6 2013-08-02 alex References:
686 adc8d4f6 2013-08-02 alex - RFC 2812, 4.3 "Die message"
688 68cb1a8c 2013-01-02 alex - DISCONNECT
689 adc8d4f6 2013-08-02 alex DISCONNECT <server>
691 adc8d4f6 2013-08-02 alex Disconnect and disable a locally linked server.
693 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
695 adc8d4f6 2013-08-02 alex References:
696 adc8d4f6 2013-08-02 alex - This command is not specified in the IRC RFCs, it is an extension
700 adc8d4f6 2013-08-02 alex GLINE <nick!user@hostmask> [<timeout> :<reason>]
702 adc8d4f6 2013-08-02 alex This command provides timed G-Lines (network-wide bans).
704 7fce7191 2013-02-09 alex If a client matches a G-Line, it cannot connect to any server on
705 fcdb5cf8 2013-08-05 fgsch the IRC network for <timeout> seconds. When <timeout> is 0, it make
706 adc8d4f6 2013-08-02 alex the G-Line permanent.
708 adc8d4f6 2013-08-02 alex If no <timeout> and no <reason> is given, the G-Line is removed.
710 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
712 adc8d4f6 2013-08-02 alex "STATS g" can be used to list all currently active G-Lines.
714 adc8d4f6 2013-08-02 alex References:
715 adc8d4f6 2013-08-02 alex - This command is not specified in the IRC RFCs, it is an extension
719 2fea782e 2013-03-09 alex KILL <nickname> <reason>
721 2fea782e 2013-03-09 alex Forcibly remove all users with a given <nickname> from the IRC
722 2fea782e 2013-03-09 alex network and display the given <reason> to them.
724 2fea782e 2013-03-09 alex This command is used internally between servers, too, for example
725 2fea782e 2013-03-09 alex to disconnect duplicate <nickname>'s after a "net split".
727 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
729 2fea782e 2013-03-09 alex References:
730 2fea782e 2013-03-09 alex - RFC 2812, 3.7.1 "Kill message"
733 adc8d4f6 2013-08-02 alex KLINE <nick!user@hostmask> [<timeout> :<reason>]
735 adc8d4f6 2013-08-02 alex This command provides timed K-Lines (server-local bans).
737 adc8d4f6 2013-08-02 alex If a client matches a K-Line, it cannot connect to this server for
738 fcdb5cf8 2013-08-05 fgsch <timeout> seconds. When <timeout> is 0, it makes the K-Line permanent.
740 adc8d4f6 2013-08-02 alex If no <timeout> and no <reason> is given, the K-Line is removed.
742 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
744 adc8d4f6 2013-08-02 alex "STATS k" can be used to list all currently active K-Lines.
746 adc8d4f6 2013-08-02 alex References:
747 adc8d4f6 2013-08-02 alex - This command is not specified in the IRC RFCs, it is an extension
751 adc8d4f6 2013-08-02 alex OPER <name> <password>
753 adc8d4f6 2013-08-02 alex Authenticates a user named <name> as an IRC operator on the current
754 adc8d4f6 2013-08-02 alex server/network.
756 adc8d4f6 2013-08-02 alex This operator <name> must be configured in the server configuration.
758 adc8d4f6 2013-08-02 alex Please note that <name> is NOT related to a nickname at all!
760 adc8d4f6 2013-08-02 alex References:
761 adc8d4f6 2013-08-02 alex - RFC 2812, 3.1.4 "Oper message"
766 7fce7191 2013-02-09 alex Causes the server to re-read and re-process its configuration file(s).
768 adc8d4f6 2013-08-02 alex While rehashing, no new connections are accepted, but all already
769 adc8d4f6 2013-08-02 alex established connections stay connected.
771 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
773 adc8d4f6 2013-08-02 alex References:
774 adc8d4f6 2013-08-02 alex - RFC 2812, 4.2 "Rehash message"
779 7fce7191 2013-02-09 alex Restart the server.
781 adc8d4f6 2013-08-02 alex While restarting, all connections are reset and no new connections
782 adc8d4f6 2013-08-02 alex are accepted.
784 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
786 adc8d4f6 2013-08-02 alex References:
787 adc8d4f6 2013-08-02 alex - RFC 2812, 4.4 "Restart message"
790 7fce7191 2013-02-09 alex WALLOPS <message>
792 7fce7191 2013-02-09 alex Sends <message> to all users with user mode "+w".
794 adc8d4f6 2013-08-02 alex To use this command, the user must be an IRC Operator.
796 adc8d4f6 2013-08-02 alex References:
797 adc8d4f6 2013-08-02 alex - RFC 2812, 4.7 "Operwall message"
799 68cb1a8c 2013-01-02 alex IRC Service Commands
800 7fce7191 2013-02-09 alex ~~~~~~~~~~~~~~~~~~~~
803 659d1264 2013-07-30 alex SERVICE <name> <reserved1> <distribution> <type> <reserved2> <info>
804 659d1264 2013-07-30 alex SERVICE <name> <servertoken> <distribution> {<type>|+<modes>} <hops> <info>
806 659d1264 2013-07-30 alex Register a new service in the network.
808 659d1264 2013-07-30 alex The first form is used by directly linked services and isn't supported
809 659d1264 2013-07-30 alex by ngIRCd at the moment. The second form announces services connected
810 659d1264 2013-07-30 alex to remote "pseudo-servers" ("services hubs").
812 659d1264 2013-07-30 alex The <distribution> and <type> parameters are ignored by ngIRCd.
814 659d1264 2013-07-30 alex References:
815 659d1264 2013-07-30 alex - RFC 2812, 3.1.6 "Service message"
816 659d1264 2013-07-30 alex - RFC 2813, 4.1.4 "Service message"
819 7fce7191 2013-02-09 alex SERVLIST [<mask> [<type>]]
821 7fce7191 2013-02-09 alex List all IRC services currently registered in the network.
823 7fce7191 2013-02-09 alex The optional <mask> and <type> parameters can be used to limit the
824 7fce7191 2013-02-09 alex listing to services matching the <mask> and that are of type <type>.
826 7fce7191 2013-02-09 alex Please note that ngIRCd doesn't use any service types at the moment
827 7fce7191 2013-02-09 alex and therefore all services are of type "0".
829 7fce7191 2013-02-09 alex References:
830 7fce7191 2013-02-09 alex - RFC 2812, 3.5.1 "Servlist message"
833 76dcb082 2013-07-19 alex SQUERY <target>[,<target>[,...]] <message>
835 76dcb082 2013-07-19 alex Send a <message> to a given <target> IRC service, and report all
838 76dcb082 2013-07-19 alex The "SQUERY" command exactly behaves like the "PRIVMSG" command, but
839 76dcb082 2013-07-19 alex enforces that the <target> of the <message> is an IRC service.
840 76dcb082 2013-07-19 alex Please see the help text of the "PRIVMSG" command for a detailed
841 76dcb082 2013-07-19 alex description of the parameters!
843 76dcb082 2013-07-19 alex If a user wants to interact with IRC services, he should use "SQUERY"
844 76dcb082 2013-07-19 alex instead of "PRIVMSG" or "NOTICE": only "SQUERY makes sure that no
845 76dcb082 2013-07-19 alex regular user, which uses the nickname of an IRC service, receives
846 76dcb082 2013-07-19 alex the command in error, for example during a "net split"!
848 76dcb082 2013-07-19 alex References:
849 76dcb082 2013-07-19 alex - RFC 2812, 2.3.1 "Message format in Augmented BNF"
850 76dcb082 2013-07-19 alex - RFC 2812, 3.3 "Sending messages"
851 76dcb082 2013-07-19 alex - RFC 2812, 3.3.2 "Notice"
854 659d1264 2013-07-30 alex SVSNICK <oldnick> <newnick>
856 659d1264 2013-07-30 alex Forcefully change foreign user nicknames. This command is allowed
857 659d1264 2013-07-30 alex for servers only.
859 659d1264 2013-07-30 alex The "SVSNICK" command is forwarded to the server to which the user
860 659d1264 2013-07-30 alex with nickname <oldnick> is connected to, which in turn generates a
861 659d1264 2013-07-30 alex regular "NICK" command that then is sent to the client, so no special
862 659d1264 2013-07-30 alex support in the client software is required.
864 659d1264 2013-07-30 alex References:
865 659d1264 2013-07-30 alex - ngIRCd GIT commit e3f300d3231f
868 68cb1a8c 2013-01-02 alex Server Protocol Commands
869 68cb1a8c 2013-01-02 alex ~~~~~~~~~~~~~~~~~~~~~~~~
872 7fce7191 2013-02-09 alex CHANINFO <channel> +<modes> [[<key> <limit>] <topic>]
874 7fce7191 2013-02-09 alex CHANINFO is used by servers to inform each other about a channel:
875 7fce7191 2013-02-09 alex its modes, channel key, user limits and its topic.
877 07cb8ed9 2020-06-11 alex Note: even when <modes> don't include "k" (key) or "l" (limit), both
878 07cb8ed9 2020-06-11 alex parameters must be given when used; use "*" for "no key" and 0 for
879 07cb8ed9 2020-06-11 alex "no limit" for the unused parameter in this case.
881 61a6691b 2013-08-02 alex The CHANINFO command is allowed on server-links only.
883 fef10f59 2013-08-01 alex References:
884 fef10f59 2013-08-01 alex - IRC+, <http://ngircd.barton.de/doc/Protocol.txt>
885 fef10f59 2013-08-01 alex - IRC+, doc/Protocol.txt
888 68cb1a8c 2013-01-02 alex ERROR [<message> [<> [...]]]
890 13122bc9 2019-06-29 alex Inform a client or a server about an error condition. The first
891 720eb874 2013-07-18 alex parameter, if given, is logged by the server receiving the message,
892 720eb874 2013-07-18 alex all other parameters are silently ignored.
894 720eb874 2013-07-18 alex This command is silently ignored on non-server and non-service links
895 720eb874 2013-07-18 alex and shouldn't be used by regular IRC clients.
897 720eb874 2013-07-18 alex The ERROR message is also sent before terminating a regular client
898 720eb874 2013-07-18 alex connection.
900 720eb874 2013-07-18 alex References:
901 720eb874 2013-07-18 alex - RFC 2812, 3.7.4 "Error message"
904 7fce7191 2013-02-09 alex METADATA <target> <key> <value>
906 7fce7191 2013-02-09 alex The METADATA command is used on server-links to update "metadata"
907 7fce7191 2013-02-09 alex information of clients, like the hostname, the info text ("real name"),
908 7fce7191 2013-02-09 alex or the user name.
910 61a6691b 2013-08-02 alex The METADATA command is allowed on server-links only.
912 fef10f59 2013-08-01 alex References:
913 fef10f59 2013-08-01 alex - IRC+, <http://ngircd.barton.de/doc/Protocol.txt>
914 fef10f59 2013-08-01 alex - IRC+, doc/Protocol.txt
917 61a6691b 2013-08-02 alex NJOIN <channel> [<mode>]<nick>[,[<mode>]<nick>[,...]]
919 fcdb5cf8 2013-08-05 fgsch The NJOIN command is used on server-links to add users with <nick>
920 61a6691b 2013-08-02 alex and <mode> to a <channel> while peering.
922 61a6691b 2013-08-02 alex The NJOIN command is allowed on server-links only.
924 61a6691b 2013-08-02 alex References:
925 61a6691b 2013-08-02 alex - RFC 2813, 4.2.2 "Njoin message"
928 61a6691b 2013-08-02 alex SERVER <servername> <info>
929 61a6691b 2013-08-02 alex SERVER <servername> <hopcount> <info>
930 61a6691b 2013-08-02 alex SERVER <servername> <hopcount> <token> <info>
932 61a6691b 2013-08-02 alex The first form registers the local connection as a new server in the
933 61a6691b 2013-08-02 alex network, the second (RFC 1459) and third (RFC 2812) form announce a
934 61a6691b 2013-08-02 alex new remote server in the network.
936 61a6691b 2013-08-02 alex The SERVER command is allowed on unregistered or server-links only.
938 61a6691b 2013-08-02 alex References:
939 61a6691b 2013-08-02 alex - RFC 1459, 4.1.4 "Server message"
940 61a6691b 2013-08-02 alex - RFC 2813, 4.1.2 "Server message"
943 61a6691b 2013-08-02 alex SQUIT <server> <comment>
945 7fce7191 2013-02-09 alex Disconnects an IRC Server from the network.
947 61a6691b 2013-08-02 alex This command is used on server-links, but can be used by IRC Operators
948 61a6691b 2013-08-02 alex to forcefully disconnect servers from the network, too.
950 61a6691b 2013-08-02 alex References:
951 61a6691b 2013-08-02 alex - RFC 2812, 3.1.8 "Squit"
952 61a6691b 2013-08-02 alex - RFC 2813, 4.1.6 "Server quit message"
954 68cb1a8c 2013-01-02 alex Dummy Commands
955 68cb1a8c 2013-01-02 alex ~~~~~~~~~~~~~~
958 7fce7191 2013-02-09 alex SUMMON <user> [<target> [<channel>]]
960 7fce7191 2013-02-09 alex This command was intended to call people into IRC who are directly
961 7fce7191 2013-02-09 alex connected to the terminal console of the IRC server -- but is
962 7fce7191 2013-02-09 alex deprecated today. Therefore ngIRCd doesn't really implement this
963 7fce7191 2013-02-09 alex command and always returns an error message, regardless of the
964 7fce7191 2013-02-09 alex parameters given.
966 7fce7191 2013-02-09 alex References:
967 7fce7191 2013-02-09 alex - RFC 2812, 4.5 "Summon message"
970 7fce7191 2013-02-09 alex USERS [<target>]
972 7fce7191 2013-02-09 alex This command was intended to list users directly logged in into the
973 7fce7191 2013-02-09 alex console of the IRC server -- but is deprecated today. Therefore ngIRCd
974 7fce7191 2013-02-09 alex doesn't really implement this command and always returns an error
975 7fce7191 2013-02-09 alex message, regardless of the parameters given.
977 7fce7191 2013-02-09 alex References:
978 7fce7191 2013-02-09 alex - RFC 2812, 4.6 "Users"
983 61a6691b 2013-08-02 alex Fake HTTP GET command. When received, the connection is shut down
984 61a6691b 2013-08-02 alex immediately again to protect against crazy web browsers ...
986 61a6691b 2013-08-02 alex References:
987 61a6691b 2013-08-02 alex - ngIRCd GIT commit 33e8c2480649
992 61a6691b 2013-08-02 alex Fake HTTP POST command. When received, the connection is shut down
993 61a6691b 2013-08-02 alex immediately again to protect against crazy web browsers ...
995 61a6691b 2013-08-02 alex References:
996 61a6691b 2013-08-02 alex - ngIRCd GIT commit 33e8c2480649