From 3a208ed9a418f02b4938f447af04666593cda410 Mon Sep 17 00:00:00 2001 From: Matt Porter Date: Fri, 19 May 2017 14:55:36 -0400 Subject: Add support for answering calls to the telephony binding and UI Adds an answer verb and associated incoming call lifecycle management to the telephony binding. Leverages the binding answer support to activate the call answer button when the binding reports that we are in an incoming call state. Once the incoming call is answered, the ring tone is deactivated. AGL-Bug: SPEC-600 Change-Id: I4f2db2d248cfd0f4945fc17d450e9b691061cc9e Signed-off-by: Matt Porter --- app/Dialer.qml | 12 +++++++++--- app/api/Telephony.qml | 5 +++++ 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'app') diff --git a/app/Dialer.qml b/app/Dialer.qml index 5dc800a..99610fd 100644 --- a/app/Dialer.qml +++ b/app/Dialer.qml @@ -143,11 +143,12 @@ Item { Layout.alignment: Qt.AlignHCenter onImage: './images/HMI_Phone_Hangup.svg' offImage: './images/HMI_Phone_Call.svg' - opacity: number.text.length > 0 ? 1 : 0.25 + property var active: (number.text.length > 0) || (telephony.callStatus == "incoming") + opacity: active ? 1 : 0.25 onCheckedChanged: { if (checked) { - if (number.text.length === 0) { + if (!active) { callButton.checked = false return } @@ -156,7 +157,12 @@ Item { if (contact.name === '') contact.name = 'Unknown' history.insert(0, contact) - telephony.dial(number.text) + if (telephony.callStatus == "incoming") { + telephony.answer() + ringtone.active = false; + } else { + telephony.dial(number.text) + } } else { name.text = '' number.text = '' diff --git a/app/api/Telephony.qml b/app/api/Telephony.qml index 721a51a..b42af4f 100644 --- a/app/api/Telephony.qml +++ b/app/api/Telephony.qml @@ -92,6 +92,11 @@ WebSocket { sendSocketMesage("dial", parameterJson) } + function answer() { + var parameterJson = 'None' + sendSocketMesage("answer", parameterJson) + } + function hangup() { var parameterJson = 'None' sendSocketMesage("hangup", parameterJson) -- cgit 1.2.3-korg