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

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 21 Ocak 2009, 01:42   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
away scan




S.a

elimdeki /awayscan seklinde calisan bu code'yi bot'a ekleyip yarim saatte bir oto awayscan yapmasini ve neticesini benim belirledigim bir kanala msg atmasini saglayabilirmiyiz..

#awayscan on
alias awayscan {
var %chan
if ($hget(awayscan)) { hfree awayscan }
if ((!$1) && ($active !ischan)) { echo -a - | echo -a * /awayscan: you are not on a channel | echo -a - | halt }
if ($1) { %chan = $1 }
else { %chan = $active }
hmake awayscan $nick(%chan,0)
hadd awayscan chan %chan
hadd awayscan scan 1
hadd awayscan away 0
.who $hget(awayscan,chan)
echo -a Awayscan in %chan 
}
raw 352:*:{
if (($hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
if ($left($7,1) == G) {
hinc awayscan away 1
if (!$hget(awayscan,names)) { hadd awayscan names $6 }
else {
var %names = $hget(awayscan,names)
hadd awayscan names $+(%names,$chr(32),$6)
}
}
haltdef
}
}
raw 315:*:{
if (($hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
var %away
echo -a Totally found $+(,$hget(awayscan,away),) away users
if ($hget(awayscan,away) > 0) {
%away = $hget(awayscan,names)
echo -a Away Users: %away
}
hfree awayscan
echo -a End of awayscan
haltdef
}
}
#awayscan end

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 21 Ocak 2009, 02:06   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




Doğruluğundan tam emin olmamakla beraber;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:connect: {
  .
timer 0 1800 /awayscan
}

#awayscan on
alias awayscan {
  var %
chan
  
if ($hget(awayscan)) { hfree awayscan }
  if ((!$
1) && ($active !ischan)) { msg $chan(#AzuLa) - | msg $chan(#AzuLa) * /awayscan: you are not on a channel | msg $chan(#AzuLa) - | halt }
  
if ($1) { %chan = $}
  else { %
chan $active }
  
hmake awayscan $nick(%chan,0)
  
hadd awayscan chan %chan
  hadd awayscan scan 1
  hadd awayscan away 0
  
.who $hget(awayscan,chan)
  
msg $chan(#AzuLa) Awayscan in %chan 
}
raw 352:*:{
  if ((
$hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
    if (
$left($7,1) == G) {
      
hinc awayscan away 1
      
if (!$hget(awayscan,names)) { hadd awayscan names $}
      else {
        var %
names $hget(awayscan,names)
        
hadd awayscan names $+(%names,$chr(32),$6)
      }
    }
    
haltdef
  
}
}
raw 315:*:{
  if ((
$hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
    var %
away
    msg $chan
(#AzuLa) Totally found $+(,$hget(awayscan,away),) away users
    
if ($hget(awayscan,away) > 0) {
      %
away $hget(awayscan,names)
      
msg $chan(#AzuLa) Away Users: %away
    
}
    
hfree awayscan
    msg $chan
(#AzuLa) End of awayscan
    
haltdef
  
}
}
#awayscan end 

connect eventine timer koydum; 30 dakikada bir /awayscan taraması yapacak.
codda echo -a olan yerleri msg $chan(#AzuLa) olarak değiştirdim. sonucları #AzuLa kanalına yansıtacak. kodu 15 saniyede bir olarak denedim bende calıstı. Kendi belirlediğiniz knala gitmesi için #AzuLa kısımlarını #kanalım şeklinde değiştirmeniz yeterli olacaktır.

Fakat bot komutları aynı olur mu bilemiyorum.



calıstıgına dair;

Alıntı:
[01:49] <@aLias> Awayscan in #Radyo
[01:49] <@aLias> Totally found 1 away users
[01:49] <@aLias> Away Users: aLias
[01:49] <@aLias> End of awayscan
[01:50] <@aLias> -
[01:50] <@aLias> * /awayscan: you are not on a channel
[01:50] <@aLias> -
[01:50] <@aLias> -
[01:50] <@aLias> * /awayscan: you are not on a channel
[01:50] <@aLias> -
[01:50] <@aLias> Awayscan in #AzuLa
[01:50] <@aLias> Totally found 1 away users
[01:50] <@aLias> Away Users: aLias
[01:50] <@aLias> End of awayscan

log buradadır.

herhangi bir sorun ile karsılasırsanız yardımcı olmaya calısırım.


Konu AzuLa tarafından (21 Ocak 2009 Saat 02:20 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 21 Ocak 2009, 02:13   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#awayscan on alias awayscan { var %chan if ($hget(awayscan)) { hfree awayscan } if ((!$1) && ($active !ischan)) { msg #KANAL - | msg #KANAL * /awayscan: you are not on a channel(Hata) | msg #KANAL - | halt } if ($1) { %chan = $1 } else { %chan = $active } hmake awayscan $nick(%chan,0) hadd awayscan chan %chan hadd awayscan scan 1 hadd awayscan away 0 .who $hget(awayscan,chan) msg #KANAL Awayscan in %chan  } raw 352:*:{ if (($hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) { if ($left($7,1) == G) { hinc awayscan away 1 if (!$hget(awayscan,names)) { hadd awayscan names $6 } else { var %names = $hget(awayscan,names) hadd awayscan names $+(%names,$chr(32),$6) } } haltdef } } raw 315:*:{ if (($hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) { var %away msg #KANAL Totally found $+(,$hget(awayscan,away),) away users if ($hget(awayscan,away) > 0) { %away = $hget(awayscan,names) msg #KANAL Away Users: %away } hfree awayscan msg #KANAL End of awayscan haltdef } } #awayscan end on *:connect:{ if $group(#awayscan) == on { .timerawayss 0 1790 window -a #KontrolEdilecekKanalİsmi .timerscanss 0 1800 awayscan #KontrolEdilecekKanalİsmi } }

#KontrolEdilecekKanalİsmi yerine away kontrolünü yapmak istediğiniz kanalın ismini, #KANAL yerine ise mesajların gönderileceği kanalın ismini yazmalısınız.(Botun #kontroledilecekkanalismi'nde bulunma ve o anki aktif ekranın o kanal olma zorunluluğu var.)

 
Alıntı ile Cevapla

Alt 21 Ocak 2009, 02:34   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




hata benden kaynaklaniyor herhalde.bes alti kere denedim /awayscan yazmadan taramiyor.bunu !awayscan seklinde oplar kullanacak sekilde editlesek.komut uygulandiktan sonra tarasa, /1awayscan uygulanmadigi takdirde de kendisi yarim saatte bir tarasa mumkun mu.

 
Alıntı ile Cevapla

Alt 21 Ocak 2009, 02:40   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




benim kodumda awayscan'ı start eventine koymuşum; sonradan farkedip düzelttim, eğer onu kullandıysanız o yüzden kaynaklanıyor olabilir. bu arada kodu ekledikten sonra tekrar server'a baglanmayı deneyiniz, connect eventine baglı oldugu için baglantıdan sonra aktiflesmesi gerekiyor.

 
Alıntı ile Cevapla

Alt 21 Ocak 2009, 02:59   #6
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




code gayet guzel calisiyor.ama /awayscan yapabilmesi icin aktif pencerede olmasi gerekir.bunu bot'a ekleyecegim icin.aktif penceresi surekli degisecektir.bu durumda da soyle bir uyari gelecektir kanala..

* /awayscan: you are not on a channel

buda hos gorunmeyecektir.buna bir cozum bulunamaz mi.yeterince ilgilendiniz zaten tesekkur ederim.bot scani diyelimki 'a kanalinda gerceklestirecek.ama aktif penceresi #b kanali.bot'un aktif penceresini #a kanalina almak icin /awayscan'dan once bir sey yapilamaz mi..

 
Alıntı ile Cevapla

Alt 21 Ocak 2009, 08:52   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: away scan




kodu bir deneyiniz. eğer sorun çıkarsa başlık altında belirtiniz.

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#awayscan off
alias awayscan {
  var %
chan
  
if ($hget(awayscan)) { hfree awayscan }
  if ((!$
1) && ($active !ischan)) { msg #AzuLa - | msg #AzuLa * /awayscan: you are not on a channel(Hata) | msg #AzuLa - | halt }
  
if ($1) { %chan = $}
  else { %
chan $active }
  
hmake awayscan $nick(%chan,0)
  
hadd awayscan chan %chan
  hadd awayscan scan 1
  hadd awayscan away 0
  
.who $hget(awayscan,chan)
  
msg #AzuLa Awayscan in %chan 
}
raw 352:*:{
  if ((
$hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
    if (
$left($7,1) == G) {
      
hinc awayscan away 1
      
if (!$hget(awayscan,names)) { hadd awayscan names $}
      else {
        var %
names $hget(awayscan,names)
        
hadd awayscan names $+(%names,$chr(32),$6)
      }
    }
    
haltdef
  
}
}
raw 315:*:{
  if ((
$hget(awayscan,scan) == 1) && ($hget(awayscan,chan) == $2)) {
    var %
away
    msg 
#AzuLa Totally found $+(,$hget(awayscan,away),) away users
    
if ($hget(awayscan,away) > 0) {
      %
away $hget(awayscan,names)
      
msg #AzuLa Away Users: %away
    
}
    
hfree awayscan
    msg 
#AzuLa End of awayscan
    
haltdef
  
}
}
#awayscan end

on *:text:*:*: {
  if 
$chan == #AzuLa && $nick isop $chan { 
    
if $== !awaytara {
      if 
$group(#awayscan) == on {
        
timer 1 2 window -#Kanal
        
timer 1 5 awayscan #Kanal
      
}
      if 
$group(#Awayscan) == off {
        
msg $chan(#AzuLa) Şu an bu komutu kullanamazsınız. Away tarama modu kapalıdır.
      
}
    }
    if $
== !awayon {
      
enable #awayscan
      
msg $chan(#AzuLa) Away Tarama modu açılmıştır.
    
}
    if $
== !awayoff {
      
disable #awayscan
      
msg $chan(#AzuLa) Away Tarama modu kapatılmıştır.
    
}
    if $
== !awaykomut {
        
msg $chan(#AzuLa) Kullanabileceğiniz komutlar; !awaytara , !awayon , !awayoff olarak belirlenmiştir.
    
}
  }



Kodun çalışma mantığı ;

#AzuLa kanalında !awaykomut yazdığınızda kullanabileceginiz komutları görebilirsiniz.

#AzuLa kanalında !awayon yazdığınızda, away tarama modunu aktif hale getirecektir. Durum bilgisini #AzuLa kanalına yansıtacaktır.

#AzuLa kanalında !awayoff yazdığınızda, away tarama modunu deaktif hale getirecektir. Durum bilgisini #AzuLa kanalına yansıtacaktır.

#AzuLa kanalında !awaytara yazdığınızda, eğer away tarama modu aktif ise; belirlediğiniz kanalda away taraması yapıp bilgileri #AzuLa kanalına yansıtacaktır. Eğer away tama modu deaktif ise taramayı yapmayacaktır, modun aktif olmadığını belirten bir mesaj yansıtacaktır.

Not: Komutları kullanacak kişinin #AzuLa kanalında Op ( @ ) yetkisinde olması gerekiyor.

Açıklama:
Kodu ekledikten sonra #Kanal olan yerleri tarama yapmasını istediğiniz kanalın adıyla değiştirin.
#AzuLa olan yerleri ise; komutların hangi kanalda kullanılmasını istiyorsanız o kanalın adıyla değiştirin.

kodun çalıştığına dair log:


Alıntı:
[08:24:47] <aSra> !awaytara
[08:24:48] <nickyaziniz> Şu an bu komutu kullanamazsınız. Away tarama modu kapalıdır.
[08:24:57] <aSra> !awayon
[08:24:57] <nickyaziniz> Away Tarama modu açılmıştır.
[08:25:00] <aSra> !awaytara
[08:25:06] <nickyaziniz> Awayscan in #Arkadas
[08:25:07] <nickyaziniz> Totally found 0 away users
[08:25:07] <nickyaziniz> End of awayscan
[08:25:10] <aSra> !awayoff
[08:25:10] <nickyaziniz> Away Tarama modu kapatılmıştır.
[08:25:14] <aSra> !awaytara
[08:25:15] <nickyaziniz> Şu an bu komutu kullanamazsınız. Away tarama modu kapalıdır.
[09:16:50] <aSra> !awaykomut
[09:16:50] <nickyaziniz> Kullanabileceğiniz komutlar; !awaytara , !awayon , !awayoff olarak belirlenmiştir.

iyi forumlar.


Konu AzuLa tarafından (21 Ocak 2009 Saat 12:36 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Cevapla

Etiketler
mirc, mirc download, mirc indir, scan


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Away Scan Hakkında.. djiNn mIRC Scripting Sorunları 7 01 Temmuz 2005 16:48