Konu: Radyo kodu
Tekil Mesaj gösterimi
Alt 06 Nisan 2025, 21:05   #4
DaDaS
IRCTR.ORG Sunucu Sahibi
DaDaS - ait Kullanıcı Resmi (Avatar)

Standart

Kod

;============[ RADYO AYARLARI ]============
alias radyo-kanali { return #radyo }
alias radyo-link { return [Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...] }
alias radyo-json { return [Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...] }

;============[ YETKİLİ KONTROLÜ ]============
alias yetkili-mi {
  if ($nick isop $radyo-kanali) return $true
  else return $false
}

;============[ KANALA GİRİNCE OTOMATİK RADYO ]============
on *:join:#radyo:{
  if ($nick == $me) {
    echo -a [IRC-FM] #radyo kanalına girildi. Yayın başlatılıyor...
    radyo-baslat
    radyo-takip-baslat
  }
}

;============[ KOMUT SİSTEMİ (YETKİLİLERE ÖZEL) ]============
on *:text:!radyoac:#radyo:{
  if ($yetkili-mi) {
    radyo-baslat
    radyo-takip-baslat
    .timerRadyoBilgiYolla 1 2 radyo-bilgi-gonder
  }
}

on *:text:!radyokapat:#radyo:{
  if ($yetkili-mi) {
    radyo-durdur
    radyo-takip-durdur
  }
}

on *:text:!radyobilgi:#radyo:{
  if ($yetkili-mi) {
    radyo-bilgi-gonder
  }
}

;============[ RADYO BAŞLAT / DURDUR ]============
alias radyo-baslat {
  run $radyo-link
  msg $radyo-kanali 4[IRC-FM] 12Yayın Başladı!
}

alias radyo-durdur {
  run taskkill /im vlc.exe /f
  run taskkill /im wmplayer.exe /f
  msg $radyo-kanali 4[IRC-FM] 4Yayın Durduruldu!
}

;============[ OTOMATİK TAKİP BAŞLAT / DURDUR ]============
alias radyo-takip-baslat {
  .timerRadyoTakip 0 180 radyo-bilgi-gonder
  echo -a [IRC-FM] Radyo bilgi takibi başlatıldı.
}

alias radyo-takip-durdur {
  .timerRadyoTakip off
  echo -a [IRC-FM] Radyo bilgi takibi durduruldu.
}

;============[ BİLGİ ÇEKME & GÖNDERME ]============
alias radyo-bilgi-gonder {
  sockclose radyoBilgi
  sockopen radyoBilgi $remove($gettok($radyo-json,2,47),/) 80
}

on *:sockopen:radyoBilgi:{
  sockwrite -n $sockname GET $radyo-json HTTP/1.1
  sockwrite -n $sockname Host: $remove($gettok($radyo-json,2,47),/)
  sockwrite -n $sockname Connection: close
  sockwrite -n $sockname
}

on *:sockread:radyoBilgi:{
  var %json
  sockread %json
  if (%json != $null) {
    if ($regex(%json, /"server_name"\s*:\s*"([^"]+)"/)) {
      set %radyo.dj $regml(1)
    }
    if ($regex(%json, /"title"\s*:\s*"([^"]+)"/)) {
      set %radyo.sarki $regml(1)
    }
    if ($regex(%json, /"listeners"\s*:\s*(\d+)/)) {
      set %radyo.dinleyen $regml(1)
    }
    if (%radyo.dj != $null && %radyo.sarki != $null && %radyo.dinleyen != $null) {
      msg $radyo-kanali 4[IRC-FM] 12DJ: %radyo.dj  | 8Şarkı: %radyo.sarki  | 7Dinleyen: %radyo.dinleyen
      unset %radyo.*
    }
  }
}

________________

[Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]

Konu Feragat tarafından (14 Nisan 2025 Saat 20:09 ) değiştirilmiştir.. Sebep: Code Tag