Purism GNOME phone app
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Bob Ham ee126b3660 Merge branch 'wip/sadiq/fixes' into 'master' 9 months ago
.gitlab/issue_templates Fix typo and rewording 1 year ago
data data: Update icon file 1 year ago
debian d/changelog: Bump version to 0.0.1 11 months ago
doc Preliminary documentation of provider interfaces 1 year ago
plugins Turn providers into plugins courtesy of libpeas 1 year ago
po Add i18n basic structure 1 year ago
src new-call-box: Use null-terminated string to set as buffer text 9 months ago
tests Turn providers into plugins courtesy of libpeas 1 year ago
.dir-locals.el Initial import of cleaned Calls working tree 1 year ago
.gitlab-ci.yml Fix GitLab CI and Debian packaging for ModemManager dependencies 1 year ago
README.md README.md: Update dependencies and instructions to build/run Calls 11 months ago
calls.doap calls.doap: Update homepage location 1 year ago
meson.build meson.build: Bump version to 0.0.1 11 months ago
meson_options.txt Add initial unit tests for Provider 1 year ago
sm.puri.Calls.json sm.puri.Calls.json: Fix libhandy config option type 10 months ago

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 libgsound-dev libpeas-dev

Building

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

meson -Dprefix=/usr/local/stow/calls-git ../calls-build
ninja -C ../calls-build
ninja -C ../calls-build install

Running

Calls has a variety of backends. The default backend is “mm”, which utilises ModemManager. To choose a different backend, use the -p command-line option. For example, to run with the dummy backend and some useful debugging output:

export G_MESSAGES_DEBUG=all
/usr/local/stow/calls-git/bin/calls -p dummy

If using ModemManager, Calls will wait for ModemManager to appear on D-Bus and then wait for usable modems to appear. The UI will be inactive and display a status message until a usable modem appears.

oFono

There is also an oFono backend, “ofono”. This was the first backend developed but has been superceded by the ModemManager backend so it may suffer from a lack of attention.

The ofono backend 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:

/usr/local/stow/calls-git/bin/calls -p ofono

Phonesim

One can also make use of the oFono 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.