* send connect command
* If success return 0, else return -1;
*/
-int device_connect(const gchar * bdaddr)
+int device_connect(const gchar * bdaddr, const gchar * uuid)
{
LOGD("\n%s\n",bdaddr);
devices_list_unlock();
value = g_dbus_connection_call_sync(cli.system_conn, BLUEZ_SERVICE,
- path, DEVICE_INTERFACE, "Connect",
- NULL, NULL, G_DBUS_CALL_FLAGS_NONE,
+ path, DEVICE_INTERFACE, uuid ? "ConnectProfile" : "Connect",
+ uuid ? g_variant_new("(s)", uuid) : NULL,
+ NULL, G_DBUS_CALL_FLAGS_NONE,
DBUS_REPLY_TIMEOUT, NULL, &error);
g_free(path);
* send disconnect command
* If success return 0, else return -1;
*/
-int device_disconnect(const gchar* bdaddr)
+int device_disconnect(const gchar* bdaddr, const gchar *uuid)
{
LOGD("\n%s\n",bdaddr);
devices_list_unlock();
value = g_dbus_connection_call_sync(cli.system_conn, BLUEZ_SERVICE,
- path, DEVICE_INTERFACE, "Disconnect",
- NULL, NULL, G_DBUS_CALL_FLAGS_NONE,
+ path, DEVICE_INTERFACE, uuid ? "DisconnectProfile" : "Disconnect",
+ uuid ? g_variant_new("(s)", uuid) : NULL,
+ NULL, G_DBUS_CALL_FLAGS_NONE,
DBUS_REPLY_TIMEOUT, NULL, &error);
g_free(path);
int adapter_remove_device(const gchar *addr);
int device_pair(const gchar * addr);
int device_cancelPairing(const gchar * bdaddr);
-int device_connect(const gchar *addr);
-//int device_connectProfile();
-int device_disconnect(const gchar *addr);
-//int device_disconnectProfile();
+int device_connect(const gchar *addr, const gchar *uuid);
+int device_disconnect(const gchar *addr, const gchar *uuid);
int device_set_property(const gchar * bdaddr, const gchar *property, const gchar *value);
int device_call_avrcp_method(const gchar* device, const gchar* method);