DSHub
From ADC Project
Maintainer: Eugen Hristev (Pietry)
Language: Java
License: GNU GPL 2
Contents |
Introduction
DSHub is currently the most used ADC hubsoft platform there is. Also has the greatest download count since its first open source release ( May 2007 ), over 7000. Written in Java, thus multiplatform, with multiple interface command possibilities and extensibility makes it a good choice for any user alike. DSHub was the first ADC hubsoft with a graphical user interface.
Protocol Implementations: PING, TIGR, ADCS
Scripting support: Python, Java Plugins
Advantages
- Being multiplatform widens the delivery and possible areas where DSHub can run, virtually everywhere a Java Virtual Machine can be installed ( starting from PC to miniPC, Mac, mobile phones, pda, and more )
- Having up to three different configuration interfaces for hub control : a simple GUI that runs on the server, a command line interface that supports commands in a shell-like mode, via an ADC client with the necessary rights when connected to the server.
- Unique accounts, each configurable at command level and options.
- Extensibility with Java plugins written specifically for DSHub ( API and examples provided ), and also with Python scripts.
- Chatcontrol allows defining forbidden regular expressions for main chat, private chat, searches, also client specific fields like e-mail or description.
- Unique regular expression and field-based commands like kicking , mass messaging , redirecting or dropping.
- Initial internationalization ( i18n ) for primary used languages in the world.
- Special Windows build that includes an installer and an executable that auto detects the Java version installed.
- An unique logarithmic search spam scale that helps users search faster and without the problems a linear scale brings up.
- Very easy setup for ADCS making the server run in secure mode , with full encryption activated.
- Supports the PING extension so that hublists have all the necessary information about the hub.
- Full restriction capabilities starting from message lengths , user counts, nick matching, hub address ( dns ) self check, spam check support, and more.
- Multiple port server that allows adding and removing listening ports with no restart required.
- A full control panel for enabling/disabling each ADC command on every possible context, this makes the hub configurable at protocol level ( enabling/disabling searches, private messages and more )
Disadvantages
- The lack of a temporary banning system
- The lack of high usercount tests makes it unstable for larger hubs ( over 1000 users )
- The lack of a flood protection mechanism
- The lack of text commands, like MOTD
- The lack of scripting api for python scripts
- Re-Occurring CID Bug
DSHub Blueprints/Feature Tracker
Here are the ideas that will/might be implemented into DSHub in the future discussions are open upon reg in case you wanna add to the discussion on Launchpad or Sourceforge.
Pre ADC Support Removal
The login checking system this will occur at login
user connects
- adc version check (so that BASE is supplied not BAS0)
- upgrade msg (with instructions on how to upgrade)
- disconnect (will be mandatory, sorry, but I'm not going to keep thousands of ADC versions out there...)
Behavior System
If the client does not send BASE in it's initial support string but BAS0 ( a pre 1.0 version ) then it should be disconnected with an upgrade message. Seems quite simple. Any client who sends BASE ( meaning they do actually support or at least pretending to ) should be let in until they do something not according to latest specs...
Reggular Self-Powered Operations
RSPO ( Reggular Self-Powered Operations ) wants to be a system similar to cron deamon in linux operating systems the main target is :
- creating
- modifying
- deleting
jobs that will be auto executed by the RSPO at a regular time interval, at login time, or at restart time by a separate thread in DSHub.
This way, the commands included in job can be automatized with minimal effort from the hub owners/admins.
Misc
Software administrator : Eugen Hristev (Pietry)
Contributors: Toast
