SmIRC 0.70
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.
/AUTOPLAY event soundfile
Manually modifies the autoplay list. This command is used mainly for testing
autoplay settings. Once you have the settings you like, you should manually
save them in $HOME/.smirc/config, or /usr/local/etc/smirc/sound/config, or
/usr/local/share/smirc/sound/config.
See "Automatically playing sounds" section for
more information.
/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
|
/CLEAR
This command clears the window of all the text.
/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 acknowledgment 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 omitted, 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 built-in 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
successful 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.
/PLAY filename.(wav|aif|aiff|au|snd)
Plays the indicated sound file on your sound card. SmIRC can play most
wav, aiff, and au files, and sound support is
implemented on most UNIX systemes with the Open Sound System. If your system
is not supported, /PLAY does nothing.
/PLAY looks for filename in the following directories:
1) Your home directory, $HOME
2) $HOME/.smirc/sound
3) /usr/local/etc/smirc/sound
4) /usr/local/share/smirc/sound
/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 aaaa-bbbb,cccc-dddd... [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 one or more port ranges. SmIRC picks a port number, at
random, within that range, inclusively. See "Connecting to the IRC network" for more
information.
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...
/WINDOW command
Iconifies/deiconifies this window. Command is one of the following:
-
ICONIFY - immediately iconify this window.
-
DEICONIFY - immediately deiconify this window.
-
AUTOICONIFY n - automatically iconify this window if there's no
activity for n seconds. Set n to 0 to disable automatic
iconification.
-
AUTODEICONIFY 1 - automatically deiconify this window if there's some
activity
-
AUTODEICONIFY 0 - do not automatically deiconify this window
-
AUTOCLOSE n - automatically close this window if there's no activity
for n seconds. N should be greater than the interval for
AUTOICONIFY. Set n to 0 to disable automatic closing.
Please note that the ability to automatically iconify or deiconify the window
depends on the window manager. By default, server windows have automatic
deiconification disabled. All other windows have automatic deiconification
enabled. Automatic iconification and closing is disabled by default for all
windows.
To change the defaults, write a short bot program. You can find an example in
/usr/local/share/smirc/samples/seticon.bot.