Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request: Client Detection and Use #99

Open
GoogleCodeExporter opened this issue May 19, 2015 · 9 comments
Open

Request: Client Detection and Use #99

GoogleCodeExporter opened this issue May 19, 2015 · 9 comments

Comments

@GoogleCodeExporter
Copy link

At the moment, Paradice requires a very strict subset of terminal emulators in 
order to be useful (e.g. PuTTY, TeraTerm.) There are plenty of other clients, 
however, some of them with fewer (GMUD) or different (ZMUD, MUSHClient) 
capabilities.

It would be useful if the server differentiated between these types of clients 
and changed the user interface gracefully to account for all of these types.

Therefore, there are a few steps in this proposal:

 * Detect the client.  Even though there is a standard way of detecting a Telnet client (TTERM-TYPE), not all clients are Telnet clients (GMUD), and not all clients abide by that standard way.  However, each client behaves in certain predictable ways.  See KaVir's Protocol Snippet on MudBytes for inspiration.

 * Factor out the interface for hugin::user_interface.  Only heavily-ANSI-compatible clients (PuTTY, TeraTerm, TinTin++) can handle Paradice at the moment.  Many others expect either line-by-line output and possibly other embedded protocol transmissions.  The Munin component set is not suitable for them.

 * Design new user interface sets for other protocols.
    * Plain Ol' Text for GMUD, Windows Telnet, and the like.
    * Plain Ol' Text Plus for MUSHClient, ZMUD, etc.

Original issue reported on code.google.com by [email protected] on 21 Jun 2012 at 11:21

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants