hi,
when a hub wants to disconnect a user for reasons such as "invalid IP", "nick taken" and so on, it has the following choices:
- just disconnect the user.
- send the user a fatal STA message (with a code in the 2xx range), then disconnect.
- send the user a QUI message, then disconnect.
- send the user a fatal STA, then a QUI, then disconnect.
- send the user an MSG, then any variant of the above.
features exclusively provided by fatal STAs:
- an error code.
- send the id of the forbidden command (code 25).
- send the user her correct IP (code 46).
- other similar potential info (see codes 41, 42, 44).
features exclusively provided by QUIs:
- "SID of the initiator" (ID).
- "Time Left until reconnect is allowed" (TL) - one could argue that STAs have this too (code 32) but it is limited to only 1 STA code.
- "Redirect server URL" (RD).
consequently, hubs that may wish to make use of features provided by both fatal STAs and QUIs when disconnecting a user have no other solution but to send both messages. it looks slightly ridiculous to send 2 messages for 1 action.
i propose the following solution:
- remove the ID, TL, RD params from QUI and transfer them to STA.
- hubs MUST send a fatal STA message to users they disconnect. no further communication shall follow a fatal STA.
- hubs will keep using QUI messages to announce that a user has been disconnected to other users still connected to the hub.
Messages hubs should send to users they disconnect
Here is the sub forum used for talking about ideas, implementations and suggestions or typical guidelines.
Further info on extension or the protocol is found at our Wiki
Further info on extension or the protocol is found at our Wiki
Jump to
- Site & Forum
- ↳ Site News
- ↳ Suggestions & Problems
- ↳ Site Bugs
- ↳ Implemented Suggestions
- ↳ Wiki
- ↳ Suggestions & Submitions
- ↳ Request Account
- ↳ Bugs
- Software
- ↳ Clients
- ↳ Releases
- ↳ Plugins
- ↳ SDK
- ↳ DC++
- ↳ Hub Software
- ↳ Releases
- ↳ Plugins
- ↳ SDK
- ↳ Guides
- ↳ Bot Software
- ↳ Releases
- ↳ LUA Scripting
- ↳ Hubside Scripting
- ↳ Clientside Scripting
- ↳ Python Scripts
- ↳ Hubside Scripts
- Protocols
- ↳ Advanced Direct Connect
- ↳ Protocol Features
- ↳ Protocol Talk
- ↳ Protocol Ideas
- ↳ Pushed ideas
- ↳ Neo-Modus Direct Connect
- ↳ Protocol Talk
- ↳ Protocol Features
- Resources
- ↳ Tutorials
- ↳ SDK/Libs
- ↳ Documentation
- ↳ Icon Packs
- ↳ Hublists
- ↳ Links
- ↳ Chat logs
- ↳ Other resources
- Teams
- ↳ Security
- ↳ Cryptography
- ↳ Software
- ↳ Interoperability
- ↳ Protocol
- ↳ Infrastructure
- DC Network Foundation
- Offtopic Discussions