Official Mumble VoIP Forums

Ice and Ruby. How to create a proxy object

Ice/DBus, Web-Interfaces, Management tools
Hi! Is there anyone interested in using Ice with Mumble? :)

I want to make a simple script that uses callbacks when a user is connected and disconnected. I chose Ruby because I'm most familiar with it. I took an example from GitHub, configure the server and everything looks fine, I get the server version in Ruby.

But I don't understand how to add my custom callback to the server. How to implement that ServerCallback interface in Ruby. I saw examples in JS and Python there is an adapter is created and used to create new objects. For example, in GitHub Mumble repository we have this example ...

But in Ruby I can't find such ice.createObjectAdapter method. I tried other ways but had the message that I need to provide a proxy object and I don't know how to do it.

Could anyone help with that? A single valid example will be enough.

This is the part of the code:

Code: Select all

props = Ice.createProperties
props.setProperty 'Ice.Default.EncodingVersion', '1.0'
idd = = props
ic = Ice.initialize(idd)
base = ic.stringToProxy("Meta:tcp -h #{HOST} -p 6502")
meta = Murmur::MetaPrx.checkedCast(base)

raise 'invalid proxy' unless meta

servers = meta.getBootedServers
puts 'Server version:', meta.getVersion[3]

servers.each do |server|
  something = i_cant_get_how_to_create_this
  callback = Murmur::ServerCallbackPrx.uncheckedCast(something) # to pass this
I got the answer on ZeroC forum that there is no way to do it on Ruby ... uby#latest.

I made what I wanted on Python and this topic might be closed.