home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-03-01 | 17.8 KB | 492 lines | [TEXT/ttxt] |
-
- PowerBot specs, updated 11/30/98
-
-
- Compiler bugs, I can do nothing but wait on
- --------------------------------------------------------
- (none for now, that I have not worked around...)
-
-
- BUGS to be fixed
- --------------------------------------------------------
- Ñ╩restrict nick only working when user logs in, not
- when they change nick/icon
-
- Ñ╩LOCATE is getting out of sync somehow... analyze and
- find out why!
- Ñ╩Monitor the "gulp" debugger line and see if it matches
- up at all with the number of servers the trackers fall
- short on during tracking.
- Ñ╩link still not working correctly when bot has two-
- byte characters in its own nick (Japanese LK)... seems
- to be related to specific servers or clients?
- Ñ╩what happens if we run out of disk space? :-o
- Ñ╩should old log files be getting placed into a folder?
- Ñ kb limit on log size should probably check filesize
- at each flush, and create a new file on-the-fly if
- needed
- Ñ╩aliases to offline or unshared volumes in search
- directory or subfolders causes problems with pathing
-
-
- Highest demand
- --------------------------------------------------------
- Ñ╩when message expires and is not from guest, queue
- message to originator to notify that it expired
- Ñ╩get bot memorizing window positions and default
- directories
- Ñ╩finish new kit
- Ñ╩expansion of the UserBase into bot commands
- Ñ╩finish replacing all the imbedded applescripts with
- AE calls
- Ñ add more of the suggested ¿ commands
- Ñ╩try to reload the server to reload the news (via AE)
-
-
- OPERATIONAL features
- --------------------------------------------------------
- Ñ╩bot does not have to run on the same computer as the
- server application.
- Ñ selectable greeting
- Ñ selectable help message
- Ñ notify of waiting messages on login
- Ñ notify of new messages if logged in
- Ñ five levels of security for every command
- Ñ master password for bot
- Ñ selectable areas of protection using master password
- Ñ configurable nick, icon, and port (plus the usuals)
- Ñ internal userlist includes Login and Privledges
- Ñ message limits
- - queued messages
- - msgs to login
- - msgs from login
- - msgs from guest
- - bot accepts messages y/n
- Ñ monitor, kill, and butt-in on all command windows
- Ñ statistics
- - users online
- - command windows open
- - command windows opened since load
- - messages queued
- Ñ admin-defined userlist, as an additional layer of
- security / restrictions on commands
- Ñ control window times-out and closes automatically
- after two minutes
- Ñ bot has a few defenses to prevent flooding
- through the command window
- Ñ╩ghost kicking at login and at defined intervals
- Ñ╩bot events logged to file (basic and verbose modes)
- with date/time stamping in file and on filename
- Ñ periodic mailbox save (in case of crash)
- Ñ╩public personality file :-)
- Ñ╩can change nick and icon while connected
- Ñ╩bot can auto-reconnect if disconencted or kicked
- (specify delay before reconnect)
- Ñ╩chat log to file
- Ñ╩empty mailbox
- Ñ╩internal userlist tracks IP addresses of users
- Ñ╩bot protects itself from people trying to flood its
- control window
- Ñ╩automatically scan for leeches at user-defined intervals
- Ñ╩options to PM, PM and public chat, kick, or ban leeches
- Ñ╩option to announce kicks/bans (and the reason) in chat
- Ñ╩users with default or blank names can be messaged to
- change their name
- Ñ╩can kick or ban users that are hostile to the bot or
- server. (attempting to flood)
- Ñ╩includes mini-client
- Ñ╩basic userlist (no icons, plain black text)
- Ñ╩read and send public chat
- Ñ╩get info on a user (includes icon number)
- Ñ╩kick or ban a user
- Ñ╩send a Private Message
- Ñ╩establish a "perma-ban" list, to permonantly ban IPs
- (wildcards allowed) AND nicks
- Ñ╩built-in "mini-news", for admins and such to keep
- eachother informed of admin-ish issues, without posting
- them to public news
- Ñ╩linked chat indicates who has arrived/left on other side
- Ñ╩public personality can do dynamic substitutions, to say
- things like time and date in a response
- Ñ╩a user-defined "personality file" which allows the bot to
- reply to words or phrases with set responses
- Ñ╩special personality key-words, which the bot dynamically
- "plugs in" to the replies, to make it seem more "real"
- - TIME
- - DATE
- - USERLIST (linked users)
- - TRACKERS (trackers that are currently up)
- - RANDOMNICK
- - TRIGGERNICK (nick of the user who chatted the bot)
- - RANDOM (selects from a list of user-defined responses)
- - UPTIME
- Ñ╩random chat, with user-defined intervals
- Ñ auto-greet at login
- Ñ╩tracker tracker, keeps track of which trackers are
- currently running
- Ñ╩can restrict server access to a specific IP mask
- Ñ╩can deliver messages to the bot, to be read by the bot
- operator, with up to eight user-defined accounts that
- the bot can see.
- Ñ╩auto-launch files before and after bot runs, in addition
- to when bot is stopped/disconnected
- Ñ╩maintain a database of all users' nicks, accounts, real
- names, email addresses, and a notes field.
- Ñ╩email users directly from the bot, or mass-mail all users
- Ñ╩periodically reboot the server, or reboot on command
- Ñ╩select users who are exempt from certain monitoring and
- defense features
-
-
- OPERATIONAL commands
- --------------------------------------------------------
- Ñ kick {user}
- Ñ ban {user}
- Ñ deliver message to {login}
- Ñ read messages
- Ñ delete messages to {login}
- Ñ help
- Ñ╩help {command}
- Ñ add user {login}
- Ñ╩remove user {login}
- Ñ╩command list
- Ñ╩(command) (remote file launch! oh yeah!)
- Ñ╩stop bot
- Ñ╩refresh userlist (on-demand ghostbusters/leech scan)
- Ñ╩link {server}
- Ñ╩stop link
- Ñ╩permaban add {ip/nick}
- Ñ╩permaban remove {ip/nick}
- Ñ╩permaban list
- Ñ╩find {pattern}
- Ñ╩global {pattern}
- Ñ╩stop search
- Ñ╩chat {message}
- Ñ╩send pm to {user}
- Ñ╩trackers
- Ñ╩empty trash
- Ñ reload ppcp (reload personality file)
- Ñ╩guest on/off/password
- Ñ╩run (or view text, with directrory prompts)
- Ñ╩reboot
- Ñ╩invite
- Ñ╩change nick to
- Ñ╩change icon to
-
-
- requested functionality (set up but unimplemented)
- --------------------------------------------------------
- Ñ reload server {in hh:mm}
- Ñ╩editable help on plug-in commands
- Ñ╩make the bot respond via personality file instead of
- with the "how to use" msg if PM'd with something that
- gets a hit in the personality file
-
-
- requested commands (not included at this time)
- ------------------------------------------------------
- Ñ╩SEND EMAIL TO {address}
- Ñ view log (last 10 entries)
- Ñ reload news (looking for HOW to do this??!)
- Ñ╩archive news (only if local to server)
- Ñ╩deliver message to nickname {message}
- Ñ╩commands to change all prefs remotely from client
- Ñ╩"kick my ghost" to kick previous occurances of same
- login in userlist. (if not "guest" login!)
- Ñ╩directory list (reply with PM of directory list of
- directory specified)
- Ñ╩DELIVER MESSAGE TO ALL
- Ñ╩SPEAK {langauge} to load alternate language kits
- Ñ╩QUIT APPLICATION
-
-
- requests for special dynamically responding personalities
- --------------------------------------------------------
- Ñ╩KICKxx
- Ñ╩BANxx
- Ñ╩¿CR¿ to insert a CR into a response
- Ñ╩¿FILE {path}¿
- Ñ ¿HTTP//{web path})¿ - checked every so often
-
-
- requested features for use if the bot is LOCAL to server
- --------------------------------------------------------
- Ñ╩disk space check
- Ñ PM users about non-commented uploads {message}
-
-
- requested functionality (not included at this time)
- ------------------------------------------------------
- Ñ can tell bot in pub chat to shut up
- Ñ two help commands, HELP and HELP ALL, HELP shows only
- available commands
- Ñ notify user (with access) that message target not exist
- Ñ╩check msg target for existance before queuing
- Ñ Cmd-A should select all in CW operator chat field
- Ñ╩public chat spam defender
- Ñ╩notify list for bot operator, notify to console when
- user in list logs in
- Ñ╩socket patch: 10 socket errors in 10 seconds makes
- it force disconnect
- Ñ╩archive old (expired) mini news to file
- Ñ╩option to email certain users any new mini-news posts
- Ñ╩user-editable detailed help
- Ñ╩remove search folder from trash queue if re-searching
- Ñ╩remove "Ñ" from nicks in userlist, to avoid confusion?
- Ñ╩port scan blocker
- Ñ╩auto-comment feature, watch a folder & set comments
- if blank
- Ñ╩auto-comment during search
- Ñ user-defined message if pager is off
- Ñ╩some way to remotely install a new powerbot version
- Ñ╩scan incomming PM's, and if they match a valid command,
- execute them. (this may be tough to do)
- Ñ╩[x] MiniClient chat triggers personality chats Option
- Ñ╩design in a kick/ban debit system, where a user that is
- online can build up both permonant and temporary
- "demerits" toward getting kicked or banned, and when
- a user gets some demerits, can be messaged a warning.
- This will work well for implementing a non-allowed
- nickname list, as well as the kickxx and banxx chat
- keys.
- Ñ╩"help menu" system, for use as a tech support system!
- Ñ╩guard post default to previously scanned folders
- Ñ╩get "send pm to" to work across a link
- Ñ╩convert all imbedded applets into direct AE calls
- Ñ╩built-in personality file editor
- Ñ╩place a comment into the prefs file to indicate the
- prefs are in the resource fork.
- Ñ╩feature to sort a folder's contents by filetype and
- move the files to kind-specific folders (runs
- continuously?)
- Ñ╩have bot arrange search results of last 30 or maybe
- 50 uploads, per upload log... or perhaps have a
- designated "recent arrivals" folder that is autmatically
- stocked with the last 50 uploads per the upload log,
- each time MORE is executed.
- Ñ╩flag to attempt link reconnects every xx minutes when
- link dies or fails
- Ñ╩option to kick users who have a new login from same IP
- (to kick user's ghost or stop them from getting by the
- leech watcher)
- Ñ╩add "[x] email me with new IP address" check to userbase
- Ñ╩add "identifying passphrase [ ]" to userbase
- Ñ╩add an input area for "Account:" and "Address:" so that
- admins can customize their Get Info windows without
- confusing the bot
- Ñ╩option to kick users after they complete their download
- (to circulate users on busy servers with few d/l slots)
- Ñ╩log leeches with accounts
- Ñ╩ability to save edited bookmark and UserData files
- Ñ╩ability to watch upload, download, and connect log files
- and build ratios or reports
- Ñ╩auto-launch 4th pane, for "repeating periodic launches"
- Ñ╩TEMPLATE {template login}:{new login}:{new password}
-
-
- Version Info:
- v1.5.2 (under development)
- Ñ╩fixed a punctuation parsing bug in the personality
- system. (thanks nautil!)
- Ñ╩patched around a RB bug that was stopping the auto-
- reconnect from working if you were not autolaunching
- files before connect.
- Ñ╩nudged the formatting of the monitor windows to match
- widths with the default pchat window
-
- v1.5.1 ()
- Ñ╩found and stomped a nil bug. this alone was enough
- for a new release.
-
- v1.5.0 ()
- Ñ╩patched around a RB bug that was causing each CW's
- Close event to trigger twice, double-decrementing the
- Active Controls count in PowerBot's main window
- Ñ╩minor change to the HotSocket, to support object IDs
- greater than 300. (for comaptibility w/REALity's EHP)
-
-
- v1.4.4 (internal beta)
- Ñ╩fixed a bug which could cause a crash if the user
- double-clicked a user in the Mini Window and then
- attempted a Get Info
- Ñ╩fixed a blindingly obvious problem with multiple
- pointers to the same objects in HotSocket (all custom
- class objects are now handed out in the new events
- using COPIES instead of as references to the private
- objects within the socket, which could be zapped later)
- Ñ╩adjusted trashing timer to go to sleep when not in use
- Ñ╩warning added to MiniClient when trying to kick
- protected users
- Ñ╩bug in messaging kicker fixed
- Ñ╩NEW FEATURE: periodic server reboot
- Ñ╩Restrict Nick is now Restrict Nick/Icon :-)
- Ñ╩well-hidden internal userlist bug exterminated, should
- take care of NilObjectExceptions that were popping up
- in the Mini-Client
- Ñ╩anyone whose mailbox the bot can read, can now read
- the bot's mail
- Ñ╩NEW COMMAND: "REBOOT"
- Ñ Bot now allows users to REPLY when reading a message
- Ñ╩HotSocket bug fixed - AddToPchat is an Info, not a
- Request
- Ñ HotSocket bug fixed - Change Subject in a private chat
- window's ID is 120, not 119. :P
- Ñ Admin Chat window now has a subject, to help identify
- it. The bot will make sure it stays there, too. ;-)
- Ñ╩Admins can be auto-invited to Admin Chat at login
- Ñ╩NEW COMMAND: "INVITE"
- Ñ╩Fixed a glitch created in the Guard Post's User Report
- scanner when the GetFolderItem bug was worked around
- in v1.4.3
- Ñ╩fixed "new version announcement" when new version of
- the bot first runs - it will now show only the latest
- new features. (was showing all EXCEPT the latest!)
-
- v1.4.3 (11/25/98)
- Ñ╩UserBase emailer will now try several variations on the
- user's IP when mailing direct is selected
- Ñ╩"locate" command now indicates how many hits were found
- when less than the limit of 30
- Ñ╩the new and improved Info window in the mini client no
- longer "grows back" if you close it by clicking the
- window's little close box thingie in the upper left
- corner
- Ñ╩NEW FEATURE - "restrict nicks" in the Options window,
- Watcher tab panel. Allows the bot to message, kick,
- or ban a user for using offensive or slanderous
- nicknames
- Ñ╩Guard windows now centering on screen when opened
- Ñ╩LOCATE now tells how many servers were searched when
- reporting back to the user.
- Ñ╩oops, missed AutoGreet when expanding text limits!
- AutoGreet now allows 1024 characters
- Ñ╩UserBase now remembers which user you last edited
- Ñ╩UserBase's email message, From, To, and SMTP fields
- do not automatically save, you may click (Store Msg)
- button to store them for next time.
- Ñ╩gearing up to make the bot capable of emailing the
- server's current IP to selected members of the UserBase
- Ñ╩UserData and bookmark files may now be dragged onto the
- bot's main window to be viewed.
- Ñ╩gearing up to allow bot to be able to RestrictNick msg
- a user ONLY at login, in replacement of the greeting.
- Ñ╩minor re-write of the timed event system, to enhance
- reliability and kill a DynIP/proxy bug
- Ñ╩userbase now defaults to mass-mailing
- Ñ╩Message lengths (DELIVER MESSAGE TO ...) limits are
- REMOVED! yay! Type as much as 4k, the limit of the
- Hotline Client's Pchat window.
- Ñ╩adjusted autogreet coding to greet AFTER the user's
- account info has been read in. This will later allow
- security-level-dependent autogreeting.
- Ñ╩MASSIVE reconstruction of internal structures.
- Converted mail, mailbox, userlist, users, and several
- other things to linked lists, should vastly increase
- speed, reliability, memory efficiency, and remove
- hardcoded size limits.
- Ñ╩fixed leap-year bug in mail expiration (mail was
- going to expire a day early across leap year)
- Ñ╩rebuilt the mailbox system, adding commands to read
- each message separately, and option not to delete
- a message after reading it. NOTE: NEW MAILBOX FILE
- IS NOT COMPATIBLE WITH OLD ONE. ALL QUEUED MESSAGES
- WILL BE LOST.
- Ñ╩all windows now have Balloon Help! yay!
- Ñ╩new language kit in its infancy. Hit Cmd-E with the
- mouse above most any control. Changes are not saved
- (yet)
- Ñ╩Nice new Get User Info window, with privs display
- (soon to be editable)
- Ñ╩Debug window left in this build... let me know if you
- like any of the features in there, I will add them as
- standard if so.
-
- v1.4.2 (11-5-98)
- Ñ╩coded around another compiler error causing crashes
- in the IDE on RUN.
- Ñ╩expanded limits on Greeting, Hello, and How To
- messages to 1024 characters.
- Ñ NEW FEATURE! Tego contributes a major new module
- to the bot, "TextBase". Thanks Tego!
- Ñ╩fixed crashing bug when user being watched with Info
- window logged off
- Ñ╩add confirmation windows to kicking and banning in
- the MiniClient.
- Ñ╩added checkbox to MiniClient to suppress PPCP on
- chat while MiniClient is open
- Ñ╩added checkbox to MiniClient to allow operator to
- receive PMs while MiniClient window is open
- Ñ╩NEW COMMAND! Tracker search! Type "locate {pattern}"
- to find something in the trackers. It will look at
- all trackers the bot is currently watching, and return
- up to 20 hits. IPs are also searchable. :-)
-
- v1.4.1 (internal release, for debugging)
- Ñ╩irritating RealBasic bug causes SelectFolder function
- (built in feature in RealBasic) to crash with type-3
- error. I have coded my OWN version of SelectFolder
- to get around the error.
- Ñ╩fixed some windows to make sure they display, even if
- the bot is very busy and isn't updating the screen well
- Ñ╩fixed some bugs in UserBase that were not retaining all
- information in the Send window.
-
- (older version info is in a separate text file now)
-
-
- Some of the more active feaure/command idea contributors
- and 'pre-release' testers:
- ---------------------------------------------------------
- Ñ╩Pizza
- Ñ╩TripWire
- Ñ╩Jupiter
- Ñ╩eXo
- Ñ╩Roji
- Ñ╩members of cdn
- Ñ╩members of 8-bits
- Ñ╩Notorious Net Nerd
- Ñ╩Qtip
- Ñ╩Tego
-
- And to the makers of mBot:
- This bot could not have been made without your assistance!
- It was your unwillingness to release source and give out
- mBot that inspired me to make a bot anyone could have and
- customize to their liking, and for that, we thank you!
- In an effort to avoid directly duplicating your work, I
- have refrained from installing or running mBot at my server.
- Any similarities in commands or functionality is not an
- attempt to copy your work, but is based entirely on my own
- original ideas or the ideas/suggestions of others. (whom
- may be suggesting some ideas based on your bot, but hey,
- I can't help that, I'm just making what they want) Please
- grant me the same courtesy in not copying what I have done.
-
-
- - Virtual1
-
-
- VirtualFTP server can be found at:
-
- virtualftp.neotek.net
- virtualftp.dyn.ml.org
-
-
- If you feel this bot is helping you and is worth something,
- feel free to make a donation to the cause. I can always use
- new hardware for the server, additional memory, and of
- course cash is nice too. If you can't afford any of the
- above, stopping into my server and saying "cool bot!" is
- thanks enough. :-) Enjoy. -V1
-
-
-
-
- Formatting Standards
- Ñ╩control to border = 13 pixels vertical and horizontal
- Ñ╩static text height = 16 pixels high
- Ñ╩button = 20 pixels high
- Ñ╩editfield = 9 + 7*(limit text) pixels wide
- Ñ╩static text to editfield = 3 pixels horizontal
- Ñ╩single line editfield = 22 pixels high