На главную : Статьи : Форум : Блог : Связаться с автором

Установка

Для запуска расширенного ичат-сервера необходима установленная jre (java runtime environment) версии 1.5 и выше, скачать которую можно здесь. После установки Java распакуйте архив с последней версией сервера в удобный для вас каталог (в некоторых из предыдущих версий каталог не должен был содержать русских символов, сейчас эта проблема более не актуальна).

Установка модуля поддержки "антихак" версии

После появления так называемых "убийц" ичата стала актуальной проблема создания защищенных версий. Одной из таких версий стала неофициальная версия от John Do (1.3b8). Версия содержит некоторые изменения в протоколе, что делает её несовместимой с базовой версией протокола ичата. Так "стандартные" клиенты не видят сообщений "антихак" версии, и наоборот. В виду того что новый сервер проводит анализ поступающих сообщений, отличия в протоколе приводят к тому, что в базовом варианте сервера сообщения от таких клиентов просто игнорируются. Клиент подсоединяется, но никого "не видит".

В этой связи для сервера было написано дополнение, установив которое сервер будет понимать сообщения "антихак" клиентов. В отличие от старого сервера, новый сервер не может понимать сообщения клиентов обоих типов одновременно, такова цена надежности. Впрочем, вариант полной совместимости возможен, но автору видится малоперспективным и востребованным в виду того что такие клиенты все равно не будут видеть сообщений друг от друга.

Обновление устанавливается "поверх" установленного scepsis или scepsis ext сервера и включает в себя дополнительный библиотечный модуль JohnDo.jar в дирректории lib, а также измененный *.bat файл для запуска сервера и модифицированный файл настроек config.xml.

В настоящий момент архив обновления рассчитан исключительно на установку поверх расширенной версии сервера (Scepsis ext). Чтобы установить модуль для базовой версии сервера, или же для ичат-ирк гейта, модуль необходимо установить вручную. Для этого скачайте модуль поддержки и распакуйте его в каталог, НЕ совпадающий с каталогом установки сервера или же гейта. Скопируйте из папки lib модуль JohnDo.jar в папку lib сервера / гейта. После этого откройте конфигурационный файл сервера / гейта и найдите в нем следующую строчку:

<method id='MessageFactory' class='com.web_visage.ichat.DefaultMessageFactory' name='getSingleton' />

Замените её на строчку вида:

<ctor id='MessageFactory' class='com.web_visage.ichat.JohnDoFactory' />

После этого всё, что вам осталось - это добавить новый модуль в classpath приложения, для этого исправьте соотвествующую строку запуска. Например, для ичат-ирк гейта строчка будет иметь следующий вид:

java -classpath irCha.jar;./lib/JohnDo.jar; com.web_visage.ircha.launcher.IChatBotLauncher

Строчка для запуска базовой версии сервера с установленным модулем поддежки "антихак" клиентов:

java -classpath scepsis.jar;./lib/JohnDo.jar;./lib/admin.jar; com.web_visage.ichatserv.ScepsisLauncher

Настройка сервера

Для настройки сервера используется файл config.xml. Этот файл должен находиться в одной папке с установленным сервером, и сервер должен иметь доступ к нему при запуске, иначе он будет завершен с ошибкой. Строго говоря, config.xml - это несколько больше чем просто конфигурационный файл. По сути это небольшая конфигурационная программа, выраженная преимущественно в декларативном стиле. Поэтому изменяя этот файл, можно создать абсолютно другое приложение. Для этих целей был выбран dependency injection framework Yan и его XML подмножество Nuts. Ознакомившись с синтаксисом и приемами работы с которым вы без всяких проблем сможете видоизменять сервер по своему вкусу. Впрочем, если вы не планируете заниматься такого рода расширениями, а нуждаетесь лишь в настройке сервера, всё о чем вам следует позаботиться - это о соблюдении синтаксиса XML при редактировании config.xml.

Приведем пример кофигурационного файла с комментариями. Напоминаем, что файл может меняться с выходом новых версий дистрибутива, поэтому файл, представляемый вашему вниманию, может устареть и не содержать необходимых записей или же содержать данные, не являющиеся более неоходимыми для работы новых версий сервера: config.xml

Продолжение следует...

© 2006 - Авторство и copyright на все материалы - Константин Батурицкий
На главную : Статьи : Форум : Блог : Связаться с автором