Telnet lib e opção de idioma para o cliente telnet OS cruz?
Pergunta
Eu estou olhando para começar um href="http://en.wikipedia.org/wiki/MUD" rel="nofollow noreferrer"> aplicação , que se conecta a um MUD hospedado em um servidor de telnet. A única coisa importante para mim é que ele é executado de forma indolor e eficiente em qualquer sistema operacional. Além dessa obrigação, eu realmente não estou vendido em qualquer idioma.
Então, eu estou procurando uma biblioteca cliente telnet disponíveis gratuitamente na qual eu posso basear minha aplicação, então eu não ter de lidar com os detalhes do protocolo demais.
Solução
Eu sempre considerar torcida para este tipo de coisa (Python).
A beleza é que se você decidir mais tarde para trocá-lo para SSH ou qualquer coisa mais segura do que telnet, você pode com pouca dor.
Outras dicas
trançado, torcido, Twisted!
Para usar o Telnet, consulte pacote twisted.conch.telnet
. Tem algum espartano API docs , mas a verdadeira informações sobre o uso se trata de pesquisando no Google Code Search , tais como este pepita de grailmud -. um servidor de MUD
Por toda a minha programação MUD, Acabei de criar minhas próprias rotinas a partir do zero usando as RFCs.
No caso de você gostaria de evitar um pouco da minha dor, eu envolveu-se em uma classe bastante simples C # que alças Telnet corretamente. No caso de você gostaria de ler isso, você pode vê-lo aqui .
Este código tem sido copiar / colar e executado no Windows e no Linux (através Mono) em um punhado de projetos separados e funciona muito bem.
pmc ( http://sourceforge.net/projects/perlmudclient/ ) foi uma tentativa para fazer exatamente isso. Eu passei algum da última semana de passar por ele; ele usa uma versão modificada mais antiga do Net :: Telnet para fazer seu trabalho conectividade.
Meu problema é que Net :: Telnet parece ter uma interface bloqueando quando uma linha parcial é enviado pelo servidor, ou seja, uma linha não terminada por uma nova linha. Ele tem duas características que suportem esta (waitfor e seu mecanismo de alerta), porque quase todos telnet servidores têm instruções que não são de nova linha terminada.
MUDs muitas vezes têm "instruções" que são não-padrão e variam ao longo do curso do jogo; o I administrador MUD on tem um "Sua escolha:" prompt como seu login do [não é apenas para nomes de usuário], e muitos jogo apresenta presentes instruções alternativas. Então, eu suspeito que você precisa para ter isso em mente quando você vai olhar para uma biblioteca Telnet multi-plataforma!