27 lines
469 B
Ruby
27 lines
469 B
Ruby
|
require 'eventmachine'
|
||
|
|
||
|
module PongServer
|
||
|
def post_init
|
||
|
puts "server: Got me a client!"
|
||
|
end
|
||
|
|
||
|
def receive_data(data)
|
||
|
if data =~ /PING/
|
||
|
puts 'server: RECV PING'
|
||
|
send_data("PONG\n")
|
||
|
else
|
||
|
puts "server: RECV #{data}"
|
||
|
send_data("NOPE\n")
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def unbind
|
||
|
puts "server: So long, client!"
|
||
|
end
|
||
|
end
|
||
|
|
||
|
EventMachine::run do
|
||
|
EventMachine::start_server('0.0.0.0', 24000, PongServer)
|
||
|
puts 'Listening on 0.0.0.0:24000'
|
||
|
end
|