Utility functions for talking to XMLRPC clients.
get_client_for(proto, name)
|
# File util/clientutils.rb, line 51
def get_client_for(proto, name)
servinfo = find_service(proto, name)
if servinfo.nil? || servinfo.size == 0
nil
else
name = servinfo.shift
host = servinfo.shift
port = servinfo.shift
prefix = servinfo.shift
XMLRPC::Client.new(host, "/RPC2", port).proxy(prefix)
end
end
find_service(proto, name)
|
# File util/clientutils.rb, line 64
def find_service(proto, name)
get_named_proxy.value([ proto, name ].join("://"))
end
Create a new proxy to access queuemgr.
# File util/clientutils.rb, line 73
def get_named_proxy()
begin
proxy = QMgrProxy.new(Config.instance.named["host"],
Config.instance.named["port"].to_i)
rescue
proxy = nil
end
proxy
end
Find a player by (symbolic) name. Returns array [name, host, port,
call-prefix, time-last-seen].
- name
- name of player desired
# File util/clientutils.rb, line 87
def find_player(name)
find_service("player", name)
end
Get a list of known players. Returns array of arrays, as if calling
findplayer on each one.
# File util/clientutils.rb, line 93
def list_players()
get_named_proxy.listall("player")
end
register_player(name, host, port, prefix)
|
Tell server who and where you are.
- name
- symbolic name
- host
- host server is running on
- port
- port server listens on
- prefix
- xmlrpc call prefix
# File util/clientutils.rb, line 106
def register_player(name, host, port, prefix)
get_named_proxy.register("player://" + name, [ host, port, prefix ])
end
Tell server you are going away.
- name
- symbolic name
# File util/clientutils.rb, line 113
def unregister_player(name)
get_named_proxy.unregister("player://" + name)
end