akonadi/contact
21 #include "qsflphonedialer.h" 22 #include "../dbusconnectionpool.h" 24 #include <KLocalizedString> 26 #include <QDBusConnectionInterface> 28 #include <QtCore/QProcess> 29 #include <QtDBus/QDBusConnection> 30 #include <QtDBus/QDBusConnectionInterface> 31 #include <QtDBus/QDBusInterface> 32 #include <QtDBus/QDBusReply> 36 static bool isSflPhoneServiceRegistered()
38 const QLatin1String service(
"org.sflphone.SFLphone");
40 QDBusConnectionInterface *
interface = QDBusConnection::sessionBus().interface();
41 if (interface->isServiceRegistered(service)) {
45 interface = Akonadi::DBusConnectionPool::threadConnection().interface();
46 if (interface->isServiceRegistered(service)) {
52 QSflPhoneDialer::QSflPhoneDialer(
const QString &applicationName)
53 : QDialer(applicationName)
57 QSflPhoneDialer::~QSflPhoneDialer()
61 bool QSflPhoneDialer::initializeSflPhone()
64 if (!isSflPhoneServiceRegistered()) {
67 if (!QProcess::startDetached(QLatin1String(
"sflphone-client-kde"), QStringList())) {
68 mErrorMessage = i18n(
"Unable to start sflphone-client-kde process, check that sflphone-client-kde executable is in your PATH variable.");
73 for (
int i = 0; i < runs; ++i) {
74 if (!isSflPhoneServiceRegistered()) {
84 bool QSflPhoneDialer::dialNumber(
const QString &number)
86 if (!initializeSflPhone()) {
90 QStringList arguments;
91 arguments << QLatin1String(
"--place-call");
93 if (!QProcess::startDetached(QLatin1String(
"sflphone-client-kde"), arguments)) {
100 bool QSflPhoneDialer::sendSms(
const QString &number,
const QString &text)
102 if (!initializeSflPhone()) {
106 QStringList arguments;
107 arguments << QLatin1String(
"--send-text");
109 arguments << QLatin1String(
"--message");
111 if (!QProcess::startDetached(QLatin1String(
"sflphone-client-kde"), arguments)) {
This file is part of the KDE documentation.
Documentation copyright © 1996-2017 The KDE developers.
Generated on Tue Feb 21 2017 02:30:15 by
doxygen 1.8.11 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.