SmIRC 0.62b
IRC commands
Commands may be entered either in the channel, or the server window. Commands
which are channel specific may omit the channel name, if entered in a channel
window, in which case they apply to that channel by default. The following
commands may be entered in uppercase, or lowercase; it doesn't matter.
/AME description
This command is equivalent to entering a /ME
in every channel window for the same server.
/AMSG message
This command sends this message to every channel window for the same server.
It is equivalent to typing the same message in every channel window.
/AWAY message
If message is given, sets the 'away' message. Without a message,
clears the existing away message. The away message is automatically sent
to anyone that sends you a private message.
/BAN #channel nick level reason
This is a convenience function. Available only to channel operators. It
combines a /WHOIS command, with a /MODE
+b and a /KICK. The channel
parameter may be omitted if the command is entered in the channel window.
First, this command performs a /WHOIS on the given nickname,
then does a /MODE +b and a /KICK on this nickname. The
level parameter is optional, it specifies the severity of the ban.
If left out, it defaults to 0, the least severe of the ban. If the nickname
to be banned is nick!user@host.domain, here are the ban masks
that will be applied:
Level |
Ban |
0 |
nick!user@host.domain |
1 |
*!user@host.domain |
2 |
*!*@host.domain |
3 |
*!user@*.domain |
4 |
*!*@*.domain |
/CLIENTINFO nick
Sends a CTCP CLIENTINFO command to the nickname. This command
is used to determine what IRC client this nickname is running, but not
all IRC clients will tell you, willingly.
/CTCP nick command
Sends a low-level CTCP command to the nickname. Reserved for future use
in scripts.
/CTCPACK nick command
Sends a low-level CTCP acknowledgement command to the nickname. Reserved
for future use in scripts.
/FINGER nickname
Sends a CTCP FINGER command to the nickname. If nickname's IRC
software supports the CTCP FINGER command, its output will be shown on
the screen.
/FLOOD msgs secs delay ignore
This command implements a rather simple output throttling mechanism designed
to keep SmIRC from being flooded off. The /FLOOD command takes four arguments
(you may omit or specify an individual argument as 0 in order to keep its
previous value).
Briefly, if the last "msgs" messages from SmIRC were
sent to the IRC server within the last "secs" seconds or
less, SmIRC will stop sending any more messages for "delay"
seconds.
SmIRC will save any additional messages for the IRC server, and send
them after "delay" seconds have expired (still subject
to flood controls). All the messages are saved in memory. In order to avoid
having SmIRC gobble up memory during a flood attack, if SmIRC has
at least "ignore" messages saved in memory, it will stop
processing any built-in CTCP commands, such as PING or VERSION.
NOTE: if you are running any bots, they should also attempt to
avoid producing excessive output. SmIRC will delay ALL output to the
IRC server, however it has no control over external bots, so if the bots
generate output for the IRC server, the output will be dutifully queued
in memory, irrespective of the "ignore" setting. Bots should
be written to detect when they receive excessive amounts of messages from
the same source, and ignore them.
Enter /FLOOD without any arguments in order to see the current flood
settings.
Default settings: 3 messages, 5 seconds, 2 second delay, ignore after
20 messages
Minimums: 1 message, 5 seconds, 2 second delay, ignore after 10 messages
Maximums: 99 messages, 99 seconds, 19 second delay, ignore after
99 messages
/IGNORE nickname
This command must be entered in a channel window (for now). All further
messages from this nickname will not be shown on the screen. This is a
very useful command to cut out unwanted noise from someone. Enter /IGNORE
without a nickname to get a list of all nicknames currently being ignored.
This list is not preserved anywhere, it is deleted every time you leave
the channel. A separate list is kept for each channel you have joined.
If someone on the ignore list changes nicknames, the ignore list will be
automatically updated.
/INVITE nick #channel
Sends a message inviting someone, to join this channel. channel
may be left out, if the command is entered in a channel window.
/JOIN #channel key
Joins a new channel. A new channel window will be created for this channel.
If the channel cannot be joined, for some reason, an error message should
come up in the server window.
If a channel needs a key to be joined, it may be specified as the 2nd
argument.
/KICK #channel nick reason
Forcibly removes somebody from the channel. Available only to channel operators.
channel may be left out, if the command is entered in a channel
window. reason is a message given for the kick.
/LINKS arguments
Sends a LINKS command to the server. arguments are optional arguments
that are passed directly to the server. This command is specific to a given
IRC network. Any output from the server, that this command generates, will
go into a separate window. Nothing much can be done in that window, except
to look at what came back from the server.
/LIST args
This command obtains a list of available channels on the IRC network. Private
or secret channels are not shown. args are optional arguments, that
are sent with the LIST command. What they are, and what they do depends
on the particular IRC network you are connected to. The /LIST
command opens up a separate window, to show the channel listing. It may
take a while for the listing to be downloaded. There could be more than
ten thousands channels active on busy networks.
The channel listing window shows:
-
Name of the channel
-
Number of nicknames who have joined the channel
-
The channel topic
The right mouse button will pop up a menu to run either the /NAMES
or a /JOIN command for the channel.
Depending on the IRC network, the /LIST command may not actually
show you every channel. Some IRC networks will only show channels that
have seen some activity in the past couple of minutes, or limit the number
of channels shown.
/LOGCLOSE
Closes the log file.
/LOGOPEN filename
Opens a log file. SmIRC will record a transcript of all the messages that
come up in this window, in this file. filename is relative to
your home directory. If this file exists, the transcript is appended to
this file. Logging will continue until a /LOGCLOSE command is executed.
filename may be ommitted, a suitable default will be provided.
Only the messages in the same window are logged!!! /LOGOPEN
in a server window will log only server messages that appear there (borrriinnnggg).
/LOGOPEN in a channel window will log only messages in that channel,
not on any other channel you have joined.
/ME description
Available in channel windows only. Sends a CTCP ACTION to the channel.
For example:
/me yawns...
Causes "* _Sam_ yawns..." to show up on the channel (if your
nickname is _Sam_).
/MESSAGE msgcode [0|1]
Suppresses messages from being displayed in this window. Increased functionality
of SmIRC, apparently, also translates in increased clutter in the windows.
You can now specify whether certain messages will appear at all. Each window
keeps its own list of messages that should not be displayed. /MESSAGE
msgcode 1 adds this given message to the list of messages that
should not be displayed in this window. /MESSAGE msgcode 0
removes this given message from the list of messages that should not be
displayed in this window (so the message will now be shown).
msgcode is the message code from the stringTable
resource, which can be found in the resources file for SmIRC (usually /usr/lib/X11/app-defaults/Smirc).
The initial list of suppressed messages comes from the SUPPRESSCHANNEL
or the SUPPRESSSERVER stringTable resource, from the same file
:-).
/MODE #channel/nickname +/-x args
Sets or revokes "modes" for a channel, or a nickname. Each "mode" x
is a one-character letter. Both channels, and nicknames have several modes.
The channel/nickname parameter can be omitted. If the command
is entered in a channel window, and the parameter is missing, it will be
set to the name of the channel. If the command is entered in a server window,
the parameter will default to your nickname.
Channel modes
Only channel operators may change the following modes:
-
b mask
Adds or removes a ban mask. All nicknames matching the ban mask are
prevented from joining the channel. The mask is of the form nick!user@host.domain.domain.
'*' can be used for a wildcard match. +b mask adds a mask, -b
mask removes the mask. +b by itself lists all ban masks currently
in place.
NOTE: adding a ban mask does not automatically kick off anyone on the
channel who matches the mask. You'll need to /KICK them off individually.
The /BAN command simplifies this procedure.
-
i
Sets or removes the invite-only mode for the channel. If the channel
is invite-only, nobody can join the channel unless a channel operator issues
an invitation, using the /INVITE command.
-
k
Sets or remove a channel key (password for joining the channel).
-
l nnn
Sets a maximum limit of nnn nicknames on the channel. When the
channel is full, no more are allowed to join it.
-
m
Sets or removes the moderated mode for the channel. If the channel has
the moderated mode set, only nicknames with a +v channel mode are allowed
to send messages to the channel.
-
n
Sets or removes the no-notices mode for the channel. It is possible
to send messages to the channel even though you have not joined it. If
a channel has the no-notices mode set (most should), only nicknames who
have joined the channel may send messages to the channel.
-
o nick
Sets or removes operator privileges for a nickname.
-
p
Sets or removes the private mode for a channel. When a channel is private,
it will not appear in a listing generated by the /LIST command
(some servers may list private channels with the channel name set to *).
Also, it will not be possible to use the /NAMES
command to list members of a private channel, unless you have already joined
the channel (in which case, the command is useless, since channel members
will be listed in the channel window).
-
s
Sets or removes the secret mode for a channel. This is very similar
to the private mode. Secret channels will not appear in a listing generated
by the /LIST command, and the /NAMES
command will not work unless you have already joined the channel.
-
t
Sets or removes the restricted-topic mode. On a restricted-topic channel,
only channel operators may use the /TOPIC command.
-
v nick
On a moderated channel, only nicknames with the v mode may send messages.
User modes
The following modes should be entered in the server window, and are applied
to your nickname.
-
i
Invisible mode. Nicks with the invisible mode set will not show up in
replies, unless you are on the same channel as the nickname with the invisible
mode.
-
s
Server notices. Nicks with this mode will receive various boring status
messages. Mostly of use to server operators.
-
w
Wallops. Nicks with this mode receive WALLOP broadcasts from other server
operators.
NOTE: There is no builtin WALLOP in SmIRC, but one may be sent with
the /RAW command.
Up to three channel mode changes may be combined in a single command: For
example:
/MODE +nt
Sets the n and the t modes for the channel simultaneously.
/MODE +oo-o nick1,nick2,nick3
Gives ops to nick1 and nick2, and removes ops from nick3.
/MSG nick message
This is just a shorthand alias for /PRIVMSG.
/NAMES #channel
Lists all nicknames who have joined a channel. Can be entered in any window,
but the list will appears in the server window. Invisible nicknames will
not be listed, unless they are on the same channel as you. Using /NAMES
on a secret, or a private, channel will not work.
/NICK nick
Changes your nickname. The change may not take if the new nickname is already
used. The error message will appear in the server window (although the
command may be entered in a channel window as well).
Most servers impose a limit of how often you can change nicknames. A
succesfull change is reported by updating window titles, and channel member
listings.
/NOTICE #channel message
Sends a message to a channel that you have not joined. Archaic command,
usually channel operators disable it.
/PART #channel
Issue this command to leave a channel, and close the window. If issued
within the said window, the channel argument is optional.
The channel can also be left simply by closing its window.
/PING nickname
Sends a CTCP PING echo message to a nickname. When the recipient gets it,
its software automatically replies. The round trip time is measured, and
displayed.
This command is used to test the stability of the IRC network. When
things go bad, it is not unusual to have round trip times of twenty minutes,
or even more. This means that you'll see any responses to your messages,
from this nickname, no earlier than the ping time (unless things get better).
This measures the connectivity to a single nickname only. Other nicknames
-- even on the same channel -- who use different servers may report widely
different ping times.
/PRIVMSG nickname message
Sends a private message to a recipient. Only this person will see the message.
When you receive a private message from somebody, SmIRC will open a separate
window, just for the private conversation. Anything you type in that private
window will be sent as private messages, directly. There's no need to type
a /MSG or /PRIVMSG in a private window. Everything typed
there gets sent as a private message, automatically.
/QUIT reason
Disconnects you from the server. The optional reason is displayed
on any channels that were still joined.
/RAW command
A low level function. Sends command directly to the IRC server,
without any additional processing.
/RUN bot [arguments]
Explicitly start a bot running in this window.
Normally when you enter "/command arguments", and the command
is not one of the existing SmIRC commands, a bot by this name is started.
The /RUN command explicitly runs a bot by this name, allowing
you to start a bot whose name is the same as an existing SmIRC command.
NOTE: do not specify the .bot extension to the name of the
bot, SmIRC adds it automatically. The bot is searched for in all the usual
places: /usr/local/lib/smirc, /usr/lib/smirc, and $HOME/.smirc.
/SERVER server nnnn-nnnn [options...]
Initiates a connection to a server, without going through the interactive
dialog. The first parameter, the server name, is required. The rest are
optional, and default to previous values used.
The second parameter is the port range, low-high. SmIRC picks a port
number, at random, within that range, inclusively.
The remaining parameters may come in any order. They are specified in
the format PARAMETER=VALUE:
-
NICK=nick
Nickname to use.
-
ALTNICK=altnick
Alternate nickname, if your first choice is already taken.
-
PASSWORD=password
If your IRC server needs a password, put it here.
-
USER="user information"
Specify user identification here.
Examples:
/SERVER irc.kabal.com 6660-6666
/SERVER irc.kabal.com NICK=goober ALTNICK=shrimp USER="Freedom Nut"
/SOURCE nickname
Sends a CTCP SOURCE request to the nickname. The response should be, hopefully,
the address where the nickname's IRC client can be located for your inspection
(in case you are checking out the competition).
/SV
In channel windows only: displays your SmIRC version number.
/TIME nickname
Sends a CTCP TIME request to the nickname. The response should be the local
time from nickname's time zone.
/TOPIC #channel topic
Sets the topic for the channel. The channel argument is not necessary
if the command is entered in the channel window itself.
/UNIGNORE nickname
Removes the nickname from the ignore list. See the /IGNORE
command.
/USERINFO nickname
Sends a CTCP USERINFO request to the nickname. The response should be,
hopefully, some user information about the nickname.
/VERSION nickname
Sends a CTCP VERSION request to the nickname. The response should be, hopefully,
what IRC client - and its version - this nickname uses.
/WHO name
Returns a list of all users on IRC which match the pattern name.
The list will appear in the server window. Because this command is frequently
abused, your IRC server may have disabled it.
/WHOIS nickname
Returns some information about a particular nickname: what server the nickname
uses, what channels have been joined, etc...