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(address, 0);
73 return e_bluez_element_property_get_stringshared
74 (element, e_bluez_prop_address, NULL, address);
78 * Get property "Powered" value.
80 * If this property isn't found then 0 is returned.
81 * If zero is returned, then this call failed and parameter-returned
82 * values shall be considered invalid.
84 * @param offline where to store the property value, must be a pointer
85 * to booleans (bool *).
87 * @return 1 on success, 0 otherwise.
88 * @see e_connman_manager_offline_mode_set()
91 e_bluez_adapter_powered_get(E_Bluez_Element *element, bool *powered)
93 EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
94 EINA_SAFETY_ON_NULL_RETURN_VAL(powered, 0);
96 return e_bluez_element_property_get_stringshared
97 (element, e_bluez_prop_powered, NULL, powered);
101 * Call method SetProperty("Powered", powered) at the given element on server.
104 * @param powered value to set.
105 * @param cb function to call when server replies or some error happens.
106 * @param data data to give to cb when it is called.
108 * @return 1 on success, 0 otherwise.
111 e_bluez_adapter_powered_set(E_Bluez_Element *profile, bool offline, E_DBus_Method_Return_Cb cb, const void *data)
113 EINA_SAFETY_ON_NULL_RETURN_VAL(profile, 0);
114 return e_bluez_element_property_set_full
115 (profile, e_bluez_prop_powered, DBUS_TYPE_BOOLEAN,