Hybrid IRCd

Команди към сървъра

Основни команди в чата за връзка с други потребители, за управление на канали и информация.
Команди за потребители и за IRC оператори (вижте по-надолу).

Командите можете да видите в чата с /quote HELP [command]

Ако някоя команда не се изпълнява правилно от вашата програма за чат, може да я изпратите към сървъра с /quote command

Описание на командите:

Подчертаните параметри трябва да заместите с вашите данни, като параметрите в [скоби] не са задължителни.

/nick new-nick
Променяте сегашния си псевдоним на друг (new-nick).

/away :reason
Указвате, че не сте пред компютъра по дадена причина (reason).
Отменя се само с /away

/join #channel1,#channel2 [key1,key2]
Влизате в канал или в няколко канала наведнъж. Ако е необходимо, посочвате ключ (key) за влизане.
Повечето програми за чат позволяват съкращаване на командата с /j #channel, или /j channel
Примери:
/join #channel
/join #channel1,#channel2
/join #channel1,#channel2 key1

/part #channel1,#channel2 :[reason]
Излизате от зададените канали, като може да посочите причина (reason).
Пример: /part #channel :be back

/quit :[reason]
Излизате от чата, като може да посочите причина (reason).

/privmsg nick :text
/privmsg #channel :text
Изпращате текст към определен псевдоним или към всички, които са в определен канал. Обикновено може да ползвате кратък вид на командата /msg nick text
Може да изпратите до няколко човека наведнъж с /privmsg nick1,nick2,nick3 :text, или съответно до няколко канала.
За да си пишете с определен псевдоним, може да ползвате команда /query nick при което ви се отваря отделен прозорец за писане само с него.
За да пишете в канал, може да влезете в канала с команда JOIN и да пишете в неговия прозорец.
При съобщение към канал може да зададете необходими права на хората, които да го прочетат, с префикс пред името на канала:
@ - само оператори (ops) в канала
% - оператори и полу-оператори (half-ops)
+ - оператори, полу-оператори и с право на глас (voice)
Пример: /privmsg @#channel :text до хората с +o
IRC Operator може да изпрати съобщение и до:
$$servermask - сървъри, съвпадащи с маската
$#hostmask - потребители, съвпадащи с хостмаска
Пример: /privmsg $#host.mask :text

/notice nick :text
/notice #channel :text
Друг начин за изпращане на текст към псевдоним или към всички в определен канал.
Може да изпратите до няколко човека наведнъж с /notice nick1,nick2,nick3 :text, или съответно до няколко канала.
При съобщение към канал може да зададете необходими права на хората, които да го прочетат, с префикс пред името на канала:
@ - само оператори (ops) в канала
% - оператори и полу-оператори (half-ops)
+ - оператори, полу-оператори и с право на глас (voice)
Пример: /notice @#channel :text до хората с +o
IRC Operator може да изпрати съобщение и до:
$$servermask - сървъри, съвпадащи с маската
$#hostmask - потребители, съвпадащи с хостмаска
Пример: /notice $#host.mask :text

/who {#channel|user}
Показва информация за потребител.
Примерен резултат от команда /who pokey :
#lamers pokey H pokey@ppp.newbies.net :0 Jim Jones
където първо е последният канал, в който е влязъл потребителят, второ е неговият псевдоним
трето е означение за статуса на потребителя, което е комбинация от флагове:
H - потребителят не е away (here)
G - потребителят е away (gone)
r - използва регистриран псевдоним
* - IRC Operator
@ - Operator (+o) в канала от резултата
% - HalfOp (+h) в канала
+ - Voice (+v) в канала
четвърто е username@host на потребителя
последно е брой на hops на сървъра и GECOS (истинско име, realname) на потребителя
Ако командата се подаде за канал, резултатът е списък от WHO информация за всеки от потребителите в него.
Може да се ползват и означения * и ?
Примери:
/who nickname - информация за потребителя
/who #channel - за всички в канала
/who *user* - които съвпадат по nickname или username или realname

/whois [remoteserver|nick] nick
Показва подробна информация за потребител - пълен хост адрес, от кой сървър е влязъл, в кои канали е, дали е идентифициран и др.
Ако преди псевдонима посочите сървър или друг (или същия) псевдоним, ще покаже информацията спрямо него, също и от колко време потребителят не е писал (idle time).

/whowas nick [count] [nick|server]
Показва информация от предишни посещения на псевдоним, дори в момента да не е в чата, като може да зададете за колко пъти да покаже (count).
Ако зададете и друг псевдоним или сървър, ще покаже информацията спрямо него.
Тази информация се съхранява само за определено време.
Пример: /whowas nick 2

/userhost nick
Показва username, hostname на потребител в чата, дали е IRC оператор и дали има валиден ident.
За вашия псевдоним вместо hostname ще покаже IP адрес.

/ison nick1 [nick2]
Проверявате дали посочените псевдоними са в чата.

/names #channel
Показва списък на псевдонимите в посочения канал.
Ако вие не сте в канала, няма да ви покаже псевдоними с mode +i

/topic #channel :[topic]
Променяте темата (topic) в канала или виждате сегашната.
Ако каналът е с mode +t, трябва да сте оператор (+o) в него, за да променяте темата.

/mode nick [modes]
/mode #channel [modes] [parameters]
Променяте режимите (modes) на вашия псевдоним или на канал. Ако не посочите режими, ще ви покаже сегашните.
Режими зададени със знак "+" се добавят, а със знак "-" се премахват.
Примери:
/mode nick +i - слагате mode +i на вашия nick
/mode #channel +nt-ilk - слагате +nt и махате +ilk
/mode #channel +okl-v nick1 key 20 nick2 - давате Op на nick1, слагате ключ "key" и limit 20, и махате Voice на nick2
/mode #channel -oo+obb nick1 nick2 nick3 *!*user@*host.com nick2 - махате Op на nick1 и nick2, давате Op на nick3, бан на адрес и бан на псевдоним

user modes - режими за потребители (отбелязаните със * са само за IRC оператори):
S - показва, че ползвате криптирана връзка - SSL/TLS (поставя се от сървъра)
W - показва, че ползвате webirc gateway (поставя се от сървъра)
r - регистриран и идентифициран псевдоним (поставя се от Services)
i - скрит, невидим
D - не виждате какво пишат в каналите (Deaf)
R - може да получавате лични съобщения и notice само от регистрирани (+r) потребители
G - може да получавате лични съобщения и notice само от потребители, с които сте в общи канали, или от добавените с /accept
g - може да получавате лични съобщения и notice само от потребители, на които сте разрешили с команда /accept
p - не показва в кои канали сте при /whois
q - не показва вашите idle и signon time при /whois
w - виждате сървърните wallops
s - виждате основни сървърни съобщения и oper kills
o * - потребителят е IRC Operator - вижте команда /oper
H * - скрива информацията, че сте IRC Operator
l * - виждате операторски locops (local wallops)
c * - виждате клиентски свързвания и изходи
u * - виждате непозволени свързвания на клиенти
j * - виждате съобщения за отхвърлени (rejected) клиенти
k * - виждате съобщения за kill от сървъра
f * - виждате съобщения 'auth {} block is full'
F * - виждате remote клиентски свързвания и изходи
y * - виждате заявки за stats/links/admin
d * - виждате debug съобщения от сървъра
n * - виждате смяна на nick от клиенти
e * - виждате съобщения за нов сървър и за split
b * - виждате съобщения за възможен bot/join flood
a * - потребителят е admin на сървър, означен в stats o/p
Можете да ги видите в чата с /quote help umode

channel modes - режими за канали:
- без параметри:
c - без 'control codes' при писане в канала - цветно, подчертано и др.
n - само които са вътре в канала могат да пишат в него
t - само потребители с +h или +o могат да променят /topic
s - скрит - не показва канала при /list и /whois nick
p - потребители с halfop (+h) не могат да /invite или /kick ; забранява /knock за канала
m - само потребители с mode +v/+h/+o могат да говорят в канала
i - могат да влязат в канала само поканени с /invite или записани в +I списъка
r - каналът е регистриран - поставя се от Services
u - само потребители с +h или +o могат да виждат +b/+e/+I списъците и промените по тях
C - не позволява CTCP към канала
L - каналът има разширен списък за ban (поставя се от IRC оператор или Services)
M - могат да говорят само регистрирани (+r) псевдоними и които имат +v/+h/+o
N - само потребители с +h или +o могат да сменят псевдонимите си в канала
O - канал само за IRC оператори (поставя се от IRC оператор или Services)
R - само регистрирани (+r) псевдоними могат да влязат
S - само потребители на SSL/TLS връзка могат да влязат
T - само потребители с +v/+h/+o могат да изпращат /notice към канала
- с параметри:
k key - задава ключ (key) за влизане в канала - влиза се с /join #chan key
l limit - максимален брой потребители в канала
v nick - давате Voice на потребител - може да говори при +m в канала
h nick - давате HalfOp на потребител
o nick - давате Op на потребител
b nick!ident@host - поставяте бан - съвпадащите с адреса не могат да влязат
e nick!ident@host - съвпадащите с адреса могат да влязат, дори да имат бан
I nick!ident@host - съвпадащите с адреса могат да влязат без покана при +i в канала
Можете да ги видите в чата с /quote help cmode

/accept [parameter]
Определяте кой да може да ви пише с /privmsg или с /notice, ако имате зададен user mode +g.
/quote accept nick!user@host - разрешавате на съвпадащите с хостмаска да ви пишат
/quote accept -nick!user@host - премахвате разрешение
/quote accept * - показва списък с добавените разрешения
/quote accept - показва списък с добавените разрешения

/kick #channel nick :[reason]
Изритвате потребител от канала, като може да посочите причина (reason).
Някои програми за чат допускат да не се пише канал /kick nick [reason]

/invite [nick #channel]
Изпращате на потребителя покана за влизане в канала.
Без параметри показва поканите, които имате вие.

/knock #channel
Искате разрешение за влизане канал, който е затворен в момента (например при mode +i).
Не може да ползвате командата, ако имате ban, ако каналът е с mode +p, или ако е отворен.

/list [options]
Показва списък на съществуващите канали в чат мрежата (които нямат mode +s).
Може да посочите критерии за търсене (options), разделени със запетайка.
Примери:
/list - показва всички канали
/list *mask* - канали, имената на които съвпадат с маската
/list !*mask* - имената на които не съвпадат с маската
/list >5 - в които има повече от 5 псевдонима
/list >10,<30 - в които има от 10 до 30 псевдонима
/list C>20 - канали, които са създадени от преди 20 минути до сега
/list C<50 - които са създадени по-рано от преди 50 минути
/list T>20 - канали, в които topic е променен преди повече от 20 минути
/list T<50 - в които topic е променен през последните 50 минути
/list T:mask - канали, в които topic съвпада с маската

/links [mask] [servername/nickname]
Показва списък на сървърите в мрежата.
Ако зададете маска, ще покаже съвпадащите с нея сървъри.
Може да зададете друг сървър, спрямо който да ви покаже.

/map
Показва карта на сървърите в мрежата.

/lusers [mask] [servername/nickname]
Показва броя на потребителите в момента на вашия или на зададения сървър и в цялата мрежа, а също и най-големия брой до сега, като може да зададете маска за търсене.

/stats letter [server|nick]
Показва различни статистики за сървъра според зададения символ (letter).
Описание може да видите и в чата, като напишете /quote help stats
Пример: /stats p
Списък на символите:
X - само за администратори
* - само за оператори
^ - може да е само за оператори
AXпоказва използваните DNS сървъри
c*показва настроените connect {} blocks
d*показва временни D lines
D*показва постоянни D lines
e*показва изключения от D lines
EXпоказва активни таймери/събития
fXпоказва файлови идентификатори
H*показва настроените hub/leaf entries
i^показва настроените auth {} blocks
K^показва постоянни K lines
k^показва временни K lines
L*показва IP и основна информация за [nick]
l*показва hostname и основна информация за [nick]
mпоказва команди и тяхното използване
o^показва настроените operator {} blocks
P^показва настроените listen {} blocks
pпоказва свързаните оператори и техните idle times
q*показва псевдоними и канали с resv
s*показва настроените service {} blocks
T*показва настроените motd {} blocks
t*показва основни статистики за сървъра
U*показва настроените shared {} и cluster {} blocks
u^показва uptime на сървъра
v*показва свързаните сървъри и техните idle times
x*показва gecos bans
y*показва настроените class {} blocks
z*показва статистики за паметта
?*показва свързаните сървъри и sendq информация за тях

/info [servername/nickname]
Показва copyright и информация за създателите на ircd,
а също и някои настройки на сървъра (според setup.h, defaults.h, ircd.conf).

/time [servername/nickname]
Показва часа от сървъра.

/ping source :target
Изпращате Ping заявка до потребител или сървър. Трябва да получите Pong отговор.
Тази команда е различна от CTCP ping
Примери:
/ping :nick
/ping :server
/ping nick :server

/pong pinged-client :source-client
Отговаряте на Ping заявка до който ви я е изпратил (source-client).
Обикновено програмите за чат отговарят автоматично.

/admin [servername/nickname]
Информация за администратора на сървъра.

/version [servername/nickname]
Информация за IRCd софтуера на сървъра и някои настройки.

/motd [servername/nickname]
Message Of The Day - съобщението при свързване към сървъра.

/user username unused unused :real-name/gecos
Използва се при свързване, за да зададете вашите username и gecos (истинско име), ако сървърът не успява да получи валиден ident отговор от вас.
Вторият и третият параметри (unused) не се ползват, но трябва да съдържат нещо, заради обратна съвместимост.

/pass password
Ако определен сървър е настроен (в auth {} block) да иска парола, клиентът трябва да подаде тази команда при свързване.

/post
Използва се за защита срещу insecure HTTP proxies - ако proxy изпраща команда POST при свързване, ще бъде отхвърлено.


Команди за IRC Operators:

/oper name password
Идентифицирате се като оператор с името (name) и паролата с които сте записан.

/wallops :message
Изпращате съобщение до всички оператори с umode +w
Изисква Oper Priv: wallops

/locops :message
Изпращате съобщение до локалните IRCops на сървъра с umode +l
Изисква Oper Priv: locops

/trace [server|nick]
Проследява свързването към вашия или зададен сървър, или към потребител.
Към сървър дава информация за свързаните клиенти, а към потребител дава информация за него.

/etrace [nickname-mask]
Показва свързаните към вашия сървър потребители във формат:
User/Oper class nickname username host ip gecos
Може да ограничите търсенето по маска за псевдоними, които да покаже.

/connect server [port]
/connect server1 port server2
Свързвате сървъра на който сте към зададения сървър, като може да укажете порт за връзка.
Ако не е указан порт, се ползва записаният в conf файла или 6667.
Може да укажете на server2 да се свърже със server1, като трябва да посочите порт за връзка или 0, при което се взема записаният в настройките.
Изисква Oper Priv: connect
Изисква Oper Priv: connect:remote - за сървъри, които не са свързани с вашия

/close
Прекъсва всички непълни връзки към вашия сървър от клиенти и други сървъри.
Изисква Oper Priv: close

/squit server :[reason]
Откачате сървър от вашата страна на мрежата по определена причина.
Изисква Oper Priv: squit
Изисква Oper Priv: squit:remote - за сървъри, които не са свързани с вашия

/kill nick :[reason]
Изритвате потребител от мрежата по определена причина.
Изисква Oper Priv: kill - ако потребителят е на сървъра на който сте оператор
Изисква Oper Priv: kill:remote - ако потребителят е на друг сървър

/kline [time] nick|user@host :[reason]
/kline user@host on server :[reason]
Поставяте бан на host адрес от сървъра на който сте, по определена причина.
Може да зададете време на действие на бана в минути.
За бан от друг сървър, трябва той да позволява отдалечени kline
Изисква Oper Priv: kline
Примери:
/kline 30 nick :Abuse - бан на псевдоним за 30 минути
/kline *@*.aol.com :Abuse - слагате бан на адреса
/kline *@*.aol.com on irc.server - слагате бан на адреса от сървъра irc.server

/unkline user@host
/unkline user@host on server
Махате бан на host адрес от сървъра на който сте, освен ако е записан в conf.
За махане на бан от друг сървър, трябва той да позволява отдалечени unkline.
Изисква Oper Priv: unkline
Примери:
/unkline *@*.aol.com - махате бан на адреса
/unkline *@*.aol.com on irc.server - махате бан на адреса от сървъра irc.server

/dline [time] nick|ip :[reason]
Поставяте бан на IP адрес, по определена причина. Ако посочите псевдоним, той трябва да е на вашия сървър.
Може да зададете време на действие на бана в минути.
Изисква Oper Priv: dline
Примери:
/dline 30 127.0.0.1 :Abuse - слагате бан на адреса за 30 минути
/dline nick - слагате бан на ip адреса от който е псевдонимът

/undline ip-address
/undline ip-address on server
Махате бан на IP адрес от сървъра на който сте, освен ако е записан в conf.
За махане на бан от друг сървър, трябва той да позволява отдалечени undline.
Изисква Oper Priv: undline

/xline [time] gecos :[reason]
/xline [time] gecos on server :[reason]
Поставяте бан на определен gecos от сървъра на който сте, по определена причина.
Може да зададете време на действие на бана в минути.
За бан от друг сървър, трябва той да позволява отдалечени xline.
Изисква Oper Priv: xline
Примери:
/xline 30 gecos :Abuse - слагате бан на gecos за 30 минути
/xline gecos on irc.server - бан на gecos от сървъра irc.server

/unxline gecos
/unxline gecos on server
Махате бан на gecos от сървъра на който сте, освен ако е записан в conf.
За махане на бан от друг сървър, трябва той да позволява отдалечени unxline.
Изисква Oper Priv: unxline
Примери:
/unxline gecos - махате бан на gecos
/unxline gecos on irc.server - махате бан на gecos от сървъра irc.server

/resv #channel|nick :[reason]
Поставяте забрана за влизане на локални потребители в канал или за използване на псевдоним, по определена причина.
Администратор може да зададе забраната с wildcard, например clones*
Изисква Oper Priv: resv

/unresv #channel|nick
/unresv #channel|nick on server
Махате resv забрана от сървъра на който сте, освен ако е записан в conf.
За махане на бан от друг сървър, трябва той да позволява отдалечени unresvs.
Изисква Oper Priv: unresv

/hash
Показва статистики от хеша на сървъра.

/set option value
Опцията (option) може да бъде:
AUTOCONN - включва или изключва (on/off) автоматично свързване към определен сървър
AUTOCONNALL - включва или изключва (on/off) автоматично свързване към всички сървъри
FLOODCOUNT - брой съобщения, допустими преди да бъде обявен flood - отнася се както за канали, така и за потребители
FLOODTIME - време в секунди за съобщенията според FLOODCOUNT
JFLOODCOUNT - брой joins в канал, преди да бъде обявен flood, като при 0 е изключено
JFLOODTIME - време в секунди за joins flood според JFLOODCOUNT, като при 0 е изключено
MAX - максимален брой свързвания - не може да надвишава HARD_FDLIMIT в defaults.h
SPAMNUM - брой join/parts към канали, които определят възможен spambot
SPAMTIME - време в секунди за join/parts според SPAMNUM
Изисква Oper Priv: set

/module option [module-name]
Опцията (option) може да бъде:
LIST - показва списък на заредените модули към ircd, като може да зададете маска за търсене
LOAD - зарежда модул към ircd, като може да е зададен с път от / или от IRCD_PREFIX
UNLOAD - премахва модул от ircd, като посочвате само името, без път
RELOAD - презарежда модулите, като спира всички и зарежда или само тези от modules/autoload, или ако зададете "*" ще зареди всичките
Изисква Oper Priv: module

/rehash [server] option
Презареждате config файлове на сървъра.
Определяте кои чрез опция (option):
CONF - презарежда конфигурационните файлове
DNS - презарежда файла /etc/resolv.conf
MOTD - презарежда MOTD файловете
Изисква Oper Priv: rehash - за вашия сървър
Изисква Oper Priv: rehash:remote - за друг сървър
Пример: /rehash motd

/restart server
Рестартирате IRC сървъра.
Изисква Oper Priv: restart

/die server
Спирате IRC сървъра.
Изисква Oper Priv: die