External Handler Proof of Concept
Jim McDonald
Jim at devzero.net
Thu Jul 26 12:52:14 CEST 2007
Kero van Gelder wrote:
[...]
> 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).
>
The reason why I chose the gsmd in the example is because it is the
final action prior to actually making the call and as such it is a good
place to make changes that you don't want seen by the higher levels.
For example, say you wanted to call +1-555-123-4567 but the calling card
extension decided that the number that you actually need to dial is
+1-800-800-8001,555-123-4567 you do not want the latter number showing
up in the journal, last call lists, etc.
That said, I agree that you would probably want to put another (similar)
extension method in to the dialer. If you had such a method in the
dialer then it could tell the dialer to initiate VoIP rather than GSM,
in which case the GSM extension method would never be called as you
wouldn't go down that codepath. The more extension calls we have the
more flexibility we have, although there is a balance between having
them everywhere with no-one knowing to which one they should attach
their extension and having them in very few places thus limiting the
ability to extend the base product.
In terms of bindings, what I really need to do is put together the D-Bus
methods to register/unregister an extension and for the extension
handler to call the extensions dynamically. At that stage you'll be
able to integrate your Ruby code very easily. I'll give it a crack over
the next couple of days and see what I can put together. Watch this
space, as they say...
Cheers,
Jim.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openmoko.org/pipermail/community/attachments/20070726/08f57ed5/attachment.htm
More information about the community
mailing list