summaryrefslogtreecommitdiff
path: root/framework/src/android/telephony/imsmedia/ImsAudioSession.java
diff options
context:
space:
mode:
authorRakesh Raghava <rakeshraghava@google.com>2022-09-11 18:57:19 +0000
committerRakesh Raghava <rakeshraghava@google.com>2022-09-13 02:43:42 +0000
commita6d6588617f585f4ce3fcf64862540166d952b95 (patch)
treea076b208d9773e856c1f5febfb3e2c25f9ad051d /framework/src/android/telephony/imsmedia/ImsAudioSession.java
parent6931f607679c23cdb9702cc44f22c270f5f4b79d (diff)
downloadImsMedia-a6d6588617f585f4ce3fcf64862540166d952b95.tar.gz
(ImsMedia) Added startDtmf() and stopDtmf() APIs
Bug: 236381818 Test: atest ImsMediaJavaUnitTests Change-Id: Ieb04de0f170f1c517ce9cdd1db437bb7d7e7ca65
Diffstat (limited to 'framework/src/android/telephony/imsmedia/ImsAudioSession.java')
-rw-r--r--framework/src/android/telephony/imsmedia/ImsAudioSession.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/framework/src/android/telephony/imsmedia/ImsAudioSession.java b/framework/src/android/telephony/imsmedia/ImsAudioSession.java
index 08edde6e..360da834 100644
--- a/framework/src/android/telephony/imsmedia/ImsAudioSession.java
+++ b/framework/src/android/telephony/imsmedia/ImsAudioSession.java
@@ -20,6 +20,7 @@ import android.os.IBinder;
import android.os.RemoteException;
import android.telephony.ims.RtpHeaderExtension;
import android.util.Log;
+
import java.util.List;
/**
@@ -150,6 +151,33 @@ public class ImsAudioSession implements ImsMediaSession {
}
/**
+ * Start sending DTMF digit until the stopDtmf() API is received.
+ * If the implementation is currently sending a DTMF tone for which
+ * stopDtmf() is not received yet, then that digit must be stopped first
+ *
+ * @param dtmfDigit single char having one of 12 values: 0-9, *, #
+ */
+ public void startDtmf(final char dtmfDigit) {
+ try {
+ miSession.startDtmf(dtmfDigit);
+ } catch (RemoteException e) {
+ Log.e(TAG, "Failed to start DTMF: " + e);
+ }
+ }
+
+ /**
+ * Stop sending the last DTMF digit started by startDtmf().
+ * stopDtmf() without preceding startDtmf() must be ignored.
+ */
+ public void stopDtmf() {
+ try {
+ miSession.stopDtmf();
+ } catch (RemoteException e) {
+ Log.e(TAG, "Failed to stop DTMF: " + e);
+ }
+ }
+
+ /**
* Send RTP header extension to the other party in the next RTP packet.
*
* @param extensions List of RTP header extensions to be transmitted