Об IRC. Доступно и со вкусом.

Пишем приват скриптик

Итак, сегодня рассмотрим один из самых распространенных вопросов, "Как автоматически послать сообщение, когда кто либо заходит к нам в приват"
Итак для разминки простенький скриптик, который будет отвечать вошедшему к нам в приват.
Вставляем в ремоуты(Remote):

on *:open:?:*: msg $nick Здравствуйте, вы вошли ко мне в приват. Погодите немного, я скоро отвечу..

Также, многие любят чтоб при закрытии окна привата, собеседнику писало или кидало нотис о том что приват закрыт, делается это следующим образом:

on *:close:?: .notice $nick Приват с вами закрыт. Спасибо за внимание.

Кстати, стоит заметить, тем кто не знал точка(.) перед командой обозначает, что мы не увидим результата вывода команды.
На пример, если написать в эдитбоксе /timer 1 1 echo -a test, то мы увидим наподобие этого:
* Timer 1 activated
-
test
-
* Timer 1 halted
Если же написать /.timer 1 1 echo -a test, то мы увидим просто test.

Ну вернемся к нашим баранам, т.е. к приватам ;)
Сейчас мы напишем более продвинутый скриптик, который будет показывать нам диалог с ником зашедшего в приват и текстом который он написал. Вставляем опять же в ремоуты:

on *:open:?:*:{
; запоминаем ник открывшего приват
set %fr.user $nick
; запооминаем текст привата
set %user.text $1-
; открываем диалог
dialog -moa FriendPrivat FriendPrivat
}

dialog FriendPrivat {
size -1 -1 300 100
title Ник %fr.user открыл приват с вами
box "Текст привата", 5, 5 1 290 70
text %user.text, 1, 10 15 280 40, center
button "Отвечу", 3, 55 75 90 20, flat, ok
button "Не отвечу",4,155 75 90 20, flat, ok
}
on *:DIALOG:FriendPrivat:sclick:*:{
; если принимаем
if ($did == 3) {
; открываем на весь экран мирк, малоли он свернут
showmirc -xs
; закрываем диалог
dialog -ux $dname $dname
; шлем нотис
.notice %fr.user Ваш приват принят
}
; если нет, закрываем приват и отписываемся юзеру
if ($did == 4) { .notice %fr.user Ваш приват отклонен | close -m %fr.user }
}

На этом пока все, удачи.