Making a phone call with GNOME



Hi all,

I'm working on the ability to make a phone call with the Librem 5 phone.
 I've started working on a Telepathy-based dialer and call handler.  The
goal at Purism is to work upstream and we use GNOME as the desktop
environment in our distribution, PureOS, which will be what the Librem 5
runs.  There's no existing dialer in GNOME so the assumption underlying
this work is that it will end up as "GNOME Dialer".  I'm sending this
email now to check in and get feedback on my approach.

There was a long discussion⁰ last year on this mailing list regarding
replacing Telepathy with Matrix and the thread also included a lot of
general discussion of Telepathy and communication.  In that discussion
there were plenty of calls for Telepathy to die so I feel I should
justify my approach.

Firstly, there are only two existing free GSM middleware frameworks:
freesmartphone.org¹ (FSO) and oFono².  FSO is actually a whole
smartphone middleware, including not just telephony but contacts,
alarms, audio, battery and so on.  We are explicitly targetting the
GNOME platform which already provides a lot of (all of?) what FSO does.
We cannot use FSO or else we would conflict with our goal of building on
the GNOME platform.  Hence, we must use oFono.

Both Telepathy and oFono expose APIs over D-Bus so regardless of whether
we use oFono natively or through telepathy-ring, we'll be writing a
GNOME D-Bus application.  By building a dialer based on Telepathy we get
the tantalising possibility of supporting SIP cheaply as there are SIP
connection managers for Telepathy.

By using telepathy-ring we also open the possibility of having deep
integration of SMS and IM systems.  That's not the immediate focus but
it's something to bear in mind.

When I read through the Telepathy Developer's Manual, I thought "this is
awesome!"  However, having got to grips with a lot of the complexity, I
can see why there has been so little traction and why a lot of people in
the aforementioned mailing list thread wanted it to die.  That said, I
still think Telepathy is awesome and it still seems like the most
sensible choice for our immediate need of building telephony programs
for the Librem 5.

My colleague François Téchené recently wrote a blog post³ proposing a
unified UX using a "feature"-based approach rather than an
application-based approach.  This proposal comes from the ideas of
Ethical Design⁴.  The technological underpinnings of this UX are already
largely extant in Telepathy.

The future that I'm looking towards is one where the Librem 5 is a
shining beacon of harmonious Telepathy-based telecommunication magic,
providing unified interfaces to various different messaging and
audio/video telephony systems including Matrix, GSM, SIP and XMPP,
complete with encryption.

I understand that this is no small undertaking, to say the least.  We
will not achieve this state when the Librem 5 first ships.  However,
over time I would like us to work towards that harmonious magic.

Thoughts are most welcome.

Thanks,

Bob


⁰
https://mail.gnome.org/archives/desktop-devel-list/2017-August/thread.html#00112
https://mail.gnome.org/archives/desktop-devel-list/2017-September/thread.html#00047
¹ http://www.freesmartphone.org/
² https://01.org/ofono
³ https://puri.sm/posts/librem5-progress-report-8/https://2017.ind.ie/ethical-design/

Attachment: signature.asc
Description: OpenPGP digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]