Module: Tkellem::SocketServer
- Includes:
- EM::Protocols::LineText2, EasyLogger
- Defined in:
- lib/tkellem/socket_server.rb
Overview
listens on the unix domain socket and executes admin commands
Instance Method Summary
collapse
Methods included from EasyLogger
#failsafe, logger, logger=, trace, #trace, trace=
Instance Method Details
#log_name ⇒ Object
13
14
15
|
# File 'lib/tkellem/socket_server.rb', line 13
def log_name
"admin"
end
|
#post_init ⇒ Object
17
18
19
|
# File 'lib/tkellem/socket_server.rb', line 17
def post_init
set_delimiter "\n"
end
|
#receive_line(line) ⇒ Object
21
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/tkellem/socket_server.rb', line 21
def receive_line(line)
trace "admin socket: #{line}"
TkellemBot.run_command(line, nil, nil) do |output|
send_data("#{output}\n")
end
send_data("\0\n")
rescue => e
send_data("Error running command: #{e}\n")
e.backtrace.each { |l| send_data("#{l}\n") }
send_data("\0\n")
end
|