9055724f33
The manager is a central place for handling data e.g. calls history and provider managment. This introduces only the base for feature work. Therefore it manages only the provider for now, but the manager isn't yet used anywhere. The propagets events from the provider and origins. It also adds a new signal called `error`. The `error` signal should be emited only when something went wrong and we need to inform the user about it, containing the message to be displayed to the user. Windows should connect to the event and display a in-app-notification on error. This event isn't emitted, because the plugins don't give us a usable error. |
||
---|---|---|
.gitlab/issue_templates | ||
build-aux | ||
data | ||
debian | ||
doc | ||
plugins | ||
po | ||
src | ||
tests | ||
.dir-locals.el | ||
.gitignore | ||
.gitlab-ci.yml | ||
calls.doap | ||
COPYING | ||
meson.build | ||
meson_options.txt | ||
README.md | ||
sm.puri.Calls.json |
Calls
A phone dialer and call handler.
License
Calls is licensed under the GPLv3+.
Dependencies
To build Calls you need to first install the build-deps defined by the debian/control file
If you are running a Debian based distribution, you can easily install all those the dependencies making use of the following command
sudo apt-get build-dep .
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.