From DCppWiki

Jump to: navigation, search

py-dchub is a cross platform Direct Connect Hub, written in Python. It supports the entire Direct Connect Hub-Client protocol. It is designed to be easy to use, easy to extend, and easy to program bots for.

py-dchub is similar to many other Direct Connect hubs, but there are some features it has that few if any other hubs have:

  • Hub Reloading: Most hubs are programmed in compiled languages such as C or C++. In order to make changes to the hub's internal programming, the hub needs to be shut down (and all users disconnected), recompiled, and started back up. py-dchub, being programmed in Python, has the ability to reload itself (this includes all related hub files, so reloading works with hub subclasses, assuming they are programmed appropriately), so you can make programming changes to the hub while it is running, call reload (or send a SIGHUP signal on systems that support it), and the hub will reload itself, giving you access to any features you added. This process is transparent to the users of the hub. As far as is known, this is the only hub that has this feature, and it is unlikely that most hubs will ever be able to add it.
  • Full Access Bots: Most hubs have the ability to program bots for the hub. Typically, the bots are programmed in a different language than the hub itself, and they have a limited ability to change the hub itself. py-dchub's bots have full access to the hub, they can change ANY aspect of the hub while it is running.
  • Portability: Most hubs run on a single operating system environment, or a couple of environments at most (there are a couple of Java hubs that are cross-platform). py-dchub should run everywhere Python runs, assuming the platform supports sockets. Tested platforms include Windows, OpenBSD, Gentoo, Debian and Slackware.

External Links