Add playDtmfTone, stopDtmfTone and setAudioState to RemoteConference

Bug: 17512380
Change-Id: Ie26bef643bdec97f64247b5f8099f2676ae6c63e
diff --git a/api/current.txt b/api/current.txt
index 4dd437c..cbf4d67 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -28277,8 +28277,11 @@
     method public android.telecom.DisconnectCause getDisconnectCause();
     method public final int getState();
     method public void hold();
+    method public void playDtmfTone(char);
     method public final void registerCallback(android.telecom.RemoteConference.Callback);
     method public void separate(android.telecom.RemoteConnection);
+    method public void setAudioState(android.telecom.AudioState);
+    method public void stopDtmfTone();
     method public void unhold();
     method public final void unregisterCallback(android.telecom.RemoteConference.Callback);
   }
diff --git a/telecomm/java/android/telecom/RemoteConference.java b/telecomm/java/android/telecom/RemoteConference.java
index 0cf84d0..f931bc5 100644
--- a/telecomm/java/android/telecom/RemoteConference.java
+++ b/telecomm/java/android/telecom/RemoteConference.java
@@ -181,6 +181,27 @@
         return mDisconnectCause;
     }
 
+    public void playDtmfTone(char digit) {
+        try {
+            mConnectionService.playDtmfTone(mId, digit);
+        } catch (RemoteException e) {
+        }
+    }
+
+    public void stopDtmfTone() {
+        try {
+            mConnectionService.stopDtmfTone(mId);
+        } catch (RemoteException e) {
+        }
+    }
+
+    public void setAudioState(AudioState state) {
+        try {
+            mConnectionService.onAudioStateChanged(mId, state);
+        } catch (RemoteException e) {
+        }
+    }
+
     public final void registerCallback(Callback callback) {
         mCallbacks.add(callback);
     }