Pages
Developer Documentation
On this page

Session daemons

ModemManager gives unified access to different modems over the system D-Bus. Session daemons build on that. Their tasks include:

  • Handling calls and messages
  • Providing call and message history
  • Mapping phone numbers to contacts
  • Power management
  • Notifications
  • Interacting with other parts of the user's environment
  • Filtering spam

SonicDE doesn't ship any of the daemons on this page. The only one of these components it includes is ModemManagerQt, in sonic-frameworks-modemmanager.

Related projects

eg25-manager

eg25-manager is a daemon that handles low-power modes of the Quectel EG25 through ModemManager. It's used for the PinePhone.

SMS, MMS and voicemail

Both are developed for Phosh but don't depend on a particular environment, and could be used directly through their session-level D-Bus APIs.

ModemManagerQt

ModemManagerQt is a Qt wrapper for the ModemManager D-Bus API, in SonicDE's sonic-frameworks-modemmanager repository.

kde-telephony-meta

kde-telephony-meta holds data the upstream telephony components share, including their D-Bus XML interface descriptions and Qt meta types for complex D-Bus types.

Daemons

Both of these are part of the upstream plasma-dialer project.

Modem daemon

modem-daemon tracks modem events in the background, so that it can:

  • Give client applications and daemons access to calls over the session D-Bus
  • Save the history

It's written in Qt and works with the system D-Bus, providing a session D-Bus API for applications. It uses ModemManagerQt but offers a higher-level API, so that changing the underlying manager should be transparent to applications.

KDE telephony daemon

kde-telephony-daemon tracks modem events in the background, so that it can:

  • Enable audio channels when needed
  • Show notifications
  • Launch the dialer automatically
  • Share telephony services over the session D-Bus

It depends on the modem daemon, and includes contactphonenumbermapper, a library for working with contacts and phone numbers.

Telepathy

Telepathy is a freedesktop.org framework for building instant messaging clients that interoperate over D-Bus. It could use oFono or ModemManager to implement calling and messaging clients, and could in theory cover both daemons above. The upstream dialer is based on ModemManager without it.

What the daemons don't do

Session daemons interact with the rest of the user's environment and give applications a unified API. Providing developer libraries for particular environments and languages is outside their scope. Their API is exported on the session bus, so that a library such as the QML plugin can use it.

Adapted for SonicDE from develop.kde.org/docs/packaging/plasma-mobile/telephony/session-daemon-userland-dbus-ipc-level/ by Alessio Mattiazzi, Alexey Andreyev, Carl Schwan, Mikhail Zolotukhin, Thiago Sueto, licensed under CC BY-SA 4.0.

Edit this page on GitHub

We use cookies to personalize content and to analyze our traffic. Please decide if you are willing to accept cookies from our website.