Add method to retrieve sorted list of tuples for services
[platform/upstream/connman.git] / doc / manager-api.txt
1 Manager hierarchy
2 =================
3
4 Service         org.moblin.connman
5 Interface       org.moblin.connman.Manager
6 Object path     /
7
8 Methods         dict GetProperties()
9
10                         Returns all global system properties. See the
11                         properties section for available properties.
12
13                         Possible Errors: [service].Error.InvalidArguments
14
15                 void SetProperty(string name, variant value)
16
17                         Changes the value of the specified property. Only
18                         properties that are listed as read-write are
19                         changeable. On success a PropertyChanged signal
20                         will be emitted.
21
22                         Possible Errors: [service].Error.InvalidArguments
23                                          [service].Error.InvalidProperty
24
25                 string GetState()
26
27                         Return global connection state of a system. The
28                         same value is return via the State property.
29
30                         Possible Errors: [service].Error.InvalidArguments
31
32                 object CreateProfile(string name)
33
34                         Create and add new profile with the specified
35                         identifier name.
36
37                         Possible Errors: [service].Error.InvalidArguments
38
39                 void RemoveProfile(object path)
40
41                         Remove profile with specified object path.
42
43                         It is not possible to remove the current active
44                         profile. To remove the active profile a different
45                         one must be selected via ActiveProfile property
46                         first.
47
48                         At minimum one profile must be available all the time.
49
50                         Possible Errors: [service].Error.InvalidArguments
51
52                 void RequestScan(string type)
53
54                         Request to trigger a scan for the specified
55                         technology. The empty string "" triggers scanning
56                         on all technologies.
57
58                         Possible Errors: [service].Error.InvalidArguments
59
60                 void EnableTechnology(string type)
61
62                         Enable specified type of technologies.
63
64                         Possible Errors: [service].Error.InvalidArguments
65
66                 void DisableTechnology(string type)
67
68                         Disable specified type of technologies.
69
70                         Possible Errors: [service].Error.InvalidArguments
71
72                 arracy{object,dict} GetServices()
73
74                         Returns a sorted list of tuples with service
75                         object path and dictionary of service properties.
76
77                         This list will not contain sensitive information
78                         like passphrases etc.
79
80                         Possible Errors: [service].Error.InvalidArguments
81
82                 object LookupService(string pattern)
83
84                         Lookup a service matching the specific pattern.
85
86                         Examples are interface names like "eth0", "wlan0"
87                         etc. or service names like "hotspot" etc.
88
89                         In case of multiple services match the the pattern
90                         an error is returned.
91
92                         Possible Errors: [service].Error.InvalidArguments
93                                          [service].Error.NotUnique
94                                          [service].Error.NotFound
95
96                 object ConnectService(dict network)
97
98                         Connect to a network specified by the given
99                         properties.
100
101                         For connecting to a hidden WiFi network for example
102                         it is required that Type = "wifi" and the SSID
103                         properties are provided.
104
105                         When successful this method will return object
106                         path of the service object.
107
108                         This method can also be used to connect to an
109                         already existing service. It works exactly the
110                         same as executing the Connect method from the
111                         service interface.
112
113                         This method call will only return in case of an
114                         error or when the service is fully connected. So
115                         setting a longer D-Bus timeout might be a really
116                         good idea.
117
118                         Possible Errors: [service].Error.InvalidArguments
119
120                 void RegisterAgent(object path)
121
122                         Register new agent for handling user requests.
123
124                         Possible Errors: [service].Error.InvalidArguments
125
126                 void UnregisterAgent(object path)
127
128                         Unregister an existing agent.
129
130                         Possible Errors: [service].Error.InvalidArguments
131
132                 void RegisterCounter(object path, uint32 interval)
133
134                         Register a new counter for user notifications.
135
136                         If the interval is zero then no timer for updates
137                         will be started. Only kernel events can then
138                         trigger updates. Otherwise the kernel will be
139                         polled every n seconds for an update.
140
141                         Possible Errors: [service].Error.InvalidArguments
142
143                 void UnregisterCounter(object path)
144
145                         Unregister an existing counter.
146
147                         Possible Errors: [service].Error.InvalidArguments
148
149                 object RequestSession(string bearer)
150
151                         Request a networking session.
152
153                         If the bearer is an empty string the best available
154                         service will be picked.
155
156                         When successful this method will return the object
157                         path of the corresponding service.
158
159                         Possible Errors: [service].Error.InvalidArguments
160
161                 void ReleaseSession()
162
163                         Release a networking session.
164
165                         Possible Errors: [service].Error.InvalidArguments
166
167 Signals         PropertyChanged(string name, variant value)
168
169                         This signal indicates a changed value of the given
170                         property.
171
172                 StateChanged(string state)
173
174                         This signal is similar to the PropertyChanged signal
175                         for the State property.
176
177                         It exists for application state only care about the
178                         current state and so can avoid to be woken up when
179                         other details changes.
180
181 Properties      string State [readonly]
182
183                         The global connection state of a system. Possible
184                         values are "online" if at least one connection exists
185                         and "offline" if no device is connected.
186
187                         In certain situations the state might change to
188                         the value "connected". This can only be seen if
189                         previously no connection was present.
190
191                 array{string} AvailableTechnologies [readonly]
192
193                         The list of available technologies. The strings
194                         are the same as the ones from the service types.
195
196                 array{string} EnabledTechnologies [readonly]
197
198                         The list of enabled technologies. The strings
199                         are the same as the ones from the service types.
200
201                 array{string} ConnectedTechnologies [readonly]
202
203                         The list of connected technologies. The strings
204                         are the same as the ones from the service type.
205
206                 string DefaultTechnology [readonly]
207
208                         The current connected technology which holds the
209                         default route.
210
211                 boolean OfflineMode [readwrite]
212
213                         The offline mode indicates the global setting for
214                         switching all radios on or off. Changing offline mode
215                         to true results in powering down all devices. When
216                         leaving offline mode the individual policy of each
217                         device decides to switch the radio back on or not.
218
219                         During offline mode, it is still possible to switch
220                         certain technologies manually back on. For example
221                         the limited usage of WiFi or Bluetooth devices might
222                         be allowed in some situations.
223
224                 object ActiveProfile [readwrite]
225
226                         Object path of the current active profile.
227
228                 array{object} Profiles [readonly]
229
230                         List of profile object paths.
231
232                 array{object} Technologies [readonly]
233
234                         List of technology object paths.
235
236                 array{object} Services [readonly]
237
238                         List of service object paths. The list is sorted
239                         internally to have the service with the default
240                         route always first and then the favorite services
241                         followed by scan results.
242
243                         This list represents the available services for the
244                         current selected profile. If the profile gets changed
245                         then this list will be updated.
246
247                         The same list is available via the profile object
248                         itself. It is just provided here for convenience of
249                         applications only dealing with the current active
250                         profile.