Общий синтаксис создания сценария следующий: <новая команда> <старая команда или ее часть> <возможные параметры>.
Иными словами, первой частью сценария, определяющей новую команду, является /j. Второй частью сценария, задающей часть старой команды, является /join #.
Собственно, этого уже достаточно для создания сценария, который определяет команду без параметров. Например, если вы введете просто /j, то она будет заменена на команду /join #.
Однако если нужно передать в команду еще и определенные параметры, например имя канала и, возможно, пароль, то следует также указать и третью часть сценария. Для нашего сценария это $$1 $2-. В этой части оператор $$1 будет заменен первым словом, которое вы ввели после команды /j (то есть именем канала), а оператор $2 будет заменен вторым словом (то есть паролем, если он необходим). Символ – , стоящий после оператора $2, говорит о том, что для работы команды ввод второго слова (то есть пароля) не обязателен.
Например, команда /j rus будет преобразована в команду /join #rus.
○ /n /names #$$1 – создает команду /n <имя канала>, которая будет эквивалентна команде /names #<имя канала>.
○ /ping /ctcp $$1 ping– создает команду /ping <пользователь>, которая будет эквивалентна команде /ctcp <пользователь> ping.
Все сценарии, созданные в программе по умолчанию, переопределяют только одну команду. На самом же деле вы можете переопределять любое количество команд. Например, рассмотрим вот такой сценарий: /start /join #onestyle | / list *rus*. Это простой сценарий, который создает команду /start. При ее вводе программа последовательно выполнит сразу две команды: /join #onestyle и /list *rus*.
Вместо символа | для записи нескольких команд можно использовать фигурные скобки, что позволит создавать более наглядные сценарии. Например, при использовании фигурных скобок наша команда будет выглядеть так: /start {/join #onestyle /list *rus* }
ПРИМЕЧАНИЕ
Помимо оператора вида $<номер слова>, можно использовать оператор вида $?=<строка запросах При этом перед пользователем после ввода команды, али-ас для которой вы создали, будет отображена строка запроса с предложением ввести параметр команды. После того как пользователь введет его, команда будет выполнена. Например, немного изменим нашу команду /start: /start /join #onestyle | /list #$$?="Enter list name: ".
Кроме того, в командах можно использовать оператор $me, который будет заменен вашим текущим ником.
И последняя возможность создания алиасов, которую мы рассмотрим: их можно создавать не только для выполнения при помощи какой-либо команды (например, для /start), но и для выполнения после нажатия определенного сочетания клавиш. Так, если создать алиас для команды /F1, например /F1 /say «приветик», то команда / say «приветик» будет выполняться при нажатии клавиши F1. Вместо команд вида /F1 можно использовать команды вида /saF1 (Shift+Alt+F1), /cF1 (Ctrl+F1), /sF1 (Shift+F1) ит.д.
○ Popups– с помощью этой вкладки можно создавать новые пункты контекстного меню окна сервера программы mIRC. В качестве примера рассмотрим несколько сценариев, созданных в программе по умолчанию.
○ Quit IRC:/quit Leaving – создает в контекстном меню окна сервера пункт Quit IRC, при помощи которого можно отключиться от сервера. Другими словами, пункт контекстного меню создается строкой следующего формата: <имя пункта>:<команда, выполняемая при выборе данного пункта>.
○ Edit Notes:/run notepad.exe notes.txt– создает в контекстном меню окна сервера пункт Edit Notes, при помощи которого в Блокноте будет открываться файл notes.txt.
○ Away и ..Set Away…:/away $$?="Enter your away message: " – это сразу две команды. Первая создает в контекстном меню пункт Away (об этом говорит точка перед названием пункта). Вторая же создает в пункте Away подпункт Set Away (об этом говорят две точки перед названием пункта, то есть он будет вложен внутрь пункта, который определялся одной точкой), при выборе которого в строке ввода появится сообщение Enter your away message:. После того как вы введете сообщение, будет выполнена команда / AWAY <введенное вами сообщение>.
На самом деле вы можете создавать не только новые пункты контекстного меню окна сервера – это лишь возможность по умолчанию. Если вы перейдете на вкладку Popups окна mIRC Script Editor, после чего воспользуетесь меню View, то сможете самостоятельно выбрать, пункты для какого контекстного меню вы будете добавлять. Меню View состоит из следующих пунктов: Status (контекстное меню окна сервера), Channel (контекстное меню окна канала), Query, Nick List (контекстное меню в списке пользователей на канале), Menu Bar (команды строки меню).
ПРИМЕЧАНИЕ
Следует понимать, что при создании новых пунктов меню можно использовать не только стандартные команды, но и команды, которые вы создали при помощи вкладки Aliases окна mIRC Script Editor.
○ Remote – позволяет создавать сценарии, которые будут выполняться автоматически при наступлении определенного события. Например, при получении вами определенного сообщения, написанного заданным пользователем. Такие сценарии считаются самыми сложными из рассмотренных.
Мы рассмотрели только основы работы со сценариями – полное их описание не входит в наши планы. Например, мы так и не рассмотрели возможности условных операторов if, меток и многого другого.
Параметры программы. Программа mIRC поддерживает параметры запуска. Рассмотрим некоторые из них.
○ – r – переводит программу в режим работы на основе содержимого файла mirc.ini (он будет создан автоматически), расположенного в каталоге %programfiles% mIRC. В этом файле будут храниться сведения обо всех настройках программы. Иными словами, вы можете создать несколько таких файлов и быстро менять данные о себе, хранящиеся в программе.
Более того, при помощи параметра вида – r -1<имя INI-файла> вы можете самостоятельно определить, какой именно файл настроек будет использоваться вместо файла mirc.ini.
Можно также использовать параметр вида – r<имя>. В этом случае в папке с программой mIRC будет создана подпапка с указанным именем, и в ней будут храниться настройки пользователя. В дальнейшем, чтобы использовать созданные настройки, достаточно запускать программу с параметром вида – r<имя папки>.
○ – n<ник> – независимо от настроек программы устанавливает в качестве вашего ника тот, который вы указали в параметре.
○ – jn – позволяет вместо отображения окна Options при запуске программы выполнять автоматическое подключение на основе текущих настроек.
Сервер IRC
Одной из особенностей протокола IRC является то, что он может работать как в Интернете, так и в локальной сети. Иными словами, вы или администратор вашей организации очень просто сможете создать собственную сеть IRC в пределах локальной сети. Для этого достаточно установить сервер IRC (предназначен для того, чтобы к нему могли подключаться клиенты IRC) и, по желанию, добавить сервисы. Как правило, сервер IRC работает на основе порта 6667, поэтому для запуска сервера достаточно прав обычного пользователя.
Сервер IRC. Наиболее популярным сервером IRC является программа Unreal IRCD, поддерживающая работу на таких операционных системах, как Windows, Linux, BSD, Mac OS X.
Эта программа поддерживает все стандартные возможности сервера IRC, а также предоставляет дополнительные функции:
○ поддерживает дополнительные флаги режимов доступа пользователя к каналу (такие как + h (полуоп), +q (владелец канала), +a (администратор канала));
○ в программе реализована система антифлуда и антиспама;
○ позволяет блокировать цвета сообщений;
○ позволяет работать с виртуальными хостами;
○ поддерживает работу при помощи протокола SSL;
○ поддерживает подключение различных модулей.
Процесс установки данного сервера достаточно прост. Единственное, на что следует обратить внимание, – это флажок, при помощи которого устанавливается автоматический запуск сервера при старте операционной системы. Если вы решили пока просто поэкспериментировать с сервером, то этот флажок лучше снять.
После установки сервера нужно скопировать файл example.ru.conf, расположенный в папке doc каталога, в котором установлен сервер, непосредственно в этот каталог. После этого следует переименовать файл example.ru.conf в unrealircd.conf.
Теперь осталось самое сложное – открыть файл unrealircd.conf в текстовом редакторе и изменить настройки сервера для работы в вашей локальной сети.