SHARE
TWEET

sbnc.tcl

a guest Jun 5th, 2017 49 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. #  Manages your sbnc over irc
  3.  
  4.   #  configuration
  5.  
  6.     #  variables
  7.  
  8.         set sbnc(trigger)   "\!"
  9.         set sbnc(version)   "2.0"
  10.         set sbnc(author)    "#GeeX at Quakenet"
  11.         set sbnc(chan)      "#Aliens"
  12.         set sbnc(ident)     "TeamServ"
  13.         set sbnc(ircserver) "irc.onlinegamesnet.net 6667"
  14.         set sbnc(group)     "Supporter"
  15.         set sbnc(server)    "the-aliens.de"
  16.         set sbnc(port)      "9005"
  17.         set sbnc(realname)  "BNC #Aliens"
  18.         set sbnc(iface)     "http://bouncer.the-aliens.de"
  19.  
  20.     #  bindings
  21.  
  22.         bind PUB  o|- $sbnc(trigger)sbnc1 sbnc1:iface
  23.  
  24.     #  copyright
  25.  
  26.         putlog "sBNC Script version $sbnc(version) scripted by $sbnc(author)"
  27.  
  28.     #  source (again DO NOT change anything if you are not 100% sure)
  29.  
  30.         proc sbnc1:iface { nick host hand chan arg } {
  31.             global sbnc
  32.             switch -exact -- [string tolower [lindex [split $arg] 0]] {
  33.                 "add" {
  34.                     set ident [lindex [split $arg] 1]
  35.                     set password [expr {int(rand()*1000000) + 1}]
  36.                     set bncuser [lindex [split $arg] 2]
  37.                     if {$ident == ""} {
  38.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc add 'ident' ?nick?."
  39.                         return
  40.                     }
  41.                     putquick "SBNC ADDUSER $ident $password $sbnc(group)"
  42.                     putquick "SBNC SIMUL $ident SBNC SET REALNAME $sbnc(realname)"
  43.                     putquick "SBNC LOCK $ident realname"
  44.                     putquick "SBNC LOCK $ident vhost"
  45.                     putquick "SBNC SIMUL $ident SBNC SET SERVER $sbnc(ircserver)"
  46.                     utimer 60 [list putquick "SBNC SIMUL $ident JOIN $sbnc(chan)"]
  47.                     putquick "NOTICE $nick :Glückwunsch. Neuer sBNC wurde erstellt."
  48.                     putquick "NOTICE $nick :Server: $sbnc(server), Port: $sbnc(port), Ident: $ident, Password: $password"
  49.                     if {$bncuser == ""} {
  50.                         return
  51.                     } elseif {[onchan $bncuser $chan]} {
  52.                         putserv "PRIVMSG $bncuser :Huhu $bncuser! Hier Deine sBNC Daten:"
  53.                         putserv "PRIVMSG $bncuser :Server: $sbnc(server), Port: $sbnc(port), SSL Port: +9010, Ident: $ident, Password: $password, Web-Zugang: $sbnc(iface), sBNC-1"
  54.                         putserv "PRIVMSG $bncuser :Das Tutorial findest Du hier: http://board.the-aliens.de/thread.php?threadid=690"
  55.                         putserv "PRIVMSG $bncuser :Falls Du noch Hilfe benötigst, joine bitte wieder in #Aliens-Support."
  56.                     } else {
  57.                         putserv "NOTICE $nick :Fehler. $bncuser ist nicht im $chan."
  58.                         return
  59.                     }
  60.                 }
  61.                 "dellen" {
  62.                     set ident [lindex [split $arg] 1]
  63.                     if {$ident == ""} {
  64.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc del 'ident'."
  65.                         return
  66.                     } else {
  67.                     putquick "SBNC DELUSER $ident"
  68.                     putquick "NOTICE $nick :Erledigt. User ($ident) gelöscht."
  69.                     }
  70.                 }
  71.                 "password" {
  72.                     set ident [lindex [split $arg] 1]
  73.                     set password [expr {int(rand()*1000000) + 1}]
  74.                     if {$ident == ""} {
  75.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc password 'ident'."
  76.                         return
  77.                     } else {
  78.                         putquick "SBNC RESETPASS $ident $password"
  79.                         putquick "NOTICE $nick :Erledigt. Neues Passwort für User ($ident) erstellt."
  80.                         putquick "NOTICE $nick :Passwort: $password"
  81.                     }
  82.                 }
  83.                 "global" {
  84.             set arg [lrange [split $arg] 1 end]
  85.                     if {$arg == ""} {
  86.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc global 'message'."
  87.                         return
  88.                     } else {
  89.                         putquick "SBNC GLOBAL $arg"
  90.                         putquick "NOTICE $nick :Erledigt. Globale Message an alle sBNC User wurde gesendet."
  91.                     }
  92.                 }
  93.                 "join" {
  94.                     set sbnc(joinchan) "[lindex [split $arg] 1]"
  95.                     if {$sbnc(joinchan) == ""} {
  96.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc join 'channel'."
  97.                         return
  98.                     } elseif {[string first # $sbnc(joinchan)] != 0} {
  99.                         putserv "NOTICE $nick :Error. The channel has to start with '#'."
  100.                         return
  101.                     } else {
  102.                         putserv "SBNC tcl :foreach sbnc(user) \[bncuserlist\] {setctx \$sbnc(user) ; channel add $sbnc(joinchan)}"
  103.                         putserv "NOTICE $nick :Erledigt. Alle sBNC Nutzer sind im $sbnc(joinchan)."
  104.                         return
  105.                     }
  106.                 }
  107.                 "part" {
  108.                     set sbnc(partchan) "[lindex [split $arg] 1]"
  109.                     if {$sbnc(partchan) == ""} {
  110.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc part 'channel'."
  111.                         return
  112.                     } elseif {[string first # $sbnc(partchan)] != 0} {
  113.                         putserv "NOTICE $nick :Error. The channel has to start with a '#'."
  114.                         return
  115.                     } else {
  116.                         putserv "SBNC tcl :foreach sbnc(user) \[bncuserlist\] {setctx \$sbnc(user) ; channel remove $sbnc(partchan)}"
  117.                         putserv "NOTICE $nick :Erledigt. Alle sBNC User haben den $sbnc(partchan) Channel wieder verlassen."
  118.                         return
  119.                     }
  120.                 }
  121.                 "suspend" {
  122.                      set ident [lindex [split $arg] 1]
  123.                      if {$ident == "$sbnc(ident)"} {
  124.                         putquick "NOTICE $nick :Error. You cannot Suspend Alienserv."
  125.                         return
  126.                     } elseif {$ident == ""} {
  127.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc suspend 'ident' ."
  128.                         return
  129.                     } else {
  130.                         putquick "sBNC suspend $ident"
  131.                         putquick "NOTICE $nick :Erledigt. $ident ist nun suspendiert."
  132.                         return
  133.                         }
  134.                     }
  135.                 "unsuspend" {
  136.                      set ident [lindex [split $arg] 1]
  137.                      if {$ident == "$sbnc(ident)"} {
  138.                         putquick "NOTICE $nick :Error. You cannot unsuspend Alienserv."
  139.                         return
  140.                     } elseif {$ident == ""} {
  141.                         putserv "NOTICE $nick :Error. Wrong syntax. Use $sbnc(trigger)sbnc unsuspend 'ident' ."
  142.                         return
  143.                     } else {
  144.                         putquick "sBNC unsuspend $ident"
  145.                         putquick "NOTICE $nick :Erledigt. $ident ist nun nicht mehr suspendiert."
  146.                         return
  147.                         }
  148.                     }
  149.                 "help" {
  150.                     putserv "NOTICE $nick :\037Hilfe zu sBNC-Team\037:"
  151.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 add 'ident' 'IRC Nick' zum Erstellen eines Bouncers."
  152.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 password 'ident' zum Generieren eines neuen Passwortes."
  153.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 suspend 'ident' zum Suspendieren eines Bouncers."
  154.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 unsuspend 'ident' zum Aufheben einer Suspendierung eines Bouncers."
  155.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 global 'message' zum Senden einer Nachricht an alle BNC User."
  156.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 join 'chan' zum Joinen aller sBNC User in einem bestimmten Channel."
  157.                     putserv "NOTICE $nick :Nutze $sbnc(trigger)sbnc1 part 'chan' zum Parten aller sBNC User aus einem bestimmten Channel."
  158.                     putserv "NOTICE $nick :End of list."
  159.                 }
  160.                 "default" {
  161.                     putserv "NOTICE $nick :Error. Use $sbnc(trigger)sbnc help to see a command overview."
  162.                 }
  163.             }
  164.         }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top