Приветствую Вас, Гость! Регистрация RSS

QipClub

Суббота, 28-09-2024
Главная » 2008 » Апрель » 20 » QIP Bot
11:07:28
QIP Bot
Представляю вашему вниманию совершенно бесцельный плагин QIPBot.

Плагин автоматически отвечает на сообщения собеседников, используя регулярные выражения (Perl-типа).

Шаблоны берутся из файла reg.txt. Синтаксис таков:

Code:Регулярное выражение
Белый список UIN-ов через точку с запятой (необязательно)

Ответ 1

Ответ 2 и т. д.

<Пустая строка>

Регулярное выражение

<...>
и так далее.

При получении сообщения плагин проверяет собеседника на наличие в белом и отсутствии в черном списках (по желанию пользователя), затем ищет первое присутствующее в сообщении регулярное выражение. После, производит замену по правилу, описанному в поле «ответ» (если их несколько, выбирается случайно) и отправляет сообщение обратно. Тот, кто знаком с Perl-регулярными выражениями, все понял :)
Ответ отправляется только если вы видимы для всех, или для всех кроме невидящих. Бот работает и в ICQ, и в Jabber'е с Mail'ом.

Примеры использования (самые примитивные, на самом деле у регулярных выражений возможностей масса):

Code:
^(?i)(.*)http://.{1,}$

Боян!

Баян.
Отправляет слово «боян», в ответ на любую ссылку.

Разберем пример:
^ — начало сообщения, нужно ставить, чтобы замена исключала из ответа само сообщение.
(?i) — модификатор, включает регистро-независимый режим.
(.*) — любое количество любых символов. Точкой обозначается любой символ, а звездочкой - любое количество.
http:// — текст, обычно присутвующий в ссылке.
.{1,} — любые символы в количестве от 1 до бесконечности.
$ — конец сообщения.

Code:
^(?i)(.*)(http://|www\.)(.*)\.(.{1,5})(.*)$
Более сложная версия.

Code:
^(?i)Привет.{0,3}$

Здравствуй.
Здоровается со всеми.

Code:
^(?i)Ты (.{1,9})(!{0,})$
Сам $1!

Сам ты $1
Отвечает на сообщения вида «ты *!» сообщением «сам ты *». Например:
— Ты дурак.
— Сам дурак!

Code:^(.*)$
123456;654321
Ну $1. И че дальше?
Отвечает пользователям 123456 и 654321 на любую реплику "Ну <реплика>. И че дальше?".

Изучить построение регулярных выражений можно в приложенном справочном файле компонента RegExp (который, кстати, использовался в проекте), раздел «синтаксис», либо в википедии.

Приветствуется выкладывание в эту тему своих шаблонов, дающих интересные способы применения плагина :).

Версия 0.6
— Несколько мелких исправлений.

P. S. Появление проекта практически одновременно с плагином sBoltun совершенно случайно, я даже не заходил на форум :)
File Type: png qipbot0.6.png (33.3 KB, 100 views)
File Type: rar QIPBot0.6.rar (247.3 KB, 122 views)
File Type: rar QIPBot0.6_src.rar (52.6 KB, 36 views)

Категория: Плагины | Просмотров: 1542 | Добавил: Qipclub | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]