Advertisement
Guest User

sbnc.tcl

a guest
Jun 5th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.66 KB | None | 0 0
  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. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement