+---------------------------------------+
| Guest (strength 90, none) |
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) |
+ | My WiFi AP (strength 80, rsn) |
+---------------------------------------+
| Clear WiMAX (strength 70) |
+---------------------------------------+
- | Other AP (strength 70, wpa2) |
+ | Other AP (strength 70, rsn) |
+---------------------------------------+
| Friends AP (strength 70, wep) |
+---------------------------------------+
| Other WiMAX (strength 50) |
+---------------------------------------+
-If non of the services has been used before the sorting order will be done
+If none of the services has been used before the sorting order will be done
with these priorities:
1. Ethernet (lower index numbers first)
strength value is normalized to 0-100 (effectively a percentage) and allows
an easy sorting.
-If the signal strength is identical than the WiMAX network should be shown
+If the signal strength is identical then the WiMAX network should be shown
first since it is a licensed spectrum and more reliable. Also the number
of WiMAX networks will be smaller than the number of WiFi since that operates
in an unlicensed spectrum.
-WiFi networks with the same signal strength are then sorted by its security
+WiFi networks with the same signal strength are then sorted by their security
setting. WPA2 encrypted networks should be preferred over WPA/WEP and also
unencrypted ones. After that they will be sorted by the SSID in alphabetical
order.
delete/remove button.
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=1 - favorite=yes
+ | My WiFi AP (strength 80, rsn) | order=1 - favorite=yes
+---------------------------------------+
| Ethernet | order=0
+---------------------------------------+
| |
This means that all services with an order > 0 have favorite=yes and all
-other have favorite=no setting. The favorite setting is exposed via a
+others have favorite=no setting. The favorite setting is exposed via a
property over the service interface. As mentioned above, the order number
is only used internally.
-Within Connection Manager many service can be connected at the same time and
+Within Connection Manager many services can be connected at the same time and
also have an IP assignment. However only one can have the default route. The
-service with the the default route will always be sorted at the top of the
+service with the default route will always be sorted at the top of the
list.
+---------------------------------------+
| Ethernet | order=2 - connected=yes
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=1 - connected=yes
+ | My WiFi AP (strength 80, rsn) | order=1 - connected=yes
+---------------------------------------+
| Guest (strength 90, none) | order=0
+---------------------------------------+
A working connection is considered top priority.
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=2 - connected=yes
+ | My WiFi AP (strength 80, rsn) | order=2 - connected=yes
+---------------------------------------+
| Ethernet | order=1 - connected=yes
+---------------------------------------+
down in the list.
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=1 - connected=yes
+ | My WiFi AP (strength 80, rsn) | order=1 - connected=yes
+---------------------------------------+
| Ethernet | order=0
+---------------------------------------+
+---------------------------------------+
| Ethernet | order=2 - connected=yes
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=1 - connected=no
+ | My WiFi AP (strength 80, rsn) | order=1 - connected=no
+---------------------------------------+
| Guest (strength 90, none) | order=0
+---------------------------------------+
order number of 0 (directly after all favorite services).
+---------------------------------------+
- | My WiFi AP (strength 80, wpa2) | order=1 - connected=no
+ | My WiFi AP (strength 80, rsn) | order=1 - connected=no
+---------------------------------------+
| Ethernet | order=0 - connected=no
+---------------------------------------+
==============
The interfaces of Connection Manager will always export all services that are
-currently known. This includes Ethernet devices with no cable plugged into
-them. This is of course suboptimal since the user doesn't need to be bothered
-with a device that he/she can actually physically see.
-
-So in this case the user interface can choose to just not show Ethernet
-devices with a favorite=no setting. This is an advanced tweak that is up
-to the user interface. However it is highly recommended to not show Ethernet
-device until Connection Manager marks them as favorite.
+currently known. The Ethernet devices with no cable plugged are actually not
+included in this list. They will only show up once a carrier is detected.
The service interface is not meant for basic device configuration task. So
switching a device on and off (via RFKILL for example) should be done via
will be converted into printable form. Unprintable characters are replaced
with spaces.
-For WiMAX networks the provide name like Clear or X-OHM will be used. This
-name either comes directly from the networks itself or from a provisioning
+For WiMAX networks the provider name like Clear or X-OHM will be used. This
+name either comes directly from the network itself or from a provisioning
database of the WiMAX service.
For Bluetooth the device alias is used. The alias is different since it
With the "configuration" state the service indicates that it is trying
to retrieve/configure IP settings.
-Some service might require special authentication procedure like a web based
-confirmation. The "login" should be used for this in the future. Currently
-this is not implemented.
-
The "ready" state signals a successful connected device. This doesn't mean
it has the default route, but basic IP operations will succeed.
+---------------+
| idle |<-------------------------------+
+---------------+ |
+ | |
| +-------------+ |
+----------------------| failure | |
| service.Connect() +-------------+ |
| success |
V |
+---------------+ |
- | ready |<----------------+ |
+ | ready | |
+ +---------------+ |
+ | |
+ | success |
+ | |
+ V |
+ +---------------+ |
+ | online |<----------------+ |
+---------------+ | |
| | |
| service.Disconnect() | |
cases where networks are flaky or DHCP servers take a long time these
information are helpful for the user.
+Some services might require special authentication procedure like a web
+based confirmation. The LoginRequired property should be used to check
+for this.
+
Application basics
==================
bus = dbus.SystemBus()
- manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
- "org.moblin.connman.Manager")
+ manager = dbus.Interface(bus.get_object("net.connman", "/"),
+ "net.connman.Manager")
properties = manager.GetProperties()
properties = manager.GetProperties()
for path in properties["Services"]:
- service = dbus.Interface(bus.get_object("org.moblin.connman", path),
- "org.moblin.connman.Service")
+ service = dbus.Interface(bus.get_object("net.connman", path),
+ "net.connman.Service")
service_properties = service.GetProperties()
service.Connect() or service.Disconnect()
-It is possible to connect multiple service if the underlying technology
+It is possible to connect multiple services if the underlying technology
allows it. For example it would be possible to connect to a WiFi network
and a Bluetooth service at the same time. Trying to connect to a second WiFi
network with the same WiFi hardware would result in an automatic disconnect
such errors and will also be notified of changes via signals.
In future versions Connection Manager will interact with an agent to confirm
-certain transaction with the user. This functionality is currently not
+certain transactions with the user. This functionality is currently not
implemented.
To monitor the current status of a service the state property can be used. It
print properties["State"]
-All state changes are also send via the PropertyChanged signal on the
-service interface. This allows asynchronous monitoring with having to poll
+All state changes are also sent via the PropertyChanged signal on the
+service interface. This allows asynchronous monitoring without having to poll
Connection Manager for changes.