我正在使用事件机来建立聊天室。
以下是其库中的示例代码(event-machine websocket)
require 'em-websocket'
puts "Server is listening!..."
EM.run {
@channel = EM::Channel.new
puts @channel.methods.sort
EM::WebSocket.run(:host => "0.0.0.0", :port => 8080) do |ws|
ws.onopen { |handshake|
puts "WebSocket connection open"
sid = @channel.subscribe {|msg|
ws.send msg
}
@channel.push "#{sid} connect!"
ws.onmessage {|msg|
@channel.push "<#{sid}>: #{msg}"
}
ws.onclose {
@channel.unsubscribe(sid)
}
}
end
}
我怎样才能获得&#34; sid&#34;用户信息 ?并保持连接?
在client.html中,刷新(F5)后它将成为新客户端
我想做一对一(在两个客户端之间发送消息)聊天室,
但我不知道如何向指定用户发送消息。(例如)sid1向sid5发送消息。