Purism GNOME phone app
Go to file
Bob Ham 460c0c6c3d Turn providers into plugins courtesy of libpeas
This is an initial, static implementation of plugins.  The
CallsApplication has a plugin name which can be changed with a new
--provider command line option.  This plugin name is used to
instantiate the appropriate plugin when the application is activated.
From then on, the plugin cannot change.

In future, we can expand this support to include loading multiple
plugins at once, configurable through some UI.  This will have
far-reaching implications though, and complicate things like
enumerating the provider hierarchy.  There is also no practical
benefit right now; the mm and ofono plugins can't be used at the same
time because ModemManager and oFono don't play nice together, and the
whole raison d'être of the dummy plugin is undermined if you can make
use of one of the others.  So for now, we just implement one static
plugin.
2018-11-23 15:51:46 +00:00
.gitlab/issue_templates Fix typo and rewording 2018-08-10 07:56:50 -06:00
data data: Fix tests for desktop and appstream files 2018-06-11 16:15:44 +01:00
debian Turn providers into plugins courtesy of libpeas 2018-11-23 15:51:46 +00:00
doc Preliminary documentation of provider interfaces 2018-05-23 09:59:28 +01:00
plugins Turn providers into plugins courtesy of libpeas 2018-11-23 15:51:46 +00:00
po Add i18n basic structure 2018-10-03 12:21:41 +02:00
src Turn providers into plugins courtesy of libpeas 2018-11-23 15:51:46 +00:00
tests Turn providers into plugins courtesy of libpeas 2018-11-23 15:51:46 +00:00
.dir-locals.el Initial import of cleaned Calls working tree 2018-05-17 14:16:51 +01:00
.gitlab-ci.yml Fix GitLab CI and Debian packaging for ModemManager dependencies 2018-08-03 14:37:20 +00:00
README.md Add ModemManager provider 2018-08-03 14:22:12 +00:00
calls.doap calls.doap: Update homepage location 2018-05-31 14:36:08 +01:00
meson.build Turn providers into plugins courtesy of libpeas 2018-11-23 15:51:46 +00:00
meson_options.txt Add initial unit tests for Provider 2018-06-11 16:29:33 +01:00
sm.puri.Calls.json flatpak: Enable access to dconf config 2018-09-27 13:50:40 +02:00

README.md

Calls

A phone dialer and call handler.

License

Calls is licensed under the GPLv3+.

Dependencies

sudo apt-get install libgtk-3-dev libhandy-0.0-dev modemmanager-dev libmm-glib-dev

Building

We use the meson and thereby Ninja. The quickest way to get going is to do the following:

meson ../calls-build
ninja -C ../calls-build
ninja -C ../calls-build install

Running

Calls depends on oFono Modem objects being present on D-Bus. To run oFono with useful output:

sudo OFONO_AT_DEBUG=1 ofonod -n -d

The test programs within the oFono source tree are useful to bring up a modem to a suitable state. For example:

cd $OFONO_SOURCE/test
./list-modems
./enable-modem /sim7100
./online-modem /sim7100

Then run Calls:

cd $CALLS_SOURCE
../calls-build/src/calls

Phonesim

One can also make use of the modem simulator, phonesim (in the ofono-phonesim package in Debian):

ofono-phonesim -p 12345 -gui /usr/local/share/phonesim/default.xml

then, ensuring /etc/ofono/phonesim.conf has appropriate contents like:

[phonesim]
Address=127.0.0.1
Port=12345

run oFono as above, then:

cd $OFONO_SOURCE/test
./enable-modem /phonesim
./online-modem /phonesim

And again run Calls.