İçerikEvent Nedir ? Detaya girilerek anlatılmış bir ders.

ON JOIN
Kanala birisi Girdiginde harekete Geçen event’tir…
Kullanımı:

on seviye:JOIN:#kanal:komutlar

Notlar:

#kanal : Event’in hangi kanalda etkili olacagini belirler.Buraya sadece # yaparsaniz event tüm kanallarda calisir…
seviye : Event’i Seviyelendirilmis kullanicilarda geçerli yapar…Burada * yazarsaniz event tüm kullanicilarda calisir…
komutlar : Event icerisinde uygulacak komutlari belirler…

Örnek:

Mesela /auser 123 UOnur yaparak UOnur nickini 123 seviyeden mircinize Eklediniz ve kanala giren kisi 123 seviyesinde ise ona “hos geldin” gibi bir mesaj atmak istiyorsunuz…Yapacaginiz olay Söyledir..:

on 123:Join:#turkcoders:msg $nick #turkcoders kanalina hos geldin…

ON PART
Kanaldan birisi Ciktiginda harekete Geçen event’tir…
Kullanımı ON JOIN event’i ile aynidir…

on seviye:part:#kanal:komutlar

Az Önce yaptigimiz islemin bir benzerini yapip bu seferde Kanaldan cikan 123 seviyeli kullanicilara “güle güle,yine bekleriz…” mesajini yollayalim.

on 123:Part:#turkcoders:msg $nick güle güle, $chan kanalina yine bekleriz…

Not:

Event’larda $chan olayin geçtigi kanal yerine geçer…Yani yukaridaki ornekte $chan #turkcoders ‘in yerini alir…

ON KICK
Kanaldan birisi atildiginda harekete geçen Event’tir.
Kullanımı:

on seviye:kick:#kanal:komutlar

Örnek:
Mesela biri UOnur #turkcoders nickini kanaldan atarsa bizde Onu kanaldan atalim…

Kod:

on *:Kick:#turkcoders:{
if ($knick == UOnur) {
.kick $chan $nick UOnur Nickini Bu Kanaldan Atamazsin Çünkü O Forumda Moderator…
}
}

Notlar:

Burada $knick Kanaldan atilan Kisi yerine Geçer…
$nick ise Kanaldan atar kisi yerine kullanilir…

ON BAN
Kanaldan Birisi banlandiginda harekete geçen event’tir…
Kullanımı:

on seviye:ban:#kanal:komutlar

Örnek:

Mesela UOnur Nicki #turkcoders ve #mircscripting kanallarinda banlanirsa Önce UOnur’un Banini Acsin Sonrada O Kisiyi Banlayip Kanaldan Atsin…

Kod:

on *:Ban:#turkcoders,#mircscripting:{
if ($bnick == UOnur) {
.mode $chan -b UOnur
.mode $chan +b $nick
.kick $chan $nick UOnur’u Banlayamazsin Çünkü o Forumlarda Moderator…
}
}

Notlar:

Bu Event’te $bnick Banlanan Nick yerine geçer…
Bazen Banlari Kisiye Degilde Adreslere Atariz…
(Mesela: /mode +b #mircscripting *!*@0900.turkcoders.forumlari* gibi…)
O zaman $bnick Geçersiz olur.Bunun yerine Banlanan adresi ifade Eden $banmask gelir…

ON TEXT
Birisi Sizin Bulundugunuz Kanala yada Size Mesaj attiginda Harekete Geçen Event’tir.
Kullanımı:

on seviye:text:karsilasanyazi:#kanal,nick:komutlar

Notlar:

karsilasanyazi : bu Kisinin bize yada bizim bulundugumuz bir kanala mesaj attiginda yazdiklarinin icinde herhangi bir yazi gectiginde Event’in harekete gecmesini istedigimiz Zaman kullanilir… (Asagidaki örnekte oldugu Gibi icinde “selam” yazisi geçerse asagidaki Event calisir…) Buraya * yazdigimizda Event’i kelimelerle sinirlandirmamis oluruz…
#kanal,nick :Bu Bölüm Sayesinde Event’i Dilersek Sadece herhangi bir kanal(lar) yada nick(ler) ile sinirlandirabiliriz…Buraya * yazdigimizda Eventi Kisi yada Kanalla sinirlandirmamis oluruz, Eger Sadece Özele gelen mesajlarla sinirlandirmak istiyorsak ? yazmamiz, kanallarla sinirlandirmak istiyorsak # yazmamiz yeterlidir…

Örnek:

Diyelimki biz UOnur nicki özelimize içinde “selam” geçen bir yazi yazarsa Bizde ona “aa sen Bizim UOnur’musun ?” gibi bir mesaj Gönderelim…

Kod:

on *:text:*selam*:?:{
if ($nick == UOnur) {
msg $nick aa sen Bizim UOnur’musun?
}
}

ON OPEN/CLOSE
Bir Özel/kanal penceresi Açıldığında (ON OPEN) yada Siz bir pencereyi Kapattığınızda (ON CLOSE) Harekete Geçen Event’tir.
Kullanımı:

on seviye:open:#kanal,nick:karsılasanyazı:komutlar
on seviye:close:#kanal,nick:karsılasanyazı:komutlar

ON CONNECT/DISCONNECT
Bir Sunucuya Bağlandığınızda (ON CONNECT) Yada Bir Sunucudan Koptuğunuzda (ON DISCONNECT) Harekete Geçen Event’tir.
Kullanımı:

on seviye:connect:komutlar
on seviye:disconnect:komutlar

Örnek:

Bir Sunucudan Bağlantımız Koptuğunda Aktif Olan Pencere “*** Sunucusundan Bağlantınız Koptu” Gibi Bir yazı Çıksın İstiyoruz…(*** yerine Bağlantının Koptuğu Sunucu)

on *:Disconnect:echo -a $server Sunucusundan Bağlantınız Koptu

Notlar:

$server Olayın Geçtiği Sunucuyu ifade eder.
-a Parametresi Yazının O an açık Olan Pencerede Çıkmasını Sağlar…

ON OP\DEOP
Birisi Sizin Bulunduğunuz Her Hangi Bir kanalda OP olduğunda (ON OP) yada Deop Olduğunda (ON DEOP) Harekete Geçen Event’tir.
Kullanımı:

on seviye:op:#kanal:komutlar
on seviye:deop:#kanal:komutlar

Örnek:

Herkez Sürekli Soruyor.OP Teşekkür Olayı nasıl Oluyor Filan İşte Basit Bir OP Teşekkür Kodu Yazalım…

Kod:

on *:Op:#:{
if ($opnick == $me) {
.msg $chan $nick : Op İçin Teşekkür Ederim…
}
}

Notlar:

$opnick ON OP’ta Op olan kişiyi, ON DEOP’tada Deop olan kişiyi ifade Eder.
$nick ise ON OP’ta Op yapan yada ON DEOP’ta Deop yapan Kişiyi ifade eder.
$me Bilindiği gibi Bizim Nick’imizi İfade Eder ;)
$chan ı Söylemiyorum Artık.Onun ne İşe yaradığını Hala Öğrenemediysek Bırakalım bu işleri :)

ON VOICE\DEVOICE
Birisi Sizin Bulunduğunuz Her Hangi bir Kanalda Voice Olduğunda (ON VOICE) yada Devoice Olduğunda (ON DEVOICE) Harekete Geçen Event’tir.
Kullanımı:

Kullanımları ON OP\DEOP Event’larıyla Aynıdır…
Sadece $opnick yerine voice\devoice Olan kişiyi $vnick ifade Eder…

on seviye:voice:#kanal:komutlar
on seviye:voice:#kanal:komutlar

ON HELP\DEHELP
Birisi Sizin Bulunduğunuz Kanalda Help yada Halfop Olduğunda (ON HELP) Dehelp yada Dehalfop Olduğunda (ON DEHELP) Harekete Geçen Event’tir.
Kullanımı:
ON VOICE\DEVOICE ve ON OP\DEOP Event’larıyla Kullanımı Aynıdır…
Bundada Tek Değişen $hnick yani Halfop Olan Nick’tir…

on seviye:help:#kanal:komutlar
on seviye:dehelp:#kanal:komutlar

Örnek:

Bu Event’ın Kullanıldığına Pek Rastlamadım Ama Halfop için’de bir Tane Teşekkür Kodu Yapalım

Kod:

on *:Help:#:{
if ($hnick == $me) {
.msg $chan $nick : Halfop İçin Teşekkürler :) Yarım filan idare Edecez Artık.
}
}

ON INVITE
Birisi Sizi Herhangi Bir Kanala Davet Ettiğinde Harekete Geçen Event’tır.
Kullanımı:

on seviye:invite:#kanal:komutlar

ON NICK
Birisi Nick Değiştirince Harekete Geçen Event’tır.
Kullanımı:

on seviye:nick:komutlar

Örnek:

Diyelimki Birisi Nick Değiştirdiğinde “*** nick Değiştirdi Yeni Nicki : ” gibi Bir Yazı Çıksın.

Kod:

on *:Nick:{
echo -a $nick Nick Değiştirdi Yeni Nicki : $newnick
halt
}

Notlar:
$newnick adındanda Biraz Anlaşıldığı Gibi Değişen Nicki İfade Eder…
halt Öncedende Anlattığım gibi ON NICK Event’larını Sonlandırır…

ON MODE
Sizin Bulunduğunuz Her Hangi Bir Kanalın Modları Değiştiğinde Harekete Geçen Event’tir.
Kullanımı:

on seviye:mode:#kanal:komutlar

Örnek:

Diyelimki Birisi #turkcoders kanalının Modlarını Değiştirirse “*** nickli Kişi Kanalın Modunu Değiştirdi.Modlar : ” gibi Kanalın Modlarınında Yazdığı bir mesaj Çıkaralım…

Kod:

on *:Mode:#turkcoders:echo -a $nick Kanalın Modunu Değiştirdi.Modlar : $1-

Not:

$1- Burada Değişen Modları Belirtir…

ON SERVERMODE Eventi İle Görevi ve Kullanımı Aynıdır…

ON USERMODE
Bu Event Bizim Modumuz Değiştiğinde Harekete Geçer…
Kullanımı:

on seviye:usermode:komutlar

Örnek:
Az Önce ON MODE’da yaptığımız İşi Bu Kez Bunda Yapalım…

Kod:

on *:Usermode:echo -a Modunuz Değişti.Modlar : $1-

ON SERVEROP
Server Tarafından Sizin Bulunduğunuz Bir Kanalda Biri OP Olduğunda Harekete Geçen Eventtir.
Bazen
* irc.turkcoders.com sets mode: +o UOnur
Gibi Mesajlar Görürsünüz İşte O Anlattığım Olaydır.
Kullanımı :

on seviye:serverop:#kanal:komutlar

ON RAWMODE
Sizin Bulunduğunuz Bir Kanalda Biri Başka Birinin Modunu Değiştirdiğinde Harekete Geçen Eventtir.
Kullanımı:

on seviye:rawmode:#kanal:komutlar

Örnek:

Diyelimki birisi Sizin Modunuzu Herhangi bir Kanalda +v yaparsa Siz Bu Modu -v Yapın…

Kod:

on *:Rawmode:#:{
if ($1 == +v) && ($2 == $me) {
mode $chan -v $2
}
}

ON QUIT
Sizin Bulunduğunuz Bir Kanaldan Birisi IRC’den Çıkarsa Bu Event Harekete Geçer…
Kullanımı:

on seviye:quit:komutlar

Gayet Basit Bir Kullanımı vardır.

Örnek:

UOnur IRC’den Çıkarsa Yazı Çıksın.

Kod:

on *:Quit:{
if ($nick == UOnur) {
echo -a $nick IRC’den Ayrıldı…
}
}

ON NOTIFY\UNOTIFY
ON NOTIFY Notify Listesindeki birinin Sunucuya Bağlandığında Harekete Geçer…
ON UNOTIFY ise Tam tersi.Notify Listesindeki birisi Sunucudan Koparsa Harekete Geçer…

Kullanımlar:

on seviye:notify:komutlar
on seviye:unotify:komutlar

Örnek:
UOnur (yani ben :p) Sizin Notify Listenizde ve O Sunucuya Bağlandığında “UOnur Bağlandı.” Çıktığında “UOnur Koptu” Gibi Bir yazı Çıksın…

Kod:

on *:Notify:{
if ($nick == UOnur) {
echo -a UOnur Bağlandı.
}
}
on *:UNotify:{
if ($nick == UOnur) {
echo -a UOnur Koptu.
}
}

Fazladan Notify Bilgisi:

Listeye Kişi Eklemek için: /notify nick not
Kişi Silmek için: /notify -r nick
Listeyi Girmek İçin: /notify -l
Bu özelliği Kapatmak için: /notify off
Açmak için: /notify on