public
Description: Direct Connect bot written in Ruby
Clone URL: git://github.com/kballard/dcbot.git
Search Repo:
dcbot /
name age message
folder COPYING Sat Feb 16 13:24:52 -0800 2008 Strip the .txt extension from COPYING, LICENSE,... [kballard]
folder LICENSE Sat Feb 23 14:57:21 -0800 2008 DCPeerProtocol now supports ADCGet and XmlBZList [kballard]
folder README.markdown Wed Mar 12 19:47:02 -0700 2008 Rename README to README.markdown [kballard]
folder TODO Sat Feb 23 14:57:21 -0800 2008 Remove a completed entry from TODO [kballard]
folder config.rb Fri Feb 15 05:33:58 -0800 2008 Create new class IniReader in config.rb [kballard]
folder dcbot.rb Wed Feb 27 19:39:12 -0800 2008 Add exception handling for connect_to_peer [kballard]
folder dcbot_example.conf Sat Feb 16 10:34:23 -0800 2008 Annotate the example config file [kballard]
folder dcprotocol.rb Wed Feb 27 19:39:12 -0800 2008 Add exception handling for connect_to_peer [kballard]
folder dcuser.rb Sat Feb 23 14:57:20 -0800 2008 Split user's interest into description/tag [kballard]
folder keyboard.rb Sat Feb 16 08:28:32 -0800 2008 Pipe keyboard input to the public chat [kballard]
folder plugin.rb Tue Feb 26 15:16:43 -0800 2008 Switch to sqlite3 [kballard]
folder plugins/ Mon Mar 17 19:12:13 -0700 2008 Show request totals after request list [kballard]
README.markdown

DCBot

DCBot is a Direct Connect bot written in Ruby. It has an extensible plugin architecture backed by a database and comes with a plugin to manage requests.

Dependencies

  • RubyGems
  • ActiveRecord
  • EventMachine
  • libbz2

Usage

Edit dcbot_example.conf, rename it to dcbot.conf, and then run dcbot.rb. Typing text into standard input will send it as messages to hub chat.

Notes

At this time, only one hub connection is supported. It should be easy to add multiple hubs, but I didn't need it and I wasn't sure how to handle keyboard input in that case.

Also, please note that this is a fairly quick and dirty bot, so don't be surprised if some of the architecture is suboptimal.

Author

Kevin Ballard