External Handler Proof of Concept

Kero van Gelder kero at chello.nl
Wed Jul 25 22:25:57 CEST 2007


>   I was playing around with the extensions framework 
> (http://wiki.openmoko.org/wiki/Wishlist:Extension_Framework) over the 
> weekend and have put together a proof of concept for the idea.  The 
> packages are not currently designed to run on the openmoko or integrate 
> with the build process but on a standard linux distribution (until I get a 
> 'phone, anyway).  The distribution consists of three separate packages:
>
>    * openmoko-extensionhandler - receives extension requests and passes
>      them through the chain of extensions registered for that request
>    * openmoko-extension-sample - sample extension that changes the
>      parameters of an outgoing call
>    * fakegsmd - simple client that generates an extension request for
>      an outgoing call (as would be expected to be generated by gsmd)
[snip]
> Anyway, if people would like to take a look at this it is available at 
> http://www.devzero.net/openmoko/dist/omext.tar.gz - please give it a go and 
> let me know what you think.

Compiles, works.

Probably a nice idea to see if I can get my Ruby code to talk to yours :)
Ah, ListNames spots ["org.freedesktop.DBus", "org.openmoko.ef.eh.Gsmd", ":1.17", ":1.18"]
so I guess that should be easy enough :)

And I'm trying to do the equivalent of this in Ruby, but failing:
        /* Start repeat for each handler */
        obj = g_object_new (EXTENSIONHANDLERGSMD_TYPE, NULL);
        dbus_g_connection_register_g_object (connection,
                                             EXTENSIONHANDLERGSMD_PATH,
                                             obj);
(NB: there's nothing repeating there. adapt comment, pls)
I'll use dbus-monitor on your code and learn :)

I'll think about the extension concept a bit more. The fact that you chose
a scenario to modify a phone number is interesting. How about calling a 
person from a Contact? and then choosing VoIP or GSM by those extensions?
(specifically, I do not think gsmd is the place where the call should
originate, in the image you have on the Wiki).

That is it for now,
Bye,
Kero.





More information about the community mailing list