home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / ircu210.zip / ADD-TO-IRCRC < prev    next >
Text File  |  1997-07-13  |  8KB  |  286 lines

  1. ##############################################################################
  2. #
  3. # UnderNet specific commands (by Run, carlo@runaway.xs4all.nl)
  4. #
  5. ##############################################################################
  6. #
  7. # SILENCE command
  8. #
  9. # Usage:
  10. #
  11. # /SILENCE [<nick>]
  12. # Shows the silence list of <nick> (default, your nick) as known by
  13. # your server.  (This list only known/visible on the servers that needed it).
  14. # Or:
  15. #
  16. # /SILENCE +<nick!user@host.mask>
  17. # /SILENCE -<nick!user@host.mask>
  18. #
  19. # To add or remove masks, works much like the channel ban list.
  20. #
  21. # After adding a mask to your list, *EVERY* private message from someone
  22. # matching that mask will be stopped at the server LOCAL to THAT person.
  23. # This includes: /MSG, /NOTICE, /CTCP, /NOTE SEND, /INVITE
  24. #
  25. ALIAS SILENCE QUOTE SILENCE
  26. ALIAS SILE QUOTE SILENCE
  27. ON ^RAW_IRC "% SILENCE %" echo *** $*
  28.  
  29. ##############################################################################
  30. #
  31. # MAP command
  32. #
  33. # Usage: 
  34. # /MAP [<server.mask>]
  35. #
  36. # Shows a map of the servers and how they are linked, as seen from your local
  37. # server. The optional <server.mask> can be used to filter out some servers.
  38. #
  39. ALIAS MAP QUOTE MAP
  40.  
  41. #############################################################################
  42. #
  43. # IRC Oper only commands:
  44. #
  45. #############################################################################
  46. #
  47. # RPING command
  48. #
  49. # Usage:
  50. #
  51. # /RPING <pinged server(mask)> [<start server(mask)>]
  52. #
  53. # Returns the ping time between <start server> (local server is default)
  54. # and <pinged server> in miliseconds.
  55. #
  56. ALIAS RPING QUOTE RPING
  57. ON ^RAW_IRC "% RPONG *" {
  58.   echo *R* RPING: $STRIPU($0) - $STRIPU($3) : $4 ms
  59. }
  60.  
  61. #############################################################################
  62. #
  63. # UPING command
  64. #
  65. # Usage:
  66. #
  67. # /UPING <pinged server(mask)> [<port>] [<start server(mask)>] [<number>]
  68. #
  69. # Returns statistics about udp ping between <start server(mask)> (local server
  70. # is default) and <pinged server>. Uses <port>, default is 7007 but in some
  71. # cases you can use the unix echo daemon at port 7. <number> is the number
  72. # of packets sent, default is 5, maximum is 20 packets.
  73. #
  74. ALIAS UPING QUOTE UPING
  75. ON ^RAW_IRC "%.% NOTICE % :Sending % pings to *" {
  76.   echo *U* Sending $4-6 $STRIPU($GETNAME($7)) $8- \($STRIPU($0)\)
  77. }
  78. ON ^RAW_IRC "%.% NOTICE % :UPING *" {
  79.   if ([$4]==[Stats:]) {
  80.     echo *U* $4-
  81.   } {
  82.     echo *U* $STRIPU($0) -> $STRIPU($4) : $5- ms
  83.   }
  84. }
  85.  
  86. #############################################################################
  87. #
  88. # SETTIME command
  89. #
  90. # Usage:
  91. #
  92. # /SETTIME <new UTC> [<remote server>]
  93. #
  94. # This corrects the TimeStamp clock on your server (use /TIME to see it).
  95. # If you use <remote server>, the clock of that server is set equal to
  96. # the clock of it's uplink, not to the value you give. Use only if you
  97. # know what you are doing !
  98. #
  99. ALIAS SETTIME QUOTE SETTIME
  100.  
  101. #############################################################################
  102. #
  103. # Formatting:
  104. #
  105.  
  106. #############################################################################
  107. # '/HIDE' will suppress client connect/disconnect notices when you are opered
  108. # '/SHOW' will start showing them again
  109. #
  110. on ^server_notice "% % NOTICE -- CLIENT*" if (hideit != 1) {echo *N* $2-}
  111. on ^server_notice "% % NOTICE -- Invalid username:*" if (hideit != 1) {echo *N* $2-}
  112. alias show @ hideit = 0;echo *** You can now see clients connecting/exiting
  113. alias hide @ hideit = 1;echo *** You will no longer see clients connecting/exiting
  114.  
  115. #############################################################################
  116. #
  117. # Ban info
  118. #
  119. on ^367 * {
  120.   if ([$4] != []) {
  121.     echo 367 $1 \($3 - $stime($4)) $2
  122.   } {
  123.     echo 367 $1-
  124.   }
  125. }
  126.  
  127. #############################################################################
  128. #
  129. # Topic info
  130. #
  131. on ^333 * echo 333 Topic for $1 set by $2 on $stime($3)
  132.  
  133. #############################################################################
  134. #
  135. # Signon info
  136. #
  137. on ^317 * {
  138.   if (index(012345679 $3) != -1) {
  139.     echo 317 $1 has been idle for $2 seconds. Signon at $stime($3)
  140.   } {
  141.     echo 317 $1 has been idle for $2 seconds.
  142.   }
  143. }
  144.  
  145. #############################################################################
  146. #
  147. # Show channel creation times
  148. #
  149. ON ^329 * echo 329 $1 : created $stime($2)
  150.  
  151. #############################################################################
  152. #
  153. # No such channel
  154. #
  155. ON ^403 * echo *** $1: $2-
  156.  
  157. #############################################################################
  158. #
  159. # 'layout' script by Run (carlo@runaway.xs4all.nl):
  160. #
  161.  
  162. ALIAS STRIPU {
  163.     IF (MATCH(*.undernet.org $0)) {
  164.         ASSIGN F_R $LEFT($RINDEX(. $LEFT($RINDEX(. $0) $0)) $0).*; } {
  165.         ASSIGN F_R $0; }
  166.     IF (STRLEN($F_R)>16) {
  167.         @ DUMMY = STRLEN($F_R)-15;
  168.         ASSIGN FUNCTION_RETURN $LEFT(${INDEX(. $F_R)-DUMMY} $F_R)*$MID($INDEX(. $F_R) 64 $F_R); } {
  169.         ASSIGN FUNCTION_RETURN $F_R; }
  170. }
  171.  
  172. ALIAS WRD {
  173.     ASSIGN FUNCTION_RETURN $*; }
  174.  
  175. ALIAS STRLEN {
  176.     ASSIGN DUMMY $0M
  177.     @ FUNCTION_RETURN = RINDEX(M $DUMMY) }
  178.  
  179. ALIAS GETNAME {
  180.     IF (RIGHT(1 $0)==[.] || RIGHT(1 $0)==[,]) {
  181.         ASSIGN CLNME $LEFT(${STRLEN($0)-1} $0); } {
  182.         ASSIGN CLNME $0; }
  183.     IF (INDEX([ $0)>0) {
  184.         ASSIGN DUMMY $LEFT($INDEX([ $0) $0);
  185.         ASSIGN CLNME $MID(${INDEX([ $0)+1} ${RINDEX(] $0)-(INDEX([ $0)+1)} $0);
  186.         IF (INDEX(@ $CLNME)) {
  187.             ASSIGN FUNCTION_RETURN $DUMMY; } {
  188.             IF (INDEX(@ $DUMMY)) {
  189.                 ASSIGN FUNCTION_RETURN $CLNME; } {
  190.                 IF (STRIP(.0123456789 $DUMMY)==[]) {
  191.                     ASSIGN FUNCTION_RETURN $CLNME; } {
  192.                     ASSIGN FUNCTION_RETURN $DUMMY; } } } } {
  193.         ASSIGN FUNCTION_RETURN $CLNME; } }
  194.     
  195. ON ^364 * {
  196.     ECHO $[16]STRIPU($1) $[8]LEFT($INDEX(. $2) $2) $[52]3-; }
  197.  
  198. ON ^200 * {
  199.     ECHO 200 $[53]WRD($STRIPU($0) \($2\)) ==> $STRIPU($4); }
  200.  
  201. ON ^201 * {
  202.     ECHO 201 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  203.  
  204. ON ^202 * {
  205.     ECHO 202 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  206.  
  207. ON ^203 * {
  208.     ECHO 203 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  209.  
  210. ON ^204 * {
  211.     ECHO 204 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  212.  
  213. ON ^205 * {
  214.     ECHO 205 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  215.  
  216. ON ^206 * {
  217.     ASSIGN NROS $LEFT(${STRLEN($3)-1} $3)
  218.     ECHO 206 $[16]STRIPU($0) ==> $[10]WRD($1\[$2]) $[16]STRIPU($GETNAME($5)) ==> ${NROS-1}S $4 $7-; }
  219.  
  220. ON ^207 * {
  221.     ECHO 207 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  222.  
  223. ON ^208 * {
  224.     ECHO 208 $[16]STRIPU($0) ==> $1\[$2\] $3-; }
  225.  
  226. ON ^209 * {
  227.     ECHO 209 $[16]STRIPU($0) $3 of $1\[$2\] $4-; }
  228.  
  229. ON ^SERVER_NOTICE "% ??? Notice -- Unauthorized connection from *" {
  230.   SET STATUS_USER  $7-: $4 $5
  231. }
  232.  
  233. ON ^SERVER_NOTICE "% ??? Notice -- Net junction: *" {
  234.   echo * $4-
  235. }
  236.  
  237. ON ^SERVER_NOTICE "% ??? Notice -- Net break: *" {
  238.   echo * $4-
  239. }
  240.  
  241. ON ^SERVER_NOTICE "% ??? Notice -- HACK(4): *" {
  242.   SET STATUS_USER  Uworld: $6-
  243. }
  244.  
  245. ON ^SERVER_NOTICE "% ??? Notice -- IP# Mismatch: % != *" {
  246.   SET STATUS_USER  Uworld: $6-
  247. }
  248.  
  249. ON ^SERVER_NOTICE "% ??? Notice -- Nick collision on *" {
  250.   SET STATUS_USER  Uworld: Nick coll: $7-
  251. }
  252.  
  253. ON ^SERVER_NOTICE "% ??? Notice -- Can't open for write: *" {
  254. }
  255.  
  256. ON ^SERVER_NOTICE "% ??? Notice -- Cannot accept connections: *" {
  257. }
  258.  
  259. ON ^SERVER_NOTICE "% ??? Notice -- *" {
  260.   echo *N* $4-
  261. }
  262.  
  263. # this'll fix what those nasty global scripts do with the /stats k report. -Kev
  264. on ^216 * {@tmp = [$*];eval echo $n.o($H 216) $1:$2:$$${[3-]##(#tmp-4)}:$$${#tmp-3}:$$${#tmp-2}:$$${#tmp-1}}
  265.  
  266. # For this to work, you need Run's color client...
  267. on ^211 * {
  268.   if ([$1] == [SendQ]) {
  269.       echo $n.o($H ***) \;40mConnection                                Avg Send        Avg Recvd
  270.       echo     $[10]1 $[10]2 $[10]3 $[10]4 $[12]5 $6-
  271.   } {
  272.     if ([$1] == [Connection]) {
  273.       echo $n.o($H ***) \;40m$[40]1  Avg Send        Avg Recvd
  274.       echo     $[10]2 $[10]3 $[10]4 $[10]5 $[12]6 $7-
  275.     } {
  276.       ^assign SKB $4
  277.       ^assign RKB $6
  278.       ^assign SINCE $7
  279.       echo $n.o($H ***) $[40]1\; ${SKB * 86400 / SINCE} Kb/day    ${RKB * 86400 / SINCE} Kb/day
  280.       echo     $[10]2 $[10]3 $[10]4 $[10]5 $[12]6 $7-
  281.     }
  282.   }
  283. }
  284.