ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Чужие Статьи
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Вводный курс по созданию и настройке Irc ботов
  #1  
Старый 15.10.2006, 02:17
Аватар для KPOT_f!nd
KPOT_f!nd
Познавший АНТИЧАТ
Регистрация: 25.08.2006
Сообщений: 1,524
Провел на форуме:
3405508

Репутация: 1745


Exclamation Вводный курс по созданию и настройке Irc ботов

В данной статье я не буду рассказывать о том, как создать свои скрипты (хотя это не сложно). А по на пальцах расскажу основные принципы.
В статьи я отвечу на следующие вопросы:
Цитата:
1. Что такое бот? Для чего нужен бот ? Какие плюсы бота?
2. Где взять бота и как его установить на свой (или на любой) канал?
3. Основные модули для бота, возможности, скрипты.
4. Настройки бота для каналов.
5. Полезные ссылки.
Начало
Если вы постоянный посетитель IRC или вы фаундер (хозяин) среднего канала и вы задумывались о установки бота на свой канал, но не знали, что это – эта статья для ВАС.
Дело это не простое, но и не очень сложное – в некоторых случаях требует финансового вложения.

Что же такое бот? Основные понятия.
Бот это своеобразный пользователь, который автономно выполняет команды и следить за каналом, а так же находиться на нём ~ 24 часа в сутки.
Плюсы бота:
1. Создаёт некий престиж для канала
2. Следит за флудом (засорением канала) и если у бота есть права наказывает виновного
3. Выполнение довольно важных функций (поиск человека, поиск информации и т.п.)
4. Игрушка, если установлен игровой бот (викторина, анекдот, рулетка и т.п.)

Например мой бот, который находится в сети Dalnet выполняет следующие функции:
!stat - Узнать статистику о себе. !stat - узнать статистику о нике
!top10,!top20 - Узнать топ10/топ20 самых общительных на канале.
!place,!tplace - Узнать какое место вы занимаете, узнать какое место вы заняли сегодня.
!chanplace - Узнать какое место занимает канал на котором вы находитесь.
!seen - !seen Ник - поиск человека.
!peak - Узнать когда было максимальное кол-во человек на канале.
!horolove - покажет любовный гороскоп на сегодня с www.horo.ru.
!today (!сегодня) - покажет звездный гороскоп на сегодня для всех знаков.
!server,!сервер - Данный скрипт позволит узнать какие сервисы запущены на хостинге, где хостится домен.
!whois - Войс домена или ip Пример: !whois www.ya.ru . Вся информация берётся с ripn.net
!port - Коннект на определенный порт. Пример: !port www.ya.ru 80.
!nmap - Сканирует сервер на открытые порты.
!ya - Поискать информацию в Яндекс. Аналог: !yandex,!яндекс.
Это лишь маленький список возможностей МОЕГО бота (более подробно: http://www.sunlim.net/irc/botinfo/help.txt)

Где взять бота и как его установить на свой (или на любой) канал?
Захотели вы установить бота к себе на канал, тут можно пойти двумя способами:
А). Попросить нужного вам бота на специализированных каналах (В разных сетях разные каналы, такие как #bot #bots #eggdrop #eggdrops #egghelp #bothelp). В общем найдёте нужный канал.
Б). Установить бота на шелл (нужно иметь shell-доступ к сайту) и стать его хозяином.
Для начала надо выбрать какой нужен бот – это зависит от того на какой платформе стоит сервер , где будете размещать бота (может быть либо win либо *nix)
Для серверов на Windows – Windrop бот, а для серверов на *nix – eggdrop. Всё предельно ясно, других ботов я даже не рассматриваю.
Про Windrop я тоже писать не буду, так как он менее распостранён, чем egg.

Порядок установки Eggdrop’a на *nix shell:
1. Найти сам шелл. Это может быть хостинг от вашего сайта, где поддерживается доступ по SSH + должен быть установлен пакет TCL.
2. Если вы наши nix’овый шелл переходим далее… Заходим в программу putty выбираем SSH, вводим информацию – коннектимся. Всё предельно просто, попадаем в консоль управления (шелл) -> сразу же советую набрать команду tclsh (этим самым вы узнаете установлен ли TCL модуль (НЕОБХОДИМ), если вы получите приглашение в виде символа "%" то TCL модуль есть (Превосходно), если такого преглашения вы не получите – вы не сможете установить бота.
3. Если вы получили % - сразу пропускайте этот пункт. (УСТАНОВКА TCL ВОЗМОЖНО ТОЛЬКО ИЗ ПОД ROOT АККАУНТА)
Как установить TCL ?
Скачать TCL в исходниках можно с ftp-сайта: ftp://ftp.scriptics.com/pub/tcl/
Порядок сборки TCL:
Распакуйте архив с TCL (tar -zxf tcl8.x.x.tar.gz)
Зайдите в директорию с нужной платформой (cd tcl8.x.x/unix)
Наберите './configure'
Наберите 'make'
Наберите 'make install'

И в /usr/local/lib появится libtcl8.x.x.so, в /usr/local/include директория tcl8.x.x, а в /usr/local/bin cl-shell tclsh.
4. Переходим к установке самого бота.
Сразу посетите следующие ссылки
ftp://ftp.eggheads.org/pub/eggdrop/GNU/ Исходные коды всех версий бота включая последнюю beta-версию
http://geteggdrop.com/ Сразу отдает последний релиз бота
http://johoho.eggheads.org/eggdrop/ Скомпиленные версии бота под разные платформы

Но я советую использовать уже собранный комплект и имеющий основные модули eggdrop1.6.16.rus, собрал человек под ником dRive-r (За это ему большой респект)
Устанавливаем бота:
wget http://...полный путь до бота на сервере/…tar
tar –zxf eggdrop.tar
cd eggdrop
./configure (Конфигурируем бота)
*** Но если собирать нужно с конкретной версией TCL, то указывайте:
./configure --with-tcllib=/libtcl8x.so --with-tclinc=/tcl.h
make config (Для автоматического подключения модулей)
make

Так вроде бота поставили =) Теперь надо настроить бота, чтобы потом его запустить.
В шелле набираем mc и переходим в папку куда мы разархивировали файлы для бота, наводим курсор на файл eggdrop.conf и нажимаем F4 (Это основной файл, где хранится большая часть информации и настроек для Бот’a).
Находим в данном файле строки:

set nick "Nick" <- Ник для вашего бота, советую зарегистрировать данный ник ДО захода бота в сеть.
set altnick "Altnick" <- Альтернативный ник, если основной ник используется
set username "use" <- данные перед @ в хуизе (Идент)
set realname "ICQ: 12345" <- Имя =) Можно вписать, что угодно например ваши контакты.
set allow-desync 1

Дальше находим:
set servers { <- Список серверов на которые должен заходить БОТ
irc.dalnet.ru:6667 <- Сервер для моего бота, ВВЕДЁН для примера.
Irc.web-hack.ru:6667 <- Альтернативный сервер
}

Дальше:
channel add #channel { <- Основной канал для вашего бота =) Это первый канал, куда бот зайдёт. Потом список можно увеличить.
}

Дальше:
set owner "KROT_find" <- Ваш ник, хозяин бота
set admin "nick " <- Ваше мыло
set network "Dalnet.ru" <- сеть, можно не указывать.

Внимание, если вы будете устанавливать бота и хотите, чтобы у него был зарегистрированный ник и его никто не использовал добавьте:
set init-server {putquick "PRIVMSG NickServ :IDENTIFY ПАРОЛЬ"}
*где ПАРОЛЬ = это пароль, который указывался при регистрации Ника*

Данную строку можно ввести в любую часть, например:
set net-type 4

listen 3333 all

set owner "KROT_find"
set admin "nick "
set network "EggdropNet"

set init-server {putquick "PRIVMSG NickServ :IDENTIFY 1234567"}

Вот, вроде основные настройки установлены.
Теперь запускаем бота, в шелле набираем ./eggdrop –m eggdrop.conf (Потом набирать без ключа –m, только ./eggdrop имя.conf)
Бот запустился, сразу вам показывается порт (скорее всего 3333)

Берём любую терминальную программу (например: Putty) и указываем адрес, порт (3333) и коннектимся через терминал к нашему боту.
Из-за того что мы запустили бота с ключём –m он начинает подключаться к серверу, мы это увидем в окне терминала.
В окне набираем команду NEW (для регистрации нового пользователя), тут вас попросят ввести логин и пароль для управления, которые вы будете использовать в будущем для управления ботом.

Бот зашёл на канал, всё отлично – идём дальше.

Основные модули для бота, возможности, скрипты.
Что то такое модули? На этот вопрос я отвечу своими словами: Это те же самые скрипты выполняющие автономные функции, например: Подсчёт кто сколько сказал.
Прописывать модули и скрипты надо в eggdrop.conf, в самом низу:
##### SCRIPTS #####

# This is a good place to load scripts to use with your bot.

# This line loads script.tcl from the scripts directory inside your eggdrop's
# directory. All scripts should be put there, although you can place them where
# you like as long as you can supply a fully qualified path to them.
#

# source scripts/script.tcl

source scripts/название_скрипта.tcl
source scripts/time.tcl
source название_модуля.conf

Существует множество модулей:
Stats, статический модуль – считает кто сколько наговорил на канале, ведёт топ лучших “говорунов”, молчунов, а так же ещё имеет несколько возможностей.
Gseen, поисковый модуль – показывает, когда интересующий вас человек покинул канал.
Это основные модули и СКОРЕЕ всего они будут установлены сразу в вашей сборке.
Есть ещё несколько модулей, но искать их вам надо самим.

Как писать скрипты – я рассказывать не буду, кого это очень интересует изучите сами (Ссылки, где можно почитать о модулях, скриптах, изучить язык tcl я приведу в самом конце).

Настройки бота для каналов.
Когда вы всё настроили и запустили бота он сразу заходит на один канал, чтобы увеличить это кол-во наберите в терминале следующие команды:
.+chan #channel <- Заставить бота на зайти на указанный канал
.-chan #channel <- Заставить бота выйти с канала

Другие важные команды:
.restart <- Сделать рестарт вашему боту
.die <- убить бота, потом надо будет через шелл его заново пускать

После захода бота на канал, он сразу начинает выполнять команды, например: !stat …
Данные команды очень раздражают посетителей, если каждый человек будет набирать данную команду то канал превратиться в помойку.

Как сделать чтобы бот отвечал лично человеку (А не в общий канал), который ввёл команду модуля Stats:
В терминалке наберите .chanset #канал +quietstats

Как сделать чтобы бот отвечал лично человеку (А не в общий канал), который ввёл команду модуля Gseen:
В терминалке наберите .chanset #канал +quietseens +quietaiseens

Вот я описал самый минимум команд, самый минимум команд.
Этой информации хватит лишь, чтобы запустить бота и установить его на канал.
Если вам интересна эта тема и вы хотите изучить язык TCL, посетите ниже приведённые ссылки.

Полезные ссылки.
ftp://ftp.eggheads.org/pub/eggdrop/GNU/ (Исходные коды всех версий бота включая последнюю beta-версию)
http://johoho.eggheads.org/eggdrop/ (Скомпиленные версии бота под разные платформы)
http://www.unseen.org/~simpson/eggdrop/ - (Информационный сайт)
http://windrop.sourceforge.net/ (Windrop версия ботов)
http://forum.hack.su (Русскоязычный форум, где вам окажут помощь, а так же там вы найдёте много tcl скриптов)
http://eggdrop.org.ru (Наверно самый крупный и самый известный русский ресурс о ботах)
http://eggdrop.org.ru/scripts/ (Неплохой выбор скриптов)
http://www. juravlev.inc.ru (Информационный сайт)

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

Так вот сразу пишу копирайты:

Автор: r3bus
Почта: admin[at]sunlim.net
ICQ: 869968
Сайт: http://www.sunlimited.ru
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Irc, добро пожаловать на #antichat madnet Авторские статьи 109 17.06.2010 20:45
Команды Irc. И его сервисы! XDoG Статьи 12 24.06.2009 08:21



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ