我正在使用Python创建一个服务器(它正在做什么并不重要),但我希望它能接受telnet连接并提供具有行编辑功能(tabcompletion、emacs/vi-mode等)和每个会话的历史记录的命令行界面。我已经成功创建了telnet会话,禁用了行模式并启用了服务器回显。
我的初步想法是使用readline,但是Python readline模块似乎只适用于stdin上的单个会话;并且检查底层的readline库似乎是这种工作方式。
然而,我想做的是为每个客户端创建一个实例(如果您喜欢,可以称之为状态),并在收到字符(字节)时将其传递给状态。一旦生成了完整的行,它就会将其传递给可能解析它的服务器。
因此,我的问题是是否有一个处理这种事情的库,即使是一个C库也足够。
编辑:为了澄清,我已经有一个完全功能的服务器,但我希望telnet接口作为附加功能来重新配置、获取信息等。
我的初步想法是使用readline,但是Python readline模块似乎只适用于stdin上的单个会话;并且检查底层的readline库似乎是这种工作方式。
然而,我想做的是为每个客户端创建一个实例(如果您喜欢,可以称之为状态),并在收到字符(字节)时将其传递给状态。一旦生成了完整的行,它就会将其传递给可能解析它的服务器。
因此,我的问题是是否有一个处理这种事情的库,即使是一个C库也足够。
编辑:为了澄清,我已经有一个完全功能的服务器,但我希望telnet接口作为附加功能来重新配置、获取信息等。