I made a $BotINFO command to GeneralBot so that hublist pingers can get more information about the hub. While pinging, send:
$BotINFO <bot description>
And hub should answer:
$HubINFO <hub name>$<hub address>$<hub description>$<max users>$<min share>$<min slots>$<max hubs>$NMDCHub GeneralBot 0.24$
Where
<bot description> = any string, describes the bot, script will save it just for informational purposes, i.e. "$BotINFO FinHubList 105 hubs, 72 online, 7701 users.
http://finhublist.no-ip.org/PublicHubList.config"
<hub name> = frmHub.txtName
<hub address> = frmHub.txtIP (for reducing multiple aliases of one hub)
<hub description> = frmHub.txtDescription (usually out of date on other hublists)
<max users> = frmHub.sldrMaxUsers value (to calculate how full the hub is, current user count can be calculated from $NickList)
<min share> = script's minimum share limit in bytes
<min slots> = script's minimum slot limit
<max hubs> = script's maximum hub limit
And then there is hub type+script name which offered the info, and one additional field after that last $ just for reserve...
Hub will give you nicklist and oplist, calculating shared bytes is not recommended because it adds unnecessary traffic.
There is some kind of addons in that hublist too, <R:<reliability>,S:<status>> string in beginning of description, where R:000%-100% and S:Online, Offline, Private, Banned or Full. Leading zeros in reliability so that you can sort the hublist with it, example:
Lame Hub|lamehub.domain.org|<R:072%,S:Online> Lame description|20|||||
Bad Hub|badhub.domain.org|<R:036%,S:Offline> Bad description|0|||||