IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Hazır Kodlar (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/)
-   -   Bir kanal'ı takip etmeye ne dersiniz? (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/40002-bir-kanali-takip-etmeye-ne-dersiniz.html)

L4roXyL 26 Ekim 2007 08:46

Bir kanal'ı takip etmeye ne dersiniz?
 
Tarih: 26 Ekim 2007 Cuma

Kod'un amacını açıklamak istiyorum;
Bir kanal'ı takibe aldınız diyelim? Bu kod bu kanal'da neleri takip eder?

1- Kanal'da voice/halfop/op veren veya alanları.(Tarihleri dahil)
2- Kanal'da ban atan/atılan veya banı açan/açılan'ları.(Tarihleri dahil)
3- Kanal'da atılan ban sayısını.
4- Kanal'a giren kullanıcı sayısını.
5- Kanal'dan çıkan kullanıcı sayısını.
6- Kanal'da bulunupta IRC'den çıkan sayısını.
7- Kanal'a kaç satır text gönderdildiğini.
8- Kanal'da kimin ne zaman nick değiştiğini.(Tarihleri dahil)
9- Kanal'da ne zaman kim tarafından mod değiştirildiğini.(Tarihleri dahil)

Ek özellikler;
/kns #kanalismi yazarak kanal'da kimin kaç satır yazı yazdığını,
/nik #kanalismi yazarak kanal'da kimin ne zaman nick değiştiğini ve yeni nick'ini,
/unbn #kanalismi yazarak kanal'da kim tarafından ne zaman ban açıldığını,
/bn #kanalismi yazarak kanal'da kim tarafından, ne zaman ban atıldığını,
/md #kanalismi yazarak kanal'da kimin, ne zaman, hangi modu, değiştirdiğini,
/yetki #kanalismi yazarak kimin kime ne yetki verdiği, tarihleri ile beraber
öğrenebilirsiniz.

/sıfırla yazarak tüm kayıtları sıfırlıyabilirsiniz.

Kod:

alias takip {
  if !$1 { echo -at Takip listesine alınacak kanal'ı girmediniz. Kullanım şekli; $+($chr(2),/takip #kanalismi,$chr(2)) | halt }
  if $hget($1) { echo -at $+($chr(2),$1,$chr(2)) kanal'ı zaten takip listesinde. | halt }
  if $me !ison $1 { echo -at $+($chr(2),$1,$chr(2)) kanalında bulunmuyorsunuz. | halt }
  else { hmake $1 100 | echo -at $+($chr(2),$1,$chr(2)) kanal'ı takip listesine eklendi. }
}
on *:quit: { var %1 = 1,%2 = $comchan($me,0) | while %1 <= %2 { if $hget($comchan($me,%1))  { hinc $v1 $+(ayr,½,$v1) 1 } | inc %1 } }
on *:nick: { var %= 1,%& = $comchan($me,0) | while %= <= %& { if $hget($comchan($me,%=)) { var %o = $v1 | hinc $v1 $+(nck,½,$v1) 1 | ekle $+(%o,nick,.txt) | write $+(%o,nick,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Nick: $+($chr(2),$nick,$chr(2)) - Yeni nick: $+($chr(2),$newnick) } | inc %= } }
on !*:join:#: { if $hget(#) { hinc # $+(grs,½,#) 1 } }
on *:part:#: { if $hget(#) { hinc # $+(cks,½,#) 1 } }
on *:text:*:#: { if $hget(#) { hinc # $+(yz,½,#) 1 | hinc -m $+(yazı,#) $nick 1 } }
on *:ban:#: { if $hget(#) { hinc # $+(ban,½,#) 1 | ekle $+(#,ban,.txt) | write $+(#,ban,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Banlıyan: $+($chr(2),$nick,$chr(2)) - Banlanan: $+($chr(2),$banmask,$chr(2)) } }
on *:unban:#: { if $hget(#) { hinc # $+(unbn,½,#) 1 | ekle $+(#,unban,.txt) | write $+(#,unban,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Ban açan: $+($chr(2),$nick,$chr(2)) - Banı açılan: $+($chr(2),$banmask) } }
on *:voice:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(vc,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Voice veren: $+($chr(2),$nick,$chr(2)) - Voice olan: $+($chr(2),$vnick,$chr(2)) } }
on *:op:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(op,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Op'u veren: $+($chr(2),$nick,$chr(2)) - Op olan: $+($chr(2),$opnick,$chr(2)) } }
on *:help:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(hlp,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Halfop'u veren: $+($chr(2),$nick,$chr(2)) - Halfop olan: $+($chr(2),$hnick,$chr(2)) } }
on *:devoice:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(devc,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Voice'u alan: $+($chr(2),$nick,$chr(2)) - Voice'u alınan: $+($chr(2),$vnick,$chr(2)) } }
on *:deop:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(deop,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Op'u alan: $+($chr(2),$nick,$chr(2)) - Op'u alınan: $+($chr(2),$opnick,$chr(2)) } }
on *:dehelp:#: { if $hget(#) { hinc # $+(yetki,½,#) 1 | hinc # $+(dehlp,½,#) 1 | ekle $+(#,yetkiler,.txt) | write $+(#,yetkiler,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Halfop'u alan: $+($chr(2),$nick,$chr(2)) - Halfop'u alınan: $+($chr(2),$hnick,$chr(2)) } }
on *:mode:#: { if $hget(#) { hinc # $+(md,½,#) 1 | ekle $+(#,mode,.txt) | write $+(#,mode,.txt) Tarih: $+($chr(2),$date - $time,$chr(2)) Mod değişen: $+($chr(2),$nick,$chr(2)) - Değişen mod: $+($chr(2),$1-,$chr(2)) } }
alias rapor {
  if !$1 { echo -at Rapor alınacak kanal ismini girmediniz. Kullanım şekli; $+($chr(2),/rapor #kanalismi,$chr(2)) | halt }
  if !$hget($1) { echo -at $+($chr(2),$1,$chr(2)) kanal'ı takip listesinde değil. | halt }
  else {
    echo -a $+($chr(45),$chr(32),[,$chr(2),$1,$chr(2)) kanal'ı için istatist'likler] -
    echo -a -
    echo -a - Prefixler $+($chr(40),$iif($hget($1,$+(yetki½,$1)),$+($chr(2),$hget($1,$+(yetki½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),$chr(41))
    echo -a - [Voice: $+($iif($hget($1,$+(vc½,$1)),$+($chr(2),$hget($1,$+(vc½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),]) - [OP: $+($iif($hget($1,$+(op½,$1)),$+($chr(2),$hget($1,$+(op½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),]) - [Halfop: $+($iif($hget($1,$+(hlp½,$1)),$+($chr(2),$hget($1,$+(hlp½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),])
    echo -a - [Devoice: $+($iif($hget($1,$+(devc½,$1)),$+($chr(2),$hget($1,$+(devc½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),]) - [DEOP: $+($iif($hget($1,$+(deop½,$1)),$+($chr(2),$hget($1,$+(deop½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),]) - [Dehalfop: $+($iif($hget($1,$+(dehlp½,$1)),$+($chr(2),$hget($1,$+(dehlp½,$1)),$chr(2)),$+($chr(2),0,$chr(2))),])
    echo -a - Kim kime ne zaman ne yetkisi vermiş/almış? Görmek için: $+($chr(2),/yetki $1,$chr(2)) yazınız.
    echo -a -
    echo -a - Giren kullanıcı sayısı: $iif($hget($1,$+(grs½,$1)),$+($chr(2),$hget($1,$+(grs½,$1))),$+($chr(2),Giren kullanıcı yok.))
    echo -a - Ayrılan kullanıcı sayısı: $iif($hget($1,$+(cks½,$1)),$+($chr(2),$hget($1,$+(cks½,$1))),$+($chr(2),Ayrılan kullanıcı yok.))
    echo -a - Çıkan kullanıcı sayısı: $iif($hget($1,$+(ayr½,$1)),$+($chr(2),$hget($1,$+(ayr½,$1))),$+($chr(2),Çıkan kullanıcı yok.))
    echo -a - Nick değişim sayısı: $iif($hget($1,$+(nck½,$1)),$+($chr(2),$hget($1,$+(nck½,$1)),$chr(32),$chr(2), - (Değişen nick'leri görmek için; $+($chr(2),/nik $1,$chr(2)) yazınız.)),$+($chr(2),Nick değişen yok.))
    echo -a - Yazılan satır miktarı: $iif($hget($1,$+(yz½,$1)),$+($chr(2),$hget($1,$+(yz½,$1)),$chr(32),$chr(2), - (Kanal'da kimin kaç satır cümle kurduğunu görmek için: $+($chr(2),/kns $1,$chr(2)) yazınız.)),$+($chr(2),Herhangi bir yazı yazılmamış.))
    echo -a - Atılan ban sayısı: $iif($hget($1,$+(ban½,$1)),$+($chr(2),$hget($1,$+(ban½,$1)),$chr(32),$chr(2), - (Kanal'da kim kime ne zaman ban atmış? Öğrenmek için: $+($chr(2),/bn $1,$chr(2)) yazınız.)),$+($chr(2),Atılan ban yok.))
    echo -a - Açılan ban sayısı: $iif($hget($1,$+(unbn½,$1)),$+($chr(2),$hget($1,$+(unbn½,$1)),$chr(32),$chr(2), - (Kanal'da kim ne zaman ban açmış? Öğrenmek için: $+($chr(2),/unbn $1,$chr(2)) yazınız.)),$+($chr(2),Açılan ban yok.))
    echo -a - Değişen mod sayısı: $iif($hget($1,$+(md½,$1)),$+($chr(2),$hget($1,$+(md½,$1)),$chr(32),$chr(2), - (Kanal'da kim hangi mod'u değiştirmiş? Öğrenmek için: $+($chr(2),/md $1,$chr(2)) yazınız.)),$+($chr(2),Değişen mod yok.))
  }
}
alias kns {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/kns #kanalismi) | halt }
  if !$hget($+(yazı,$1)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a -  $+($chr(2),$1,$chr(2))  kanalı için; $+($chr(2),$hget($+(yazı,$1),0).item,$chr(2)) adet veri bulundu. |  var %& = 1,%&& = $hget($+(yazı,$1),0).item |  while %& <= %&& { echo -a - Nick: $+($chr(2),$hget($+(yazı,$1),%&).item,$chr(2)) - Yazdığı satır miktarı: $+($chr(2),$hget($+(yazı,$1),%&).data,$chr(2)) |  inc %& } }
}
alias bn {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/bn #kanalismi) | halt }
  if !$read($+($1,ban,.txt)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a -  $+($chr(2),$1,$chr(2)) kanalı için; $+($chr(2),$hget($1,$+(ban½,$1)),$chr(2)) adet veri bulundu. |  var %1 = 1,%2 = $lines($+($1,ban,.txt)) |  while %1 <= %2 { echo -a - $read($+($1,ban,.txt),%1) |  inc %1 } }
}
alias unbn {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/unbn #kanalismi) | halt }
  if !$read($+($1,unban,.txt)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a -  $+($chr(2),$1,$chr(2)) kanalı için; $+($chr(2),$hget($1,$+(unbn½,$1)),$chr(2)) adet veri bulundu. |  var %s = 1,%x = $lines($+($1,unban,.txt)) |  while %s <= %x { echo -a - $read($+($1,unban,.txt),%s) |  inc %s } }
}
alias yetki {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/yetki #kanalismi) | halt }
  if !$read($+($1,yetkiler,.txt)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a - $+($chr(2),$1,$chr(2)) kanalı için; $+($chr(2),$lines($+($1,yetkiler,.txt)),$chr(2)) adet veri bulundu. |  var %q = 1,%r = $lines($+($1,yetkiler,.txt)) |  while %q <= %r { echo -a - $read($+($1,yetkiler,.txt),%q) |  inc %q } }
}
alias md {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/md #kanalismi) | halt }
  if !$read($+($1,mode,.txt)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a - $+($chr(2),$1,$chr(2)) kanalı için; $+($chr(2),$hget($1,$+(md½,$1)),$chr(2)) adet veri bulundu. |  var %p = 1,%f = $lines($+($1,mode,.txt)) |  while %p <= %f { echo -a - $read($+($1,mode,.txt),%p) |  inc %p } }
}
alias nik {
  if !$1 { echo -a - Lütfen kanal ismi giriniz; $+($chr(2),/nik #kanalismi) | halt }
  if !$read($+($1,nick,.txt)) { echo -a - Veri bulunamadı. | halt }
  else { echo -a - $+($chr(2),$1,$chr(2)) kanalı için; $+($chr(2),$hget($1,$+(nck½,$1)),$chr(2)) adet veri bulundu. |  var %z = 1,%o = $lines($+($1,nick,.txt)) |  while %z <= %o { echo -a - $read($+($1,nick,.txt),%z) |  inc %z } }
}
alias ekle { if !$read(slnck.txt,w,$1) { write slnck.txt $1 } }
on *:connect: { sıfırla | remove slnck.txt }
alias sıfırla { echo -a - Tüm veriler sıfır'landı. | .hfree -w yazı* | .hfree -w $+($chr(35),*) | var %oo = 1,%aa = $lines(slnck.txt) | while %oo <= %aa { .remove $read(slnck.txt,%oo) | inc %oo } }

Kullanımı:
/takip #kanalismi (Kanal'ı takip'e alır)
/rapor #kanalismi (Takip sonuçlarını gösterir)


Umarım işinize yarar.

SaintCty 26 Ekim 2007 10:43

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
mükemmel calışma bende komutları daha pratik kullanayım diye
menü ekledim cokgüzel oldu eline koluna saglık meselaşöle bişi daha olsaydı 3 kanal takip ediyorum bunlardan birni listeden cıkarmak istiyorum diger ikisi devam takibe istiyorum olsaydı daha hoş olurdu ama bölede güzel

menu status,menubar,channel {
.(V)Takip
..Takibe Al Kanalı:.takip #$$?="Takibe Alınacak KanaL"
..Rapor Al Kanaldan:rapor #$$?="Takibe Alınacak KanaL"
..Kim Kac Satır Yazmış:.kns #$$?="KanaL Yazınız"
..Kim Nick Degişmiş ve Yeninicki:.nik #$$?="KanaL Yazınız"
..Kim Ne Zaman Ban Acmış:.unbn #$$?="KanaL Yazınız"
..Kim Ne Zaman Ban Atmış:.bn #$$?="KanaL Yazınız"
..Kim Mode Degişmiş Hangi Modeyle:.md #$$?="KanaL Yazınız"
..Kim Kime Yetki Vermiş Ne Zaman:.yetki #$$?="KanaL Yazınız"
..Takip Raporlarını Sıfırla:.sıfırla
}
usta ben böle menü ekledim direk kontrol edebiliyorum
senden farklı bir ricam şu badnick atma konusunuda bi el at şöyle cok seri bir badncik koruması yaz hem hatasız hemde herkesten önce joini algılayıp atsın kanaldan yapsan yapsan bunu sen yapan ::) ellerine saglık
emegi,ne saglık

eXo 26 Ekim 2007 16:11

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
bu unreal için sanırım CR için editlesek olurmu kardeş ?

L4roXyL 26 Ekim 2007 17:18

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
Alıntı:

SaintCty Nickli Üyeden Alıntı (Mesaj 277455)
mükemmel calışma bende komutları daha pratik kullanayım diye
menü ekledim cokgüzel oldu eline koluna saglık meselaşöle bişi daha olsaydı 3 kanal takip ediyorum bunlardan birni listeden cıkarmak istiyorum diger ikisi devam takibe istiyorum olsaydı daha hoş olurdu ama bölede güzel

usta ben böle menü ekledim direk kontrol edebiliyorum
senden farklı bir ricam şu badnick atma konusunuda bi el at şöyle cok seri bir badncik koruması yaz hem hatasız hemde herkesten önce joini algılayıp atsın kanaldan yapsan yapsan bunu sen yapan ::) ellerine saglık
emegi,ne saglık

Dediklerini yapmak mümlün.
İlk istediğin için;
alias skanal { if $1 { hfree $+(yazı,$1) | hfree $1 | echo -a - $1 kanal'ı için takip sona erdirildi. } }
/skanal #kanalismi yaptığın zaman o kanal için takip işlemini durdurur.

İkinci isteğin için;
Hızlı bir koruma istiyorsan, hash tablosu kullanıcaksın.
Yani şöyle birşey;
alias ekle { if $1 { if $hmatch(nickler,$1) { echo -at $1 kelimesini zaten eklemişsiniz. | halt } | else { hadd -m nickler $1 | echo -at $1 kelimesi badnick listesine eklendi. } } }
on @*:join:#: { var %1 = 1,%2 = $hget(nickler,0).item | while %1 <= %2 { if $+(*,$hget(nickler,%1).item,*) iswm $nick { ban -k # $v2 2 rumuzunuz'da $qt($v1) kelimesi algılandı. } | inc %1 } }

Kullanımı; /ekle kelime
Yani eklediğin kelimelerden herhangi birisi, kanal'a giriş yapan nick rumuzu içerisinde mevcut ise kanal'dan banlıyacaktır.

-

eXo, CR için bir değişiklik yapılması gerektiğini düşünmüyorum.
Tabiki editliyebilirsin.

darkshadow22 26 Ekim 2007 18:56

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
Çok güzel Bir paylaşım saoalsın işime yaracak çok ..

тєαм 27 Ekim 2007 00:16

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
Ellerine sağlık üstad :) işime yarayacak şeyler. Teşekkürler.

bLacksouL 27 Ekim 2007 17:59

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
Hacı bunu beLirLediqim bi kanaLda !takip #kanal !rapor #kanal oLarak nasıL uyquLatırım ? ve tabi diqer isLevLeride aynı kanaL uzerinden ! sistemi oLarak uyquLatıcam ? caLıstım ama basaramadım =p

L4roXyL 27 Ekim 2007 18:52

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
on INPUT kullanmalısın.

Lord- 27 Ekim 2007 18:55

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
:) L4roXyL yine yapacagini yapiyor ellerine sagLik

quatro 27 Ekim 2007 19:47

Cevap: Bir kanal'ı takip etmeye ne dersiniz?
 
güzel bi çaışma ellerine sağlık bunu kanal yansıtsak !takip #kanal olrak bu mümkünmü ?


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 07:23.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk