Joker IRC bot

Наш родной, первый и единственный бот для IRC по имени Joker. Сейчас это полноценный IRC-бот написанный на PHP. Имеет небольшую, но интересную историю, берущую начало из 2001 года. Проект был на mIRCScript, пережил трудные времена и вновь вернулся, портированый на язык PHP и готовый к дополнению вашими идеями.

Начало проекта:
28/05/2010

Текущая версия:
1.3

Кто или что такое Joker

В 2001 году на канале #blackcrystal в сети QuakeNet появился бот. Бот как бот, ничем особо не примечательный. Умел он всего-лишь шутки шутить по запросу юмористов вышеобозначенного канала. И имя ему было соответственно "шутник" Joker.

Joker на mIRCSript (2001-2005)

Так вот, бот был простым клиентом mIRC с программой, написанной на скриптовом языке для этого клиента. Я только начинал его изучать и много экспериментировал. Со временем шутки захотелось добавлять в бота, а лучше чтобы админ этих шуток мог это сделать сам. В свободное от безделия время, Сергей Miami пописывал Joker'у новые возможности одну за одной. Joker научился вести статистику посещаемости каналов, переводить фразы, играть в несколько занимательных игр, вести онлайн-репортажи о матчах по Quake2 и Quake3, опать админов и банить грубых нарушителей, проводить голосования, узнавать температуру в любом городе и у любого из пользователей используя внешний usb-ass thermometer, передавать короткие сообщения оффлайн-пользователям и фидбеки админам, с выходом mIRC 6 появилась возможность создавать трансляции между несколькими IRC-сетями, и многое другое. Спустя годы, глядя на того Jokerа душа радуется, уж больно хорош был бот на mIRCScript. Некоторым вещам поражаюсь даже сейчас. Однако, mIRC не вечен, как и скриптование на нём. Понадобились новые возможности, бóльшая производительность и последняя капля - сервер BlackCrystal из Windows перекочевал на Linux. Тут и закончилась история Joker'а для mIRC и началась чутка другая.

Joker на Visual Basic (2003-2004)

Эта разработка долгое время пыталась выйти в свет и писалась наравне с mIRCScript'овой версией. Время-от-времени открывался старый код на VB, чуть допиливался и откладывался вновь. На VB ни одного релиза Joker'а не было, хотя помню что функционал Seen я таки осилил.

Joker на PHP (начат в 2010)

На некоторое время позабыв о боте и IRC-сети, я выпал из процесса. Но к хорошему делу приятно вернуться с новыми знаниями и свежим, так сказать, подходом. Я занялся портированием старого функционала на новый лад, не результата ради - а эксперимента для. Чтобы было интереснее, я поставил перед собой ряд задач:

  • Бот должен иметь расширяемый набор функционала (плагины)
  • Подключение новых плагинов и перезагрузка их без остановки бота
  • Возможность передавать информацию между плагинами
  • Примеры самых востребованых возможностей (seen, temp, joke), документация для разработчиков
  • Создание улучшенного парсера RAW-команд протокола IRC
  • Возможность запустить несколько ботов из одной программы, подключив например к разным сетям
  • Возможность передавать информацию между ботами

И работа началась. Работа идёт с большими временными промежутками между частями, по причине лени. Но удовольствие получаю огромное, поэтому рано или позно все части занания будут выполнены.

В данный момент я вишу на четвёртом этапе, занимаюсь плагинами.

Последнюю версию Joker на PHP можно скачать из репозитория Github. Я буду рад замержить ваши старания, если получится что-нибудь интересное, клонируйте проект на здоровье!

Проект освещён в сети на ресурсах:

BlackCrystalЛаборатория → Joker IRC bot

sfMarkitupPlugin

fbHidePoll

Markdown Preview API

sfDoctrineCultureFlagsPlugin

vkInviter

Rame

Classes

µToDo µJaxed

Salabim

Óрум

Joker IRC bot

Правила и соглашение

1999-2009 BlackCrystal ¬|г Clan.    2007-2012 BlackCrystal Ltd.    2011-2012 BlackCrystal Club.