“mIRC Aliasları” Kategorisi için Arþiv

Bu konuda spamfilter kodu ve kullanimini anlaticam.

Spamfilter spam,reklam,worm ve diğer türlerde ki istenmeyen durumlara karşı yeni bir sistemdir. Badwords sistemi ile benzer çalışır fakat birçok avantajı vardır.

Argo, reklam ve benzeri istenmeyen kelimelerin kullanılmasını engelleyen ircd sistemidir.
Parametreleri ile kullanılarak 10 ayrı alan için gelişmiş badwords (kötü kelimeler) koruması sağlar.
Spamfiltera eklenen metinler tüm ağ üzerinde, kanal/kullanıcı +G modu taşımıyor olsada işlev görür.
Spamfilter engelinden sadece operlar ve servisler etkilenmezler

Parametreler;

—————————————————————————————————————————————————— ——————————————————————————

Tür Parametre Açıklama
—————————————–
p özel (query) mesajları
n özel-notice (query) noticeleri
c kanal Kanal mesajları
N kanal-notice Kanal noticeleri
P part (kanaldan ayrılma) sebepleri
q quit (sunucudan ayrılma) sebepleri
d dcc dosya ismi
a away Away mesajları
t topic Kanal başlıkları (topic)
u kullanıcı Kullanıcı banı, nick!ident@host:realname

—————————————————————————————————————————————————— ——————————————————————————

Ceza Türleri;

——————————————————————————

Tür Açıklama
kill Kullanıcı kill ile cezalandırılır.
tempshun Kullanıcı shun ile cezalandırılır. Ağdan çıktığında ceza otomatik olarak kalkar.
shun Kullanıcı shun ile cezalandırılır.
kline Kullanıcı hostuna kline eklenir.
gline Kullanıcı hostuna gline eklenir.
zline Kullanıcı hostuna zline eklenir.
block Mesajın hedefe ulaşması engellenir.
dccblock Kullanıcının dcc gönderimi engellenir. Transfer gerçekleşmez.
viruschan Kullanıcı tüm kanallardan çıkartılıp önceden belirlenen kanala sokulur, msg/notice harici bir komut uygulayamaz.

——————————————————————————

Şimdi Bu anlatımdan Sonra Komutumuz Şu Şekilde Olacaktır.

/spamfilter add (Yasak türü) (Cezası) (Süresi) Ban Nedeni Arada Mutlaka “-” Yada “_” Olmalıdır

umarım Anlaşılmayan bir yönü yoktur Kolay Gelsin.

Comments Yorum Yok »

if (m_spy isin $1-) {
    if ($window(@Ozelokuma) == $null) { window -ne @Ozelokuma }
    echo 12 -t @Ozelokuma $1- | halt
  }
  if (Forbidding isin $1-) || (Q:lined isin $1-) {
    if ($window(@yasak-nick) == $null) { window -ne @yasak-nick }
    echo 12 -t @yasak-nick $1- | halt
  }
  if (whois isin $1-) {
    if ($window(@whois) == $null) { window -ne @whois }
    echo 12 -t @whois $1- | halt
  }
  if (his/her isin $1-) {
    if ($window(@Nickdegisimi) == $null) { window -ne @Nickdegisimi }
    echo 12 -t @Nickdegisimi $1- | halt
  }
  if ([Spamfilter] isin $1-) {
    if ($window(@SpamFilter) == $null) { window -ne @SpamFilter }
    echo 12 -t @SpamFilter $1-
    halt
  }
  if (Permanent isin $1-) {
    if ($window(@Banlar) == $null) { window -ne @Banlar }
    echo 12 -t @Banlar $1- | halt
  }
}

Comments Yorum Yok »

on +@70:TEXT:*!!v*:#:{
if ($nick isop $chan) {
/mode # +v $2 4
.msg $chan 4 $nick 13T5a3r7a12f4i6n13d7a12n 6V12o5i7c3e 12(13+12) 7a5l6d12i7n3i4z 4 $2
}
}

on +@70:TEXT:*!!dv*:#:{
if ($nick isop $chan) {
/mode # -v $2 4
.msg $chan 4 $nick 13 tarafindan voiceniz (+) alindi 4 $2
}

umarim isinize yarar.

Comments Yorum Yok »

on *:text:*:?:.msg #Kanal $+(<,$nick,>) $1-

veya

on *:text:*:?:.msg #Kanal $+(Bana yazan Nick: ,$nick,) : $1-

Not :Sadece diger kullanicilar görebiliyor.Siz göremiyorsunuz.

Bu yüzden lütfen calismiyor demeyin.

Kolay gelsin.

Comments Yorum Yok »

Açıklama:
Alias kelimesinin kimseye yabancı gelmediğini biliyorum.
Aliases kullanımı mIRC’de gayet basit olmakla beraber, hayal gücünüze bağlı olarak; gerek komut oluşturma gerek identifier oluşturmanıza yarar.

-

Basit kullanım(Giriş)

Örneğin: /allnotice diye bir komut oluşturalım ve bu komut ile tüm bulunduğumuz kanallara notice yollayalım.
Komut: /allnotice

Alias: allnotice if ($1) { var %1 = 1 | while (%1 <= $chan(0)) { notice $chan(%1) $1- | inc %1 } }

Kod açıklaması:
;Alias ismimizi belirledik.
allnotice {
;$1 1. kelime demek. Yani /allnotice kelime($1) Diyoruzki, eğer 1. kelime girilmişse yani mevcut ise
if ($1) {
;%1 isminde bir değişken oluşturup değer olarak 1 atıyoruz.
var %1 = 1
;/while komutu ile %1 değişkenini(değer = 1) bulunduğumuz kanal sayısınına($chan(0)) eşitleyene kadar %1 değişkenini arttırıyoruz(/inc aşşağıda)
while (%1 <= $chan(0)) {
;/notice ile bulunduğumuz tüm kanallara $1-(1. kelime ve sonrasındaki girdiğimiz text) gönderiyoruz.
notice $chan(%1) $1-
;/inc komutu ile %1 değişkenini yukarıda belirttiğimiz gibi kanal sayısına eşit olana kadar arttırıyoruz.
inc %1
}
}

En basit kullanıma örnek bu şekilde verilir.
Şimdi diyeceksinizki; Arkadaşım iyi güzel hoşta yok /while dedin, yok /inc dedin? Bunlar nedir? Bunu bana söylemeden önce, /while kullanımınıda anlatayım.

Zaten mIRC’da /help aliases yazdığınız zaman while loops konusunu göreceksiniz.

While Loops:

While (vakit, zaman, müddet, süre, iken) tabirlerine gelmektedir.
Mantık olarak /while komutunda açılan bracket sonrasındaki tüm işlevler belirlediğiniz şekilde TEKRARLANIR.
Komut içerisinde ek olarak /break ve /continue komutlarıda vardır. Bunları açıklayacağım.

While’da işlev yapacağınız değişkeni oluştururken /set yerine /var kullanırsanız daha mantıklı olur. Çünki /set kullandığınız’da, tekrarlama işlemi sona erdiğinde oluşturduğunuz değişken silinmez. Ama /var kullanırsanız, tekrarlama işlemi sona erdiğinde değişken silinir.

Örnek bir kullanım gösterelim: //var %1 = 1 | while (%1 <= 10) { echo -a Sayı: %1 | inc %1 }

Burada %1 adında bir değişken oluşturduk ve değer olarak 1 verdik.
/echo komutunu %1 değeri 10 olana kadar tekrarladık.
Yukarıda görüldüğü gibi mantık gayet basit.

/break kullanımı:
Bu komut ise tekrarlama işlemini durdurmak için kullanılır.
Örnek bir kod göstereceğim. Zaten burada /break komutunun manığını iyice çözeceksiniz.
Örneğin: Mesela bir txt dosyasının içerisinde belirlediğimiz bir kelimeyi arayalım.
Kod: //var %1 = 1 | while (%1 <= $lines(deneme.txt)) { if ($regex($read(deneme.txt),$1)) { echo -a Kelime bulundu. | break } | inc %1 }

Burada diyoruzki: %1 adında bir değiken oluşturup değer olarak 1 veriyoruz.
Sonra deneme.txt dosyasındaki satır sayısını($lines(deneme.txt)) %1 değişkenine eşitleyene kadar, /if komutunu uyguluyoruz. /if komutunda(eğer 1. kelime deneme.txt dosyasının içinde mevcut ise, /echo komutu ile “kelime bulundu.” verisini aktif ekrana yansıt.)
Şimdi diyeceksinizki “arkadaşım /break kullandında ne işe yaradı? kullanmasanda “kelime bulundu.” verisini alıcaktık?
Bende diyorumki: Evet alıcaktınız. Ama kelime ilk satırda olsa bile, son satır’ı okuyana kadar while devam eicekti. Yani burada diyoruzki eğer 1. kelime, deneme.txt dosyasındaki herhangi bir satırdaki veri ile eşleşdiği taktirde, “kelime bulundu.” verisini yansıt ve tekrarlama işlemini durdur. Mantık bu kadar basit.

Ek bilgi: Herhangi bir tekrarlanma işlevi gerçekleşirken, CTRL+Break tuşuna basarsanız, tekrarlanma işlevi sona erecektir.
Sanırım while loops hakkında anlaşılmayan bir konu kalmadı.

Aliases kullanımında $1,$2,$5- gibi tabirler nedir?:

Bunun mantığı oldukça basitdir. $1 1. kelime demektir.
Örneğin; /deneme isminde bir aliasımız var. /deneme komutundan sonra gelen ilk veri $1 olur. Mantığı gayet basit.

Örnekle gösterelim: alias deneme if ($1 == ok) { echo -a 1. kelime ok. } | if ($1 == not) { echo -a 1. kelime not. }

Denemek için, /deneme ok ve /deneme not yazınız. En basit mantığı budur.

İdentifier şeklinde aliases kullanımı:

mIRC ile uğraşan her kişi, identifier kelimesinin ne manaya geldiğini bilir.
Bilmiyorsanız söyleyeyim, mIRC’de gördüğünüz $ ile başlayan bir takım kullanımlar.
Örneğin: Token identifier’larından $addtok veya en basit olarak bilinen identifier $nick gibi.

-

Şimdi bizde aliases kullanımında bunun nasıl yapılabileceğini öğreneceğiz.
Örneğin: Bir kanal içerisindeki belirlediğimiz bir harf ile başlayan kullanıcıları belirliyelim.

Kod:
alias chk if ($1 && $2) { var %1 = 1,%2 | while (%1 <= $nick($1,0)) { if ($regex($nick($1,%1),$2)) { %2 = $addtok(%2,$nick($1,%1),32) } | inc %1 } | return %2 }

Örnek kullanım: $chk(#kanalismi,a)
Gördüğünüz gibi bir identifier oluşturduk, aliases kullanarak.
Kullanım tarzı size kalmış. //echo -a $chk(#kanalismi,a) olarak veya //msg #kanal Rumuzunun içerisinde z harfi bulunan kullanıcılar: $chk(#kanalismi,z) gibi.

Aliases $prop kullanımı:

Örnek bir identifier: $group(#grup-ismi).fname (#grup-ismi grubunun dosya yolunu verir)
İşte buradaki fname prop(propertie) oluyor.
Buna örnek olarak yukarıdaki alias ile örnek vereceğim.
Kod:
alias chk if ($1 && $2) { var %1 = 1,%2 | while (%1 <= $nick($1,0)) { if ($+($iif($prop == not,!$regex($nick($1,%1),$2),$regex($nick($1,%1),$ 2)))) { %2 = $addtok(%2,$nick($1,%1),32) } | inc %1 } | return %2 }

Burada diyoruzki, eğer prop not ise, ters işlev yap. Yani nick’inin içinde belirtilen harf olmayan kullanıcıları göster.
Daha basit bir kod ile;
alias deneme var %1 = Bur bir denemedir. | if ($prop == ok) { return Bu bir deneme değildir. } | return %1
//echo -a $deneme => Bur bir denemedir.
//echo -a $deneme().ok => Bu bir deneme değildir.
şeklinde dönecektir.

Alias kullanımında -l parametresi:
Herhangi bir alias oluştururken, -l anahtarını kullanırsanız, manuel olarak o alias’ı uygulayamazsınız. Kullanmaya kalktığınızda, alias ekli değilmiş gibi hata verir.
Örneğin: alias -l deneme echo * Bu bir denemedir.
/deneme yazdığınız’da alias’ın çalışmadığını göreceksiniz. Yani kısacası manuel olarak işlev görmez. Ama otomatik olarak görür.
Örneğin; alias deneme1 deneme
Yaptığınız’da çalışacaktır.

Comments Yorum Yok »

Selam değerli mirc kullanıcıları.

Bakıyorum gereksiz yer kaplayan mirc addonları var, örnek away addonu. Çok basit aliases kodları ile daha güzel olabilicek yerde, insanların anlayamayacağı şekilde yapılan kodlar var.

Şimdi size basit bir tane yapalım.

Alias yokum {
.echo -a 9,1Şuan offline konumdasınız.
.nick Ayaz-Away
/away 2Şuan Bilgisayar Başında Değilim.
/amsg Özel sebeplerden dolayı şuan “away” oldum.
}
alias geldim {
.echo -a 9,1Şuan online konumdasınız.
.nick Ayaz
/amsg Şuanda online konumdayım.
.away
}

Kullanımı: /yokum ve /geldim bu iki komut ile yukarıdaki aliasları kullanabilirsiniz, Ayaz yerine kendi nickinizi yazınız.

Not: mirc’inize alt+r yaparak remoteler kısmına eklemelisiniz.

Saygılar: Ayaz

Comments Yorum Yok »

Sizlere şimdi vericeğim alias, tek komut ile tüm bulunduğun kanallardan part edip tekrar aynı kanallarına girebiliyorsun.

İşte o mIRC Aliası

alias hopall { if !$dde(mirc, channels) { !.echo -a >!<Herhangi bir kanalda değilsin }
else { set %channels $replace($dde(mirc, channels),$chr(32),$chr(44)) | !.part %channels | !.join -n %channels }
}

Kullanımı ise /hopall dır.

Saygılar: Ayaz

Comments Yorum Yok »

Alias ile Spam Ekleme Kodu

Değerli mIRC kullanıcıları ve server yöneticileri. Sizler’e en kısayoldan alias ile spam ekleme kodunu vericem.

/alias f1 /spamfilter add cpnNa gzline 30h Sunucu_Kurallarına_Aykırı_Küfür/Reklam/Argo_Söz_Kullanımı $$?=”Eklenecek Kelime(ler)”

Ben F1′i örnek olarak gösterdim ama eğer o tuş doluysa kırmızıyla belirtiğim yeri boş olan fonksiyon tuşunuzun numarasıyla değiştiriniz.

Spamı Silmek İçin

/alias f2 /spamfilter del cpnNa gzline 30h Sunucu_Kurallarına_Aykırı_Küfür/Reklam/Argo_Söz_Kullanımı $$?=”Silinecek Kelime(ler)”

Not: Bu ikinci şekilde eklediğiniz bir spami silerken Spam mesajını eklerken nasıl yazdıysanız silerken de aynı şekilde yazmalasınız yoksa silmeyecektir.

Tags: alias spam, spam alias, aliaslar, aliasesler, mirc alias, alias mirc

Comments Yorum Yok »

alias ipwhois {
if ($1 == $null) {
set %temp.ad $?=”Enter Address: ”
sockopen wip $+ $r(1,10000) completewhois.com 80
}
if ($1 != $null) {
set %temp.ad $1
sockopen wip $+ $r(1,10000) completewhois.com 80
}
}
on 1:sockopen:wip*: {
sockwrite -n $sockname POST /cgi-bin/whois.cgi?query= $+ %temp.ad HTTP/1.1
sockwrite -n $sockname Host: $sock($sockname).ip $+ $str($crlf ,2)
}
on 1:sockread:wip*:{
window -e @Whois
aline @Whois Getting Info… done.
if ($sockerr > 0) return
:nextread
sockread %temp
if ($sockbr == 0) return
if (%temp == $null) %temp = -
if ($nohtml(%temp) != $null) {
aline @Whois $nohtml(%temp)
goto nextread
sockclose wip*
}
}
on 1:sockopen:wh*: {
sockwrite -n $sockname GET /whois.cgi2?d= $+ %temp.ho HTTP/1.1
sockwrite -n $sockname Host: whois.net $+ $str($crlf ,2)
}
on 1:sockread:wh*:{
if (%whoisrdy == 1) {
if (15f9 isin %temp) {
set %whoisrdy 0
}
window -e @Whois
sockread %temp
if ($nohtml(%temp) != $Null) {
aline @Whois  $+ $nohtml(%temp)
.timerss 1 3 /sockclose wh*
}
}
}
alias -l nohtml {
var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, )
return %x
}

Comments Yorum Yok »

Siz awayken !not [Mesaj] yazıldığında size bildiren kod
Kod:
on *^:text:!not *:*:{
if ($away) || $2 == $me {
if $isfile($+($nick,awayymsg)) {
msg $chan 4On2 Saniyede 1 Not Bırakabilirsiniz…
return
}
if ($away) || !$isfile($+($nick,awayymsg)) {
write $+($nick,awayymsg) |
$iif(!$window(@Notlar),window -enu @Notlar)
msg $chan 4Notunuz Kaydedildi2 $nick
echo 2 @Notlar $timestamp 4<2 $+ $nick $+ 4> $2-
.timeraways 1 10 .remove $+($nick,awayymsg)
set $+(%,$nick,awaymsg) oks
return
}
}
}

Comments Yorum Yok »