А що ти власне вмієш в IRC? Чи використовуєш ти IRC сервіси в повному обсязі? Чи чув коли-небудь про сервіс MemoServ? Більшість користувачів IRC вміють під’єднуватися на канал, регестрировать свій нік, застосовувати стандартні команди Info, Whois, DNS і мають поверхневе уявлення про IRC-командах і сервісах, скриптах і т. д. А адже саме це все робить використання IRC повноцінним і зручним.

Сервіси
Для початку розберемося для чого нам потрібні сервіси. Всього в IRC існує близько 5 сервісів. Однак, найбільш популярні тільки три: NickServ, ChanServ і MemoServ. Кожен з цих сервісів має набір стандартних команд, які дозволяють максимально ефективно взаємодіяти юзеру з сервером. Всі консольні команди, тобто їх необхідно писати в командному рядку (вручну або за допомогою скриптів). Синтаксис команд дуже простий: спочатку будь-якої команди пишеться ‘/msg’ щоб показати, що це команда, а не просто текст, потім пишеться назва сервісу, а потім команди сервісу та параметри. Тепер розглянемо сервіси докладніше.

NickServ — кращий друг індіанця
Як випливає з назви, цей сервіс призначений для адміністрування нікнейму (від англ. «nickname» — прізвисько). В один прекрасний момент ти можеш сталкнуться з ситуацією, коли зайшовши в IRC під своїм коханим (але незареєстрованим) ніком, ти увидешь наступний напис:
-NickServ – This nickname is registered and protected. If it is your
-NickServ – nick, type /msg NickServ IDENTIFY password. Otherwise,
-NickServ – please choose a different nick.
-NickServ – If you do not change within one minute, I will change your nick.
Це означає, що хтось відвідав цей сайт раніше тебе 🙂 і зареєстрував цей нік. Так що тепер тобі доведеться придумати собі новий нік. А це в свою чергу може викликати плутанину. Але будемо вважати, що ти просунутий люд і швидше за все все-таки вже зареєстрував свій нік. Якщо все таки ні то скоріше це зроби:
/msg NickServ REGISTER пароль
І швидше за все ти навіть закрив використання свого ніка без ідентифікації (щоб ніхто не міг використовувати в чаті твій нік без введення пароля):
/msg NickServ SET on KILL
Але ж на це набір команд NickServ не обмежується. Ось основна команда, яку ти повинен запам’ятати:
/msg NickServ HELP
Цією командою ти викличеш допомога по командам NickServ. Так що, якщо ти не запам’ятав якусь команду, ти завжди можеш підглянути в help. До того ж система сама дає тобі підказки які команди використовувати (див. приклад повідомлення про зареєстроване ніке).
Але повертаючись до реєстрації ніка, виникає питання: а як дізнатися зареєстрований нік вже чи ні? Для цього є дуже чудова і проста команда:
/msg NickServ INFO нік
Ця команда видає досить повну інформацію про ніке і його володаря (якщо зареєстрований нік) або видає напис «Nick not registered» (що нам і треба :)). Інформація має наступний формат:
-NickServ-
Думаю, всі рядки тобі зрозумілі (вчи англійську, бовдур).
Отже, нік у тебе є, ніхто його посісти не може. А як ідентифікуватися на цей нік? А знову використовуючи чергову сервісну команду NickServ:
/msg NickServ IDENTIFY пароль
Сподіваюся, ти не забув пароль 🙂 Якщо ти заходиш в IRC тільки зі свого комп’ютера (вдома, на роботі і т. д.), то можна спростити цю процедуру наступною командою:
/msg NickServ ACCESS add | delete [email protected]
Тоді не треба буде ідентифікуватися до ніку, а NickServ розпізнає тебе по масці. Спосіб рискованый, т. до. кожен, хто зайде у чат з твого компа, може без проблем використовувати твій нік в своїх низменых цілях. Але тобі вирішувати… Ось тобі ще кілька корисних команд, які ти можеш використовувати:
Змінити пароль на нік –
/msg NickServ PASSWORD пароль
Розповісти всім де твоя сторінка (в Інтернеті) і який у тебе e-mail –
/msg NickServ SET URL адресу
/msg NickServ SET EMAIL
Відключити прийом повідомлень через MemoServ (що це означає див. нижче) –
/msg NickServ SET NOMEMO on | off
І нарешті, видалити нік (перед цим необхідно ідентифікуватися, якщо ти цього ще не зробив) –
/msg NickServ DROP нік
Цих команд тобі цілком вистачить на перший час. Хочеш дізнатися більше, покапайся в інтернеті, а краще в самому IRC.

ChanServ — відчуй влада
Цей сервіс в першу чергу призначений для адміністрування власного каналу. Як і в попередньому сервісі, основною командою ChanServ є:
/msg ChanServ HELP
Простий смертний може запозичити звідси не так вже багато команд. Однак, ці команди, при правильному їх застосуванні, можуть послужити вам хорошу службу. Ось, наприклад:
/msg ChanServ INFO #канал
Ця команда, як і у випадку з ніком, видає повну інформацію про канал (нік фаундера, опис, дату реєстрації, e-mail, url, моди тощо). Через якийсь час сам зрозумієш навіщо тобі ця інформація. Ще корисно знати хто на каналі оператори (Досвіду). Знову ж таки, сам здогадайся навіщо це треба. Ось як це можна зробити:
/msg ChanServ AOP #канал LIST
/msg ChanServ SOP #канал LIST
/msg ChanServ VOP #канал LIST

Примітка. VOP — AutoVoice. Людина, автоматично отримує +v при вході на канал.
Тепер можеш підкотити до фаундеру або ОПу вподобаного каналу, і попросити його прописати тебе на каналі :))) Ну а якщо ти зовсім не вилазиш з IRC і вирішив, що тобі просто необхідно створити свій канал, то цей сервіс саме для тебе. Як же створити свій канал? Першим ділом, придумай для свого каналу гарна назва (короткий і запам’ятовується; добре, коли назва говорить про тему каналу) і за допомогою попередньої команди, перевір, чи може такий канал вже зареєстрований. Якщо ти увидешь напис «Channel not registered», то сміливо заходь на нього і вводь наступну команду:
/msg ChanServ REGISTER #канал пароль опис
Ну ось канал у тебе тепер є. Але треба ж себе убезпечити. Першим ділом потрібно закрити режими (моди) в каналі командою:
/msg ChanServ SET #канал MLOCK +modes-modes
Найчастіше використовують комбінацію +nt-Rlimkps
n — не можна послати повідомлення в канал, не перебуваючи на ньому
t — топік змінюють тільки Вви
R — недокументовані глюк 🙂
l — обмеження на кількість осіб в каналі
i — вхід на канал тільки після запрошення на нього
m — у каналі зможуть говорити тільки Досвіду і ті у кого стоїть +v
k — вхід на канал поролю
p — канал не буде відображатися в загальних списках
s — не буде видно, що людина на цьому каналі, після команди /whois, навіть якщо він там

З каналом ми розібралися. Тепер ти можеш запрошувати народ і спокійно попивати пиво. Однак, як ти розумієш, весь час сидіти за компом, навіть попиваючи пиво, досить напряжно (можна залити пивом клаву :)). Тому тобі знадобляться помічники. Ти можеш додавати АОПов, Сопів і АвтоВойсов (+v):
/msg ChanServ AOP #канал add | delete nickname | hostmask
/msg ChanServ SOP #канал add | delete nickname | hostmask
/msg ChanServ VOP #канал add | delete nickname | hostmask
Всіх цих команд досить, щоб твій канал повноцінно існував і радував тебе своїм існуванням, але ось тобі ще кілька команд, які можуть тобі знадобитися ще не раз:
Призначити фаундера каналу (за замовчуванням це той, хто зареєстрував канал) –
/msg ChanServ SET #канал FOUNDER нік
Призначити саксессора каналу (якщо фаундер — це бог на каналі, то саксессор — це напівбог). Він може прописувати АОПов, Сопів, ВОПов, АКИКов і мн.ін. –
/msg ChanServ SET #канал SUCCESSOR нік
Змінити пароль на канал –
/msg ChanServ SET #канал PASSWORD пароль
Змінити опис каналу –
/msg ChanServ SET #канал DESC опис
Встановити адресу сайту та е-мейл каналу –
/msg ChanServ SET #канал URL адресу
/msg ChanServ SET #канал EMAIL
Зберігається останній введений топік, коли всі залишають канал –
/msg ChanServ SET #канал KEEPTOPIC on | off
Зробити канал невидимим у списках каналів –
/msg ChanServ SET #канал PRIVAT on | off
Ідентифікація каналу –
/msg ChanServ IDENTIFY #канал пароль
АКІК — автоматичний бан і кік з каналу –
/msg ChanServ AKICK #канал add | delete nickname | hostmask

Поки що з тебе вистачить. Якщо ти хочеш дізнатися про командах сервісу ChanServ, то і сам знайдеш інфу інтернеті (мабуть не маленький вже).

MemoServ — SMS через IRC
Менш популярний сервіс (оскільки всі нормальні перці користуються SMS), але все ж. Він призначений для обміну повідомленнями в offline-режимі. Тобто коли потрібну тобі людину не в IRC, ти можеш надіслати повідомлення яке він прочитає, коли зайде в IRC. При цьому твій нік і нік того, кому ти посилаєш повідомлення, повинні бути зареєстровані. Є тільки одне обмеження: не можна послати більше 5 повідомлень підряд, поки той, кому ти шлеш, не зітре попередні. Отже, як відправити повідомлення через MemoServ? Це робиться лише однією командою:
/msg MemoServ SEND нік текст_сообщения
Переглянути список присланых тобі повідомлень можна наступним чином:
/msg MemoServ LIST
А так можна прочитати повідомлення:
/msg MemoServ READ номер_сообщения
Щоб видалити повідомлення, спочатку необхідно позначити на це повідомлення
вилучення:
/msg MemoServ DEL номер_сообщения
зворотна команда
/msg MemoServ UNDEL номер_сообщения
А тепер позначені на видалення можна знищувати:
/msg MemoServ PURGE
Сподіваюся ти просік всю користь перерахованих сервісів (це далеко не повний перелік команд). Але, як ти бачиш, кожен раз вводити такі довгі команди, ніякого терпіння не вистачить. Тому переходимо до скриптів.

Скрипти
Скрипти діляться на три категорії: aliases — дозволяє замінити будь-яку довгу команду більш короткою альтернативою (щось на зразок «гарячих клавіш»); popups — дозволяє робити свої спливаючі менюшки при натисканні правої кнопки миші (ви просто вибираєте команду зі списку, не треба нічого набирати); remotes в mIRCe (events в PIRCH98) — дозволяє визначати реакцію на якісь події. На слоавх це все виглядає просто, як відро. А на ділі… все так просто! Не віриш? Тоді давай придивімося краще. Почнемо по порядку (на прикладі mIRC). На панелі кнопок в mIRCе є три особеные кнопки. Виглядають вони ось так: — Aliases, Popups, Remotes. Ось тобі докладна розповідь про те, що ці кнопочки нам дають (і чи варто їх взагалі натискати?):
Aliases
Почнемо з першої кнопочки і найбільш простого типу скриптів. Ця різновид скрипта (можна перекласти як «сценарії») дозволяє замінити будь-яку довгу команду більш короткою.
Popups
Popups дозволяє створювати свої спливаючі меню при натисненні правої кнопки миші. Ти можеш створювати різні менюшки для вікна статусу, вікна привату, загального меню і списку ників. Синтаксис схожий з Aliases, але варто розглянути, як робиться розгалуження менюшек і роздільник. Робиться це просто: роздільник в меню позначається символом ‘-‘ (без лапок, звичайно), а для розгалуження використовуються (.), (..), (…) і т. д. Причому кількість точок залежатиме від рівня підменю. Але давай розглянемо це на прикладі. Ось тобі найпростіший приклад для вікна статусу:

Channels
.Geek: /join #Geek
Пропиши його в popups вікна статусу в кінці, і ти отримаєш, відокремлений від інших елементів, пункт меню, наведіть мишу на який, з’явиться підменю з одним пунктом. Тисни на цей пункт і опинишся на нашому каналі 🙂 За таким же принципом ти можеш додавати канали в нього.

А ось тобі невеликий приклад, як полегшити собі використання сервісів [ переглянути ].
Remotes (Events)

Тепер займемося автоматизацією. Ти напевно зустрічався з такою ситуацією, коли доводиться в тому чи іншому випадку треба виконувати якісь повторювані дії. Як же це відбувається на практиці? Різні IRC-клієнти мають різний (але в цілому схожий) синтаксис скриптів. Розглянемо синтаксис на прикладі mIRC. Синтаксис remote (саме так в mIRC називаються цікавлять нас скрипти) виглядає наступним чином:
[prefix] [level]: [event]: [window]: [commands]
Пояснимо: prefix — ; level — рівень ползователей, який задається на вкладці Users; event — подія, для якого ми хочемо задати команду; window — вікно, в якому буде виконуватися команда; commands — відповідно, команда(и), яка буде виконуватися.