Commit Graph

194 Commits

Author SHA1 Message Date
Aleksander Morgado
138b3dabc2 cli: validate SUPL server before showing it 2015-12-19 14:09:03 +01:00
Aleksander Morgado
9123c7bd93 cli: allow enabling/disabling location signaling via DBus
Not making them '--location-enable|disable-signal' because that's the pattern
used to enable/disable location sources. Instead, use the '--location-set-*'
pattern, as that is what we're already using for the other location setup
update.
2015-12-19 14:07:45 +01:00
Aleksander Morgado
6c35878f12 location: support updating the GPS refresh time
The default setup uses a refresh time of 30s, which means that even if the GPS
location updates are received at a higher frequency, the DBus interface will
still expose at most one update every 30s.

This patch includes a new "SetGpsRefreshTime()" method in the Location
interface, which takes a single 'u' parameter, specifying the refresh rate to
use, in seconds. This method also allows 0 being passed, which will make the
implementation to publish the GPS location updates are soon as ModemManager
detects them.

Along with the new method, a "GpsRefreshTime" read-only property is exposed
to specify the refresh time in effect.

The new method and property will only be applicable if the device has GPS
capabilities.

https://bugs.freedesktop.org/show_bug.cgi?id=89924
2015-12-19 12:22:30 +01:00
Aleksander Morgado
810e52c6db cli: print stats if bearer reports them 2015-12-07 14:20:54 +01:00
Aleksander Morgado
ee85a463cf license: mmcli is GPLv2+, not GPLv3+
mmcli is GPLv2+; that's what --version has always said and that's what the
README in ModemManager sources specifies:
  License.
  The ModemManager and mmcli binaries are both GPLv2+.
  The libmm-glib library is LGPLv2+.
2015-12-07 13:16:24 +01:00
Aleksander Morgado
c55fcab3b3 mmcli,call: minor alignment and message fixes 2015-08-02 10:45:17 +02:00
Marco Bascetta
74325b547a core,libmm-glib,cli,voice: Replaced 'SendTone' method and 'ToneReceived' signal with 'SendDtmf' and 'DtmfReceived' 2015-08-02 10:39:48 +02:00
Marco Bascetta
2ac5d620c4 libmm-glib,cli: Replaced 'list call' with 'list calls' 2015-08-02 10:39:48 +02:00
Aleksander Morgado
b600e6c9ce mmcli,voice: align values of printed Call parameters 2015-08-02 10:39:48 +02:00
Aleksander Morgado
394bf91032 mmcli,voice: fix minor typo 2015-08-02 10:39:48 +02:00
Aleksander Morgado
c0e05dbd43 cli,voice: minor coding style fixes 2015-08-02 10:39:47 +02:00
Marco Bascetta
4a13bc8fec mmcli: added --send-tone option 2015-08-02 10:39:47 +02:00
Marco Bascetta
3b5e433241 mmcli: set call-start timeout to 2 minutes 2015-08-02 10:39:47 +02:00
Riccardo Vangelisti
c3bec1537b mmcli: added Modem.Voice and Call support 2015-08-02 10:39:12 +02:00
Aleksander Morgado
f9489a06be mmcli: add command completion 2015-01-25 21:49:01 +01:00
Aleksander Morgado
72f4aa75d7 cli,location: allow enabling/disabling A-GPS 2014-09-05 11:30:24 +02:00
Aleksander Morgado
9dc5cdf78e cli,location: allow getting/setting SUPL server address 2014-09-05 11:30:24 +02:00
Aleksander Morgado
ad67d68179 location: new 'unmanaged' GPS setup
Standard GPS setup (raw/nmea) will both enable the GPS module and take full
control of the GPS port. This prevents other processes from reading the NMEA
traces from e.g. a tty. In order to handle this, a new 'unmanaged' GPS location
source is introduced, which will just enable/disable the GPS module, without
reading anything from the GPS port. Of course, both raw/nmea and unmanaged
setups cannot be enabled at the same time.
2014-07-02 12:28:56 +02:00
Dan Williams
8017628353 cli: print IP details for all valid bearer types
Even DHCP or PPP may have some IP details, like the link-local
address for IPv6 bearers.
2014-06-13 11:30:49 -05:00
Ben Chan
f0542aa809 cli: show a nicer modem description if manufacturer or model is unknown 2014-05-29 10:05:28 +02:00
Ben Chan
d4177f554b cli: consistently use spaces for indentation 2014-05-20 09:32:15 +02:00
Ben Chan
c184c2f1be cli: print MTU in bearer IP config properties 2014-03-25 17:10:17 +01:00
Aleksander Morgado
fe9f3a6553 cli: new '--set-power-state-off' command 2014-02-20 11:15:03 +01:00
Ben Chan
759f13f693 cli: align printout of bearer IPv6 configuration properties 2014-02-15 18:10:59 +01:00
Aleksander Morgado
38501a06bf mmcli: allow passing SMS index in --messaging-delete-sms 2014-01-30 13:10:54 +01:00
Aleksander Morgado
513248a2b7 mmcli: allow passing bearer index in --delete-bearer 2014-01-30 12:51:20 +01:00
Ben Chan
9a72f90cf7 cli: fix source tag of GSimpleAsyncResult objects 2013-12-05 13:03:29 -06:00
Ben Chan
6d251daf47 cli: print 'Bearers' property in Modem interface 2013-11-22 08:35:53 +01:00
Aleksander Morgado
5267cf6f4a cli,sms: print properties just when they are available
The logic to decide whether a property is valid in a given PDU type is kind of
fuzzy for 3GPP2 as it is currently implemented; so just print whatever we have
in the interface.
2013-10-25 19:47:19 +02:00
Aleksander Morgado
0bb91ce53d api: add 'ServiceCategory' property to the SMS interface
Will be used in 3GPP2 SMS messages.
2013-10-25 19:47:16 +02:00
Aleksander Morgado
d0fb94c49f api: add 'TeleserviceId' property to the SMS interface
Will be used in 3GPP2 SMS messages.
2013-10-25 19:46:37 +02:00
Aleksander Morgado
2864e777ae cli,sms: 'class' and 'smsc' are 3GPP specific 2013-10-25 19:36:14 +02:00
Thieu Le
f9a4f87d52 iface-modem-3gpp: add SubscriptionState property 2013-10-09 09:59:42 +02:00
Aleksander Morgado
7751f2d6ed mmcli,oma: support for the new OMA interface 2013-09-09 10:20:40 +02:00
Aleksander Morgado
0502646f9f api,introspection: use per-technology dictionaries in the 'Signal' interface 2013-08-21 12:34:51 +02:00
Aleksander Morgado
d294232025 mmcli: new actions to use the 'Signal' interface 2013-08-21 12:33:09 +02:00
Ben Chan
f9c75bc487 cli: fix help message for --3gpp-ussd-respond 2013-08-14 17:01:44 -05:00
Aleksander Morgado
4e3d0ec3fd mmcli,cdma: new '--cdma-activate-manual' action
Along with a new '--cdma-activate-manual-with-prl'.

These can be used to request CDMA Manual Activation, like:

$> sudo mmcli \
   -m 0 \
   --cdma-activate-manual="spc=123456,sid=ab,mdn=0123456789abcde,min=0123456789abcde"

Or:

$> sudo mmcli \
   -m 0 \
   --cdma-activate-manual="spc=123456,sid=ab,mdn=0123456789abcde,min=0123456789abcde" \
   --cdma-activate-manual-with-prl=/path/to/my/prl.data
2013-08-08 09:50:04 +02:00
Aleksander Morgado
022f5bb490 mmcli,messaging: plug memleak 2013-07-15 13:42:00 +02:00
Aleksander Morgado
3206e95663 api,introspection: new 'Ports' property in the Modem interface
We will expose a new 'Ports' property listing all ports currently known by a
given modem. Ports which are not used but are detected as being part of the
modem will be listed with an 'unknown' port type.

This change uses the new 'MMModemPortType' enum and the new 'MMModemPortInfo'
helper struct to handle these values in libmm-glib. The already available
'MMPortType' enum hasn't been re-used for the interface because it contains
values that we don't need (e.g. IGNORED).

The port list is now also included in the modem information command of mmcli:

$ sudo mmcli -m 0

/org/freedesktop/ModemManager1/Modem/0 (device id '97b7b99e3e2bea103880545b619fb05a3cc81b26')
  -------------------------
  System   |         device: '/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4'
           |        drivers: 'qcserial, qmi_wwan'
           |         plugin: 'Gobi'
           |   primary port: 'cdc-wdm0'
           |          ports: 'ttyUSB0 (qcdm), ttyUSB1 (at), cdc-wdm0 (qmi), wwp0s29u1u4 (net)'

https://bugzilla.gnome.org/show_bug.cgi?id=702678
2013-06-24 19:44:57 +02:00
Aleksander Morgado
bcb00df142 mmcli: SMS class value is a signed integer, not unsiged 2013-06-24 19:37:39 +02:00
Aleksander Morgado
0db920b762 mmcli: new '--set-current-capabilities' command
New command to allow changing modem capabilities, if supported. The modem will
power cycle automatically after having changed them.
2013-06-05 19:15:15 +02:00
Aleksander Morgado
700ebc5c07 api,introspection: rename 'ModemCapabilities' to 'SupportedCapabilities'
And also make it a list of masks, specifying which are the specific combinations
supported, not just one mask with all.

E.g.:
  -------------------------
  Hardware |   manufacturer: 'Sierra Wireless, Incorporated'
           |          model: 'MC7710'
           |       revision: 'SWI9200X_03.05.19.04ap r5475 carmd-en-10527 2012/09/17 17:57:14'
           |      supported: 'gsm-umts
           |                  gsm-umts, lte'
           |        current: 'gsm-umts, lte'
           |   equipment id: '358178040668164'
2013-06-05 19:15:15 +02:00
Aleksander Morgado
1c67d050cb api,introspection: merge 'AllowedModes' and 'SupportedMode' into 'CurrentModes'
We now have a single 'CurrentModes' property which contains both values in a
tuple with signature "(uu)".

Also, rename 'SetAllowedModes()' to 'SetCurrentModes()', and update the list of
arguments expected to have a single "(uu)" tuple.
2013-06-05 19:15:14 +02:00
Aleksander Morgado
45ceba7692 api,introspection: 'SupportedModes' is now a list of possible combinations
Instead of just a mask of MMModemMode values, we now provide a list of the
allowed and preferred mode combinations supported by the modem. 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
           |                  allowed: 4g; preferred: none
           |                  allowed: 2g, 3g, 4g; preferred: none'
2013-06-05 19:15:14 +02:00
Aleksander Morgado
212d00c529 api,instrospection: rename 'Bands' to 'CurrentBands'
... and 'SetBands()' to 'SetCurrentBands()'.

We'll keep the 'Current' keyword in those properties which also have
'Supported' values.
2013-06-05 19:15:14 +02:00
Aleksander Morgado
2e223b5dbd mmcli,modem: show supported IP families in modem info 2013-06-05 19:15:14 +02:00
Aleksander Morgado
804642adc2 api: let MMBearerIpFamily be flags instead of a enumeration
We want to expose in the Modem interface the list of supported IP families, and
the easiest way to do so is to have the IP family as flags, and provide in the
interface a single enum.

Also, a value of 0 for a MMBearerIpFamily specifies that no flags are set, so
just rename it to 'NONE'.

And add a new 'ANY' value which sets all flags to 1.
2013-06-05 19:15:13 +02:00
Aleksander Morgado
5c8f1fe0f2 mmcli: fix newline prefixing
The last line in a multi-line string was getting lost if it wasn't '\n'
terminated.
2013-05-23 18:00:03 +02:00
Aleksander Morgado
f9105bff87 api,introspection: update 'Validity' property in the SMS interface
We don't want to support only 'relative' validity, so don't assume that the
Validity property will always be a uint32 value.

Instead, we define the Validity propery as '(uv)' tuple, where the first value
(a MMSmsValidityType) specifies the type of validity, and the second value is
a variant formatted accordingly to what the validity type specifies (e.g. a
uint32 value if the type is MM_SMS_VALIDITY_TYPE_RELATIVE).
2013-04-05 17:48:51 +02:00