3

重複の可能性:
telnet クライアントを強制的にキャラクター モードにする

私は MUD のようなゲームの作成に取り組んでいます (問題があれば Python で)。サーバーに接続するとき、Windows telnet クライアントと Ubuntu の telnet クライアントの動作が少し異なることに気付きました。

Ubuntu では何かを入力しますが、Enter キーを押すまでサーバーは何も受信しません。Windows では、すべてのキーストロークがサーバーに送信されます。

接続するすべてのクライアントが、Ubuntu から取得した動作を示すようにしたいと考えています。サーバー側のバッファを実装しようとしましたが、問題が発生し続けています (最新の問題は、バックスペースの処理方法です)。

telnet クライアントの「モード」を設定するために送信できる特別なコマンドはありますか? または、ここで何が起こっているのかをよりよく理解するために推奨される読書はありますか?

更新: 人が接続したらすぐに次の行を実行するだけでよいようです。

socket.send( chr(255)+chr(251)+chr(34) )  #IAC WILL LINEMODE

ただし、これは効果がないようです。私が間違っていることについて誰か考えがありますか?

更新 2: 問題が見つかりました。私のサーバーは、ユーザーから受け取ったすべてのものを他のすべてのユーザーに送信していました。これには、モードを設定した後にクライアントから取得した確認が含まれます。これにより、いくつかの非常に厄介な結果が生成されました。

4

0 に答える 0