1 #include "e_bluez_private.h"
4 * Register new agent for handling user requests.
6 * Call method RegisterAgent(object) on server in order to
7 * register new agent for handling user requests.
9 * @param element adapter's element
10 * @param object_path object to be registered.
11 * @param capability input/output agent capabilities
12 * @param cb function to call when server replies or some error happens.
13 * @param data data to give to cb when it is called.
15 * @return 1 on success, 0 otherwise.
18 e_bluez_adapter_agent_register(E_Bluez_Element *element, const char *object_path, const char *capability, E_DBus_Method_Return_Cb cb, const void *data)
20 const char name[] = "RegisterAgent";
22 EINA_SAFETY_ON_NULL_RETURN_VAL(object_path, 0);
24 return e_bluez_element_call_with_path_and_string
25 (element, name, object_path, capability, NULL,
26 &element->_pending.agent_register, cb, data);
30 * Unregister an existing agent.
32 * Call method UnregisterAgent(object) on server in order to
33 * unregister an existing agent.
35 * @param element adapter's element
36 * @param object_path agent to be unregistered.
37 * @param cb function to call when server replies or some error happens.
38 * @param data data to give to cb when it is called.
40 * @return 1 on success, 0 otherwise.
43 e_bluez_adapter_agent_unregister(E_Bluez_Element *element, const char *object_path, E_DBus_Method_Return_Cb cb, const void *data)
45 const char name[] = "UnregisterAgent";
47 EINA_SAFETY_ON_NULL_RETURN_VAL(object_path, 0);
49 return e_bluez_element_call_with_path
50 (element, name, object_path, NULL,
51 &element->_pending.agent_unregister, cb, data);
55 * Get property "Address" value.
57 * If this property isn't found then 0 is returned.
58 * If zero is returned, then this call failed and parameter-returned
59 * values shall be considered invalid.
61 * @param address where to store the property value, must be a pointer
62 * to string (const char **), it will not be allocated or
63 * copied and references will be valid until element changes,
64 * so copy it if you want to use it later.
66 * @return 1 on success, 0 otherwise.
69 e_bluez_adapter_address_get(E_Bluez_Element *element, const char **address)
71 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
72 EINA_SAFETY_ON_NULL_RETURN_VAL(address, 0);
74 return e_bluez_element_property_get_stringshared
75 (element, e_bluez_prop_address, NULL, address);
79 * Get property "Powered" value.
81 * If this property isn't found then 0 is returned.
82 * If zero is returned, then this call failed and parameter-returned
83 * values shall be considered invalid.
85 * @param offline where to store the property value, must be a pointer
86 * to booleans (bool *).
88 * @return 1 on success, 0 otherwise.
89 * @see e_connman_manager_offline_mode_set()
92 e_bluez_adapter_powered_get(E_Bluez_Element *element, bool *powered)
94 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
95 EINA_SAFETY_ON_NULL_RETURN_VAL(powered, 0);
97 return e_bluez_element_property_get_stringshared
98 (element, e_bluez_prop_powered, NULL, powered);
102 * Call method SetProperty("Powered", powered) at the given element on server.
105 * @param powered value to set.
106 * @param cb function to call when server replies or some error happens.
107 * @param data data to give to cb when it is called.
109 * @return 1 on success, 0 otherwise.
112 e_bluez_adapter_powered_set(E_Bluez_Element *element, bool powered, E_DBus_Method_Return_Cb cb, const void *data)
114 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
115 return e_bluez_element_property_set_full
116 (element, e_bluez_prop_powered, DBUS_TYPE_BOOLEAN,
121 * Start Discovery of Bluetooth Devices
123 * call StartDiscovery()
125 * @param element the adapter's element.
126 * @param cb function to call when server replies or some error happens.
127 * @param data data to give to cb when it is called.
129 * @return 1 on success, 0 otherwise.
132 e_bluez_adapter_start_discovery(E_Bluez_Element *element, E_DBus_Method_Return_Cb cb, const void *data)
134 const char name[] = "StartDiscovery";
136 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
138 return e_bluez_element_call_full(element, name, NULL,
139 &element->_pending.start_discovery, cb, data);
143 * Stop Discovery of Bluetooth Devices
145 * call StopDiscovery()
147 * @param element the adapter's element.
148 * @param cb function to call when server replies or some error happens.
149 * @param data data to give to cb when it is called.
151 * @return 1 on success, 0 otherwise.
154 e_bluez_adapter_stop_discovery(E_Bluez_Element *element, E_DBus_Method_Return_Cb cb, const void *data)
156 const char name[] = "StopDiscovery";
158 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
160 return e_bluez_element_call_full(element, name, NULL,
161 &element->_pending.stop_discovery, cb, data);