Module Clientutils
In: util/clientutils.rb

Utility functions for talking to XMLRPC clients.

Methods
find_player    find_service    get_client_for    get_named_proxy    list_players    register_player    unregister_player   
Public Instance methods
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
get_named_proxy()

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_player(name)

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
list_players()

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
unregister_player(name)

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