现在很少有MUD个客户端是最新的;大多数都是图形过时的,不是用户友好的。
我想创建一个rails应用程序,用户可以登录并连接到不同的MUD(也称为telnet服务器)。我知道ruby有&net / telnet'库,但我不确定它是如何工作的,或者如何用rails实现它。
我只是不确定如何允许用户与telnet服务器进行交互。关于如何做到这一点的任何建议?
我只能在整个互联网上找到one source,但文档很差,不适合我的目的。感谢任何帮助,谢谢!
答案 0 :(得分:3)
添加:
require 'net/telnet'
足以使用它。然后你可以按照文档:
要使用rails实现它,您可以在libs中创建一个类,允许用户建立与所需主机的连接:
class TelnetClient
require 'net/telnet'
def self.new_connection(data_hash)
Net::Telnet::new("Host" => data_hash["host"],
"Timeout" => data_hash["timeout"],
"Prompt" => /[$%#>] \z/n)
end
end
class ConnectionsController < ApplicationController
def new_connection
$localhost = TelnetClient.new_connection(connection_params)
#whatever you need
end
def interactive_shell
$localhost.cmd(params[:string])
#other actions
end
private
def connection_params
params.require(:connection).permit(:host, :timeout)
end
end
在视图中使用javascript创建一个漂亮的交互式shell,以允许用户通过ajax与控制器进行交互。