IRCForumu.Net - Türkiye'nin IRC ve mIRC Kullanıcılarının Buluştuğu Forum

IRCForumu.Net - Türkiye'nin IRC ve mIRC Kullanıcılarının Buluştuğu Forum (https://www.ircforumu.net/)
-   Hazır Kodlar (https://www.ircforumu.net/hazir-kodlar/)
-   -   Radyo dinleyici kayit sistemi (https://www.ircforumu.net/hazir-kodlar/5278-radyo-dinleyici-kayit-sistemi.html)

immortaL 09 Mart 2017 15:50

Radyo dinleyici kayit sistemi
 
Radyo'da dinleyenlerin kac dakika kac saniye kac saat seklinde gösterebilen bir sistem, bu code gelisime acık bir sistemdir, hayal gücünüzle birlikte daha bir cok sekle bürünebilir, top10 sistemi, buna benzer dinleyenlerle neler yapacaginiz vs. vs...

Kullanimi: alt kısımdaki bilgileri doldurmaniz kafi, sonra mirci acip tekrar kapatiniz.

Kod:

;Radyo admin paneli sifresi
alias radyopass return radyoadmin

;Radyo yayin adresi
alias radyoip return 178.33.34.48

;Radyo yayin portu
alias radyoport return 9306

;Radyo kanali
alias radyo.chan return #Radyo

;Radyo dinleyenlere voice verilsimmii 1 evet 0 hayir
alias radyo.voice return 0

;Radyo aciyip kapatanlari bir kanalda belirtmek istermisiniz ?
;1 evet 0 hayir
alias dinleyen.chan return #KANAL

;Radyo dinleyenlere mesaj atabilmek icin 1 evet 0 hayir
alias dinleyen.durum return 0

Kod:

;Radyo admin paneli sifresi
alias radyopass return radyoadmin

;Radyo yayin adresi
alias radyoip return 178.33.34.48

;Radyo yayin portu
alias radyoport return 9306

;Radyo kanali
alias radyo.chan return #Radyo

;Radyo dinleyenlere voice verilsimmii 1 evet 0 hayir
alias radyo.voice return 0

;Radyo aciyip kapatanlari bir kanalda belirtmek istermisiniz ?
;1 evet 0 hayir
alias dinleyen.chan return #KANAL

;Radyo dinleyenlere mesaj atabilmek icin 1 evet 0 hayir
alias dinleyen.durum return 0

on *:start: {
  hashopen
  .timervoice 0 15 /radyovoice
}

on *:text:*:$($radyo.chan): {
  if $regex($1-,/[!.]sure/i) {
    if !$2 { msg # 4*\5 $qt($nick) 2Rumuzu radyo dinleme sureniz5 $iif($readini(radyodinle.ini,Sure,$nick),$tamsure($v1),Bulunmuyor.)  | return }
    if $2 { msg # 4*\5 $qt($2) 2Rumuzu radyo dinleme suresi5 $iif($readini(radyodinle.ini,Sure,$2),$tamsure($v1),Bulunmuyor.)  | return }
  }
}

raw 352:*: {
  if ($numeric == 352) {
    if $hget(dinleyen,$4) {
      if (r isin $7) {
        hadd -mu5 radyoonline $4 $6
        writeini radyodinle.ini Dinleyen $6 $4
        if !$hget(radyodinleme,$6) { hadd -mu20 radyodinleme $6 $ctime }
        if $hget(radyodinleme,$6) {
          writeini radyodinle.ini Sure $6 $calc($iif($readini(radyodinle.ini,Sure,$6),$v1,0) + $calc($ctime - $hget(radyodinleme,$6)))
          hadd -mu20 radyodinleme $6 $ctime
        }
      }
    }
    if $hget(dinleyen,$4) && !$hget(dinleyennick,$6) {
      hadd -m dinleyenip $4 $6
      hadd -m dinleyennick $6 $4
      if ($dinleyen.durum !== 0) { notice $6 4 $6 1yayini dinlediginiz icin tesekkurler, radyonuz suan acik durumdadir }
      if ($radyo.voice !== 0) { .mode $radyo.chan +v $6 }
      if ($dinleyen.durum !== 0) { .msg $dinleyen.chan [3ACAN]2 $6 3 radyoyu acti. }
      if (r isin $9) {
        if ($dinleyen.durum !== 0) { notice $6 5*\ 1Yayın dinleme sureniz toplam5 $sure($6) 1dinlemektesiniz. }
      }
      if (r !isin $7) && ($dinleyen.durum !== 0) {
        notice $6 5*\ 1Nickiniz suan kayitsiz kayitli bir nicke erisim sagladiginizda 5top101 listesine sizde bulunabilirsiniz.
        notice $6 5*\ 1Nick kayit icin 4 $helpchan 1kanalina basvurabilirsiniz.
      }
    }
    if $hget(kapatan,$4) {
      hdel -m kapatan $4
      hdel -m dinleyennick $6
      hdel -m radyodinleme $6
      if ($dinleyen.durum !== 0) { notice $6 4 $6 1Radyo yayini dinlediginiz icin tesekkurler, radyonuz suan kapali duruma gecmistir. }
      if ($radyo.voice !== 0) { .mode $radyo.chan -v $6 }
      if ($dinleyen.durum !== 0) { .msg $dinleyen.chan [4KAPATAN]2 $6 4 radyoyu acti. }
      if (r isin $9) && ($dinleyen.durum !== 0) { notice $6 5*\1 5*\ 1Yayın dinleme sureniz toplam5 $sure($6) 1dinlemissiniz. }
      if (r !isin $9) && ($dinleyen.durum !== 0) {
        notice $6 5*\ 1Nickiniz suan kayitsiz kayitli bir nicke erisim sagladiginizda 5top101 listesine sizde bulunabilirsiniz.
        notice $6 5*\ 1Nick kayit icin 4 $helpchan 1kanalina basvurabilirsiniz.
      }
    }
    haltdef
  }
  if ($numeric == 315) {
    var %ip $right($left($4,-1),-1)
    if $hget(dinleyen,%ip) && !$hget(radyoonline,%ip) {
      if $read(radyodinle.ini,w,$+(*=,%ip)) {
        hadd -mu5 simdilik evet $token($v1,1,61)
        if !$hget(radyodinleme,$hget(simdilik,evet)) { hadd -mu20 radyodinleme $hget(simdilik,evet) $ctime }
        writeini radyodinle.ini Sure $hget(simdilik,evet) $calc($iif($readini(radyodinle.ini,sure,$hget(simdilik,evet)),$v1,0) + $calc($ctime - $hget(radyodinleme,$hget(simdilik,evet))))
        hadd -mu20 radyodinleme $hget(simdilik,evet) $ctime
      }
    }
    if $hget(kapatan,%ip) {
      hdel -m kapatan %ip
      hdel -m radyodinleme %ip
      if ($dinleyen.durum !== 0) { .msg $dinleyen.chan [4Kapatan] 2 $hfind(dinleyennick,%ip,1,W).data 5  yayini kapatti }
      haltdef
    }
  }
}
on 1:SOCKOPEN:radyovoice: {
  sockwrite -n $sockname GET $+(/admin.cgi?pass=,$radyopass HTTP/1.1)
  sockwrite -n $sockname Host: $+($radyoip, :, $radyoport)
  sockwrite -n $sockname User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040614 Firefox/0.8
  sockwrite -n $sockname *.*, */*
  ; sockwrite -n $sockname Accept-Language: en-us,en;q=0.5
  sockwrite -n $sockname Accept-Language: tr,tr;q=0.5
  sockwrite -n $sockname Accept-Encoding: gzip,deflate
  sockwrite -n $sockname Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
  sockwrite -n $sockname Keep-Alive: 300
  sockwrite -n $sockname Connection: keep-alive
  sockwrite -n $sockname $crlf
}
on 1:SOCKREAD:radyovoice: {
  var %data
  sockread -f %data
  tokenize 32 %data
  var %x 1
  if $regex($1-,/class=st>([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})/gi) {
    var %x 1
    while $regml(%x) {
      hadd -m dinleyen $v1 evet
      inc %x
    }
  }
}

on *:sockclose:radyovoice: {
  var %x 1 |while $hget(dinleyen,%x).item {
    who +I $+(*,$v1,*) | inc %x
  }
  var %e 1 | while $hget(dinleyenip,%e).item {
    var %v1 $v1 | if !$hget(dinleyen,$v1) {
      hdel -m dinleyenip %v1 | hadd -m kapatan %v1 evet | who +I $+(*,%v1,*)
    }
    inc %e
  }
}

alias radyovoice {
  if $hget(dinleyen) { .hfree -sw dinleyen }
  if !$sock(radyovoice) {
    sockopen radyovoice $radyoip $radyoport
  }
}
alias tamsure {
  var %islem $replace($duration($1),hr,hrs,min,mins,sec,secs,day,days,wk,wks), %hafta $iif(wks isin %islem,$token(%islem,1,$asc(wks))), %gun $iif(days isin %islem,$token($token(%islem,1,$asc(days)),-1,32))
  var %saat $iif(hrs isin %islem,$token($token(%islem,1,$asc(hrs)),-1,32)), %dakika $iif(mins isin %islem,$token($token(%islem,1,$asc(mins)),-1,32))
  var %saniye $iif(secs isin %islem,$token(%islem,-2,$asc(secs)))
  if %hafta { var %hafta $calc(%hafta * 168) }
  if %gun { var %gun $calc(%gun * 24) }
  return $calc(%saat + %hafta + %gun) $+ saat $calc(0 + %dakika) $+ dakika $calc(0 + %saniye) $+ saniye
}
alias sure {
  if $readini(radyodinle.ini,Sure,$1) { return $tamsure($v1) }
  else { return 0saat 0dakika 0saniye }
}



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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.6.0
Copyright ©2005 - 2023 IRCForumu.Net - Tüm Hakları Saklıdır.