aboutsummaryrefslogtreecommitdiff
path: root/cli
AgeCommit message (Collapse)Author
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-04-09cli: improve --help output for --modem and --sim optionsAleksander Morgado
Specify the full list of supported object lookup methods.
2020-04-09cli: allow looking up for first available modem or SIMAleksander Morgado
When a system only has one single modem, it's convenient to just look for the first available modem or SIM object, instead of needing to provide the full path or the exact index number. This improvement allows users to use the "any" keyword, or any of its substrings (e.g. "an" or even "a") to match the first available object of the requested type. E.g.: $ mmcli -m a -------------------------------- General | dbus path: /org/freedesktop/ModemManager1/Modem/0 | device id: 1a48f1180f1fb0166d91f7b139d027136b59ba63 -------------------------------- Hardware | manufacturer: Sierra Wireless Inc. | model: Sierra Wireless EM7345 4G LTE ... Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/196
2020-04-09cli: consolidate logic to process user provided object lookup infoAleksander Morgado
The user may specify DBus objects in several ways, e.g. with full object paths, just with the object numeric ids, or in some other cases with the full device UID. Setup one single method to process this info for all object types, so that it's also easier to add new lookup methods for all at the same time.
2020-03-21cli: remove empty whiteline in --versionAleksander Morgado
This also fixes the Copyright section in the troffit generated HTML output.
2020-03-21cli: context: add ':' to the section titlesAleksander Morgado
So that --help-all print all sections in the same way as the Help and Application option groups.
2020-01-31cli: fix warnings with -WshadowAleksander Morgado
mmcli-manager.c: In function ‘context_free’: mmcli-manager.c:167:24: error: declaration of ‘ctx’ shadows a global declaration [-Werror=shadow] 167 | context_free (Context *ctx) | ~~~~~~~~~^~~ mmcli-manager.c:51:17: note: shadowed declaration is here 51 | static Context *ctx; | ^~~ ...
2020-01-31cli: fix warnings with -Wswitch-defaultAleksander Morgado
mmcli-output.c: In function ‘output_item_free’: mmcli-output.c:321:5: error: switch missing default case [-Werror=switch-default] 321 | switch (item->type) { | ^~~~~~ mmcli-output.c: In function ‘mmcli_output_dump’: mmcli-output.c:1208:5: error: switch missing default case [-Werror=switch-default] 1208 | switch (selected_type) { | ^~~~~~ mmcli-output.c: In function ‘mmcli_output_list_dump’: mmcli-output.c:1231:5: error: switch missing default case [-Werror=switch-default] 1231 | switch (selected_type) { | ^~~~~~
2020-01-31cli: fix warnings with -Wswitch-enumAleksander Morgado
mmcli.c: In function ‘log_handler’: mmcli.c:118:5: error: enumeration value ‘G_LOG_FLAG_RECURSION’ not handled in switch [-Werror=switch-enum] 118 | switch (log_level) { | ^~~~~~ mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_MESSAGE’ not handled in switch [-Werror=switch-enum] mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_INFO’ not handled in switch [-Werror=switch-enum] mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_MASK’ not handled in switch [-Werror=switch-enum]
2020-01-30build: use AX_IS_RELEASE() and AX_COMPILER_FLAGS()Aleksander Morgado
The autoconf macros AX_COMPILER_FLAGS_{CFLAGS|GIR|LDFLAGS} test for compiler and linker support of various flags, and add the flags to the generated output. If the command-line option '--enable-compile-warnings' is specified to 'configure', a number of additional warning options is also added to the output. This is the default. This update requires the presence of the GNU autoconf-archive in the system.
2020-01-03build: bump copyright years to 2020Aleksander Morgado
2020-01-01cli,location: use new mm_location_gps_nmea_get_traces()Aleksander Morgado
2019-12-02mmcli,output: skip printing empty value listsAleksander Morgado
E.g. we shouldn't print emergency numbers field if there is none available: $ mmcli -i 0 ------------------------------- General | dbus path: /org/freedesktop/ModemManager1/SIM/0 ------------------------------- Properties | imsi: 901700000026890 | iccid: 8988211000000268907 | operator id: 90170 | operator name: 901 70 | emergency numbers:
2019-11-15cli,modem: avoid using deprecated mm_pco_list_free()Aleksander Morgado
2019-10-27cli,output: fix truncated array output when == 10 elementsAleksander Morgado
The extra character size was only being applied when > 10 elements, leaving the == 10 case out of it, so the output was being truncated. Fix it, by using a more generic way to computing how many extra characters we need in the size. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/151
2019-10-17api,sim: new 'Emergency Numbers' propertyAleksander Morgado
2019-10-17voice,api: new 'EmergencyOnly' boolean flagAleksander Morgado
This new flag allows users of the API to know whether general purpose voice calls are allowed or otherwise only voice calls to the registered emergency numbers should be performed. ModemManager won't really do any distinction between emergency and non-emergency calls at this point, this flag is just an early indication for the user of the API that no normal voice call should be attempted.
2019-10-17iface-modem-voice: all methods available even if not enabledAleksander Morgado
2019-10-11mmcli,firmware: don't use tabs when printing human-friendly listAleksander Morgado
2019-09-25cli: fix typo when looking for a specific call failsAleksander Morgado
$ sudo mmcli --call 1 --hangup error: couldn't find sms at '/org/freedesktop/ModemManager1/Call/1': 'no modems found' (cherry picked from commit e71a4282db94f8f18b5884fe7966b95febc18a6d)
2019-09-23cli,messaging: trivial fix in commentAleksander Morgado
2019-09-17mmcli: fix value escaping in new JSON output supportMaxim Anisimov
Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2019-08-28mmcli: coding style fixes in the new JSON output supportAleksander Morgado
2019-08-28mmcli: add json output supportMaxim Anisimov
Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2019-07-19api,voice: new CallWaitingSetup() and CallWaitingQuery() methodsAleksander Morgado
These new methods allow querying and updating the status of the call waiting network service, as per 3GPP TS 22.083. The status of the service is not a property because we don't want to unconditionally load it on every boot, given that the process involves talking to the network (i.e. it is not a device setting).
2019-07-11api,call: new JoinMultiparty() and LeaveMultiparty() methodsAleksander Morgado
2019-07-11api,call: new Multiparty boolean propertyAleksander Morgado
It will be set to TRUE if this call is part of a multiparty call.
2019-07-11api,call: new Deflect() methodAleksander Morgado
This method allows deflecting an incoming or waiting call to a different number.
2019-07-11api,voice: new Transfer() methodAleksander Morgado
This method will join all active and held calls into a single multiparty call, and then request the network to terminate the call on the subscriber's end and transfer the control of the call to the parties that are still in the call.
2019-07-11api,voice: new HangupAll() methodAleksander Morgado
This method will terminate all ongoing calls.
2019-07-11api,voice: new HoldAndAccept() methodAleksander Morgado
This method will put the currently active call on hold, and right away accept the next available call. The user of the API does not need to specify explicitly which is the next call to accept, because that is decided automatically: * If there is any waiting call, it will accept it right away. * If there is no waiting call but there is a held call, it will make the held call active again.
2019-07-11api,voice: new HangupAndAccept() methodAleksander Morgado
This method will hangup the currently active call and right away accept the next available call. The user of the API does not need to specify explicitly which is the next call to accept, because that is decided automatically: * If there is any waiting call, it will accept it right away. * If there is no waiting call but there is a held call, it will make the held call active again.
2019-05-06mmcli: allow use of modem UID to specify SIM operationJohny Mattsson
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/107
2019-04-09location,agps: include support for MSB A-GPSAleksander Morgado
2019-04-09location,agps: explicitly specify that MSA A-GPS is implementedAleksander Morgado
The A-GPS based implementations we currently have assume MSA A-GPS, so rename the MMModemLocationSource enum value to reflect that.
2019-04-09cli,location: minor refactor to handle the location setup flagsAleksander Morgado
2019-04-02api,modem: new 'CarrierConfigurationRevision' propertyAleksander Morgado
Which reports the version of the currently active carrier configuration. We also update the firmware 'version' reported in the firmware settings so that carrier-specific upgrades can be performed (e.g. when the firmware stays the same but the MCFG is updated).
2019-04-02iface-modem: new carrier config supportAleksander Morgado
During initialization phase we will allow querying the modem for the details of which carrier-specific configuration is being used, and will expose a description string in the API. In addition to showing the current configuration, we will also allow automatically switching the configuration based on the SIM card detected in the device. In order to allow this, plugins/modems will need to provide the expected mapping between carrier config description and MCCMNC. This mapping cannot be generic, because different manufacturers may use different description strings.
2019-02-11cli: report modem removal in --monitor-stateAleksander Morgado
If the modem ends up not being managed by ModemManager, detect it during the '--monitor-state' mmcli operation and report it. https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/106
2019-01-12cli,firmware: fix reporting fastboot AT commandAleksander Morgado
The update method is a bitmask, so check for the flag.
2019-01-12cli,firmware: fix reporting firmware update methods in key-value outputAleksander Morgado
It's a bitmask, so we report a list of strings.
2019-01-11build: update copyright years to 2019Aleksander Morgado
2019-01-03mmcli,modem: new `--inhibit` action on the modem objectAleksander Morgado
Modem device inhibition is really a manager action for which we provide the full modem device 'uid'. This new operation allows to perform device inhibition using the modem object as reference, which is more handy than first looking at the device 'uid' and then running the manager action. $ sudo mmcli -m 0 --inhibit successfully inhibited device with uid '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-12/1-12.2' type Ctrl+C to abort this program and remove the inhibition ^C cancelling the operation... successfully uninhibited device with uid '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-12/1-12.2'
2019-01-03api,manager: new InhibitDevice() methodAleksander Morgado
This new method allows users of the ModemManager API to take full control of a given device. Unlike other operations in the API, the inhibition is maintained as long as the caller exists in the bus, or until the same caller uninhibits the device. https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/98
2019-01-03api,firmware: MMModemFirmwareUpdateMethod as flags, not enumAleksander Morgado
Devices may require/support more than one update method, so instead of reporting the method as a single enum value, use a set of flags instead.
2019-01-03api,firmware: expose firmware versionAleksander Morgado
2019-01-03api,firmware: expose device idsAleksander Morgado
2019-01-03mmcli,firmware: avoid empty output if firmware status unsupportedAleksander Morgado