aboutsummaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)Author
2021-05-23docs,libmm-glib: add missing reference for DisableFacilityLock() supportAleksander Morgado
2021-05-23docs,libmm-glib: add missing non-API methods to Private sectionsAleksander Morgado
2021-05-23api,bearer: new 'ConnectionError' propertyAleksander Morgado
This new property will provide detailed information about the failed connection attempt, or about the network initiated disconnection. The property will be cleared only if a new connection attempt is triggered, and so it can be used to investigate why a given attempt failed without needing to be the one who triggered the attempt (e.g. so that failures in NetworkManager-triggered connection attempts can be investigated looking at the DBus API). The property is built as a (ss) tuple, but the libmm-glib interface provides methods to read this property as a GError.
2021-05-22api,errors: document all DBus error name prefixesAleksander Morgado
Since ModemManager 1.0 we were publishing symbols to identify all the possible DBus error name prefixes, but these were never documented, they were explicitly ignored in gtk-doc. Let's provide proper documentation for them and make them first-class API symbols.
2021-05-22docs,api: add index for 1.14Aleksander Morgado
Some of the newly deprecated enum values were introduced in 1.14.
2021-05-22api: update MMMobileEquipmentError enum valuesAleksander Morgado
Update the list of mobile equipment error codes according to v17.1.0 of 3GPP TS 27.007 (March 2021). A lot of the enum values that were prefixed with the 'GPRS_' keyword have now been flagged as deprecated, and a new enum name given to the corresponding value. The deprecated symbol names are kept in the compat support to avoid breaking API/ABI.
2021-05-17libmm-glib,iface-modem-location: add MMLocation3gpp 3 digit MNC supportTeijo Kinnunen
MMLocation3gpp provides MCC/MNC information as integers, so it can not make distinction between operator codes such as XXX01 and XXX001. This commit deprecates mm_location_3gpp_get_mobile_network_code() and implements a new function mm_location_3gpp_get_operator_code() which provides the MCC+MNC in string format. The mm_location_3gpp_get_mobile_country_code() is still available as returning the MCC as an integer does not have ambiguity issues.
2021-04-30api,libmm-glib,cli: add command to disable facility lockMichal Mazur
2021-04-29api,bearer: new 'ProfileId' propertyAleksander Morgado
To report which is the currently active profile with this bearer, if known. If the modem doesn't support profiles, or if the bearer is disconnected, -1 (MM_3GPP_PROFILE_ID_UNKNOWN) will be reported. It is guaranteed that no two connected bearers will have the same ProfileId property value.
2021-04-29api,modem: new Modem3gpp.ProfileManager interfaceAleksander Morgado
This new interface allows modems to expose the list of available connection profiles stored in the device and edit or delete them; as long as the underlying device/protocol allows it.
2021-04-29api,bearer: new 'profile-id' settingAleksander Morgado
We define a new 'profile-id' setting in the bearer properties that users will use to specify which connection profile of the ones available in the device should be connected. When the 'profile-id' is given, the associated bearer object will be bound to the 'profile-id', and the user is able to provide additional settings to apply on top (e.g. if the profile storage doesn't allow some of the settings we support, like 'apn-type', or if the setting is completely unrelated to profiles, like 'multiplex'). After introducing the 'profile-id' as a valid setting in the bearer properties, we also reimplement the properties object internals to make use a 3GPP profile for the subset of common settings between both objects.
2021-04-29libmm-glib,3gpp-profile: new 3GPP profile helper objectAleksander Morgado
Define a new helper object which we're going to use to implement the new profile management interface. The 3GPP profile object provides the list of settings that modems may be able to store in their profile list, e.g. "apn", "ip-type" and so on. Not all modems will be able to support all the settings defined in the profile object, and therefore, when looking for a specific 3GPP profile object with a given set of settings, we must make sure we only compare those settings that are supported by the modem. The profile management implementation will be able to load during runtime a set of "compare flags", specifying which settings should not be checked during the comparison. E.g. a generic AT-based modem that supports only "apn" and "ip-type" will be compared with the NO_APN_TYPE and NO_AUTH flags; and an AT/Icera-based modem (which supports auth settings) will use only NO_APN_TYPE. The settings in the 3GPP profile should be considered a subset of the bearer properties.
2021-04-29api,bearer: new 'apn-type' settingAleksander Morgado
This new setting allows the user setting up the connection to specify the purpose of the connection being brought up. Until now, we would always assume that connections are exclusively brought up for connecting to the Internet, also limited by the inability to connect to multiple different APNs at the same time. But that may really not be true as there may be additional services that may be accessed through other APNs, like MMS services or even private networks for companies that have their own APNs on a given operator (e.g. not that uncommon with banks and connected cars). The new APN type setting will not change the way the bearer is connected, but will allow the connection manager to decide what kind of networking setup the specific connection needs. This new setting can be provided by the user itself, or implicitly read from the device if the device stores this information.
2021-03-24docs,libmm-glib: move USSD to its own sectionAleksander Morgado
It's not a generic interface, it's a feature interface, same as messaging or location.
2021-03-23docs,libmm-glib: add low-level SAR interface referenceAleksander Morgado
2021-03-23docs,libmm-glib: add missing reference to mm_sim_preferred_network_list_free()Aleksander Morgado
2021-03-23docs,api: include missing reference to the SAR interfaceAleksander Morgado
2021-03-23build: add support for the new SAR interfaceAleksander Morgado
Include the new SAR interface in the build so that gdbus-codegen generates support for it in libmm-glib as well as proper documentation in the API reference.
2021-03-11docs,libmm-glib: add missing reference to private methodAleksander Morgado
2021-03-10docs: add api indices for 1.18Aleksander Morgado
2021-03-10api,bearer: new 'Multiplexed' propertyAleksander Morgado
This property will be TRUE if the bearer has the data session connected through a multiplexed interface. If the bearer is disconnected, or connected without multiplexing, the property will report FALSE.
2021-03-10api,modem: new 'MaxActiveMultiplexedBearers' propertyAleksander Morgado
In addition to the amount of bearers a user may connect without multiplexing enabled (the default until now), we now also expose the maximum number of bearers a user may connect after enabling multiplexing over one single network interface (if supported). The method responsible for creating the MMBearerList is now also subclassable, so that implementations supporting multiplexing can provide their own version with their own thresholds.
2021-03-10api,simple: new 'multiplex' setting in bearer propertiesAleksander Morgado
Both the Simple.Connect() and Modem.CreateBearer() are updated to allow a new 'multiplex' setting in the properties provided by the user in both of these methods. The new setting expects a MMBearerMultiplexSupport enum indicating what kind of multiplex needs the user has: * none: if multiplex must not be used. * requested: if multiplex should be used if available. * required: if multiplex must be used. The underlying implementations will take care of accepting or rejecting the setting depending on the system and modem capabilities.
2021-03-09api,sim: add new Sim.SetPreferredNetworks methodTeijo Kinnunen
This commit includes D-Bus processing and documentation, but not any modem access implementation.
2021-02-26docs: add api index for 1.18Aleksander Morgado
2021-02-26libmm-glib,modem-helpers,mm-base-sim: implement Sim.PreferredNetworksTeijo Kinnunen
The ModemManager1.Sim.PreferredNetworks property contains the preferred networks (and access technologies, if available) configured to the SIM card. This commit implements preferred networks reading with AT+CPOL.
2021-02-17libmm-glib,simple-connect-properties: add missing APIs to get/set RM protocolAleksander Morgado
Probably not a big deal, since no one has asked for these in the past years, but let's add them for completeness with the DBus API.
2021-01-17core: update copyright years to 2021Aleksander Morgado
2021-01-16docs: add 'online-location' referencesAleksander Morgado
So that the gtkdoc-rebase step fixes the URLs to contain the correct links; e.g.: $ make dist V=s make[8]: Entering directory '/home/aleksander/Development/foss/ModemManager/docs/reference/libmm-glib' make \ top_distdir="../../../ModemManager-1.15.0" distdir="../../../ModemManager-1.15.0/docs/reference/libmm-glib" \ dist-hook ../ModemManager/ -> https://www.freedesktop.org/software/ModemManager/doc/latest/ModemManager/ (914) ../gio/ -> https://developer.gnome.org/gio/unstable/ (2564) ../glib/ -> https://developer.gnome.org/glib/unstable/ (5534) ../gobject/ -> https://developer.gnome.org/gobject/unstable/ (499) make[8]: Leaving directory '/home/aleksander/Development/foss/ModemManager/docs/reference/libmm-glib' Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/298
2021-01-15docs: add MMBearerPropertiesCmpFlags to ignored listAleksander Morgado
2020-11-09api: new ID_MM_PORT_TYPE_QMI and ID_MM_PORT_TYPE_MBIM udev hintsAleksander Morgado
It is no longer true that all QMI ports are exposed by the qmi_wwan driver and that all MBIM ports are exposed by the cdc_mbim driver. There are other generic setups that allow exposing these types of ports using different drivers, and usually we can also know the type of port in advance via other means. Therefore, allow adding udev port type hints for QMI and MBIM ports as well.
2020-11-08build: fix distcheck with new gtk-docAleksander Morgado
The .actions file is generated by newer gtk-doc releases, we just treat it as e.g. the .signals or .types files. This is also already fixed in upstream gtk-doc: https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/61
2020-11-06filter: simplify CDC_WDM rule to a subsystem-only USBMISC checkAleksander Morgado
This is not just a rename of the rule, we also now avoid doing an explicit check on the port name as well, and we rely on subsystem checks only; i.e. the same logic applied for net ports. The port candidate rules already do a 'cdc-wdm*' device name check so it shouldn't be a big deal.
2020-10-25libmm-glib,docs: add missing reference to mm_gdbus_sim_set_eid()Aleksander Morgado
It's a private method, so add it in the Private subsection.
2020-10-19libmm-glib,mmcli: add mm_sim_get_eid and add EID to mmcli outputEric Caruso
This exposes the new EID property of the SIM object on mmcli.
2020-10-19mm-base-sim: add EID D-Bus propertyEric Caruso
This provides a new D-Bus property on the Sim object that exposes the EID of the SIM, if available.
2020-08-28libmm-glib,docs: add index for 1.16Aleksander Morgado
2020-08-28api,modem: new 'SetPrimarySimSlot' methodAleksander Morgado
This new method allows changing the SIM slot considered as primary, when the modem supports multiple SIM slots. The generic handling of this method will make sure that the modem object and all its SIM objects are re-probed from scratch as soon as a successful SIM slot switch happens. Implementations may report MM_CORE_ERROR_EXISTS when the switch doesn't need to happen (e.g. if the requested SIM slot is already the active one).
2020-08-28api,modem: new 'SimSlots' and 'PrimarySimSlot' propertiesAleksander Morgado
The 'SimSlots' property exposes an array of SIM object paths, with one array item for each available SIM slot in the system. If a valid SIM card is found in a given slot, the path of the SIM object will be exposed in the array item; if no valid SIM card is found, the empty object path ("/") will be exposed instead. The 'PrimarySimSlot' property exposes which of the SIM slots available in the system is the one configured as being primary. In a Multi-SIM Single-Standby setup, the primary slot will be the one corresponding to the single active SIM in the system. In a Multi-SIM Multi-Standby setup, the primary slot will be the one configured to act as primary (e.g. the one that will be used for the data connection) among all the active SIM cards found.
2020-08-28api,sim: new 'Active' propertyAleksander Morgado
In preparation for the multi-SIM setup, we need a way to tell whether a given SIM card is active or not in the system. On systems with one single SIM slot, the available SIM card will always be active. On Multi-SIM Single-Standby setups we may have multiple SIM slots with multiple SIM cards, but only one of them will be active at any given time. On Multi-SIM Multi-Standby setups we may have multiple SIM slots with multiple SIM cards that may be active at the same time. E.g. the QMI protocol allows up to 5 different active SIM cards (primary, secondary, tertiary...).
2020-07-04docs,libmm-glib: add missing nr5g methods in signal interfaceAleksander Morgado
2020-07-04iface-modem-signal: added 5G signal informationWalter Hagstrom
Extended the ModemManager Signal interface to include 5G signal information for RSRP, RSRQ and SINR via libqmi. Also extended mmci to print 5G signal info.
2020-06-03docs,libmm-glib: add 1.14 indexAleksander Morgado
2020-04-16man,mmcli: remove non-existent --list-bearers optionAleksander Morgado
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/203
2020-04-10api,bearer: add 'total-rx-bytes', 'total-tx-bytes' and 'total-duration' statsAleksander Morgado
Compiling the amount of bytes transferred and received during all tracked connection attempts, as well as the total duration of all the connections.
2020-04-10api,bearer: add 'attempts' and 'failed-attempts' statisticsAleksander Morgado
When we're reusing over and over the same bearer object, we can provide statistical information about the number of connection attempts that have been done and how many of them failed.
2020-04-09api: deprecate MM_MODEM_CAPABILITY_LTE_ADVANCEDAleksander Morgado
It's not used anywhere.
2020-01-03build: bump copyright years to 2020Aleksander Morgado
2019-12-31libmm-glib,nmea: new method to get list of tracesAleksander Morgado
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/120
2019-12-13libmm-glib,3gpp: make MMModem3gppNetwork a boxed typeAleksander Morgado
So that bindings know how to free the list of structs. This commit ends up triggering an API break in the bindings generated via GObject introspection, because the methods to access the items of a MMModem3gppNetwork are no longer treated as Modem3gpp class methods. E.g. instead of: ModemManager.Modem3gpp.network_get_operator_code(network) We should now do: network.get_operator_code() There is no API break in libmm-glib.