Another update to proxy configuration API
[framework/connectivity/connman.git] / doc / service-api.txt
index caf1dbe..8599041 100644 (file)
@@ -104,6 +104,12 @@ Methods            dict GetProperties()
 
                        Possible Errors: [service].Error.InvalidArguments
 
+               void ResetCounters()
+
+                       Reset the counter statistics.
+
+                       Possible Errors: None
+
 Signals                PropertyChanged(string name, variant value)
 
                        This signal indicates a changed value of the given
@@ -116,6 +122,10 @@ Properties string State [readonly]
                        Valid states are "idle", "failure", "association",
                        "configuration" and "ready".
 
+                       Also "login" and "online" states are used. The
+                       state "online" signals that an Internet connection
+                       is available and has been verified.
+
                string Error [readonly]
 
                        The service error status details.
@@ -176,6 +186,12 @@ Properties string State [readonly]
                        This property might be only present for WiFi
                        services.
 
+               boolean LoginRequired [readonly]
+
+                       This property indicates that an additional login
+                       step is needed before the connection establishment
+                       can proceed.
+
                string Passphrase [readwrite]
 
                        If the service type is WiFi, then this property
@@ -214,6 +230,15 @@ Properties string State [readonly]
                        it back to false the Remove() method needs to be
                        used.
 
+               boolean Immutable [readonly]
+
+                       This value will be set to true if the service is
+                       configured externally via a configuration file.
+
+                       The only valid operation are Connect() and of
+                       course Disconnect(). The Remove() method will
+                       result in an error.
+
                boolean AutoConnect [readwrite]
 
                        If set to true, this service will auto-connect
@@ -258,13 +283,45 @@ Properties        string State [readonly]
                        indicates connections to a foreign provider when
                        traveling abroad.
 
-               array{string} Nameservers [readwrite]
+               array{string} Nameservers [readonly]
+
+                       The list of currently active nameservers for this
+                       service. If the server is not in READY or ONLINE
+                       state than this list will be empty.
+
+                       Global nameservers are automatically added to this
+                       list. The array represents a sorted list of the
+                       current nameservers. The first one has the highest
+                       priority and is used by default.
+
+                       When using DHCP this array represents the nameservers
+                       provided by the network. In case of manual settings,
+                       the ones from Nameservers.Configuration are used.
+
+               array{string} Nameservers.Configuration [readwrite]
 
                        The list of manually configured domain name
                        servers. Some 3G networks don't provide correct
                        name servers and this allows for an override.
 
-               array{string} Domains [readwrite]
+                       This array is sorted by priority and the first
+                       entry in the list represents the nameserver with
+                       the highest priority.
+
+                       When using manual configuration and no global
+                       nameservers are configured, then it is useful
+                       to configure this setting.
+
+                       Changes to the domain name servers can be done
+                       at any time. It will not cause a disconnect of
+                       the service. However there might be small window
+                       where name resolution might fail.
+
+               array{string} Domains [readonly]
+
+                       The list of currently used search domains.
+
+               array{string} Domains.Configuration [readwrite]
 
                        The list of manually configured search domains.
 
@@ -275,6 +332,10 @@ Properties string State [readonly]
                                Possible values are "dhcp", "manual"
                                and "off".
 
+                               The value "fixed" indicates an IP address
+                               that can not be modified. For example
+                               cellular networks return fixed information.
+
                        string Address [readonly]
 
                                The current configured IPv4 address.
@@ -293,12 +354,128 @@ Properties       string State [readonly]
                        the actual system configuration while this allows
                        user configuration.
 
+                       Changing these settings will cause a state change
+                       of the service. The service will become unavailable
+                       until the new configuration has been successfully
+                       installed.
+
+               dict IPv6 [readonly]
+
+                       string Method [readonly]
+
+                               Possible values are "dhcp", "manual"
+                               and "off".
+
+                               The value "fixed" indicates an IP address
+                               that can not be modified. For example
+                               cellular networks return fixed information.
+
+                               "dhcp" is not supported currently.
+
+                       string Address [readonly]
+
+                               The current configured IPv6 address.
+
+                       uint8 PrefixLength [readonly]
+
+                               The prefix length of the IPv6 address.
+
+                       string Gateway [readonly]
+
+                               The current configured IPv6 gateway.
+
+               dict IPv6.Configuration [readwrite]
+
+                       Same values as IPv6 property. The IPv6 represents
+                       the actual system configuration while this allows
+                       user configuration.
+
+                       Changing these settings will cause a state change
+                       of the service. The service will become unavailable
+                       until the new configuration has been successfully
+                       installed.
+
+               dict Proxy [readonly]
+
+                       string Method [readonly]
+
+                               Possible values are "direct", "auto" and
+                               "manual".
+
+                               If the DHCP server, or WPAD protocol, provides
+                               an automatic configuration URL, then this value
+                               is set to "auto" in case "auto" is configured"
+                               referenced by the URL value. If "auto" is
+                               configured and DHCP and WPAD auto-discover
+                               methods fails then method will be "direct".
+
+                               In case of "auto" method, the URL file has
+                               to be provided. In case of "direct" no
+                               additional information are provided. For
+                               the "manual" method the Servers have to
+                               be set.
+
+                       string URL [readonly]
+
+                               Automatic proxy configuration URL. Used by
+                               "auto" method.
+
+                       array{string} Servers [readonly]
+
+                               Used when "manual" method is set.
+
+                               List of proxy URIs. The URI without a protocol
+                               will be interpreted as the generic proxy URI.
+                               All others will target a specific protocol and
+                               only once.
+
+                               Example for generic proxy server entry would
+                               be like this: "server.example.com:911".
+
+                       array{string} Excludes [readonly]
+
+                               Used when "manual" method is set.
+
+                               List of hosts which can be accessed directly.
+
+               dict Proxy.Configuration [readwrite]
+
+                       Same values as Proxy property. The Proxy represents
+                       the actual system configuration while this allows
+                       user configuration.
+
+                       If "auto" method is set with an empty URL, then
+                       WPAD protocol will be ran. Otherwise the specified
+                       URL will be used.
+
+               dict Provider [readonly]
+
+                       string Host [readonly]
+
+                              VPN host IP.
+
+                       string Domain [readonly]
+
+                              VPN Domain.
+
+                       string Name [readonly]
+
+                              VPN provider Name.
+
+                       string Type [readonly]
+
+                              VPN provider type.
+
                dict Ethernet [readonly]
 
                        string Method [readonly]
 
                                Possible values are "auto" and "manual".
 
+                       string Interface [readonly]
+
+                               Interface name (for example eth0).
+
                        string Address [readonly]
 
                                Ethernet device address (MAC address).