aboutsummaryrefslogtreecommitdiff
path: root/introspection
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2014-02-05 08:38:23 +0100
committerGuido Günther <agx@sigxcpu.org>2014-02-05 08:38:23 +0100
commitdc645b92b9a7db3076ae34986ac219d01677d124 (patch)
tree963a5d6ad150a88a2a8ab6d994d79d539e19383a /introspection
parent87bd9deec22af69bb27226254803ac5c63b18d78 (diff)
Imported Upstream version 0.4+git.20100624t180933.6e79d15upstream/0.4+git.20100624t180933.6e79d15
Diffstat (limited to 'introspection')
-rw-r--r--introspection/Makefile.am4
-rw-r--r--introspection/all.xml2
-rw-r--r--introspection/mm-modem-gsm-card.xml24
-rw-r--r--introspection/mm-modem-gsm-network.xml172
-rw-r--r--introspection/mm-modem-gsm-ussd.xml78
-rw-r--r--introspection/mm-modem-gsm.xml88
-rw-r--r--introspection/mm-modem-location.xml253
-rw-r--r--introspection/mm-modem.xml37
8 files changed, 633 insertions, 25 deletions
diff --git a/introspection/Makefile.am b/introspection/Makefile.am
index 404c1d9..941c924 100644
--- a/introspection/Makefile.am
+++ b/introspection/Makefile.am
@@ -13,4 +13,6 @@ EXTRA_DIST = \
mm-modem-gsm-network.xml \
mm-modem-gsm-sms.xml \
mm-modem-simple.xml \
- mm-serial-error.xml
+ mm-serial-error.xml \
+ mm-modem-location.xml \
+ mm-modem-gsm-ussd.xml
diff --git a/introspection/all.xml b/introspection/all.xml
index 426baf0..967e90d 100644
--- a/introspection/all.xml
+++ b/introspection/all.xml
@@ -25,6 +25,7 @@
<xi:include href="mm-manager.xml"/>
<xi:include href="mm-modem.xml"/>
<xi:include href="mm-modem-simple.xml"/>
+ <xi:include href="mm-modem-location.xml"/>
<xi:include href="mm-modem-cdma.xml"/>
<xi:include href="mm-modem-gsm.xml"/>
<xi:include href="mm-modem-gsm-card.xml"/>
@@ -32,6 +33,7 @@
<xi:include href="mm-modem-gsm-network.xml"/>
<xi:include href="mm-modem-gsm-sms.xml"/>
<xi:include href="mm-modem-gsm-hso.xml"/>
+ <xi:include href="mm-modem-gsm-ussd.xml"/>
<xi:include href="mm-serial-error.xml"/>
<xi:include href="mm-modem-error.xml"/>
diff --git a/introspection/mm-modem-gsm-card.xml b/introspection/mm-modem-gsm-card.xml
index ad9348d..9c9fdc1 100644
--- a/introspection/mm-modem-gsm-card.xml
+++ b/introspection/mm-modem-gsm-card.xml
@@ -28,6 +28,20 @@
</arg>
</method>
+ <method name="GetOperatorId">
+ <tp:docstring>
+ Returns the ID of the network operator that issued the SIM card,
+ formatted as a 5 or 6-digit MCC/MNC code (ex "310410").
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_get_operator_id"/>
+ <arg name="imsi" type="s" direction="out">
+ <tp:docstring>
+ The operator ID formatted as an MCC/MNC code.
+ </tp:docstring>
+ </arg>
+ </method>
+
<method name="SendPuk">
<tp:docstring>
Send the PUK and a new PIN to unlock the SIM card.
@@ -96,11 +110,17 @@
</method>
<property name="SupportedBands" type="u" access="read" tp:type="MM_MODEM_GSM_BAND">
- <tp:docstring>Bands supported by the card. (Note for plugin writers: returned value must not contain ANY)</tp:docstring>
+ <tp:docstring>
+ Bands supported by the card. (Note for plugin writers:
+ returned value must not contain ANY)
+ </tp:docstring>
</property>
<property name="SupportedModes" type="u" access="read" tp:type="MM_MODEM_GSM_MODE">
- <tp:docstring>Network selection modes supported by the card. (Note for plugin writers: returned value must not contain ANY)</tp:docstring>
+ <tp:docstring>
+ Network selection modes supported by the card. (Note for plugin writers:
+ returned value must not contain ANY)
+ </tp:docstring>
</property>
</interface>
diff --git a/introspection/mm-modem-gsm-network.xml b/introspection/mm-modem-gsm-network.xml
index 934e8e0..7c26681 100644
--- a/introspection/mm-modem-gsm-network.xml
+++ b/introspection/mm-modem-gsm-network.xml
@@ -23,7 +23,38 @@
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_scan"/>
<arg name="results" type="aa{ss}" direction="out">
<tp:docstring>
- Found networks. It's an array of dictionaries (strings for keys and values), the list of known keys is the following: status, operator-long, operator-short, operator-num, access-tech.
+ <p>Found networks. It's an array of dictionaries (strings for both
+ keys and values) with each array element describing a mobile network
+ found in the scan. Each dict may include one or more of the following
+ keys:</p>
+ <ul>
+ <li>
+ "status": a number representing network availability status as
+ defined in 3GPP TS 27.007 section 7.3. e.g. "0" (unknown), "1"
+ (available), "2" (current), or "3" (forbidden). This key will
+ always be present.
+ </li>
+ <li>
+ "operator-long": long-format name of operator. If the name is
+ unknown, this field should not be present.
+ </li>
+ <li>
+ "operator-short": short-format name of operator. If the name is
+ unknown, this field should not be present.
+ </li>
+ <li>
+ "operator-num": mobile code of the operator. Returned in the
+ format "MCCMNC", where MCC is the three-digit ITU E.212 Mobile
+ Country Code and MNC is the two- or three-digit GSM Mobile
+ Network Code. e.g. "31026" or "310260".
+ </li>
+ <li>
+ "access-tech": a number representing the access technology used by
+ this mobile network as described in 3GPP TS 27.007 section 7.3.
+ e.g. "0" (GSM), "1" (GSM Compact), "2" (UTRAN/UMTS), "3" (EDGE),
+ etc.
+ </li>
+ </ul>
</tp:docstring>
</arg>
</method>
@@ -82,11 +113,12 @@
<method name="SetNetworkMode">
<tp:docstring>
- Set the desired mode the device may use when connecting to a mobile network.
+ Set the desired mode the device may use when connecting to a mobile
+ network (DEPRECATED; see SetAllowedMode instead).
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_set_network_mode"/>
- <arg name="mode" type="u" direction="in" tp:type="MM_MODEM_GSM_MODE">
+ <arg name="mode" type="u" direction="in" tp:type="MM_MODEM_GSM_NETWORK_DEPRECATED_MODE">
<tp:docstring>
The desired network mode. Only one mode may be specified, and may not be UNKNOWN.
</tp:docstring>
@@ -95,11 +127,14 @@
<method name="GetNetworkMode">
<tp:docstring>
- Returns the current network mode of the device. (Note for plugin writers: returned value *may* be ANY)
+ Returns the current network mode of the device (DEPRECATED; does not
+ allow returning both the saved mode preference *and* the current access
+ technology of the device at the same time. See the AllowedMode
+ property instead).
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_get_network_mode"/>
- <arg name="mode" type="u" direction="out" tp:type="MM_MODEM_GSM_MODE">
+ <arg name="mode" type="u" direction="out" tp:type="MM_MODEM_GSM_NETWORK_DEPRECATED_MODE">
<tp:docstring>
Returns the general network mode (ex. 2G/3G preference) of the device.
</tp:docstring>
@@ -114,14 +149,65 @@
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_get_reg_info"/>
<arg name="info" type="(uss)" direction="out">
<tp:docstring>
- The returned information contains:
- * Network status.
- * Current operator code.
- * Current operator name,
+ The returned information is composed of the following items in the
+ following order:
+ <ul>
+ <li>
+ Mobile registration status as defined in 3GPP TS 27.007 section
+ 10.1.19. See the MM_MODEM_GSM_NETWORK_REG_STATUS enumeration for
+ possible values.
+ </li>
+ <li>
+ Current operator code of the operator to which the mobile is
+ currently registered. Returned in the format "MCCMNC", where MCC
+ is the three-digit ITU E.212 Mobile Country Code and MNC is the
+ two- or three-digit GSM Mobile Network Code. If the MCC and MNC
+ are not known or the mobile is not registered to a mobile network,
+ this value should be a zero-length (blank) string. e.g. "31026"
+ or "310260".
+ </li>
+ <li>
+ Current operator name of the operator to which the mobile is
+ currently registered. If the operator name is not knowon or the
+ mobile is not registered to a mobile network, this value should
+ be a zero-length (blank) string.
+ </li>
+ </ul>
</tp:docstring>
</arg>
</method>
+ <method name="SetAllowedMode">
+ <tp:docstring>
+ Set the access technologies a device is allowed to use when connecting
+ to a mobile network.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_gsm_modem_set_allowed_mode"/>
+ <arg name="mode" type="u" direction="in" tp:type="MM_MODEM_GSM_ALLOWED_MODE">
+ <tp:docstring>
+ The allowed mode. The device may not support all modes; see
+ the org.freedesktop.ModemManager.Gsm.Card.SupportedModes property for
+ allowed modes for each device. All devices support the "ANY" flag.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <property name="AllowedMode" type="u" access="read" tp:type="MM_MODEM_GSM_ALLOWED_MODE">
+ <tp:docstring>
+ The allowed access technologies (eg 2G/3G preference) the device is allowed
+ to use when connecting to a mobile network.
+ </tp:docstring>
+ </property>
+
+ <property name="AccessTechnology" type="u" access="read" tp:type="MM_MODEM_GSM_ACCESS_TECH">
+ <tp:docstring>
+ The current network access technology used by the device to communicate
+ with the base station. (Note to plugin writers: if the device's access
+ technology cannot be determined, use UNKNOWN)
+ </tp:docstring>
+ </property>
+
<signal name="SignalQuality">
<tp:docstring>
The signal quality changed.
@@ -139,33 +225,45 @@
</tp:docstring>
<arg name="status" type="u" tp:type="MM_MODEM_GSM_NETWORK_REG_STATUS">
<tp:docstring>
- The network status.
+ Mobile registration status as defined in 3GPP TS 27.007 section
+ 10.1.19.
</tp:docstring>
</arg>
<arg name="operator_code" type="s">
<tp:docstring>
- The current operator code.
+ Current operator code of the operator to which the mobile is
+ currently registered. Returned in the format "MCCMNC", where MCC
+ is the three-digit ITU E.212 Mobile Country Code and MNC is the
+ two- or three-digit GSM Mobile Network Code. If the MCC and MNC
+ are not known or the mobile is not registered to a mobile network,
+ this value should be a zero-length (blank) string. e.g. "31026" or
+ "310260".
</tp:docstring>
</arg>
<arg name="operator_name" type="s">
<tp:docstring>
- The current operator name.
+ Current operator name of the operator to which the mobile is
+ currently registered. If the operator name is not knowon or the
+ mobile is not registered to a mobile network, this value should
+ be a zero-length (blank) string.
</tp:docstring>
</arg>
</signal>
<signal name="NetworkMode">
<tp:docstring>
- The network mode changed.
+ The network mode preference changed. (DEPRECATED; see documentation
+ for GetNetworkMode/SetNetworkMode)
</tp:docstring>
- <arg name="mode" type="u" tp:type="MM_MODEM_GSM_MODE">
- <tp:docstring>
- The new network mode.
- </tp:docstring>
+ <arg name="mode" type="u" tp:type="MM_MODEM_GSM_NETWORK_DEPRECATED_MODE">
+ <tp:docstring>The new network mode.</tp:docstring>
</arg>
</signal>
<tp:enum name="MM_MODEM_GSM_NETWORK_REG_STATUS" type="u">
+ <tp:docstring>
+ GSM registration code as defined in 3GPP TS 27.007 section 10.1.19.
+ </tp:docstring>
<tp:enumvalue suffix="IDLE" value="0">
<tp:docstring>
Not registered, not searching for new operator to register.
@@ -198,5 +296,45 @@
</tp:enumvalue>
</tp:enum>
+ <tp:enum name="MM_MODEM_GSM_NETWORK_DEPRECATED_MODE" type="u">
+ <tp:docstring>
+ DEPRECATED; should not be used in new applications. Use
+ AccessTechnology, AllowedMode, and SetAllowedMode() instead.
+ </tp:docstring>
+ <tp:enumvalue suffix="ANY" value="0">
+ <tp:docstring>Any network mode can be used</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="GPRS" value="1">
+ <tp:docstring>GPRS</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="EDGE" value="2">
+ <tp:docstring>EDGE</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="UMTS" value="3">
+ <tp:docstring>UMTS (3G)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSDPA" value="4">
+ <tp:docstring>HSDPA</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="2G_PREFERRED" value="5">
+ <tp:docstring>Prefer 2G (GPRS or EDGE)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="3G_PREFERRED" value="6">
+ <tp:docstring>Prefer 3G (UMTS/HSDPA/HSUPA/HSPA)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="2G_ONLY" value="7">
+ <tp:docstring>Use only 2G (GPRS or EDGE)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="3G_ONLY" value="8">
+ <tp:docstring>Use only 3G (UMTS/HSDPA/HSUPA/HSPA)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSUPA" value="9">
+ <tp:docstring>HSUPA</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSPA" value="10">
+ <tp:docstring>HSPA (HSDPA + HSUPA)</tp:docstring>
+ </tp:enumvalue>
+ </tp:enum>
+
</interface>
</node>
diff --git a/introspection/mm-modem-gsm-ussd.xml b/introspection/mm-modem-gsm-ussd.xml
new file mode 100644
index 0000000..ae6884f
--- /dev/null
+++ b/introspection/mm-modem-gsm-ussd.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+
+ <interface name="org.freedesktop.ModemManager.Modem.Gsm.Ussd">
+ <method name="Initiate">
+ <tp:docstring>
+ Sends a USSD command string to the network initiating a USSD session.
+ When the request is handled by the network, the method returns the
+ response or an appropriate error. The network may be awaiting further
+ response from the ME after returning from this method and no new command
+ can be initiated until this one is cancelled or ended.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_gsm_ussd_initiate"/>
+ <arg name="command" type="s" direction="in">
+ <tp:docstring>
+ The command to start the USSD session with.
+ </tp:docstring>
+ </arg>
+ <arg name="reply" type="s" direction="out">
+ <tp:docstring>
+ The network response to the command which started the USSD session.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <method name="Respond">
+ <tp:docstring>
+ Respond to a USSD request that is either initiated by the mobile network,
+ or that is awaiting further input after Initiate() was called.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_gsm_ussd_respond"/>
+ <arg name="response" type="s" direction="in">
+ <tp:docstring>
+ The response to network-initiated USSD command, or a response to a
+ request for further input.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <method name="Cancel">
+ <tp:docstring>
+ Cancel an ongoing USSD session, either mobile or network initiated.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_gsm_ussd_cancel"/>
+ </method>
+
+ <property name="State" type="s" access="read">
+ <tp:docstring>
+ Indicates the state of any ongoing USSD session. Values may be one of
+ the following: "idle" (no active session), "active" (a session is active
+ and the mobile is waiting for a response), "user-response" (the network
+ is waiting for the client's response, which must be sent using Respond()).
+ </tp:docstring>
+ </property>
+
+ <property name="NetworkNotification" type="s" access="read">
+ <tp:docstring>
+ Contains any network-initiated request to which no USSD response is
+ required. When no USSD session is active, or when there is no network-
+ initiated request, this property will be a zero-length string.
+ </tp:docstring>
+ </property>
+
+ <property name="NetworkRequest" type="s" access="read">
+ <tp:docstring>
+ Contains any pending network-initiated request for a response. Client
+ should call Respond() with the appropriate response to this request.
+ When no USSD session is active, or when there is no pending
+ network-initiated request, this property will be a zero-length string.
+ </tp:docstring>
+ </property>
+
+ </interface>
+</node>
diff --git a/introspection/mm-modem-gsm.xml b/introspection/mm-modem-gsm.xml
index d6c42c8..ea23adc 100644
--- a/introspection/mm-modem-gsm.xml
+++ b/introspection/mm-modem-gsm.xml
@@ -3,6 +3,11 @@
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<interface name="org.freedesktop.ModemManager.Modem.Gsm">
<tp:flags name="MM_MODEM_GSM_MODE" value-prefix="MM_MODEM_GSM_MODE" type="u">
+ <tp:docstring>
+ A bitfield describing the specifc access modes and technologies
+ supported by a device and the access technology in-use when connected to
+ a mobile network.
+ </tp:docstring>
<tp:flag suffix="UNKNOWN" value="0x0">
<tp:docstring>Unknown or invalid mode.</tp:docstring>
</tp:flag>
@@ -19,28 +24,39 @@
<tp:docstring>UMTS (3G)</tp:docstring>
</tp:flag>
<tp:flag suffix="HSDPA" value="0x10">
- <tp:docstring>HSDPA</tp:docstring>
+ <tp:docstring>HSDPA (3G)</tp:docstring>
</tp:flag>
<tp:flag suffix="2G_PREFERRED" value="0x20">
<tp:docstring>Prefer 2G (GPRS or EDGE)</tp:docstring>
</tp:flag>
<tp:flag suffix="3G_PREFERRED" value="0x40">
- <tp:docstring>Prefer 3G (UMTS or HSDPA)</tp:docstring>
+ <tp:docstring>Prefer 3G (UMTS/HSDPA/HSUPA/HSPA)</tp:docstring>
</tp:flag>
<tp:flag suffix="2G_ONLY" value="0x80">
<tp:docstring>Use only 2G (GPRS or EDGE)</tp:docstring>
</tp:flag>
<tp:flag suffix="3G_ONLY" value="0x100">
- <tp:docstring>Use only 3G (UMTS or HSDPA)</tp:docstring>
+ <tp:docstring>Use only 3G (UMTS/HSDPA/HSUPA/HSPA)</tp:docstring>
</tp:flag>
<tp:flag suffix="HSUPA" value="0x200">
- <tp:docstring>HSUPA</tp:docstring>
+ <tp:docstring>HSUPA (3G)</tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="HSPA" value="0x400">
+ <tp:docstring>HSPA (3G)</tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="GSM" value="0x800">
+ <tp:docstring>GSM</tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="GSM_COMPACT" value="0x1000">
+ <tp:docstring>GSM Compact</tp:docstring>
</tp:flag>
</tp:flags>
<tp:flags name="MM_MODEM_GSM_BAND" value-prefix="MM_MODEM_GSM_BAND" type="u">
<tp:docstring>
- GSM network and device bands.
+ A bitfield describing the specific radio bands supported by the device
+ and the radio bands the device is allowed to use when connecting to a
+ mobile network.
</tp:docstring>
<tp:flag suffix="UNKNOWN" value="0x0">
<tp:docstring>Unknown or invalid band</tp:docstring>
@@ -81,6 +97,68 @@
<tp:flag suffix="U17IX" value="0x800">
<tp:docstring>WCDMA 3GPP UMTS 1700 MHz (Class IX)</tp:docstring>
</tp:flag>
+ <tp:flag suffix="U1900" value="0x1000">
+ <tp:docstring>WCDMA 3GPP UMTS 1900 MHz (Class II)</tp:docstring>
+ </tp:flag>
</tp:flags>
+
+ <tp:enum name="MM_MODEM_GSM_ALLOWED_MODE" type="u">
+ <tp:docstring>
+ Describes the device's current access mode preference; ie the specific
+ technology preferences the device is allowed to use when connecting to
+ a mobile network.
+ </tp:docstring>
+ <tp:enumvalue suffix="ANY" value="0">
+ <tp:docstring>Any mode can be used</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="2G_PREFERRED" value="1">
+ <tp:docstring>Prefer 2G (GPRS or EDGE)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="3G_PREFERRED" value="2">
+ <tp:docstring>Prefer 3G (UMTS or HSxPA)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="2G_ONLY" value="3">
+ <tp:docstring>Use only 2G (GPRS or EDGE)</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="3G_ONLY" value="4">
+ <tp:docstring>Use only 3G (UMTS or HSxPA)</tp:docstring>
+ </tp:enumvalue>
+ </tp:enum>
+
+ <tp:enum name="MM_MODEM_GSM_ACCESS_TECH" type="u">
+ <tp:docstring>
+ Describes various access technologies that a device uses when connected
+ to a mobile network.
+ </tp:docstring>
+ <tp:enumvalue suffix="UNKNOWN" value="0">
+ <tp:docstring>The access technology used is unknown</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="GSM" value="1">
+ <tp:docstring>GSM</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="GSM_COMPACT" value="2">
+ <tp:docstring>Compact GSM</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="GPRS" value="3">
+ <tp:docstring>GPRS</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="EDGE" value="4">
+ <tp:docstring>EDGE (ETSI 27.007: "GSM w/EGPRS")</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="UMTS" value="5">
+ <tp:docstring>UMTS (ETSI 27.007: "UTRAN")</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSDPA" value="6">
+ <tp:docstring>HSDPA (ETSI 27.007: "UTRAN w/HSDPA")</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSUPA" value="7">
+ <tp:docstring>HSUPA (ETSI 27.007: "UTRAN w/HSUPA")</tp:docstring>
+ </tp:enumvalue>
+ <tp:enumvalue suffix="HSPA" value="8">
+ <tp:docstring>HSPA (ETSI 27.007: "UTRAN w/HSDPA and HSUPA")</tp:docstring>
+ </tp:enumvalue>
+ </tp:enum>
+
</interface>
</node>
+
diff --git a/introspection/mm-modem-location.xml b/introspection/mm-modem-location.xml
new file mode 100644
index 0000000..58dca68
--- /dev/null
+++ b/introspection/mm-modem-location.xml
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+ <interface name="org.freedesktop.ModemManager.Modem.Location">
+ <tp:docstring>
+ This interface allows devices to provide location information to client
+ applications. Not all devices can provide this information, or even if
+ they do, they may not be able to provide it while a data session is
+ active.
+ </tp:docstring>
+
+ <property name="Capabilities" type="u" access="read" tp:type="MM_MODEM_LOCATION_CAPABILITIES">
+ <tp:docstring>
+ Location capabilities of the device.
+ </tp:docstring>
+ </property>
+
+ <property name="Enabled" type="b" access="read">
+ <tp:docstring>
+ TRUE if location information gathering is enabled for this device, FALSE
+ if it is disabled. When disabled, the device will not provide location
+ information.
+ </tp:docstring>
+ </property>
+
+ <method name="Enable">
+ <tp:docstring>
+ Enable or disable location information gathering. This method may
+ require the client to authenticate itself. This method may also cause
+ any necessary functionality of the mobile be be turned on, including
+ enabling the modem device itself.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_location_enable"/>
+ <arg name="enable" type="b" direction="in">
+ <tp:docstring>
+ TRUE to enable location information gathering, FALSE to disable.
+ </tp:docstring>
+ </arg>
+ <arg name="signal_location" type="b" direction="in">
+ <tp:docstring>
+ When enabling location information gathering, this argument controls
+ whether the device emits signals with new location information or not.
+ When signals are emitted, any client application (including malicious
+ ones!) can listen for location updates unless D-Bus permissions
+ restrict these signals from certain users. If further security is
+ desired, this argument can be set to FALSE to disable location
+ updates via D-Bus signals and require applications to call
+ authenticated APIs (like GetLocation) to get location information.
+ This argument is ignored when disabling location information
+ gathering.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <method name="GetLocation">
+ <tp:docstring>
+ Return current location information, if any. This method may require
+ the client to authenticate itself.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_location_get_location"/>
+ <arg name="Location" type="a{uv}" direction="out" tp:type="Location_Information_Map">
+ <tp:docstring>
+ Dict of available location information when location information
+ gathering is enabled. If the modem supports multiple location types
+ it may return more than one here.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <property name="SignalsLocation" type="b" access="read">
+ <tp:docstring>
+ TRUE if location updates will be emitted via D-Bus signals, FALSE
+ if location updates will not be emitted. See the Enable method for
+ more information.
+ </tp:docstring>
+ </property>
+
+ <property name="Location" type="a{uv}" access="read" tp:type="Location_Information_Map">
+ <tp:docstring>
+ Dict of available location information when location information
+ gathering is enabled. If the modem supports multiple location types
+ it may return more than one here. Note that if the device was told
+ not to emit updated location information when location information
+ gathering was initially enabled, this property may not return
+ any location information for security reasons.
+ </tp:docstring>
+ </property>
+
+ <tp:mapping name="Location_Information_Map">
+ <tp:docstring>
+ A mapping from location type to type-specific location information.
+ </tp:docstring>
+ <tp:member type="u" name="Type" tp:type="MM_MODEM_LOCATION_CAPABILITIES">
+ <tp:docstring>
+ Identifies the type and format of the associated location information.
+ Contrary to the value description, this is not a bitfield but uses the
+ same values as the MM_MODEM_LOCATION_CAPABILITIES bitfield.
+ </tp:docstring>
+ </tp:member>
+ <tp:member type="v" name="Data">
+ <tp:docstring>
+ Contains type-specific location information. See the documentation for
+ each type for a description of its data format.
+ </tp:docstring>
+ </tp:member>
+ </tp:mapping>
+
+ <tp:flags name="MM_MODEM_LOCATION_CAPABILITIES" value-prefix="MM_MODEM_LOCATION_CAPABILITY" type="u">
+ <tp:flag suffix="UNKNOWN" value="0x0">
+ <tp:docstring><p>Unknown or no capabilties.</p></tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="GPS_NMEA" value="0x1">
+ <tp:docstring>
+ <p>For capability reporting, indicates the device is capable of
+ providing GPS NMEA-format location information.</p>
+
+ <p>For location reporting, devices supporting this capability return
+ a string containing one or more NMEA sentences (D-Bus signature 's').
+ The manager will cache the most recent NMEA sentence of each type for
+ a period of time not less than 30 seconds. When reporting multiple
+ NMEA sentences, sentences shall be separated by an ASCII Carriage
+ Return and Line Feed (&lt;CR&gt;&lt;LF&gt;) sequence.
+ </p>
+ <p>
+ For example, if the device sends a $GPRMC sentence immediately
+ followed by a $GPGGA sentence, the reported location string would be
+ (where of course the &lt;CR&gt;&lt;LF&gt; is replaced with the actual
+ ASCII CR (0x0D) and LF (0x0A) control characters):
+ <pre>
+ $GPRMC,134523.92,V,,,,,,,030136,,,N*73&lt;CR&gt;&lt;LF&gt;$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45
+ </pre>
+ If the device sends a new $GPRMC three seconds later, the new $GPRMC
+ replaces the previously received $GPRMC sentence, and the updated
+ string would be:
+ <pre>
+ $GPRMC,134526.92,V,,,,,,,030136,,,N*76&lt;CR&gt;&lt;LF&gt;$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45
+ </pre>
+ If the device then sends a $GPGSA sentence about 5 seconds later, the
+ $GPGSA sentence is added to the string (since no $GPGSA sentence was
+ previously received in this session), the updated string would be:
+ <pre>
+ $GPRMC,134526.92,V,,,,,,,030136,,,N*76&lt;CR&gt;&lt;LF&gt;$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45&lt;CR&gt;&lt;LF&gt;$GPGSA,A,1,,,,,,,,,,,,,1.1,0.5,1.0*34
+ </pre>
+ The manager may discard any cached sentences older than 30 seconds.
+ </p>
+ <p>This allows clients to read the latest positioning data as soon as
+ possible after they start, even if the device is not providing
+ frequent location data updates.
+ </p>
+ </tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="GSM_LAC_CI" value="0x2">
+ <tp:docstring>
+ <p>For capability reporting, indicates the device is capable of
+ providing GSM Location Area Code/Cell ID location information.</p>
+
+ <p>For location reporting, devices supporting this
+ capability return a string in the format "MCC,MNC,LAC,CI" (without the
+ quotes of course) where the following applies:</p>
+ <ul>
+ <li>
+ MCC is the three-digit ITU E.212 Mobile Country Code of the
+ network provider to which the mobile is currently registered.
+ This value should be the same MCC as reported by the
+ org.freedesktop.Modem.Gsm.Network.GetRegistrationInfo() method's
+ returned "operator code" argument.
+ e.g. "310"
+ </li>
+ <li>
+ MNC is the two- or three-digit GSM Mobile Network Code of the
+ network provider to which the mobile is currently registered.
+ This value should be the same MCC as reported by the
+ org.freedesktop.Modem.Gsm.Network.GetRegistrationInfo() method's
+ returned "operator code" argument.
+ e.g. "26" or "260"
+ </li>
+ <li>
+ LAC is the two-byte Location Area Code of the base station with
+ which the mobile is registered, in upper-case hexadecimal format
+ without leading zeros, as specified in 3GPP TS 27.007 section
+ 10.1.19. e.g. "84CD".
+ </li>
+ <li>
+ CI is the two- or four-byte Cell Identifier with which the mobile
+ is registered, in upper-case hexadecimal format without leading
+ zeros, as specified in 3GPP TS 27.007. e.g. "2BAF" or "D30156".
+ </li>
+ </ul>
+ <p>The entire string may only be composed of the ASCII digits [0-9],
+ the alphabetical characters [A-F], and the comma (,) character. No
+ other characters are allowed. For example: "310,260,8BE3,2BAF" or
+ "250,40,CE00,1CEAD8F0".</p>
+
+ <p>If any of these four items (MCC,MNC,LAC,CI) is unknown or the
+ mobile is not registered with a network, then the GSM_LAC_CI location
+ information item should not be provided as a returned value from the
+ GetLocation() method or in the Location property.</p>
+ </tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="GSM_GPS_RAW" value="0x4">
+ <tp:docstring>
+ <p>For capability reporting, indicates the device is capable of
+ providing raw GPS information using a series of defined key/value
+ pairs.</p>
+
+ <p>For location reporting, devices supporting this
+ capability return a D-Bus dict (signature a{sv}) mapping well-known
+ keys to values with defined formats. The allowed key/value pairs
+ and their formats are:</p>
+ <table>
+ <tr><th>Key</th><th>Value Type</th><th>Value contents</th><th>Example</th></tr>
+ <tr>
+ <td>latitude</td>
+ <td>d</td>
+ <td>Latitude in Decimal Degrees (positive numbers mean N quadrasphere, negative mean S quadrasphere)</td>
+ <td>38.889722 (ie, 38d 53' 22" N)</td>
+ </tr>
+ <tr>
+ <td>longitude</td>
+ <td>d</td>
+ <td>Longitude in Decimal Degrees (positive numbers mean E quadrasphere, negative mean W quadrasphere)</td>
+ <td>-77.008889 (ie, 77d 0' 32" W)</td>
+ </tr>
+ <tr>
+ <td>altitude</td>
+ <td>d</td>
+ <td>Altitude above sea level in meters</td>
+ <td>33.5</td>
+ </tr>
+ <tr>
+ <td>horiz-velocity</td>
+ <td>d</td>
+ <td>Horizontal velocity in meters-per-second</td>
+ <td>.5</td>
+ </tr>
+ <tr>
+ <td>vert-velocity</td>
+ <td>d</td>
+ <td>Vertical velocity in meters-per-second</td>
+ <td>.01</td>
+ </tr>
+ </table>
+ <p>The 'latitude' and 'longitude' keys are required; other keys are
+ optional.</p>
+ </tp:docstring>
+ </tp:flag>
+ </tp:flags>
+
+ </interface>
+</node>
+
diff --git a/introspection/mm-modem.xml b/introspection/mm-modem.xml
index 7896fff..7d54dd3 100644
--- a/introspection/mm-modem.xml
+++ b/introspection/mm-modem.xml
@@ -81,6 +81,17 @@
</arg>
</method>
+ <method name="FactoryReset">
+ <tp:docstring>
+ Reset the modem to as close to factory state as possible.
+ </tp:docstring>
+ <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_factory_reset"/>
+ <arg name="code" type="s" direction="in">
+ Carrier-supplied code required to reset the modem. Ignored if not required.
+ </arg>
+ </method>
+
<property name="Device" type="s" access="read">
<tp:docstring>
The modem port to use for IP configuration and traffic.
@@ -113,6 +124,32 @@
</tp:docstring>
</property>
+ <property name="EquipmentIdentifier" type="s" access="read">
+ <tp:docstring>
+ The identity of the device. This will be the IMEI number for
+ GSM devices and the hex-format ESN/MEID for CDMA devices.
+ </tp:docstring>
+ </property>
+
+ <property name="UnlockRequired" type="s" access="read">
+ <tp:docstring>
+ Empty if the device is usable without an unlock code or has already
+ been unlocked. If the device needs to be unlocked before becoming usable this
+ property contains the specific unlock code required.  Valid unlock code values
+ are "" (blank), "sim-pin", "sim-puk", "ph-sim-pin", "ph-fsim-pin",
+ "ph-fsim-puk", "sim-pin2", "sim-puk2", "ph-net-pin", "ph-net-puk",
+ "ph-netsub-pin", "ph-netsub-puk", "ph-sp-pin", "ph-sp-puk", "ph-corp-pin", and
+ "ph-corp-puk".
+ </tp:docstring>
+ </property>
+
+ <property name="UnlockRetries" type="u" access="read">
+ <tp:docstring>
+ The number of unlock retries remaining for the unlock code given by the property UnlockRequired, or 999 if
+ the device does not support reporting unlock retries.
+ </tp:docstring>
+ </property>
+
<property name="IpMethod" type="u" access="read" tp:type="MM_MODEM_IP_METHOD">
<tp:docstring>
The IP configuration method.