home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / bx75p3.zip / doc / BitchX.tcl < prev    next >
Text File  |  1999-02-23  |  6KB  |  175 lines

  1.  
  2. Bitchx tcl now includes a special mode similar to what eggdrop bots have. ie
  3. we can setup a BitchX client as both a client and/or a bot. 
  4.  
  5.      Client A -----\                    /----- Client C
  6.              ----- Bot A ----------- Bot B -----
  7.      Client B -----/                        \----- Client D
  8.  
  9. Bot A and Bot B are both BitchX clients. In Bot A attempts to link in a Bot
  10. link to Bot B then Bot B needs to have Bot A in it's /botlist with a
  11. password. ie /addbot BotA #channel 0 0 password  where channel, auto-op and
  12. prot levels don't matter. /clink BotB BotA password is then used to link the
  13. two clients together. From this point on, anything coming over a dcc chat
  14. link or a dcc bot link are passed back and forth over the appropriate links.
  15. Clients dcc chatting with either BotA or BotB will receive information about
  16. joins and parts as well as things the other clients say to one another. BotA
  17. and BotB can also partake in this link as well. The bots in this case should
  18. not try and /dcc chat with anyone. let the Client's attempt the chat.
  19.  
  20. Commands from Bots
  21.  
  22.     /clink  client_to_attempt_link_with  
  23.         Client_nick_to_link_with password <port>
  24.         - attempt to link two clients together in a bot link.
  25.         - password can also be /set bot_passwd which bypasses the
  26.           Botlist password.
  27.  
  28.     /csay   msg 
  29.         - send msg over all dcc chat links and any bot links as well.
  30.  
  31.     /cwho    <bot>
  32.         - shows who is on the current bot, or specified bot
  33.  
  34.     /cwhom
  35.         - shows who is on every bot.
  36.  
  37.     /cboot    [nick] <reason>
  38.         - boot nick from the network.
  39.  
  40.     /cmsg   [nick> msg
  41.         - not fully implemented yet.
  42.  
  43. Commands for /dcc chat
  44. *note: these are also available in regular dcc chat with someone else. So,
  45. some of these have userlevels applied to them to prevent others from doing
  46. things to you or causing you todo things you wouldnt want them todo.
  47.  
  48.     .act [what]         - sends action to chat line
  49.     .boot [nick] <msg>     - boot nick from network
  50.     .chat            - once a dcc is started send .chat to enter
  51.                   the party line
  52.     .cmsg [nick] msg     -  send a privmsg
  53.     .echo            -  toggle echo back to you on/off
  54.     .help <topic>         - help for commands
  55.     .invite nick        - invites nick to chat with the host
  56.     .msg [nick] [msg]     - send a privmsg to someone
  57.     .say [msg]         - say something on the channel
  58.     .quit            - quit partyline, but not the chat.
  59.     .tcl [tcl_command]     - tcl command
  60.     .who <botnick>        - who is on bot or this bot
  61.     .whom             - all users on network
  62.  
  63. Commands for tcl scripting
  64. *note: Most of these follow the eggdrop syntax. Some are unique to BitchX
  65. however. On differance is that instead of a letter for the userlevel, a
  66. numeric userlevel is applied instead.
  67.  
  68.     ircii        - causes a ircii command to execute
  69.     validuser    - 
  70.     pushmode
  71.     flushmode
  72.     lvarpop
  73.     lempty
  74.     lmatch
  75.     keyldel
  76.         keylget
  77.         keylkeys
  78.         keylset
  79.     maskhost
  80.     onchansplit
  81.     servers
  82.         server_list[i].name, server_list[i].port, server_list[i].connected
  83.     chanstruct
  84.         c->channel, c->server, c->mode, c->s_mode, c->limit,
  85.         c->chop, c->voice, c->channel_create, c->join_time, c->stats_ops,
  86.         c->stats_dops, c->stats_bans, c->stats_unbans, c->stats_sops,
  87.         c->stats_sdops, c->stats_sbans, c->stats_sunbans, c->stats_topics,
  88.         c->stats_kicks, c->stats_pubs, c->stats_parts, c->stats_signoffs,
  89.         c->stats_joins, c->set_ainv, c->set_auto_rejoin,
  90.         c->set_deop_on_deopflood, c->set_deop_on_kickflood,
  91.         c->set_deopflood, c->set_deopflood_time, c->set_hacking,
  92.         c->set_kick_on_deopflood, c->set_kick_on_joinflood,
  93.         c->set_kick_on_kickflood, c->set_kick_on_nickflood,
  94.         c->set_kick_on_pubflood, c->set_kickflood, c->set_kickflood_time,
  95.         c->set_nickflood, c->set_nickflood_time, c->set_joinflood,
  96.         c->set_joinflood_time, c->set_pubflood, c->set_pubflood_time,
  97.         c->set_pubflood_ignore, c->set_userlist, c->set_shitlist, c->set_lamelist,
  98.         c->set_kick_if_banned, c->totalnicks, c->maxnicks, c->maxnickstime,
  99.         c->totalbans, c->maxbans, c->maxbanstime, c->set_aop, c->bitch_mode);
  100.  
  101.     channel
  102.     channels
  103.     isop
  104.     getchanhost
  105.     matchattr
  106.     finduser
  107.     findbot
  108.     findshit
  109.     date
  110.     time
  111.     ctime
  112.     dccstats
  113.                                 dccnum,
  114.                                 read,
  115.                                 dcc_types[flags&DCC_TYPES],
  116.                                 user,
  117.                                 status  DCC_DELETE ? "Closed" :
  118.                                 DCC_ACTIVE ? "Active" :
  119.                                 DCC_WAIT ? "Waiting" :
  120.                                 DCC_OFFER ? "Offered" : "Unknown",
  121.                                 starttime.tv_sec,
  122.                                 filesize,
  123.                                 bytes_sent,
  124.                                 bytes_read,
  125.                                 filesize,
  126.                                 description,
  127.                                 encrypt or ""
  128.  
  129.     onchan
  130.     chanlist
  131.     unixtime
  132.     putlog
  133.     putloglev
  134.     rand
  135.     timer
  136.     killtimer
  137.     utimer
  138.     killutimer
  139.     timers
  140.     utimers
  141.     putserv
  142.     putscr
  143.     putdcc
  144.     putbot
  145.     putallbots
  146.     bind
  147.     binds
  148.     unbind
  149.     strftime
  150.     cparse
  151.     userhost    - Attempt to find nick on irc. Any number of nicks
  152.               may be specified.
  153.     getchanmode
  154.  
  155. Tcl variables BitchX sets.
  156.     botnick
  157.     nick
  158.     realname
  159.     username
  160.     server
  161.     version
  162.     curchan
  163.     userhost    - variable is set in response to the userhost command
  164.     un-userhost    - variable is set in response to the userhost command
  165.  
  166. Special considerations.
  167.  
  168. tcl bind raw  functions that return 1 will bypass the internal ircII
  169. routines. returning 0 or nothing will have the tcl and the ircII internal
  170. routine execute.
  171.  
  172.  
  173. BitchX's bot mode acts very similar to eggdrop's and in fact thanks to Robey
  174. for defining the protocol necessary to achieve this.
  175.