Manager hierarchy
-*****************
+=================
-Service name org.freedesktop.connman
-Interface name org.freedesktop.connman.Manager
+Service net.connman
+Interface net.connman.Manager
Object path /
-Methods array{object} ListInterfaces()
+Methods dict GetProperties()
+
+ Returns all global system properties. See the
+ properties section for available properties.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ void SetProperty(string name, variant value)
+
+ Changes the value of the specified property. Only
+ properties that are listed as read-write are
+ changeable. On success a PropertyChanged signal
+ will be emitted.
+
+ Possible Errors: [service].Error.InvalidArguments
+ [service].Error.InvalidProperty
+
+ array{object,dict} GetTechnologies()
+
+ Returns a list of tuples with technology object
+ path and dictionary of technology properties.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ array{object,dict} GetServices()
+
+ Returns a sorted list of tuples with service
+ object path and dictionary of service properties.
+
+ This list will not contain sensitive information
+ like passphrases etc.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ object ConnectProvider(dict provider)
+
+ Connect to a VPN specified by the given provider
+ properties.
+
+ When successful this method will return the object
+ path of the VPN service object.
+
+ This method can also be used to connect to an
+ already existing VPN.
+
+ This method call will only return in case of an
+ error or when the service is fully connected. So
+ setting a longer D-Bus timeout might be a really
+ good idea.
+
+ When 'SessionMode' property is enabled, this method
+ call is disallowed.
+
+ Possible Errors: [service].Error.InvalidArguments
+
void RegisterAgent(object path)
+
+ Register new agent for handling user requests.
+
+ Possible Errors: [service].Error.InvalidArguments
+
void UnregisterAgent(object path)
-Signals InterfaceAdded(object)
- InterfaceRemoved(object)
-
-
-Method: ListInferfaces
-======================
-This method lists all available interfaces. The return value is an array of
-object paths. Every attached network interface (eth0, wlan0 etc.) of the
-system is presented by an object path with additional interfaces on it. The
-main interface is org.freedesktop.connman.Interface.
-
-Method: RegisterAgent
-=====================
-This method allows the user interace to register an agent. There can be only
-one agent registered at a time. The parameter of the method is the object
-path the agent has been registered for the callback method. The agent has
-to implement org.freedesktop.connman.Agent interface on this object path.
-
-Method: UnregisterAgent
-=======================
-This method unregisters a previously registered agent. In case the agent
-application exits the core will automatically unregister the agent. However
-for a clean agent application it is important to call the unregister method.
-
-Signal: InterfaceAdded
-======================
-This signal is emitted every time a new interface has been found by the
-core and successfully activated. The signal is also emitted on startup
-or at anytime at runtime in case of hotplug devices.
-
-Signal: InterfaceRemoved
-========================
-This signal is emitted every time an interface has been removed. This can
-happen at any time in case of hotplug devices. When the system shuts down,
-this signal is also emitted.
+ Unregister an existing agent.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ void RegisterCounter(object path, uint32 accuracy, uint32 period) [experimental]
+
+ Register a new counter for user notifications.
+
+ The accuracy is specified in kilo-bytes and defines
+ a threshold for counter updates. Together with the
+ period value it defines how often user space needs
+ to be updated. The period value is in seconds.
+
+ This interface is not meant for time tracking. If
+ the time needs to be tracked down to the second, it
+ is better to have a real timer running inside the
+ application than using this interface.
+
+ Also getting notified for every kilo-byte is a bad
+ choice (even if the interface supports it). Something
+ like 10 kilo-byte units or better 1 mega-byte seems
+ to be a lot more reasonable and better for the user.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ void UnregisterCounter(object path) [experimental]
+
+ Unregister an existing counter.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+ object CreateSession(dict settings, object notifier) [experimental]
+
+ Create a new session for the application. Every
+ application can create multiple session with
+ different settings. The settings are described
+ as part of the session interface.
+
+ The notifier allows asynchronous notification about
+ session specific changes. These changes can be
+ for online/offline state or IP address changes or
+ similar things the application is required to
+ handle.
+
+ Every application should at least create one session
+ to inform about its requirements and it purpose.
+
+ void DestroySession(object session) [experimental]
+
+ Remove the previously created session.
+
+ If an application exits unexpectatly the session
+ will be automatically destroyed.
+
+ object path, dict, fd RequestPrivateNetwork(dict options)
+ [experimental]
+
+ Request a new Private Network, which includes the
+ creation of a tun/tap interface, and IP
+ configuration, NAT and IP forwarding on that
+ interface.
+ An object path, a dictionnary and a file descriptor
+ with IP settings are returned.
+
+ Possible Errors: [service].Error.InvalidArguments
+ [service].Error.NotSupported
+
+ void ReleasePrivateNetwork(object path) [experimental]
+
+ Releases a private network.
+
+ Possible Errors: [service].Error.InvalidArguments
+
+Signals TechnologyAdded(object path, dict properties)
+
+ Signal that is sent when a new technology is added.
+
+ It contains the object path of the technology and
+ also its properties.
+
+ TechnologyRemoved(object path)
+
+ Signal that is sent when a modem has been removed.
+
+ The object path is no longer accessible after this
+ signal and only emitted for reference.
+
+ ServicesAdded(array{object, dict})
+
+ List of service that have been added. The array
+ is a list of services that is sorted with existing
+ services containing an empty dictionary and new
+ services containing the properties.
+
+ This signal will only inform about added services
+ and in case that services get added and removed at
+ the same time, a ServicesRemoved signal will be
+ sent first.
+
+ ServicesRemoved(array{object})
+
+ Signals a list of services that are no longer valid.
+
+ The object paths are no longer accessible after
+ this signal and only emitted for reference.
+
+ PropertyChanged(string name, variant value)
+
+ This signal indicates a changed value of the given
+ property.
+
+Properties string State [readonly]
+
+ The global connection state of a system. Possible
+ values are "online" if at least one connection exists
+ and "offline" if no device is connected.
+
+ In certain situations the state might change to
+ the value "connected". This can only be seen if
+ previously no connection was present.
+
+ boolean OfflineMode [readwrite]
+
+ The offline mode indicates the global setting for
+ switching all radios on or off. Changing offline mode
+ to true results in powering down all devices. When
+ leaving offline mode the individual policy of each
+ device decides to switch the radio back on or not.
+
+ During offline mode, it is still possible to switch
+ certain technologies manually back on. For example
+ the limited usage of WiFi or Bluetooth devices might
+ be allowed in some situations.
+
+ boolean SessionMode [readwrite] [experminental]
+
+ This disables the auto connect feature. It should be
+ enabled when the Session API is used. When SessionMode
+ is enabled, 'ConnectService' and 'ConnectProvider'
+ method calls are disallowed.
+ The default value is false.