Helix player bindings for ruby

Z

ziyan

Hello all,

Does anyone know if it's possible to script the Helix DNA client engine
(https://client.helixcommunity.org/) using Ruby?

Apparently the engine exposes it's fucntionality via COM interfaces
(based on a cross platform subset of MS-COM). Could ruby's COM support
be used, and if so would this work on *nix?

The Helix project has extensive support for Python but I'd rather
polish my ruby skills than charm snakes :).

TIA.
Regards
Ziyan Maraikar
Noterik BV.
 
H

Hal Fulton

ziyan said:
Hello all,

Hi Ziyan -- see below.
Does anyone know if it's possible to script the Helix DNA client engine
(https://client.helixcommunity.org/) using Ruby?

Never heard of it, but it sounds cool so far.
Apparently the engine exposes it's fucntionality via COM interfaces
(based on a cross platform subset of MS-COM). Could ruby's COM support
be used, and if so would this work on *nix?

Yes and no. Here is my understanding:

1. Win32OLE will let you talk to an object's COM interface.
2. However, it only runs on win32.
3. There is a RubyCOM which may be different, though I don't
think it would help; and anyhow I think it may be abandoned.

However, I have had a sub-project in mind for awhile that would
'wrap' win32ole with druby (distributed ruby). That would enable
two things:

1. Easy control of a win32 app via a Ruby script *on* win32 (with
a nice rubyish API)
2. Control of a win32 app via a Ruby script *on Linux* (or elsewhere)
via the same Ruby-like API.

I think this is an important enough idea that it could be a project
or lib in itself.

Obviously it should be automated to whatever extent possible. But
it might be good to do one or two "one-offs" so as to get a feel
for how it should be abstracted. (On the other hand, I don't really
know COM, so someone else might not need those dry runs.)

Is that something you'd be interested in collaborating on?


Hal
 
D

daz

ziyan said:
Hello all,

Does anyone know if it's possible to script the Helix DNA client engine
(https://client.helixcommunity.org/) using Ruby?

Apparently the engine exposes it's fucntionality via COM interfaces
(based on a cross platform subset of MS-COM).
Could ruby's COM support be used,


Yes - I can't think why it wouldn't.
... and if so would this work on *nix?


Ahh - I can't think how _that_ would. :-(

WIN32OLE uses the Win32 API - so I don't think it's even built on *nix
platforms. In other words, Ruby on *nix doesn't have COM support.

The Helix project has extensive support for Python but I'd rather
polish my ruby skills than charm snakes :).

It seems to be written by "RealNetworks, Inc" as a scripting interface
to their own software.

You might have to polish you Ruby skills with another project ;-)


daz
 
Z

ziyan

Hi Hal

Thanx for the explanation. Guess I'll probably have to stick with
python for this one.

On a related note I found that there are bindings for Mozilla's XPCOM
(cross platform COM) which is similar to what Helix is using. I'm
curious as to how much effort it would take to generate bindings using
SWIG.
However, I have had a sub-project in mind for awhile that would
'wrap' win32ole with druby (distributed ruby). That would enable
two things:
Is that something you'd be interested in collaborating on?

Sounds really neat, but I'm afraid my ruby skills are mediocre & my
understanding of COM isn't much better. Would be a great learning
experience if I didn't have my hands full with this project.

Regards
Ziyan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top