From 1cd754f9761df857b6ff6d87a2030ec81928987f Mon Sep 17 00:00:00 2001 From: Matt Ranostay Date: Wed, 13 Mar 2019 17:00:19 -0700 Subject: libqtappfw: telephony: add onlineChanged signal Allow clients to receive Handsfree profile status to enable/disable dialpads and other functions. Bug-AGL: SPEC-2257 Change-Id: I3a614dbbdc9a75ffea103bb6b5182f48dae608b6 Signed-off-by: Matt Ranostay --- telephony/telephony.cpp | 5 ++++- telephony/telephony.h | 10 ++++++++++ telephony/telephonymessage.h | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/telephony/telephony.cpp b/telephony/telephony.cpp index 08b80b1..716ded7 100644 --- a/telephony/telephony.cpp +++ b/telephony/telephony.cpp @@ -66,7 +66,8 @@ void Telephony::onConnected() "callStateChanged", "dialingCall", "incomingCall", - "terminatedCall"}; + "terminatedCall", + "online"}; QStringListIterator eventIterator(events); TelephonyMessage *tmsg; @@ -103,6 +104,8 @@ void Telephony::onMessageReceived(MessageType type, Message *message) setCallState("disconnected"); m_colp = ""; m_clip = ""; + } else if (tmsg->isOnline()) { + setOnlineState(tmsg->connected()); } } } diff --git a/telephony/telephony.h b/telephony/telephony.h index 7cff598..04f55a7 100644 --- a/telephony/telephony.h +++ b/telephony/telephony.h @@ -27,6 +27,7 @@ class Telephony : public QObject Q_OBJECT Q_PROPERTY(bool connected READ connected WRITE setConnected NOTIFY connectedChanged) Q_PROPERTY(QString callState READ callState WRITE setCallState NOTIFY callStateChanged) + Q_PROPERTY(bool online READ online NOTIFY onlineChanged) Q_PROPERTY(QString callClip READ callClip) Q_PROPERTY(QString callColp READ callColp) @@ -49,7 +50,14 @@ class Telephony : public QObject emit callStateChanged(m_call_state); } + void setOnlineState(bool state) + { + m_online = state; + emit onlineChanged(state); + } + bool connected() { return m_connected; } + bool online() { return m_online; } QString callState() { return m_call_state; } QString callClip() { return m_clip; } QString callColp() { return m_colp; } @@ -57,9 +65,11 @@ class Telephony : public QObject signals: void connectedChanged(bool); void callStateChanged(QString); + void onlineChanged(bool connected); private: bool m_connected; + bool m_online; MessageEngine *m_mloop; QString m_call_state; QString m_clip; diff --git a/telephony/telephonymessage.h b/telephony/telephonymessage.h index 87d06a6..0225b64 100644 --- a/telephony/telephonymessage.h +++ b/telephony/telephonymessage.h @@ -27,9 +27,11 @@ class TelephonyMessage : public Message bool isDialingCall() { return m_event ? (this->eventName() == "dialingCall") : false; }; bool isIncomingCall() { return m_event ? (this->eventName() == "incomingCall") : false; }; bool isTerminatedCall() { return (this->eventName() == "terminatedCall"); }; + bool isOnline() { return (this->eventName() == "online"); }; QString clip() { return m_event_data.find("clip").value().toString(); }; QString colp() { return m_event_data.find("colp").value().toString(); }; QString state() { return m_event_data.find("state").value().toString(); }; + bool connected() { return m_event_data.find("connected").value().toBool(); }; bool createRequest(QString verb, QString value = "None"); }; -- cgit 1.2.3-korg