---
 plugins/hfp_ag.c |   19 ++++++++++++++++++-
 1 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/plugins/hfp_ag.c b/plugins/hfp_ag.c
index ea9c112..8500bff 100644
--- a/plugins/hfp_ag.c
+++ b/plugins/hfp_ag.c
@@ -37,7 +37,9 @@
 
 #define AGENT_PATH "/hfp_ag"
 #define VERSION_1_5 0x0105
-#define FEATURES       (HFP_AG_FEATURE_3WAY | HFP_AG_FEATURE_REJECT_CALL | \
+#define FEATURES       (HFP_AG_FEATURE_3WAY | HFP_AG_FEATURE_ECNR | \
+                       HFP_AG_FEATURE_IN_BAND_RING_TONE | \
+                       HFP_AG_FEATURE_REJECT_CALL | \
                        HFP_AG_FEATURE_ENHANCED_CALL_STATUS | \
                        HFP_AG_FEATURE_ENHANCED_CALL_CONTROL | \
                        HFP_AG_FEATURE_EXTENDED_RES_CODE)
@@ -50,6 +52,13 @@ static guint modemwatch_id;
 static GList *modems;
 static GHashTable *sim_hash = NULL;
 
+static gboolean client_event(GIOChannel *chan, GIOCondition cond, gpointer 
data)
+{
+       bluetooth_free_audio_management(data);
+
+       return FALSE;
+}
+
 static DBusMessage *hfp_ag_agent_new_connection(DBusConnection *conn,
                                                DBusMessage *msg, void *data)
 {
@@ -60,6 +69,8 @@ static DBusMessage 
*hfp_ag_agent_new_connection(DBusConnection *conn,
        guint16 features = 0;
        struct ofono_emulator *em;
        struct ofono_modem *modem;
+       void *audio;
+       GIOChannel *io;
 
        fd = bluetooth_parse_newconnection_message(msg, &device, &uuid,
                                                &version, &features, &path);
@@ -82,6 +93,12 @@ static DBusMessage 
*hfp_ag_agent_new_connection(DBusConnection *conn,
                return __ofono_error_failed(msg);
 
        ofono_emulator_register(em, fd);
+       audio = bluetooth_set_audio_management(em, path, features);
+
+       io = g_io_channel_unix_new(fd);
+       g_io_add_watch_full(io, G_PRIORITY_HIGH,
+                               G_IO_HUP | G_IO_ERR | G_IO_NVAL, client_event,
+                               audio, NULL);
 
        return dbus_message_new_method_return(msg);
 }
-- 
1.7.1

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to