Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 804463
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T23:55:26+00:00 2026-05-14T23:55:26+00:00

I have a project which is essentially a game server where users connect and

  • 0

I have a project which is essentially a game server where users connect and send text commands via telnet.

The code is in C and really old and unmodular and has several bugs and missing features. The main function alone is half the code.

I came to the conclusion that rewriting it in Python, with Twisted, could actually result in faster completement, besides other benefits.

So, here is the questions:
What packages and modules I should use? I see a “telnet” module inside “protocols” package. I also see “cronch” package with “ssh” and another “telnet” module.

I’m a complete novice regarding Python.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T23:55:27+00:00Added an answer on May 14, 2026 at 11:55 pm

    Greg’s suggestion to try to become familiar with Python before trying to take on Twisted is perhaps a reasonable one. Limiting the possible sources of your confusion may help you avoid some very frustrating cases.

    On the other hand, I know a lot of people who take on a Twisted-based project as a first Python learning experience, and succeed. So it’s possible. And you’ll have to do something first. There’s no guarantee that what you pick instead of Twisted will be easier. 🙂

    As far as the specifics of telnet go, you want to use twisted.conch.telnet, not twisted.protocols.telnet. The former is newer, better tested, more featureful, and has several examples (although unfortunately not a lot of documentation beyond that).

    The main telnet example shows you the most useful event handlers you can define if you use twisted.conch.telnet. Unfortunately it doesn’t really explain what they do, nor does it give a demonstration of how you might negotiation options. If you’re already familiar with the telnet protocol itself (primarily the option negotiation part of it), this should make sense to you. If you’re thinking of “telnet” as just a way to pass human readable/writeable bytes between two computers, then you probably haven’t run across option negotiation before and it might not make much sense. You can either ignore it, or check out the telnet RFC to learn more (it’s a little dense, though).

    For performing option negotiations yourself, you can at least take a look at the API documentation for the self.transport object you see in the above linked example (this isn’t a regular TCP transport as you’ll find used throughout much of Twisted, but a special telnet-derived transport which sits on top of TCP, so it has a few extra features).

    If you just want to pass bytes around, though, then you can focus on the dataReceived method and on self.transport.write. The former will be called when you receive bytes from your peer; the latter you can call to send bytes to your peer.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a project in which I need a way to display essentially a
I have a problem with an Xcode project which has a path of /users/me/blah
I have a project which has some lib's associated with it (in Build Path).
I have a project which uses groovy 1.7.5 and grails 1.3.4. but my new
I have a project which requires creating Classes dynamically at runtime, where the only
I have a project which uses php's mt_rand() to generate different random integers but
I have a project which I am working on and it has multiple files
I have a project which I am working on and it has multiple files
I have a project which it's domain contain following classes: Courier Customer Food Order
I have a project which exposes object model to use by different types of

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.