iRCha — гейт между IRC и Intranet ChatСпоры между поклонниками чатов — одни из самых яростных в жизни домашней сети. Каждый пользователь имеет своё видение того, каким должен быть идеальный чат, и вряд ли сдастя без боя. В ход идут множество совершенно разнообразных аргументов и методик убеждения; чья точка зрения перевесит — зависит от разных факторов, как то: техническая грамотность пользователей, их привычки, техническая грамотность администраторов сети, волевые качества и агрессивность как пользователей, так и администраторов. Так уж сложилось, что в нашей сети образовалось два «центра общения»: IRC и ичат. Оба чата обладают своими плюсами и минусами. К плюсам ирк, к примеру, можно отнести глобальность сетей, аскетичность протокола, богатство сервисов, проработанность инфраструктуры общения. К плюсам ичата: лёгкость в настройке, дружественность пользователю, здоровый минимализм. Есть у этих чатов и недостатки, но это не мешает их популярности, тем более что от некоторых недочетов вполне можно избавиться. Прошло какое-то время, и стало совершенно очевидно, что находиться одновременно в двух чатах по меньшей мере неудобно. После ознакомления с существующими «наработками» было принято решение о создании самостоятельного гейта, результат развития которого и представляется вашему вниманию. Принцип действияНа данный момент гейт работает в режиме бот-бот. Идея проста — к IRC и ичат сетям подключается клиентское приложение, имитирующее пользовательское подключение, единственной целью которого является трансляция сообщений из одной сети в другую и предоставление дополнительной информации о работе сервиса. У этого метода межсетевой связи есть естественные ограничения: сообщения исходят от одного физического клиента, информация о пользователе, написавшем сообщение, добавляется непосредственно в тело сообщения, что несколько затрудняет чтение. Впрочем, по прошествии некоторого времени имя бота начинает восприниматься как «префикс» и полностью игнорируется, особых неудобств пользователям, как показывает практика, этот аспект не доставляет. Более существенным недостатком является отсутствие пользователей «другой» сети в списках пользователей «текущей». В этом гейте эта проблема решена с помощью искусственных методов: так, бот в ирк реагирует на специфические команды и передает список пользователей «другой» сети в личных сообщениях; в ичате же создается «виртуальная» линия с чисто номинальным паролем, единственная цель которой — отображение пользователей, присутствующих в данный момент на канале ирк-сети, на котором размещен бот. В будущем планируется создать полностью «прозрачный» гейт, но в связи с масштабностью проекта автор никаких гарантий относительно времени реализации дать не может. Установка и запускДля функционирования гейта необходимо установить jre (java runtime environment) версии 1.5 и выше. Скачать
последнюю версию jre можно здесь. После установки jre распакуйте
содержимое архива с гейтом в удобный для вас каталог и отредактируйте конфигурационный файл config.xml в
соответствии с настройками вашей сети. Будьте внимательны, заполняя поле SenderIp — некоторые реализации
ичат-серверов следят за совпадением указанного ip адреса и реального ip адреса клиентского подключения. Таким
образом при несовпадении этих адресов такой сервер может разорвать соединение или, чего хуже, полностью его
заблокировать. В остальном же конфигурационный файл снабжен комментариями, призваными оказать вам некоторую
помощь в настройке. Также если вас не устраивает содержимое файлов помощи и сообщения, которое будет
размещено в ичате от имени гейта, вы всегда можете исправить
файлы help.txt и board.txt соответсвенно. Для запуска гейта необходимо запустить из каталога
с распакованным архивом следующую команду: ИспользованиеПосле успешного запуска (следите за сообщениями в консоли или же в лог-файлах в папке log) гейт создает два клиентских подключения — по одному в каждой сети. Имена ботов указаны в конфигурационном файле (следите чтобы имена соответствовали соглашениям, используемым в вашей сети). После подключения бот немедленно начинает транслировать сообщения из одной сети в другую. Сообщения о подключениях/отключениях пользователей, смен имен пользователей транслируются в ирк-сеть другим цветом для облегчения читаемости и отслеживаемости списка пользователей. Отсутствие этих сообщений привело бы к тому что вы не смогли бы своевременно узнать о смене пользователем имени или же выходе пользователя — вам пришлось бы каждый раз использовать команду получения текущего списка пользователей, что было бы довольно неудобно. Любое сообщение, набранное на канале, на котором присутствует бот гейта, немедленно отправляется в сеть
ичата. Сообщение, начинающееся с символа В ирк доступны так же следующие команды:
Гейт поддерживает отправку личных сообщений пользователям «другой» сети. Для этого:
Надеюсь, что данный гейт вам пригодится в нелегком деле объединения привередливых пользователей. Успехов! iRCha : обсудить на форуме : javadoc |