Re: [MM] API changes for 0.8



On 05/30/2013 02:40 PM, Aleksander Morgado wrote:
Hey,

We are reviewing the DBus interfaces in ModemManager before making a 0.8
release, and we've come up with several changes to the Modem interface
(see list below). Some of the changes are pretty useful, like being able
to know which are the allowed+preferred mode combinations supported by
the modem before actually trying to change them; or being able to switch
capabilities when supported.

The changes are available in the "aleksander/api-breaks" branch in git
master, please review/test them if you're already using the new
ModemManager. The plan is to get the branch merged to git master soon.


This branch just got merged to git master, and tagged as '0.7.991'.
There are no additional API changes scheduled before 0.8.



Cheers!

=======================================================================
Changes to the 'Modem' interface
=======================================================================

* MMBearerIpFamily is now flags instead of an enumeration.

* A new 'SupportedIpFamilies' property is given (signature "u"), showing
which are the IP types that we can use when requesting a connection. The
given value is a mask of MMBearerIpFamily flags.

 * Renamed 'Bands' property to 'CurrentBands'.

 * Renamed 'SetBands()' method to 'SetCurrentBands()'.

 * Updated the 'SupportedModes' property to give a list of
allowed+preferred combinations, instead of just a mask with all allowed
ones. Signature changed from "u" to "a(uu)", where each item in the
array is a pair of MMModemMode values (first one mask of allowed modes,
second one a preferred mode). Modems supporting the change of
allowed+preferred modes will expose the combinations they actually
support. E.g.:

    $> sudo mmcli -m 0
      -------------------------
      Modes    |      supported: 'allowed: 2g; preferred: none
               |                  allowed: 3g; preferred: none
               |                  allowed: 2g, 3g; preferred: none
               |                  allowed: 2g, 3g; preferred: 2g
               |                  allowed: 2g, 3g; preferred: 3g

 * Merged the 'AllowedModes' and 'PreferredMode' into a single
'CurrentModes' property, with signature "(uu)". The pair of integers has
the same logic as in 'SupportedModes', first one is mask of allowed
modes and second one is a preferred mode.

 * Renamed 'SetAllowedModes()' method to 'SetCurrentModes()', and
updated the argument list to have only one item with signature "(uu)"
(allowed mask + preferred). The allowed+preferred combination given must
be one of those listed in 'SupportedModes', otherwise the operation will
fail.

 * Renamed 'ModemCapabilities' property to 'SupportedCapabilities', and
also updated the signature from "u" to "au", where each item in the
array is a MMModemCapability mask. Modems supporting the change of
capabilities will expose the combinations they actually support. E.g.:
    $> sudo mmcli -m 0
      -------------------------
      Hardware |   supported: 'gsm-umts
               |               cdma-evdo
               |               gsm-umts, cdma-evdo'
               |     current: 'gsm-umts'


 * New 'SetCurrentCapabilities()' method, which accepts a "u" specifying
the capability combinations wanted (of those listed in
'SupportedCapabilities'). Changing capabilities with this method will
force a device power-cycle (modem will disappear and probed again). This
method allows to e.g. switch the UML290 from CDMA/EVDO mode to GSM/UMTS
mode, as done with the 'uml290mode' program.


_______________________________________________
networkmanager-list mailing list
networkmanager-list gnome org
https://mail.gnome.org/mailman/listinfo/networkmanager-list



-- 
Aleksander


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]