Aide anim' - module d'aide à l'animation de webradio - by aurel212

Description

Alors voici ma première source, un module d'aide à l'animation de WebRadio sur serveur Shoutcast disposant de chan IRC, c'est une première version, pour laquelle le code est simple, les fonctions suffisantes mais pouvant être plus poussées ( ceci nous indique une 2.0 si l'add on vous plait :p )

Enfin voila j'vous laisse observer et commenter ( svp )

Enjoy !

Source / Exemple :


[Module]
Name=AideAnim'
Description=Module d'aide à l'animation de WebRadio (ShoutCast)
Version=béta
Ref=1.1
View=1
Author=aurel212
;______________________________________________________________
;         Radio Script 1.0 ( adapté pour les Anim' de WebRadio par aurel212 )
;______________________________________________________________
; ------------------------------------------------
; Fenêtre de dialogue pour configuration
; ------------------------------------------------

alias aide-anim dialog -m aide-anim aide-anim

dialog aide-anim {
  title "Aide Anim' - by aurel212 - /aide-anim"
  size -1 -1 293 181
  option dbu
  box " Configuration Principale ", 1, 3 0 227 104
  edit "", 2, 7 25 50 10, center
  edit "", 3, 64 25 50 10, center
  edit "", 4, 7 53 50 10, center
  edit "", 5, 64 53 50 10, center
  edit "", 6, 7 80 50 10, center
  edit "", 7, 56 80 25 10, center
  edit "", 8, 129 25 93 10, center
  edit "", 9, 129 53 93 10, center
  edit "", 10, 129 80 93 10, center
  box " Configuration Perso' - Cocher pour Valider ", 11, 4 105 286 60
  text "Nom de la Radio", 12, 8 15 45 8
  text "Nom du Robot", 13, 65 15 45 8
  text "Salon de la Radio", 14, 8 43 45 8
  text "BackRoom", 15, 65 43 45 8
  text "IP + Port du Shoutcast", 16, 8 70 60 8
  text "Site Web de la Radio", 17, 130 15 70 8
  text "Lien du Player de la Radio", 18, 130 43 70 8
  text "Lien décomposé pour Java", 19, 130 70 70 8
  box "", 20, 233 0 56 104
  icon 21, 237 8 46 39, $mircdirAideAnim.gif
  text "Module d'aide à l'animation de WebRadio sur le serveur Voila / Orange.", 22, 238 65 47 35, center
  text "Aide Anim'", 23, 238 53 47 12, center
  button "Ok / Enregistrer", 24, 211 167 78 12, ok
  text "Aide Anim' peut s'activer de différente façon dont une qui ne s'active automatiquement", 25, 10 115 240 8
  edit "", 26, 225 123 50 10, center
  radio "Activé", 27, 104 123 33 10
  radio "Désactivé", 28, 138 123 33 10
  radio "Automatique", 29, 178 123 45 10
  text "Afficher l'ID3Tag de la musique en cour ?", 30, 11 139 99 8
  check "Oui", 31, 28 151 22 10
  check "Non", 32, 66 151 24 10
  text "Afficher le nombre d'auditeurs en echo ?", 33, 136 139 102 8
  check "Oui", 34, 150 151 25 10
  check "Non", 35, 197 151 23 10
  link " http://IDandT.fr ", 36, 125 169 44 8
  button "Vérifier Mise à Jour", 37, 4 167 78 12
  text "quand tu as ton extension 'Onair' :", 38, 10 123 92 8
}
On *:DIALOG:aide-anim:*:*:{
  if ($devent == init) {
    did -a $dname 2 $AideAnim(Nom)
    did -a $dname 3 $AideAnim(Bot)
    did -a $dname 4 $AideAnim(Salon)
    did -a $dname 5 $AideAnim(BackRoom)
    did -a $dname 6 $AideAnim(IP)
    did -a $dname 7 $AideAnim(Port)
    did -a $dname 8 $AideAnim(Site)
    did -a $dname 9 $AideAnim(Lien)
    did -a $dname 10 $AideAnim(Java)
    did -a $dname 26 $AideAnim(Extension)
    if ($AideAnim(ShowSong) == ON) { did -c $dname 31 }
    else { did -c $dname 32 }
    if ($AideAnim(ShowListen) == ON) { did -c $dname 34 }
    else  { did -c $dname 35 }
    if ($AideAnim(AideAnim-) == PSEUDO) { did -c $dname 29 }
    else {
      if ($AideAnim(AideAnim) == ON) { did -c $dname 27 }
      else { did -c $dname 26 }
    }
  }
  if ($devent == Sclick) {
    if ($did == 24) {
      hadd AideAnim Nom $did(2)
      hadd AideAnim Bot $did(3)
      hadd AideAnim Lien $did(9)
      hadd AideAnim Site $did(8)
      hadd AideAnim Salon $did(4)
      hadd AideAnim BackRoom $did(5)
      hadd AideAnim IP $did(6)
      hadd AideAnim Port $did(7)
      hadd AideAnim Java $did(10)
      hadd AideAnim Extension $did(26)
      if ($did(31).state == 1) { hadd AideAnim ShowSong ON }
      elseif ($did(32).state == 1) { hadd AideAnim ShowSong OFF }
      if ($did(34).state == 1) { hadd AideAnim ShowListen ON }
      elseif ($did(35).state == 1) { hadd AideAnim ShowListen OFF }
      if ($did(27).state == 1) { hadd AideAnim AideAnim ON }
      elseif ($did(28).state == 1) { hadd AideAnim AideAnim OFF }
      if ($did(29).state == 1) { hadd AideAnim AideAnim- PSEUDO }
    }
    if ($did == 31) { did -u $dname 32 }
    if ($did == 32) { did -u $dname 31 }
    if ($did == 34) { did -u $dname 35 }
    if ($did == 35) { did -u $dname 34 }
    if ($did == 36) { url -u http://IDandT.fr }
    if ($did == 37) { url -u http://IDandT.fr/AideAnim.rar }
  }
}
On *:NICK:{
  if ($gettok($nick,1,124) == $gettok($me,1,124)) && ($AideAnim(AideAnim-) == PSEUDO) {
    if ($gettok($newnick,2,124) == $AideAnim(Extension)) {
      hadd AideAnim AideAnim ON
      hadd AideAnim Anim $me
      echo -a 14.::10 $AideAnim(Nom) 14::.10 Vous êtes maintenant OnAir, l'add-on est Activé 14!
    }
    elseif ($gettok($nick,2,124) == $AideAnim(Extension)) && ($gettok($newnick,2,124) != $AideAnim(Extension)) {
      hadd AideAnim AideAnim OFF
      echo -a 14.::10 $AideAnim(Nom) 14::.10 Vous n'êtes maintenant plus OnAir, l'add-on est Désactivé 14!
    }
  }
}
; ------------------------------------------------
; Menu contextuels
; ------------------------------------------------
menu menubar {
  -
     >> AideAnim' by aurel212 <<   
  .Aide Anim' $chr(9) /aide-anim:/aide-anim
  .Inviter un Anim' sur la BackRoom $chr(9) /BackR:/BackR
}
; ------------------------------------------------
; Commandes :
; ------------------------------------------------
On *:TEXT:*:*:{
  if ($AideAnim(AideAnim) == OFF) { halt }
  if ($AideAnim(Bot) ison $chan) { halt }
  if ($1 == !aide) {
    if (!$2) {
      msg $chan 14Voici les commandes disponibles:
      msg $chan 10=> !aide !radio !web !toune !auditeur !dédi !java !winamp
      if ($chan == $AideAnim(BackRoom)) { .timer 1 2 msg $chan 14Pour les admins (sur10 $AideAnim(BackRoom) 14seulement) =>10 !oa !pl }
      .timer2 1 2 msg $chan Pour de plus ample imformations relatives aux commandes, faites !aide <commande> !!!!
    }
    else {
      if ($2 == !aide) { msg $chan Affiche l'aide sur les commandes disponibles. Usage: !aide [commande] }
      elseif ($2 == !anim) { msg $chan Affiche le Nick de l'animateur actuel. Usage: !anim }
      elseif ($2 == !radio) { msg $chan Affiche les infos relatives a la radio (Lien pour se connecter, Deejay qui annime). Usage: !radio }
      elseif ($2 == !web) { msg $chan Affiche le lien du site web de la radio. Usage: !web }
      elseif ($2 == !titre) { msg $chan Affiche le titre de la chanson en cours. Usage: !titre }
      ;elseif ($2 == !auditeur) { msg $chan Affiche le nombre d'auditeur qui écoutent la radio. Usage: !auditeur }
      elseif ($2 == !dédi) { msg $chan Envoie votre demande spéciale au Deejay. Usage: !dédi <artiste - titre> & <dédicace> }
      elseif ($2 == !java) { msg $chan Affiche le lien "détaché" pour ecouter la radio. Usage: !java }
      elseif ($2 == !winamp) { msg $chan Affiche le lien "pls" pour ecouter la radio via Winamp. Usage: !winamp }
      elseif ($chan == $AideAnim(BackRoom)) {
        if ($2 == !oa) { msg $chan Affiche le changement d'Animateur sur le chan Officiel de la radio. Usage: !oa (sur $AideAnim(BackRoom) $+ ) }
        elseif ($2 == !pl) { msg $chan Affiche la prise d'antenne de la PlayLisT sur le chan Officiel de la radio. Usage !pl (sur $AideAnim(BackRoom) $+ ) }
      }
    }
  }
  elseif ($1 == !radio) { notice $nick 10 Tu veux écouter14 $AideAnim(Nom)  10? Rien de plus simple! clic ici 1:14 $AideAnim(Lien) }
  elseif ($1 == !anim) { notice $nick 10 C'est14 $AideAnim(Anim) 10 qui difuse le Meilleur de la musique en ce moment même sur14 $AideAnim(Nom) 10! }
  elseif ($1 == !web) { notice $nick 10 Notre Site web 1:14 $AideAnim(Site) }
  elseif ($1 == !titre) { notice $nick $AideAnim(Info) }
  ;elseif ($1 == !auditeur) { notice $nick 10Vous êtes14 $AideAnim(Auditeurs) 10auditeur(s) sur $AideAnim(Nom) ! On a déjà vu mieux (14 $AideAnim(MaxAuditeurs) 10) }
  elseif ($1 == !dédi) { radioask $2- }
  elseif $+(*,!,*,!) !iswm $chan && ($1 == !java) { msg $chan 10Slt14 $nick $+ 10, Tu veux écouter14 $AideAnim(Nom)  10? Rien de plus simple! recopie ce lien dans ton explorer Internet 1:14 $AideAnim(Java) }
  elseif ($1 == !winamp) { notice $nick 10 Tu veux écouter14 $AideAnim(Nom)  10? Rien de plus simple! Voici l'URL pour ton Winamp player 1:14 http://91.121.10.173:8310/listen.pls }
  elseif ($chan == $AideAnim(BackRoom)) { 
    if ($1 == !ao) {
      hadd AideAnim Anim $nick 
      if ($AideAnim(ShowSong) == ON) { msg $AideAnim(Salon) 14 .::10 $AideAnim(Nom) 14::.10 C'est maintenant14 $AideAnim(Anim) 10qui prend l'antenne sur14 $AideAnim(Nom) 10! }
      if (IriX ison $AideAnim(Salon)) && ($nick !iso $AideAnim(Salon)) { .msg Irix op $AideAnim(Salon) $nick }
    } 
    elseif ($1 == !pl) { hadd AideAnim Anim La PlayLisT
      if ($AideAnim(ShowSong) { msg $AideAnim(Salon) 14 .::10 $AideAnim(Nom) 14::.10 $nick 14vient de caler une pure10 PlayLisT14 sur10 $AideAnim(Nom) 14! }
    }
  }
}
; ______________________________________________________________
; Bon les Anim' on touche pas à la suite de ce code ( j'ai assez galèré dessus ! LoL :x )
; Pis c'est surtout que ça risque de tout foirer !!! Merci de votre compréhension =)
; ______________________________________________________________

On *:START:{ hload AideAnim AideAnim.txt }
On *:EXIT:{ hsave -o AideAnim AideAnim.txt }

On 1:LOAD:{ hmake AideAnim 10 }
alias -l AideAnim { return $hget(AideAnim,$1) }

On *:CONNECT:{
  .timer $+ $cid 0 15 showsong
  .timer $+ $cid 0 15 showlisten
  join $AideAnim(Salon)
  if ($network == %radio.network) {
    .timerradioshhop 0 15 shop
  }
}
alias auditeurs { echo -a 14.::10 $AideAnim(Nom) 14::.10 Il y a actuellement14 $AideAnim(Auditeurs) 10auditeurs, le maximum atteind sur ce serveur est de14 $AideAnim(MaxAuditeurs) 10! } 
alias radioask {
  if (!$1) { notice $nick Usage : !dédi <artiste - titre> & <dédicace> }
  else {
    $iif(!$window(@Dédicace),Window -zg0nk0 @Dédicace)
    echo @Dédicace  14 .::10 Dédicace 14 ::. 10Demande spéciale :14 < $+ $nick $+ > $1-
    notice $nick 10Ta dédicace suivante est dans la boite :14 $1- 10. Patiente un peu, elle arrive sur14 $AideAnim(Nom) 10!
    write Dedicaces.txt $date $time $1-
  }
}
alias showlisten {
  if ($AideAnim(AideAnim) == OFF) { halt }
  if ($AideAnim(ShowListen) == ON) && ($AideAnim(Auditeurs) != $AideAnim(Auditeurs-)) {
    echo -a 14.::10 $AideAnim(Nom) 14::. 10Actuellement14 $AideAnim(Auditeurs) 10auditeurs !
  }
}
alias showsong {
  if ($AideAnim(AideAnim) == OFF) { halt }
  if ($AideAnim(ShowSong) == ON) && ($AideAnim(Titre) != $AideAnim(Titre-)) {
    msg $AideAnim(Salon) $AideAnim(Info)
  }
}
alias shop {
  if $sock(shtxt) { sockclose $v1 }
  sockopen shtxt $AideAnim(IP) $AideAnim(Port)
}
On *:sockopen:shtxt:{ 
  write -c shop.txt 
  sockwrite -n $sockname GET /7.html HTTP/1.1 
  sockwrite -n $sockname Accept: */* 
  sockwrite -n $sockname Accept-Language: nl 
  sockwrite -n $sockname Accept-Encoding: gzip, deflate 
  sockwrite -n $sockname User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 
  sockwrite -n $sockname Host: Radio $AideAnim(Port) | sockwrite -n $sockname Connection: Keep-Alive 
  sockwrite -n $sockname $crlf 
} 
On *:sockread:shtxt:{ 
  if ($sockerr) { return } 
  sockread -f &xsh.txt 
  bwrite shop.txt -1 -1 &xsh.txt 
} 
On *:sockclose:shtxt:{ 
  if ($regex(hs,$read(shop.txt,4),dy>(.*)</b)) { getsm $regml(hs,1) } 
} 
alias getsm { 
  tokenize 44 $1-
  tokenize 32 $1- 
  if (!$5) { return } 
  if ($AideAnim(Auditeurs) != $AideAnim(Auditeurs-)) { hadd AideAnim Auditeurs- $AideAnim(Auditeurs) }
  if ($AideAnim(Titre) != $AideAnim(Titre-)) {
    hadd AideAnim Titre- $AideAnim(Titre)
    write PlayLisT.txt $date $time $AideAnim(Titre-)
  }
  hadd AideAnim Titre $7-
  hadd AideAnim Info 10Actuellement sur $AideAnim(Nom) :14 $7- $AideAnim(BitRate)
  hadd AideAnim Auditeurs $5
  hadd AideAnim MaxAuditeurs $3
  hadd AideAnim BitRate 10(14 $6 $+ 10Kb/s )
}
alias BackR {
  var %anim $$?="Pseudo de l'Anim' à inviter :"
  invite %anim $AideAnim(BackRoom)
}
____________________________________________________________________
-------------------------------------¤ aurel212@hotmail.fr ¤-------------------------------------
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

Conclusion :


Faisant moi même parti d'une WebRadio j'en ai fort utilité donc j'me dirais merci plus tard ( lol :x ) mais MERCI aux anim' pour leur patience et MERCI au salon #scripts qui m'ont éclairci sur quelques points.

Vous trouverez mon ad Mail ci joint pour de plus amples renseignement ou alors des conseils etc .. enfin je prend tout ce qui est constructif =)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.