api,dbus: rewrite Methods, Properties and Signals for gdbus-codegen

This commit is contained in:
Aleksander Morgado
2011-11-21 14:27:35 +01:00
parent 793c65705f
commit 8763576a34
13 changed files with 1750 additions and 1232 deletions

View File

@@ -1,120 +1,232 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Bearer:
@short_description: The ModemManager Bearer interface.
This interface provides access to specific actions that may be performed
on available bearers.
-->
<interface name="org.freedesktop.ModemManager1.Bearer">
<!-- METHODS -->
<!--
Connect:
@number: The number to use for dialing (optional).
Requests activation of a packet data connection with the network using
this bearer's properties. Upon successful activation, the modem can
send and receive packet data and, depending on the addressing
capability of the modem, a connection manager may need to start PPP,
perform DHCP, or assign the IP address returned by the modem to the
data interface. Upon successful return, the
#org.freedesktop.ModemManager1.Bearer:Ip4Config
and/or
#org.freedesktop.ModemManager1.Bearer:Ip6Config
properties become valid and may contain IP configuration information for
the data interface associated with this bearer.
@number is usually not required, in which case it should be an empty
(zero-length) string. @number is only required for POTS connections or
in certain special circumstances. If a number is given for 3GPP
(GSM/UMTS/LTE) based devices, it is always ignored, as the number is
generated internally if one is required at all.
-->
<method name="Connect">
<tp:docstring>
Requests activation of a packet data connection with the network using
this bearer's properties. Upon successful activation, the modem can
send and receive packet data and, depending on the addressing
capability of the modem, a connection manager may need to start PPP,
perform DHCP, or assign the IP address returned by the modem to the
data interface. Upon successful return, the Ip4Config and/or Ip6Config
properties become valid and may contain IP configuration information for
the data interface associated with this bearer.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_bearer_connect"/>
<arg name="number" type="s" direction="in">
<tp:docstring>
The number to use for dialing (optional). Usually not required, in
which case it should be an empty (zero-length) string. Only required
for POTS connections or in certain special circumstances. If a number
is given for 3GPP (GSM/UMTS/LTE) based devices, it is always ignored,
as the number is generated internally if one is required at all.
</tp:docstring>
</arg>
<arg name="number" type="s" direction="in" />
</method>
<method name="Disconnect">
<tp:docstring>
Disconnect and deactivate this packet data connection. Any ongoing data
session will be terminated and IP addresses become invalid when this
method is called.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_bearer_disconnect"/>
</method>
<!--
Disconnect:
<!-- For 3GPP (GSM/UMTS/LTE) technologies, Bearer objects represent only
Primary PDP contexts; Secondary contexts are not exposed as a concept
because they share everything with their parent primary PDP context
except QoS and traffic flows. Instead, methods for setting QoS and
Traffic Flow Templates (TFTs) should be provided here which could as a
result of being called create secondary PDP contexts with those QoS and
TFT parameters.
Disconnect and deactivate this packet data connection.
FIXME: add methods to set QoS/TFT on the Bearer object, which should
create Secondary contexts if needed, and figure out some method of
disposing of those secondary contexts when no longer required.
-->
Any ongoing data session will be terminated and IP addresses become
invalid when this method is called.
-->
<method name="Disconnect" />
<!-- PROPERTIES -->
<!--
For 3GPP (GSM/UMTS/LTE) technologies, Bearer objects represent only
Primary PDP contexts; Secondary contexts are not exposed as a concept
because they share everything with their parent primary PDP context
except QoS and traffic flows. Instead, methods for setting QoS and
Traffic Flow Templates (TFTs) should be provided here which could as a
result of being called create secondary PDP contexts with those QoS and
TFT parameters.
FIXME: add methods to set QoS/TFT on the Bearer object, which should
create Secondary contexts if needed, and figure out some method of
disposing of those secondary contexts when no longer required.
-->
<!--
Interface:
<property name="Interface" type="s" access="read">
<tp:docstring>
The operating system name for the network data interface that provides
packet data using this bearer. Connection managers must configure this
interface depending on the IP "method" given by the "Ip4Config" or
"Ip6Config" properties set by bearer activation. If STATIC or DHCP
methods are given, the interface will be an ethernet-style inteface
suitable for DHCP or setting static IP configuration on, while if the
PPP method is given, the interface will be a serial TTY which must then
have PPP run over it.
</tp:docstring>
</property>
packet data using this bearer.
Connection managers must configure this interface depending on the IP
<literal>"method"</literal> given by the
#org.freedesktop.ModemManager1.Bearer:Ip4Config
or
#org.freedesktop.ModemManager1.Bearer:Ip6Config
properties set by bearer activation.
If <link linkend="MM-BEARER-IP-METHOD-STATIC:CAPS">MM_BEARER_IP_METHOD_STATIC</link>
or
<link linkend="MM-BEARER-IP-METHOD-DHCP:CAPS">MM_BEARER_IP_METHOD_DHCP</link>
methods are given, the interface
will be an ethernet-style inteface suitable for DHCP or setting static
IP configuration on, while if the
<link linkend="MM-BEARER-IP-METHOD-PPP:CAPS">MM_BEARER_IP_METHOD_PPP</link>
method is given, the interface
will be a serial TTY which must then have PPP run over it.
-->
<property name="Interface" type="s" access="read" />
<!--
Connected:
<property name="Connected" type="b" access="read">
<tp:docstring>
Indicates whether or not the bearer is connected and thus whether
packet data communication using this bearer is possible.
</tp:docstring>
</property>
-->
<property name="Connected" type="b" access="read" />
<!--
Suspended:
<property name="Suspended" type="b" access="read">
<tp:docstring>
In some devices, packet data service will be suspended while the device
is handling other communication, like a voice call. If packet data
service is suspended (but not deactivated) this property will be TRUE.
</tp:docstring>
</property>
is handling other communication, like a voice call. If packet data
service is suspended (but not deactivated) this property will be %TRUE.
-->
<property name="Suspended" type="b" access="read" />
<!--
Ip4Config:
<property name="Ip4Config" type="a{sv}" access="read">
<tp:docstring>
If the bearer was configured for IPv4 addressing, upon activation this
property contains the addressing details for assignment to the data
interface. If the bearer specifies configuration via PPP or DHCP,
only the 'method' item will be present. Available items include:
interface.
method: (uint) One of MM_MODEM_BEARER_IP_METHOD
address: (string, STATIC method only) IP address
prefix: (uint, STATIC method only) Numeric CIDR network prefix (ie, 24, 32, etc)
dns1: (string, STATIC method only) First DNS server
dns2: (string, STATIC method only) Second DNS server
dns3: (string, STATIC method only) Third DNS server
gateway: (string, STATIC method only) First DNS server
</tp:docstring>
</property>
Mandatory items include:
<variablelist>
<varlistentry><term><literal>"method"</literal></term>
<listitem>
A <link linkend="MMBearerIpMethod">MMBearerIpMethod</link>,
given as an unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
</variablelist>
If the bearer specifies configuration via PPP or DHCP, only the
<literal>"method"</literal> item will be present.
Additional items which are only applicable when using the
<link linkend="MM-BEARER-IP-METHOD-STATIC:CAPS">MM_BEARER_IP_METHOD_STATIC</link>
method are:
<variablelist>
<varlistentry><term><literal>"address"</literal></term>
<listitem>
IP address, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"prefix"</literal></term>
<listitem>
Numeric CIDR network prefix (ie, 24, 32, etc), give as an unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns1"</literal></term>
<listitem>
IP address of the first DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns2"</literal></term>
<listitem>
IP address of the second DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns3"</literal></term>
<listitem>
IP address of the third DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"gateway"</literal></term>
<listitem>
IP address of the default gateway, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
</variablelist>
-->
<property name="Ip4Config" type="a{sv}" access="read" />
<!--
Ip6Config:
<property name="Ip6Config" type="a{sv}" access="read">
<tp:docstring>
If the bearer was configured for IPv6 addressing, upon activation this
property contains the addressing details for assignment to the data
interface. If the bearer specifies configuration via PPP or DHCP,
only the 'method' item will be present. Available items include:
interface.
method: (uint) One of MM_MODEM_BEARER_IP_METHOD
address: (string, STATIC method only) IP address
prefix: (string, STATIC method only) Network prefix
dns1: (string, STATIC method only) First DNS server
dns2: (string, STATIC method only) Second DNS server
dns3: (string, STATIC method only) Third DNS server
gateway: (string, STATIC method only) First DNS server
</tp:docstring>
</property>
Mandatory items include:
<variablelist>
<varlistentry><term><literal>"method"</literal></term>
<listitem>
A <link linkend="MMBearerIpMethod">MMBearerIpMethod</link>,
given as an unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
</variablelist>
If the bearer specifies configuration via PPP or DHCP, only the
<literal>"method"</literal> item will be present.
Additional items which are only applicable when using the
<link linkend="MM-BEARER-IP-METHOD-STATIC:CAPS">MM_BEARER_IP_METHOD_STATIC</link>
method are:
<variablelist>
<varlistentry><term><literal>"address"</literal></term>
<listitem>
IP address, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"prefix"</literal></term>
<listitem>
Numeric CIDR network prefix (ie, 24, 32, etc), give as an unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns1"</literal></term>
<listitem>
IP address of the first DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns2"</literal></term>
<listitem>
IP address of the second DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"dns3"</literal></term>
<listitem>
IP address of the third DNS server, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"gateway"</literal></term>
<listitem>
IP address of the default gateway, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
</variablelist>
-->
<property name="Ip6Config" type="a{sv}" access="read" />
<!-- ENUMS -->
<tp:enum name="MM_MODEM_BEARER_IP_METHOD" type="u">

View File

@@ -1,84 +1,94 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.3gpp.Ussd:
@short_description: The ModemManager 3GPP USSD interface.
This interface provides access to actions based on the USSD protocol.
-->
<interface name="org.freedesktop.ModemManager1.Modem.3gpp.Ussd">
<method name="Initiate">
<tp:docstring>
<!--
Initiate:
@command: The command to start the USSD session with.
@reply: The network response to the command which started the USSD session.
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 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_3gpp_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 name="Initiate">
<arg name="command" type="s" direction="in" />
<arg name="reply" type="s" direction="out" />
</method>
<method name="Respond">
<tp:docstring>
<!--
Respond:
@response: The response to network-initiated USSD command, or a response to a request for further input.
@reply: The network reply to this response to the network-initiated USSD command. The reply may require further responses.
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_3gpp_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>
<arg name="reply" type="s" direction="out">
<tp:docstring>
The network reply to this response to the network-initiated USSD
command. The reply may require further responses.
</tp:docstring>
</arg>
or that is awaiting further input after
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-3gpp-Ussd.Initiate">Initiate()</link>
was called.
-->
<method name="Respond">
<arg name="response" type="s" direction="in" />
<arg name="reply" type="s" direction="out" />
</method>
<method name="Cancel">
<tp:docstring>
<!--
Cancel:
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_3gpp_ussd_cancel"/>
</method>
-->
<method name="Cancel" />
<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>
<!--
State:
A <link linkend="MMModem3gppUssdSessionState">MMModem3gppUssdSessionState</link> value,
indicating the state of any ongoing USSD session.
-->
<property name="State" type="s" access="read" />
<!--
NetworkNotification:
<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>
required.
When no USSD session is active, or when there is no network-
initiated request, this property will be a zero-length string.
-->
<property name="NetworkNotification" type="s" access="read" />
<!--
NetworkRequest:
Contains any pending network-initiated request for a response. Client
should call
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-3gpp-Ussd.Respond">Respond()</link>
with the appropriate response to this request.
<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>
-->
<property name="NetworkRequest" type="s" access="read" />
</interface>
</node>

View File

@@ -1,101 +1,142 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.3gpp:
@short_description: The ModemManager 3GPP interface.
This interface provides access to specific actions that may be performed
in modems with 3GPP capabilities.
-->
<interface name="org.freedesktop.ModemManager1.Modem.3gpp">
<!-- METHODS -->
<!--
Register:
@network_id: The network ID (ie, <literal>"MCCMNC"</literal>, like <literal>"310260"</literal>) to register. An empty string can be used to register to the home network.
Request registration with a given mobile network.
-->
<method name="Register">
<tp:docstring>
Request registration with a given mobile network.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_3gpp_modem_register"/>
<arg name="network_id" type="s" direction="in">
<tp:docstring>
The network ID (ie, MCC-MNC, like "310260") to register. An empty
string can be used to register to the home network.
</tp:docstring>
</arg>
<arg name="network_id" type="s" direction="in" />
</method>
<method name="Scan">
<tp:docstring>
Scan for available networks.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_3gpp_modem_scan"/>
<arg name="results" type="aa{sv}" direction="out">
<tp:docstring>
<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
<!--
Scan:
@results: Array of dictionaries wih the found networks.
Scan for available networks.
@results is an array of dictionaries with each array element describing
a mobile network found in the scan. Each dictionary may include one or
more of the following keys:
<variablelist>
<varlistentry><term><literal>"status"</literal></term>
<listitem>
A <link linkend="MMModem3gppNetworkAvailability">MMModem3gppNetworkAvailability</link>
value representing network availability status, given as an
unsigned integer (signature <literal>"u"</literal>). 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 generic access technology
used by this mobile network, defined by the MM_MODEM_ACCESS_TECH
enum.
</li>
</ul>
</tp:docstring>
</arg>
</listitem>
</varlistentry>
<varlistentry><term><literal>"operator-long"</literal></term>
<listitem>
Long-format name of operator, given as a string value (signature
<literal>"s"</literal>). If the name is unknown, this field
should not be present.
</listitem>
</varlistentry>
<varlistentry><term><literal>"operator-short"</literal></term>
<listitem>
Short-format name of operator, given as a string value (signature
<literal>"s"</literal>). If the name is unknown, this field
should not be present.
</listitem>
</varlistentry>
<varlistentry><term><literal>"operator-num"</literal></term>
<listitem>
Mobile code of the operator, given as a string value (signature
<literal>"s"</literal>). Returned in the format
<literal>"MCCMNC"</literal>, where <literal>MCC</literal> is the
three-digit ITU E.212 Mobile Country Code and <literal>MNC</literal>
is the two- or three-digit GSM Mobile Network Code. e.g.
<literal>"31026"</literal> or <literal>"310260"</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>"access-tech"</literal></term>
<listitem>
A <link linkend="MMModemAccessTech">MMModemAccessTech</link> value
representing the generic access technology used by this mobile network,
given as an unsigned integer (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
</variablelist>
-->
<method name="Scan">
<arg name="results" type="aa{sv}" direction="out" />
</method>
<!-- PROPERTIES -->
<!--
Imei:
<property name="Imei" type="s" access="read">
<tp:docstring>
The IMEI of the device.
</tp:docstring>
</property>
The <ulink url="http://en.wikipedia.org/wiki/Imei">IMEI</ulink> of the device.
-->
<property name="Imei" type="s" access="read" />
<property name="RegistrationState" type="u" access="read" tp:type="MM_MODEM_3GPP_REGISTRATION_STATE">
<tp:docstring>
Mobile registration status as defined in 3GPP TS 27.007 section
10.1.19.
</tp:docstring>
</property>
<!--
RegistrationState:
<property name="OperatorCode" type="s" access="read">
<tp:docstring>
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 (e.g. "31026" or "310260").
If the MCC and MNC are not known or the mobile is not registered to a
mobile network, this property will be a zero-length (blank) string.
</tp:docstring>
</property>
A <link linkend="MMModem3gppRegistrationState">MMModem3gppRegistrationState</link>
value specifying the mobile registration status as defined in 3GPP TS 27.007
section 10.1.19.
-->
<property name="RegistrationState" type="u" access="read" />
<property name="OperatorName" type="s" access="read">
<tp:docstring>
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 property will
<!--
OperatorCode:
Current operator code of the operator to which the mobile is currently
registered.
Returned in the format <literal>"MCCMNC"</literal>, where
<literal>MCC</literal> is the three-digit ITU E.212 Mobile Country Code
and <literal>MNC</literal> is the two- or three-digit GSM Mobile Network
Code. e.g. e<literal>"31026"</literal> or <literal>"310260"</literal>.
If the <literal>MCC</literal> and <literal>MNC</literal> are not known
or the mobile is not registered to a mobile network, this property will
be a zero-length (blank) string.
</tp:docstring>
</property>
-->
<property name="OperatorCode" type="s" access="read" />
<!--
OperatorName:
Current operator name of the operator to which the mobile is
currently registered.
If the operator name is not known or the mobile is not
registered to a mobile network, this property will be a zero-length
(blank) string.
-->
<property name="OperatorName" type="s" access="read" />
<!--
EnabledFacilityLocks:
Bitmask of <link linkend="MMModem3gppFacility">MMModem3gppFacility</link> values
for which PIN locking is enabled.
-->
<property name="EnabledFacilityLocks" type="u" access="read" />
<!-- ENUMS -->

View File

@@ -1,104 +1,124 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Cdma:
@short_description: The ModemManager CDMA interface.
This interface provides access to specific actions that may be performed
in modems with CDMA capabilities.
-->
<interface name="org.freedesktop.ModemManager1.Modem.Cdma">
<!-- METHODS -->
<!--
Activate:
@carrier: Name of carrier.
@immediate_error: A <link linkend="MMModemCdmaActivationError">MMModemCdmaActivationError</link> value, which is returned for immediate errors. Delayed errors are returned via an #org.freedesktop.ModemManager1.Modem.Cdma::ActivationStateChanged signal.
<method name="Activate">
<tp:docstring>
Provisions the modem for use with a given carrier using the modem's
Over-The-Air (OTA) activation functionality, if any. In the event of
immediate failure, returns an error value instead of setting a DBus error.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_cdma_activate"/>
<arg name="carrier" type="s" direction="in">
<tp:docstring>
Name of carrier.
</tp:docstring>
</arg>
<arg name="immediate_error" type="u" direction="out">
<tp:docstring>
An enum from MM_MODEM_CDMA_ACTIVATION_ERROR. This is
returned for immediate errors. Delayed errors are returned
via an ActivationStateChanged signal
</tp:docstring>
</arg>
<ulink url="http://en.wikipedia.org/wiki/Over-the-air_programming">Over-The-Air (OTA)</ulink>
activation functionality, if any.
In the event of immediate failure, returns an error value instead of
setting a DBus error.
-->
<method name="Activate">
<arg name="carrier" type="s" direction="in" />
<arg name="immediate_error" type="u" direction="out" />
</method>
<method name="ActivateManual">
<tp:docstring>
<!--
ActivateManual:
@properties: A dictionary of properties to set on the modem, including <literal>"mdn"</literal> and <literal>"min"</literal>.
Sets the modem provisioning data directly, without contacting the
carrier over the air. Some modems will reboot after this call is made.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_cdma_activate_manual"/>
<arg name="properties" type="a{sv}" direction="in">
<tp:docstring>
A dictionary of properties to set on the modem. Keys include 'mdn', 'min'
</tp:docstring>
</arg>
carrier over the air.
Some modems will reboot after this call is made.
-->
<method name="ActivateManual">
<arg name="properties" type="a{sv}" direction="in" />
</method>
<!-- SIGNALS -->
<!--
ActivationStateChanged:
@activation_state: Current activation state, given as a <link linkend="MMModemCdmaActivationState">MMModemCdmaActivationState</link>.
@activation_error: Carrier-specific error code, given as a <link linkend="MMModemCdmaActivationError">MMModemCdmaActivationError</link>.
@status_changes: Properties that have changed as a result of this activation state chage, including <literal>"mdn"</literal> and <literal>"min"</literal>.
The device activation state changed.
-->
<signal name="ActivationStateChanged">
<tp:docstring>
The device activation state changed.
</tp:docstring>
<arg name="activation_state" type="u" tp:type="MM_MODEM_CDMA_ACTIVATION_STATE">
<tp:docstring>Current activation state</tp:docstring>
</arg>
<arg name="activation_error" type="u" tp:type="MM_MODEM_CDMA_ACTIVATION_ERROR">
<tp:docstring>Carrier-specific error code</tp:docstring>
</arg>
<arg name="status_changes" type="a{sv}">
<tp:docstring>
Selected Modem.Simple.GetStatus keys that have changed as a result of
this activation state change. Will include 'mdn' and 'min'.
</tp:docstring>
</arg>
<arg name="activation_state" type="u" />
<arg name="activation_error" type="u" />
<arg name="status_changes" type="a{sv}" />
</signal>
<!-- PROPERTIES -->
<!--
Meid:
<property name="Meid" type="s" access="read">
<tp:docstring>
The modem's Mobile Equipment Identifier.
</tp:docstring>
</property>
The modem's <ulink url="http://en.wikipedia.org/wiki/MEID">Mobile Equipment Identifier</ulink>.
-->
<property name="Meid" type="s" access="read" />
<property name="Esn" type="s" access="read">
<tp:docstring>
The modem's Electronic Serial Number (superceded by the MEID but still
used by older devices).
</tp:docstring>
</property>
<property name="Sid" type="u" access="read">
<tp:docstring>
The System Identifier of the serving CDMA 1x network, if known, and
if the modem is registered with a CDMA 1x network. See ifast.org or
the mobile broadband provider database for mappings of SIDs to network
providers.
</tp:docstring>
</property>
<!--
Esn:
<property name="Nid" type="u" access="read">
<tp:docstring>
The Network Identifier of the serving CDMA 1x network, if known, and
The modem's
<ulink url="http://en.wikipedia.org/wiki/Electronic_serial_number">Electronic Serial Number</ulink>
(superceded by MEID but still used by older devices).
-->
<property name="Esn" type="s" access="read" />
<!--
Sid:
The
<ulink url="http://en.wikipedia.org/wiki/System_Identification_Number">System Identifier</ulink>
of the serving CDMA 1x network, if known, and
if the modem is registered with a CDMA 1x network.
</tp:docstring>
</property>
<property name="Cdma1xRegistrationState" type="u" access="read" tp:type="MM_MODEM_CDMA_REGISTRATION_STATE">
<tp:docstring>CDMA 1x registration state.</tp:docstring>
</property>
See <ulink url="http://ifast.org">ifast.org</ulink> or the mobile
broadband provider database for mappings of SIDs to network providers.
-->
<property name="Sid" type="u" access="read" />
<property name="EvdoRegistrationState" type="u" access="read" tp:type="MM_MODEM_CDMA_REGISTRATION_STATE">
<tp:docstring>EVDO registration state.</tp:docstring>
</property>
<!--
Nid:
The
<ulink url="http://en.wikipedia.org/wiki/Network_Identification_Number">Network Identifier</ulink>
of the serving CDMA 1x network, if known, and
if the modem is registered with a CDMA 1x network.
-->
<property name="Nid" type="u" access="read" />
<!--
Cdma1xRegistrationState:
A <link linkend="MMModemCdmaRegistrationState">MMModemCdmaRegistrationState</link>
value specifying the CDMA 1x registration state.
-->
<property name="Cdma1xRegistrationState" type="u" access="read" />
<!--
EvdoRegistrationState:
A <link linkend="MMModemCdmaRegistrationState">MMModemCdmaRegistrationState</link>
value specifying the EVDO registration state.
-->
<property name="EvdoRegistrationState" type="u" access="read" />
<!-- ENUMS -->

View File

@@ -1,154 +1,176 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<interface name="org.freedesktop.ModemManager1.Modem.Contacts">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Contacts:
@short_description: The ModemManager Contacts interface.
<tp:docstring>
This interface provides access to contacts stored in various locations,
including SIM cards, device storage, and other locations. Operations
generally operate on all contacts regardless of their actual storage
location. Contacts are referred to by index numbers, which are internal
to ModemManager and do not represent indexs of SIM cards or the device.
location.
Contacts are referred to by index numbers, which are internal to
ModemManager and do not represent indexes of SIM cards or the device.
Indexes may not be contiguous.
</tp:docstring>
-->
<interface name="org.freedesktop.ModemManager1.Modem.Contacts">
<!--
Add:
@properties: Dictionary of properties describing the contact.
@index: The index number of the new contact
Add a new contact.
If any of the property in @properties exceeds the modem's size limit,
that property will be truncated to fit.
Known properties are:
<variablelist>
<varlistentry><term><literal>"name"</literal></term>
<listitem>
Full name of the contact, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"number"</literal></term>
<listitem>
Telephone number, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"email"</literal></term>
<listitem>
Email address, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"group"</literal></term>
<listitem>
Group this contact belongs to, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"name2"</literal></term>
<listitem>
Additional contact name, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"number2"</literal></term>
<listitem>
Additional contact telephone number, given as a string value
(signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"hidden"</literal></term>
<listitem>
Boolean flag to specify whether this entry is hidden or not,
(signature <literal>"b"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"storage"</literal></term>
<listitem>
Phonebook in which the contact is stored, given as a
<link linkend="MMModemContactsStorage">MMModemContactsStorage</link>,
(signature <literal>"u"</literal>).
</listitem>
</varlistentry>
</variablelist>
The @index number is an internal private number to ModemManager and does
not correspond to the index of the contact in the modem or SIM itself.
-->
<method name="Add">
<tp:docstring>
Add a new contact.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_add"/>
<arg name="properties" type="a{sv}" direction="in">
<tp:docstring>
Dictionary of properties describing the contact. If any property
exceeds the modem's size limit, that property will be truncated to fit.
Known properties are:
name : (string) Full name of the contact
number : (string) Telephone number
email : (string) Email address
group : (string) Group this contact belongs to
name2 : (string) Additional contact name
number2 : (string) Additional contact telephone number
hidden : (bool) Whether this entry is hidden or not
storage : (uint) Phonebook in which contact is stored, one of
MM_MODEM_CONTACTS_STORAGE
</tp:docstring>
</arg>
<arg name="index" type="u" direction="out">
<tp:docstring>
The index number of the new contact; this number is an internal
private number to ModemManager and does not correspond to the index
of the contact in the modem or SIM itself.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}" direction="in" />
<arg name="index" type="u" direction="out" />
</method>
<!--
Delete:
@index: The index of the contact to delete.
Delete a contact.
-->
<method name="Delete">
<tp:docstring>
Delete a contact.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_delete"/>
<arg name="index" type="u" direction="in">
<tp:docstring>
The index of the contact to delete.
</tp:docstring>
</arg>
<arg name="index" type="u" direction="in" />
</method>
<!--
Get:
@index: The index of the contact.
@properties: The properties of the contact.
Retrieve a contact.
-->
<method name="Get">
<tp:docstring>
Retrieve a contact.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_get"/>
<arg name="index" type="u" direction="in">
<tp:docstring>
The index of the contact.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}" direction="out">
<tp:docstring>
The properties of the contact including those properties defined by
the Add method.
</tp:docstring>
</arg>
<arg name="index" type="u" direction="in" />
<arg name="properties" type="a{sv}" direction="out" />
</method>
<!--
List:
@results: An array of dictionaries, each dictionary representing a contact.
List all contacts.
-->
<method name="List">
<tp:docstring>
List all contacts.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_list"/>
<arg name="results" type="aa{sv}" direction="out">
<tp:docstring>
An array of dictionaries, each dictionary representing a contact.
</tp:docstring>
</arg>
<arg name="results" type="aa{sv}" direction="out" />
</method>
<!--
Find:
@pattern: The pattern to search for.
@results: An array of dictionaries, each dictionary representing a contact.
Find a contact.
-->
<method name="Find">
<tp:docstring>
Find a contact.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_find"/>
<arg name="pattern" type="s" direction="in">
<tp:docstring>
The pattern to search for.
</tp:docstring>
</arg>
<arg name="results" type="aa{sv}" direction="out">
<tp:docstring>
An array of dictionaries, each dictionary representing a contact which
matches the query pattern.
</tp:docstring>
</arg>
<arg name="pattern" type="s" direction="in" />
<arg name="results" type="aa{sv}" direction="out" />
</method>
<!--
GetCount:
@count: The number of contacts.
Get the number of contacts.
-->
<method name="GetCount">
<tp:docstring>
Get the number of contacts.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_contacts_count"/>
<arg name="count" type="u" direction="out">
<tp:docstring>
The number of contacts.
</tp:docstring>
</arg>
<arg name="count" type="u" direction="out" />
</method>
<!-- SIGNALS -->
<!--
Added:
@index: The index number of the new contact.
@properties: The properties of the contact.
<signal name="Added">
<tp:docstring>
Emitted when a new contact is added.
</tp:docstring>
<arg name="index" type="u">
<tp:docstring>
The index number of the new contact.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}">
<tp:docstring>
The properties of the contact including those properties defined by
the Add method.
</tp:docstring>
</arg>
-->
<signal name="Added">
<arg name="index" type="u" />
<arg name="properties" type="a{sv}" />
</signal>
<!--
Deleted:
@index: The index number of the now deleted contact.
Emitted when a new contact has been deleted.
-->
<signal name="Deleted">
<tp:docstring>
Emitted when a contact has been deleted.
</tp:docstring>
<arg name="index" type="u">
<tp:docstring>
Index number of the now deleted contact.
</tp:docstring>
</arg>
<arg name="index" type="u" />
</signal>
<!-- ENUMS -->

View File

@@ -1,8 +1,20 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<interface name="org.freedesktop.ModemManager1.Modem.Firmware">
<tp:docstring>
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Firmware:
@short_description: The ModemManager Firmware interface.
This interface allows clients to select or install firmware images on
modems.
@@ -12,103 +24,82 @@
Firmware images are represented as dictionaries of properties.
Certain properties are pre-defined, and some are required:
Name (string, required): A user-readable name for the firmware image.
Version (string, optional): The version of the firmware. The format is
unspecified; tools attempting to upgrade firmware automatically must
understand the versioning scheme used by the modem driver they are
interacting with. May be displayed to the user.
</tp:docstring>
<variablelist>
<varlistentry><term><literal>"name"</literal></term>
<listitem>
(Required) A user-readable name for the firmware image, given as a
string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"version"</literal></term>
<listitem>
(Optional) The version of the firmware, given as a string value
(signature <literal>"s"</literal>). The format is
unspecified; tools attempting to upgrade firmware automatically must
understand the versioning scheme used by the modem driver they are
interacting with.
</listitem>
</varlistentry>
</variablelist>
-->
<interface name="org.freedesktop.ModemManager1.Modem.Firmware">
<!--
List:
@selected: The identifier of the selected firmware slot, or the empty string if no slot is selected (such as if all slots are empty, or no slots exist).
@installed: A dictionary of slots into which firmware is and/or can be installed. The key of each entry is the identifier of the slot, and the value is either an empty dictionary if the slot is empty, or a dictionary of properties of the firmware image installed in that slot. The slot identifiers and the mapping between slots and firmware images are guaranteed to remain stable only as long as the modem remains present.
@available: A dictionary of available firmware images. The key of each entry is the identifier of the image, and the value is a dictionary of properties of the image. The image identifiers are guaranteed to remain stable only as long as the modem remains present.
<method name="List">
<tp:docstring>
List installed and available firmware images.
Depending on the type of modem, installed images may be stored on the
host or the modem. The distinction between "installed" and
"available" is not one of where the firmware is stored, but that
host or the modem. The distinction between @installed and
@available is not one of where the firmware is stored, but that
installed images can be selected non-destructively, while available
images must be installed into a slot, possibly overwriting another
installed image.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
value="impl_modem_firmware_list" />
<arg name="selected" type="s" direction="out">
<tp:docstring>
The identifier of the selected firmware slot, or the empty string if
no slot is selected (such as if all slots are empty, or no slots
exist).
</tp:docstring>
</arg>
<arg name="installed" type="a{sa{sv}}" direction="out">
<tp:docstring>
A dictionary of slots into which firmware is and/or can be
installed. The key of each entry is the identifier of the slot,
and the value is either an empty dictionary if the slot is empty,
or a dictionary of properties of the firmware image installed in
that slot.
The slot identifiers and the mapping between slots and firmware
images are guaranteed to remain stable only as long as the modem
remains present.
</tp:docstring>
</arg>
<arg name="available" type="a{sa{sv}}" direction="out">
<tp:docstring>
A dictionary of available firmware images. The key of each entry is
the identifier of the image, and the value is a dictionary of
properties of the image.
The image identifiers are guaranteed to remain stable only as long
as the modem remains present.
</tp:docstring>
</arg>
-->
<method name="List">
<arg name="selected" type="s" direction="out" />
<arg name="installed" type="a{sa{sv}}" direction="out" />
<arg name="available" type="a{sa{sv}}" direction="out" />
</method>
<method name="Select">
<tp:docstring>
<!--
Select:
@slot: The identifier of the firmware slot to select.
Selects a different firmware image to use, and immediately resets the
modem so that it begins using the new firmware image.
Select will fail if the identifier does not match any of the slot
identifiers returned by List, or if the slot could not be selected
for some reason.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value="" />
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
value="impl_modem_firmware_select" />
<arg name="slot" type="s" direction="in">
<tp:docstring>
The identifier of the firmware slot to select.
</tp:docstring>
</arg>
The method will fail if the identifier does not match any of the slot
identifiers returned by
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Firmware.List">List()</link>,
or if the slot could not be selected for some reason.
-->
<method name="Select">
<arg name="slot" type="s" direction="in" />
</method>
<method name="Install">
<tp:docstring>
<!--
Install:
@image: The identifier of the firmware image to install.
@slot: The identifier of the slot into which the firmware should be installed.
Install an available firmware image into a slot.
Install does not guarantee that the image will be installed into the
It does not guarantee that the image will be installed into the
specified slot, but does guarantee that, if the slot is empty, no
image will be overwritten, and if the slot is not empty, no image
other than the one in that slot will be overwritten.
Install will fail if either of the identifiers is invalid, or if the
The method will fail if either of the identifiers is invalid, or if the
image could not be installed into the slot for some reason.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value="" />
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
value="impl_modem_firmware_install" />
<arg name="image" type="s" direction="in">
<tp:docstring>
The identifier of the firmware image to install.
</tp:docstring>
</arg>
<arg name="slot" type="s" direction="in">
<tp:docstring>
The identifier of the slot into which the firmware should be
installed.
</tp:docstring>
</arg>
-->
<method name="Install">
<arg name="image" type="s" direction="in" />
<arg name="slot" type="s" direction="in" />
</method>
</interface>
</node>

View File

@@ -1,111 +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.ModemManager1.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
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Location:
@short_description: The ModemManager Location interface.
The Location 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>
-->
<interface name="org.freedesktop.ModemManager1.Modem.Location">
<property name="Capabilities" type="u" access="read" tp:type="MM_MODEM_LOCATION_CAPABILITIES">
<tp:docstring>
Location capabilities of the device.
</tp:docstring>
</property>
<!--
Enable:
@enable: %TRUE to enable location information gathering, %FALSE to disable.
@signal_location: Flag to control whether the device emits signals with the new location information. This argument is ignored when disabling location information gathering.
<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>
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.
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, the
@signal_location argument can be set to %FALSE to disable location
updates via D-Bus signals and require applications to call
authenticated APIs (like
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.GetLocation">GetLocation()</link>
) to get
location information.
-->
<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>
<arg name="enable" type="b" direction="in" />
<arg name="signal_location" type="b" direction="in" />
</method>
<!--
GetLocation:
@location: Dictionary of available location information when location information gathering is enabled.
Return current location information, if any. If the modem supports
multiple location types it may return more than one. See the
#org.freedesktop.ModemManager1.Modem.Location:Location property
for more information on the dictionary returned at @location.
This method may require the client to authenticate itself.
-->
<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>
<arg name="Location" type="a{uv}" direction="out" />
</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>
<!--
Capabilities:
<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>
Bitmask of <link linkend="MMModemLocationSource">MMModemLocationSource</link>
values, specifying the location retrieval capabilities of the device.
-->
<property name="Capabilities" type="u" access="read" />
<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>
<!--
Enabled:
%TRUE if location information gathering is enabled for this device,
%FALSE if it is disabled. When disabled, the device will not provide
location information.
-->
<property name="Enabled" type="b" access="read" />
<!--
SignalsLocation:
%TRUE if location updates will be emitted via D-Bus signals, %FALSE if
location updates will not be emitted.
See the
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.Enable">Enable()</link>
method for more information.
-->
<property name="SignalsLocation" type="b" access="read" />
<!--
Location:
Dictionary 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.
This dictionary is composed of a
<link linkend="MMModemLocationSource">MMModemLocationSource</link>
key, with an associated data which contains type-specific location
information:
<variablelist>
<varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-GSM-LAC-CI:CAPS">MM_MODEM_LOCATION_SOURCE_GSM_LAC_CI</link></term>
<listitem>
<para>
Devices supporting this
capability return a string in the format <literal>"MCC,MNC,LAC,CI"</literal> (without the
quotes of course) where the following applies:
</para>
<variablelist>
<varlistentry><term><literal>MCC</literal></term>
<listitem>
This is the three-digit ITU E.212 Mobile Country Code of the
network provider to which the mobile is currently registered.
e.g. <literal>"310"</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>MNC</literal></term>
<listitem>
This is the two- or three-digit GSM Mobile Network Code of the
network provider to which the mobile is currently registered.
e.g. <literal>"26"</literal> or <literal>"260"</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>LAC</literal></term>
<listitem>
This 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. <literal>"84CD"</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>CI</literal></term>
<listitem>
This 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. <literal>"2BAF"</literal> or <literal>"D30156"</literal>.
</listitem>
</varlistentry>
</variablelist>
<para>
The entire string may only be composed of the ASCII digits <literal>[0-9]</literal>,
the alphabetical characters <literal>[A-F]</literal>, and the comma (<literal>,</literal>) character.
No other characters are allowed. For example: <literal>"310,260,8BE3,2BAF"</literal> or
<literal>"250,40,CE00,1CEAD8F0"</literal>.
</para>
<para>
If any of these four items (<literal>MCC</literal>, <literal>MNC</literal>,
<literal>LAC</literal>, <literal>CI</literal>) is unknown or the
mobile is not registered with a network, then the
<link linkend="MM-MODEM-LOCATION-SOURCE-GSM-LAC-CI:CAPS">MM_MODEM_LOCATION_SOURCE_GSM_LAC_CI</link>
location
information item should not be provided as a returned value from the
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.GetLocation">GetLocation()</link>
method or in the #org.freedesktop.ModemManager1.Modem.Location:Location property.
</para>
</listitem>
</varlistentry>
<varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-GPS-RAW:CAPS">MM_MODEM_LOCATION_SOURCE_GPS_RAW</link></term>
<listitem>
<para>
Devices supporting this
capability return a D-Bus dictionary (signature <literal>"a{sv}"</literal>) mapping well-known
keys to values with defined formats.
</para>
<para>
The allowed key/value pairs and their formats are:
</para>
<variablelist>
<varlistentry><term><literal>"latitude"</literal></term>
<listitem>
(Required) Latitude in Decimal Degrees (positive numbers mean N quadrasphere, negative mean S quadrasphere), given as a double value (signature <literal>"d"</literal>). e.g. <literal>38.889722</literal>, meaning 38d 53' 22" N.
</listitem>
</varlistentry>
<varlistentry><term><literal>"longitude"</literal></term>
<listitem>
(Required) Longitude in Decimal Degrees (positive numbers mean E quadrasphere, negative mean W quadrasphere), given as a double value (signature <literal>"d"</literal>). e.g. <literal>-77.008889</literal>, meaning 77d 0' 32" W.
</listitem>
</varlistentry>
<varlistentry><term><literal>"altitude"</literal></term>
<listitem>
(Optional) Altitude above sea level in meters, given as a double value (signature <literal>"d"</literal>). e.g. <literal>33.5</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>"horizontal-velocity"</literal></term>
<listitem>
(Optional) Horizontal velocity in meters-per-second, given as a double value (signature <literal>"d"</literal>). e.g. <literal>0.5</literal>.
</listitem>
</varlistentry>
<varlistentry><term><literal>"vertical-velocity"</literal></term>
<listitem>
(Optional) Vertical velocity in meters-per-second, given as a double value (signature <literal>"d"</literal>). e.g. <literal>0.01</literal>.
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-GPS-NMEA:CAPS">MM_MODEM_LOCATION_SOURCE_GPS_NMEA</link></term>
<listitem>
<para>
Devices supporting this capability return
a string containing one or more NMEA sentences (D-Bus signature <literal>'s'</literal>).
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 (<literal>&lt;CR&gt;&lt;LF&gt;</literal>) sequence.
</para>
<para>
For example, if the device sends a <literal>$GPRMC</literal> sentence immediately
followed by a <literal>$GPGGA</literal> sentence, the reported location string would be
(where of course the <literal>&lt;CR&gt;&lt;LF&gt;</literal> is replaced with the actual
ASCII <literal>CR</literal> (0x0D) and <literal>LF</literal> (0x0A) control characters):
<para><literal>
$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
</literal></para>
If the device sends a new <literal>$GPRMC</literal> three seconds later, the new <literal>$GPRMC</literal>
replaces the previously received <literal>$GPRMC</literal> sentence, and the updated
string would be:
<para><literal>
$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
</literal></para>
If the device then sends a <literal>$GPGSA</literal> sentence about 5 seconds later, the
<literal>$GPGSA</literal> sentence is added to the string (since no <literal>$GPGSA</literal> sentence was
literalviously received in this session), the updated string would be:
<para><literal>
$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
</literal></para>
The manager may discard any cached sentences older than 30 seconds.
</para>
<para>
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.
</para>
</listitem>
</varlistentry>
</variablelist>
-->
<property name="Location" type="a{uv}" access="read" />
<!-- ENUMS -->
<tp:flags name="MM_MODEM_LOCATION_CAPABILITIES" value-prefix="MM_MODEM_LOCATION_CAPABILITY" type="u">
<tp:flag suffix="UNKNOWN" value="0x0">

View File

@@ -1,132 +1,122 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Messaging:
@short_description: The ModemManager Messaging interface.
The Messaging interface handles sending SMS messages and notification of new
incoming messages.
-->
<interface name="org.freedesktop.ModemManager1.Modem.Messaging">
<tp:docstring>
This interface handles sending SMS messages and notification of new
incoming messages.
</tp:docstring>
<!--
List:
@result: A dict of message object paths mapped to a dictionary containing that message's properties as specified in the <link linkend="gdbus-org.freedesktop.ModemManager1.Sms">SMS D-Bus interface</link>.
<!-- METHODS -->
<method name="List">
<tp:docstring>
Retrieve all SMS messages.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_messaging_list"/>
<arg name="result" type="a{oa{sv}}" direction="out">
<tp:docstring>
A dict of message object paths mapped to a dictionary containing that
message's properties as specified in the
org.freedesktop.ModemManager1.Modem.SMS D-Bus interface. This method
should only be used once and subsequent information retreived either
by listening for the Received and Completed signals, or by querying
the specific SMS object of interest.
</tp:docstring>
</arg>
This method should only be used once and subsequent information
retreived either by listening for the
#org.freedesktop.ModemManager1.Modem.Messaging::Added and
#org.freedesktop.ModemManager1.Modem.Messaging::Completed signals,
or by querying the specific SMS object of interest.
-->
<method name="List">
<arg name="result" type="a{oa{sv}}" direction="out" />
</method>
<!--
Delete:
@path: The object path of the SMS to delete.
Delete an SMS message. Alternatively you may use the
<link linkend="gdbus-method-org-freedesktop-ModemManager1-Sms.Delete">Delete()</link>
method on the message object itself.
-->
<method name="Delete">
<tp:docstring>
Delete an SMS message. Alternatively you may use the Delete() method
on the message object itself.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_messaging_delete"/>
<arg name="path" type="o" direction="in">
<tp:docstring>
The object path of the SMS to delete.
</tp:docstring>
</arg>
<arg name="path" type="o" direction="in" />
</method>
<method name="Create">
<tp:docstring>
<!--
Create:
@properties: Message properties from the <link linkend="gdbus-org.freedesktop.ModemManager1.Sms">SMS D-Bus interface</link>.
@send: If %TRUE, queue the message for immediate delivery.
@path: The object path of the new message object.
Creates a new message object and optionally queues it for delivery.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_messaging_create"/>
<arg name="properties" type="a{sv}" direction="in">
<tp:docstring>
Message properties from the org.freedesktop.ModemManager1.Modem.SMS
D-Bus interface. The 'Number' and 'Text' properties are mandatory,
others are optional. If the SMSC is not specified and one is
required, the default SMSC is used.
</tp:docstring>
</arg>
<arg name="send" type="b" direction="in">
<tp:docstring>
If TRUE, queue the message for immediate delivery.
</tp:docstring>
</arg>
<arg name="path" type="o" direction="out">
<tp:docstring>
The object path of the new message object.
</tp:docstring>
</arg>
The '<link linkend="gdbus-property-org-freedesktop-ModemManager1-Sms.To">To</link>'
and
'<link linkend="gdbus-property-org-freedesktop-ModemManager1-Sms.Text">Text</link>'
properties are mandatory, others are optional.
If the SMSC is not specified and one is required, the default SMSC is
used.
-->
<method name="Create">
<arg name="properties" type="a{sv}" direction="in" />
<arg name="send" type="b" direction="in" />
<arg name="path" type="o" direction="out" />
</method>
<!-- SIGNALS -->
<!--
Added:
@path: Object path of the new SMS.
@received: %TRUE if the message was received from the network, as opposed to being added locally.
@properties: Message properties from the <link linkend="gdbus-org.freedesktop.ModemManager1.Sms">SMS D-Bus interface</link>.
<signal name="Added">
<tp:docstring>
Emitted when any part of a new SMS has been received or added (but not
for subsequent parts, if any). For messages received from the network,
for subsequent parts, if any). For messages received from the network,
not all parts may have been received and the message may not be
complete. The Completed signal will be emitted when the message is
complete.
</tp:docstring>
<arg name="path" type="o">
<tp:docstring>
Object path of the new SMS.
</tp:docstring>
</arg>
<arg name="received" type="b">
<tp:docstring>
TRUE if the message was received from the network, as opposed to being
added locally.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}">
<tp:docstring>
Message properties from the org.freedesktop.ModemManager1.Modem.SMS
D-Bus interface. Check the 'State' property to determine if the
message is complete.
</tp:docstring>
</arg>
Check the
'<link linkend="gdbus-property-org-freedesktop-ModemManager1-Sms.State">State</link>'
property to determine if the message is complete. The
#org.freedesktop.ModemManager1.Modem.Messaging::Completed
signal will also be emitted when the message is complete.
-->
<signal name="Added">
<arg name="path" type="o" />
<arg name="received" type="b" />
<arg name="properties" type="a{sv}" />
</signal>
<signal name="Completed">
<tp:docstring>
Emitted when the complete-ness status of an SMS message changes. An SMS
may not necessarily be complete when the first part is received; this
signal will be emitted when all parts have been received, even for
<!--
Completed:
@path: Object path of the new SMS.
@properties: Message properties from the <link linkend="gdbus-org.freedesktop.ModemManager1.Sms">SMS D-Bus interface</link>.
Emitted when the complete-ness status of an SMS message changes.
An SMS may not necessarily be complete when the first part is received;
this signal will be emitted when all parts have been received, even for
single-part messages.
</tp:docstring>
<arg name="path" type="o">
<tp:docstring>
Object path of the new SMS.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}">
<tp:docstring>
Message properties from the org.freedesktop.ModemManager1.Modem.SMS
D-Bus interface.
</tp:docstring>
</arg>
-->
<signal name="Completed">
<arg name="path" type="o" />
<arg name="properties" type="a{sv}" />
</signal>
<signal name="Deleted">
<tp:docstring>
<!--
Deleted:
@path: Object path of the now deleted SMS.
Emitted when a message has been deleted.
</tp:docstring>
<arg name="path" type="o">
<tp:docstring>
Object path of the now deleted SMS.
</tp:docstring>
</arg>
-->
<signal name="Deleted">
<arg name="path" type="o" />
</signal>
</interface>

View File

@@ -1,115 +1,186 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem.Simple:
@short_description: The ModemManager Simple interface.
The Simple interface allows controlling and querying the status of Modems.
-->
<interface name="org.freedesktop.ModemManager1.Modem.Simple">
<!-- METHODS -->
<!--
Connect:
@properties: Dictionary of properties needed to get the modem connected.
@bearer: On successful connect, returns the object path of the connected packet data bearer used for the connection attempt.
@interface: The operating system name for the network data interface that provides packet data using this bearer. Connection managers must configure this interface using the given IP configuration returned by bearer activation.
@ip4config: If the bearer was configured for IPv4 addressing, upon successful connect this argument contains the addressing details for assignment to the data interface. See <link linkend="gdbus-property-org-freedesktop-ModemManager1-Bearer.Ip4Config">Ip4Config</link>.
@ip6config: If the bearer was configured for IPv6 addressing, upon successful connect this argument contains the addressing details for assignment to the data interface. See <link linkend="gdbus-property-org-freedesktop-ModemManager1-Bearer.Ip6Config">Ip6Config</link>.
Do everything needed to connect the modem using the given properties.
This method will attempt to find a matching packet data bearer and
activate it if necessary, returning the bearer's IP details. If no
matching bearer is found, a new bearer will be created and activated,
but this operation may fail if no resources are available to complete
this connection attempt (ie, if a conflicting bearer is already active).
This call may make a large number of changes to modem configuration
based on properties passed in. For example, given a PIN-locked, disabled
GSM/UMTS modem, this call may unlock the SIM PIN, alter the access
technology preference, wait for network registration (or force
registration to a specific provider), create a new packet data bearer
using the given "apn", and connect that bearer.
Allowed key/value pairs in @properties are:
<variablelist>
<varlistentry><term><literal>"pin"</literal></term>
<listitem>
SIM-PIN unlock code, given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"network-id"</literal></term>
<listitem>
ETSI MCC-MNC of a network to force registration with,
given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"allowed-bands"</literal></term>
<listitem>
Bitmask of <link linkend="MMModemBand">MMModemBand</link> values,
to specify all the bands allowed in the modem, given as a 64bit
unsigned integer value (signature <literal>"t"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"allowed-modes"</literal></term>
<listitem>
Bitmask of <link linkend="MMModemMode">MMModemMode</link> values,
to specify all the modes allowed in the modem, given as an
unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"preferred-mode"</literal></term>
<listitem>
Specific <link linkend="MMModemMode">MMModemMode</link> preferred
among the ones allowed, if any. Given as an unsigned integer value
(signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"apn"</literal></term>
<listitem>
For GSM/UMTS and LTE devices the APN to use,
given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"ip-type"</literal></term>
<listitem>
For GSM/UMTS and LTE devices the IP addressing type to use,
one of "IPV4", "IPV4V6" or "IPV6".
Given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"number"</literal></term>
<listitem>
For POTS devices the number to dial,,
given as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"home-only"</literal></term>
<listitem>
%TRUE to allow only connections to home networks,
given as a boolean value (signature <literal>"b"</literal>).
</listitem>
</varlistentry>
</variablelist>
-->
<method name="Connect">
<tp:docstring>
Do everything needed to connect the modem using the given properties.
This method will attempt to find a matching packet data bearer and
activate it if necessary, returning the bearer's IP details. If no
matching bearer is found, a new bearer will be created and activated,
but this operation may fail if no resources are available to complete
this connection attempt (ie, if a conflicting bearer is already active).
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_simple_connect"/>
<arg name="properties" type="a{sv}" direction="in">
<tp:docstring>
Dictionary of properties needed to get the modem connected. This
call may make a large number of changes to modem configuration based
on properties passed in. For example, given a PIN-locked, disabled
GSM/UMTS modem, this call may unlock the SIM PIN, alter the access
technology preference, wait for network registration (or force
registration to a specific provider), create a new packet data bearer
using the given 'apn', and connect that bearer.
'pin' : (string) SIM-PIN unlock code
'network-id' : (string) ETSI MCC-MNC of a network to force registration with
'band' : (uint) Bitfield of radio bands the modem may use
'allowed-mode' : (uint) Allowed network technology preference (ie, 2G/3G, etc)
'apn' : (string) For GSM/UMTS and LTE devices the APN to use
'ip-type' : (string) For GSM/UMTS and LTE devices the IP addressing
type to use, one of "IPV4", "IPV4V6", or "IPV6"
'number' : (string) For POTS devices, the number to dial
'home_only' : (uint) 1 to allow only connections to home networks
</tp:docstring>
</arg>
<arg name="bearer" type="o" direction="out">
<tp:docstring>
On successful connect, returns the object path of the connected
packet data bearer used for the connection attempt.
</tp:docstring>
</arg>
<arg name="interface" type="s" direction="out">
<tp:docstring>
The operating system name for the network data interface that provides
packet data using this bearer. Connection managers must configure this
interface using the given IP configuration returned by bearer activation.
</tp:docstring>
</arg>
<arg name="ip4config" type="a{sv}" direction="out">
<tp:docstring>
If the bearer was configured for IPv4 addressing, upon successful
connect this argument contains the addressing details for assignment
to the data interface. If the bearer specifies configuration via PPP
or DHCP, only the 'method' item will be present. See the description
of the property of this name in the
org.freedesktop.ModemManager1.Modem.Bearer interface.
</tp:docstring>
</arg>
<arg name="ip6config" type="a{sv}" direction="out">
<tp:docstring>
If the bearer was configured for IPv6 addressing, upon successful
connect this argument contains the addressing details for assignment
to the data interface. If the bearer specifies configuration via PPP
or DHCP, only the 'method' item will be present. See the description
of the property of this name in the
org.freedesktop.ModemManager1.Modem.Bearer interface.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}" direction="in" />
<arg name="bearer" type="o" direction="out" />
<arg name="interface" type="s" direction="out" />
<arg name="ip4config" type="a{sv}" direction="out" />
<arg name="ip6config" type="a{sv}" direction="out" />
</method>
<!--
Disconnect:
@bearer: If given this method will disconnect the referenced packet
data bearer, while if "/" (ie, no object given) this method will
disconnect all active packet data bearers.
Disconnect an active packet data connection.
-->
<method name="Disconnect">
<tp:docstring>
Disconnect an active packet data connection.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_simple_disconnect"/>
<arg name="bearer" type="o" direction="in">
<tp:docstring>
If given this method will disconnect the referenced packet data bearer,
while if "/" (ie, no object given) this method will disconnect all
active packet data bearers.
</tp:docstring>
</arg>
<arg name="bearer" type="o" direction="in" />
</method>
<method name="GetStatus">
<!-- FIXME: either convert this to properties (which duplicate properties
of the base modem object already) or expand the returned property
list to include "registration" and add a StatusChanged signal so
clients can monitor changes without having to poll.
-->
<tp:docstring>
Get the modem status.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_simple_get_status"/>
<arg name="properties" type="a{sv}" direction="out">
<tp:docstring>
Dictionary of properties. The predefined common properties are:
<!--
GetStatus:
@properties: Dictionary of properties.
'state' : (uint, always) Modem state
'signal-quality' : (uint, state >= registered)
'operator-code' : (string, state >= registered) Operator MCC-MNC
'operator-name' : (string, state >= registered)
'band' : (uint, state >= registered)
'access-technology' : (uint, state >= registered) See MM_MODEM_ACCESS_TECH
</tp:docstring>
</arg>
Get the general modem status.
The predefined common properties returned are:
<variablelist>
<varlistentry><term><literal>"state"</literal></term>
<listitem>
A <link linkend="MMModemState">MMModemState</link> value
specifying the overall state of the modem, given as an
unsigned integer value (signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"signal-quality"</literal></term>
<listitem>
Signal quality value, given only when registered,
as an unsigned integer value
(signature <literal>"u"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"operator-code"</literal></term>
<listitem>
Operator <literal>MCC-MNC</literal>, given only when registered,
as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"operator-name"</literal></term>
<listitem>
Operator name, given only when registered,
as a string value (signature <literal>"s"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"bands"</literal></term>
<listitem>
Bitmask of <link linkend="MMModemBand">MMModemBand</link> values,
given only when registerd, as a 64bit
unsigned integer value (signature <literal>"t"</literal>).
</listitem>
</varlistentry>
<varlistentry><term><literal>"access-technology"</literal></term>
<listitem>
A <link linkend="MMModemAccessTech">MMModemAccessTech</link> value,
given only when registered, as an unsigned integer value
(signature <literal>"u"</literal>).
</listitem>
</varlistentry>
</variablelist>
FIXME:
Either convert this to properties (which duplicate properties
of the base modem object already) or expand the returned property
list to include "registration" and add a StatusChanged signal so
clients can monitor changes without having to poll.
-->
<method name="GetStatus">
<arg name="properties" type="a{sv}" direction="out" />
</method>
</interface>

View File

@@ -1,334 +1,419 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Modem:
@short_description: The ModemManager Modem interface.
The Modem interface controls the status and actions in a given modem
object.
-->
<interface name="org.freedesktop.ModemManager1.Modem">
<!-- METHODS -->
<!--
Enable:
@enable: %TRUE to enable the modem and %FALSE to disable it.
Enable or disable the modem.
When enabled, the modem's radio is powered on and data sessions, voice
calls, location services, and Short Message Service may be available.
When disabled, the modem enters low-power state and no network-related
operations are available.
-->
<method name="Enable">
<tp:docstring>
Enable or disables the modem. When enabled, the modem's radio is powered
on and data sessions, voice calls, location services, and Short Message
Service may be available. When disabled, the modem enters low-power
state and no network-related operations are available.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_enable"/>
<arg name="enable" type="b" direction="in">
<tp:docstring>
Pass True to enable the modem, or False to disable it.
</tp:docstring>
</arg>
<arg name="enable" type="b" direction="in" />
</method>
<!--
ListBearers:
@bearers: The list of bearer object paths.
List configured packet data bearers (EPS Bearers, PDP Contexts, or
CDMA2000 Packet Data Sessions).
-->
<method name="ListBearers">
<tp:docstring>
List configured packet data bearers (EPS Bearers, PDP Contexts, or
CDMA2000 Packet Data Sessions).
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_list_bearers"/>
<arg name="bearers" type="ao" direction="out">
<tp:docstring>
The list of bearer object paths.
</tp:docstring>
</arg>
<arg name="bearers" type="ao" direction="out" />
</method>
<!--
CreateBearer:
@properties: List of properties to assign to the bearer after creating it.
@path: On success, the object path of the newly created bearer.
Create a new packet data bearer using the given characteristics.
This request may fail if the modem does not support additional bearers,
if too many bearers are already defined, or if properties are invalid.
Allowed properties are:
<variablelist>
<varlistentry><term><literal>"apn"</literal></term>
<listitem><para>Access Point Name. Required in 3GPP.</para></listitem></varlistentry>
<varlistentry><term><literal>"ip-type"</literal></term>
<listitem><para>Addressing type, one of <literal>"IPV4"</literal>, <literal>"IPV4V6"</literal>, or <literal>"IPV6"</literal>. Optional in 3GPP and CDMA.</para></listitem></varlistentry>
<varlistentry><term><literal>"user"</literal></term>
<listitem><para>User name (if any) required by the network. Optional in 3GPP.</para></listitem></varlistentry>
<varlistentry><term><literal>"password"</literal></term>
<listitem><para>Password (if any) required by the network. Optional in 3GPP.</para></listitem></varlistentry>
<varlistentry><term><literal>"number"</literal></term>
<listitem><para>Telephone number to dial. Required in POTS.</para></listitem></varlistentry>
</variablelist>
Some properties are only applicable to a bearer of certain access
technologies, for example the <literal>"apn"</literal> property is not
applicable to CDMA2000 Packet Data Session bearers.
-->
<method name="CreateBearer">
<tp:docstring>
Create a new packet data bearer using the given characteristics. This
request may fail if the modem does not support additional bearers, if
too many bearers are already defined, or if properties are invalid.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_create_bearer"/>
<arg name="properties" type="a{sv}" direction="in">
<tp:docstring>
List of properties to assign to the bearer after creating it. Some
properties are only applicable to a bearer of certain access
technologies, for example the "apn" property is not applicable to
CDMA2000 Packet Data Session bearers. Allowed properties are:
apn : (3GPP, required) Access Point Name
ip-type : (3GPP and CMDA, optional) Addressing type, one of
"IPV4", "IPV4V6", or "IPV6"
user : (3GPP, optional) user name (if any) required by the network
password : (3GPP, optional) password (if any) required by the network
number : (POTS, required) telphone number to dial
** FIXME: how about QoS?
</tp:docstring>
</arg>
<arg name="path" type="o" direction="out">
<tp:docstring>
On success, the object path of the newly created bearer.
</tp:docstring>
</arg>
<arg name="properties" type="a{sv}" direction="in" />
<arg name="path" type="o" direction="out" />
</method>
<!--
DeleteBearer:
@bearer: Object path of the bearer to delete.
Delete an existing packet data bearer.
If the bearer is currently active and providing packet data server, it
will be disconnected and that packet data service will terminate.
-->
<method name="DeleteBearer">
<tp:docstring>
Delete an existing packet data bearer.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_delete_bearer"/>
<arg name="bearer" type="o" direction="in">
<tp:docstring>
Object path of the bearer to delete. If the bearer is currently
active and providing packet data server, it will be disconnected
and that packet data service will terminate.
</tp:docstring>
</arg>
<arg name="bearer" type="o" direction="in" />
</method>
<method name="Reset">
<tp:docstring>
<!--
Reset:
Clear non-persistent configuration and state, and return the device to
a newly-powered-on state. This command may power-cycle the device.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_reset"/>
</method>
a newly-powered-on state.
This command may power-cycle the device.
-->
<method name="Reset" />
<!--
FactoryReset:
@code: Carrier-supplied code required to reset the modem.
<method name="FactoryReset">
<tp:docstring>
Clear the modem's configuration (including persistent configuration and
state), and return the device to a factory-default state. This command
may or may not power-cycle the device.
</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>
state), and return the device to a factory-default state.
If not required by the modem, @code may be ignored.
This command may or may not power-cycle the device.
-->
<method name="FactoryReset">
<arg name="code" type="s" direction="in" />
</method>
<method name="SetAllowedModes">
<tp:docstring>
<!--
SetAllowedModes:
@modes: Bitmask of <link linkend="MMModemMode">MMModemMode</link> values, to specify all the modes allowed in the modem.
@preferred: Specific <link linkend="MMModemMode">MMModemMode</link> preferred among the ones allowed, if any.
Set the access technologies (eg 2G/3G/4G preference) the device is
currently allowed to use when connecting to a network.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_set_allowed_mode"/>
<arg name="allowed" type="u" tp:type="MM_MODEM_MODE">
<tp:docstring>
Bitmask of all the modes allowed in the modem.
</tp:docstring>
</arg>
<arg name="preferred" type="u" tp:type="MM_MODEM_MODE">
<tp:docstring>
Specific mode preferred among the ones allowed, if any.
</tp:docstring>
</arg>
-->
<method name="SetAllowedModes">
<arg name="modes" type="u" direction="in" />
<arg name="preferred" type="u" direction="in" />
</method>
<method name="SetAllowedBands">
<tp:docstring>
<!--
SetAllowedBands:
@bands: Bitmask of <link linkend="MMModemBand">MMModemBand</link> values, to specify all the bands allowed in the modem.
Set the radio frequency and technology bands the device is currently
allowed to use when connecting to a network.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_set_allowed_band"/>
<arg name="mode" type="u" tp:type="MM_MODEM_BAND">
<tp:docstring>
Bitmask of all the bands allowed in the modem.
</tp:docstring>
</arg>
-->
<method name="SetAllowedBands">
<arg name="bands" type="t" direction="in" />
</method>
<!-- SIGNALS -->
<!--
StateChanged:
@old: A <link linkend="MMModemState">MMModemState</link> value, specifying the new state.
@new: A <link linkend="MMModemState">MMModemState</link> value, specifying the new state.
@reason: A <link linkend="MMModemStateChangeReason">MMModemStateChangeReason</link> value, specifying the reason for this state change.
The modem's state (see #org.freedesktop.ModemManager1.Modem:State) changed.
-->
<signal name="StateChanged">
<tp:docstring>
The modem's state (see the State property) changed.
</tp:docstring>
<arg name="old" type="u">
<tp:docstring>Old state</tp:docstring>
</arg>
<arg name="new" type="u">
<tp:docstring>New state</tp:docstring>
</arg>
<arg name="reason" type="u" tp:type="MM_MODEM_STATE_CHANGED_REASON">
<tp:docstring>Reason for this state change</tp:docstring>
</arg>
<arg name="old" type="u" />
<arg name="new" type="u" />
<arg name="reason" type="u" />
</signal>
<!-- PROPERTIES -->
<!--
Sim:
<property name="Sim" type="o" access="read">
<tp:docstring>
The path of the SIM object available in this device, if any.
</tp:docstring>
</property>
The path of the SIM object available in this device, if any.
-->
<property name="Sim" type="o" access="read" />
<property name="ModemCapabilities" type="u" access="read" tp:type="MM_MODEM_CAPABILITIES">
<tp:docstring>
The generic family of access technologies the modem supports. Not all
capabilities are available at the same time however; some modems require
a firmware reload or other reinitialization to switch between eg CDMA/EVDO
and GSM/UMTS.
</tp:docstring>
</property>
<!--
ModemCapabilities:
<property name="CurrentCapabilities" type="u" access="read" tp:type="MM_MODEM_CAPABILITIES">
<tp:docstring>
The generic family of access technologies the modem currently supports
without a firmware reload or reinitialization.
</tp:docstring>
</property>
Bitmask of <link linkend="MMModemCapability">MMModemCapability</link>
values, specifying the generic family of access technologies the modem
supports.
Not all capabilities are available at the same time however; some
modems require a firmware reload or other reinitialization to switch
between e.g. CDMA/EVDO and GSM/UMTS.
-->
<property name="ModemCapabilities" type="u" access="read" />
<!--
CurrentCapabilities:
Bitmask of <link linkend="MMModemCapability">MMModemCapability</link>
values, specifying the generic family of access technologies the modem
currently supports without a firmware reload or reinitialization.
-->
<property name="CurrentCapabilities" type="u" access="read" />
<!--
MaxBearers:
<property name="MaxBearers" type="u" access="read">
<tp:docstring>
The maximum number of defined packet data bearers the modem supports.
This is not the number of active/connected bearers the modem supports,
but simply the number of bearers that may be defined at any given time.
For example, POTS and CDMA2000-only devices support only one bearer,
while GSM/UMTS devices typically support three or more, and any
LTE-capable device (whether LTE-only, GSM/UMTS-capable, and/or
CDMA2000-capable) also typically support three or more.
</tp:docstring>
</property>
-->
<property name="MaxBearers" type="u" access="read" />
<!--
MaxActiveBearers:
<property name="MaxActiveBearers" type="u" access="read">
<tp:docstring>
The maximum number of active packet data bearers the modem supports.
POTS and CDMA2000-only devices support one active bearer, while
GSM/UMTS and LTE-capable devices (including LTE/CDMA devices) typically
support at least two active bearers.
</tp:docstring>
</property>
<property name="Manufacturer" type="s" access="read">
<tp:docstring>
The equipment manufacturer, as reported by the modem.
</tp:docstring>
</property>
POTS and CDMA2000-only devices support one active bearer, while GSM/UMTS
and LTE-capable devices (including LTE/CDMA devices) typically support
at least two active bearers.
-->
<property name="MaxActiveBearers" type="u" access="read" />
<property name="Model" type="s" access="read">
<tp:docstring>
The equipment model, as reported by the modem.
</tp:docstring>
</property>
<!--
Manufacturer:
<property name="Revision" type="s" access="read">
<tp:docstring>
The revision identification of the software, as reported by the modem.
</tp:docstring>
</property>
The equipment manufacturer, as reported by the modem.
-->
<property name="Manufacturer" type="s" access="read" />
<property name="DeviceIdentifier" type="s" access="read">
<tp:docstring>
A best-effort device identifier based on various device information like
model name, firmware revision, USB/PCI/PCMCIA IDs, and other properties.
This ID is not guaranteed to be unique and may be shared between
identical devices with the same firmware, but is intended to be
"unique enough" for use as a casual device identifier for various
user experience operations. This is not the device's IMEI or ESN since
those may not be available before unlocking the device via a PIN.
</tp:docstring>
</property>
<!--
Model:
<property name="Device" type="s" access="read">
<tp:docstring>
The physical modem device reference (ie, USB, PCI, PCMCIA device), which
may be dependent upon the operating system. In Linux for example, this
points to a sysfs path of the usb_device object.
</tp:docstring>
</property>
The equipment model, as reported by the modem.
-->
<property name="Model" type="s" access="read" />
<property name="Driver" type="s" access="read">
<tp:docstring>
The Operating System device driver handling communication with the
modem hardware.
</tp:docstring>
</property>
<!--
Revision:
The revision identification of the software, as reported by the modem.
-->
<property name="Revision" type="s" access="read" />
<!--
DeviceIdentifier:
A best-effort device identifier based on various device information like
model name, firmware revision, USB/PCI/PCMCIA IDs, and other properties.
This ID is not guaranteed to be unique and may be shared between
identical devices with the same firmware, but is intended to be "unique
enough" for use as a casual device identifier for various user
experience operations.
This is not the device's IMEI or ESN since those may not be available
before unlocking the device via a PIN.
-->
<property name="DeviceIdentifier" type="s" access="read" />
<!--
Device:
The physical modem device reference (ie, USB, PCI, PCMCIA device), which
may be dependent upon the operating system.
In Linux for example, this points to a sysfs path of the usb_device
object.
-->
<property name="Device" type="s" access="read" />
<!--
Driver:
The Operating System device driver handling communication with the modem
hardware.
-->
<property name="Driver" type="s" access="read" />
<!--
Plugin:
<property name="Plugin" type="s" access="read">
<tp:docstring>
The name of the plugin handling this modem.
</tp:docstring>
</property>
-->
<property name="Plugin" type="s" access="read" />
<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>
<!--
EquipmentIdentifier:
<property name="UnlockRequired" type="u" access="read" tp:type="MM_MODEM_LOCK">
<tp:docstring>
Current lock state of the device.
</tp:docstring>
</property>
The identity of the device.
<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>
This will be the IMEI number for GSM devices and the hex-format ESN/MEID
for CDMA devices.
-->
<property name="EquipmentIdentifier" type="s" access="read" />
<property name="State" type="u" access="read" tp:type="MM_MODEM_STATE">
<tp:docstring>
Overall state of the modem.
</tp:docstring>
</property>
<!--
UnlockRequired:
Current lock state of the device, given as a
<link linkend="MMModemLock">MMModemLock</link> value.
-->
<property name="UnlockRequired" type="u" access="read" />
<!--
UnlockRetries:
The number of unlock retries remaining for the lock code given by the
UnlockRequired property (if any), or 999 if the device does not support reporting
unlock retries.
-->
<property name="UnlockRetries" type="u" access="read" />
<!--
PinRetryCounts:
A dictionary in which the keys are <link linkend="MMModemLock">MMModemLock</link>
flags, and the values are integers giving the number of PIN tries remaining
before the code becomes blocked (requiring a PUK) or permanently blocked. Dictionary
entries exist only for the codes for which the modem is able to report retry
counts.
-->
<property name="PinRetryCounts" type="a{uu}" access="read" />
<!--
State:
Overall state of the modem, given as a
<link linkend="MMModemState">MMModemState</link> value.
If the device's state cannot be determined,
<link linkend="MM-MODEM-STATE-UNKNOWN:CAPS"><constant>MM_MODEM_STATE_UNKNOWN</constant></link>
will be reported.
-->
<property name="State" type="u" access="read" />
<!--
AccessTechnology:
<property name="AccessTechnology" type="u" access="read" tp:type="MM_MODEM_ACCESS_TECH">
<tp:docstring>
The current network access technology used by the device to communicate
with the network. (Note to plugin writers: if the device's access
technology cannot be determined, use UNKNOWN)
</tp:docstring>
</property>
with the network, given as a
<link linkend="MMModemAccessTech">MMModemAccessTech</link> value.
If the device's access technology cannot be determined,
<link linkend="MM-MODEM-ACCESS-TECH-UNKNOWN:CAPS"><constant>MM_MODEM_ACCESS_TECH_UNKNOWN</constant></link>
will be reported.
-->
<property name="AccessTechnology" type="u" access="read" />
<!--
SignalQuality:
<property name="SignalQuality" type="(ub)" access="read">
<tp:docstring>
Signal quality in percent (0 - 100) of the dominant access technology
the device is using to communicate with the network. Always 0 for POTS
devices. The additional boolean value indicates if the quality value
given was recently taken.
</tp:docstring>
</property>
the device is using to communicate with the network. Always 0 for POTS
devices.
<property name="AllowedModes" type="u" access="read" tp:type="MM_MODEM_MODE">
<tp:docstring>
The access technologies (eg 2G/3G/4G preference) the device is currently
allowed to use when connecting to a network. For POTS devices, only the
"any" mode is supported.
</tp:docstring>
</property>
The additional boolean value indicates if the quality value given was
recently taken.
-->
<property name="SignalQuality" type="(ub)" access="read" />
<property name="PreferredMode" type="u" access="read" tp:type="MM_MODEM_MODE">
<tp:docstring>
The preferred access technology (eg 2G/3G/4G), among the ones defined in
the allowed modes. Only one or none values must be given.
</tp:docstring>
</property>
<!--
SupportedModes:
<property name="SupportedModes" type="u" access="read" tp:type="MM_MODEM_MODE">
<tp:docstring>
Access technology selection modes supported by the device. For POTS
devices, only the "any" mode will be returned.
</tp:docstring>
</property>
Bitmask of <link linkend="MMModemMode">MMModemMode</link> values,
specifying the access technologies supported by the device.
<property name="AllowedBands" type="t" access="read" tp:type="MM_MODEM_BAND">
<tp:docstring>
The radio frequency and technology bands the device is currently allowed
to use when connecting to a network. For POTS devices, only the "any"
value is supported.
</tp:docstring>
</property>
For POTS devices, only the
<link linkend="MM-MODEM-MODE-ANY:CAPS"><constant>MM_MODEM_MODE_ANY</constant></link>
mode will be returned.
-->
<property name="SupportedModes" type="u" access="read" />
<property name="SupportedBands" type="t" access="read" tp:type="MM_MODEM_BAND">
<tp:docstring>
Radio frequency and technology bands supported by the device. For POTS
devices, only the "any" value will be returned.
</tp:docstring>
</property>
<!--
AllowedModes:
Bitmask of <link linkend="MMModemMode">MMModemMode</link> values,
specifying the access technologies (eg 2G/3G/4G preference) the device
is currently allowed to use when connecting to a network.
It must be a subset of #org.freedesktop.ModemManager1.Modem:SupportedModes.
For POTS devices, only the
<link linkend="MM-MODEM-MODE-ANY:CAPS"><constant>MM_MODEM_MODE_ANY</constant></link>
mode is supported.
-->
<property name="AllowedModes" type="u" access="read" />
<!--
PreferredMode:
A single <link linkend="MMModemMode">MMModemMode</link> value,
specifying the preferred access technology (eg 2G/3G/4G), among the
ones defined in the allowed modes.
It must be one of the modes configured in
#org.freedesktop.ModemManager1.Modem:AllowedModes.
-->
<property name="PreferredMode" type="u" access="read" />
<!--
SupportedBands:
Bitmask of <link linkend="MMModemBand">MMModemBand</link> values,
specifying the radio frequency and technology bands supported by the
device.
For POTS devices, only the
<link linkend="MM-MODEM-BAND-ANY:CAPS"><constant>MM_MODEM_BAND_ANY</constant></link>
mode will be returned.
-->
<property name="SupportedBands" type="t" access="read" />
<!--
AllowedBands:
Bitmask of <link linkend="MMModemBand">MMModemBand</link> values,
specifying the radio frequency and technology bands the device is
currently allowed to use when connecting to a network.
It must be a subset of #org.freedesktop.ModemManager1.Modem:SupportedBands.
For POTS devices, only the
<link linkend="MM-MODEM-BAND-ANY:CAPS"><constant>MM_MODEM_BAND_ANY</constant></link>
mode is supported.
-->
<property name="AllowedBands" type="t" access="read" />
<!-- ENUMS -->

View File

@@ -1,104 +1,103 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Sim:
@short_description: The ModemManager SIM interface.
The SIM interface handles communication with SIM, USIM, and RUIM (CDMA
SIM) cards.
-->
<interface name="org.freedesktop.ModemManager1.Sim">
<tp:docstring>
Handles communication with SIM, USIM, and RUIM (CDMA SIM) cards.
</tp:docstring>
<method name="SendPuk">
<tp:docstring>
Send the PUK and a new PIN to unlock the SIM card.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_sim_send_puk"/>
<arg name="puk" type="s" direction="in">
<tp:docstring>
The PUK code.
</tp:docstring>
</arg>
<arg name="pin" type="s" direction="in">
<tp:docstring>
The PIN code.
</tp:docstring>
</arg>
</method>
<!--
SendPin:
@pin: A string containing the PIN code.
Send the PIN to unlock the SIM card.
-->
<method name="SendPin">
<tp:docstring>
Send the PIN to unlock the SIM card.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_sim_send_pin"/>
<arg name="pin" type="s" direction="in">
<tp:docstring>
The PIN code.
</tp:docstring>
</arg>
<arg name="pin" type="s" direction="in" />
</method>
<!--
SendPuk:
@puk: A string containing the PUK code.
@pin: A string containing the PIN code.
Send the PUK and a new PIN to unlock the SIM card.
-->
<method name="SendPuk">
<arg name="puk" type="s" direction="in" />
<arg name="pin" type="s" direction="in" />
</method>
<!--
EnablePin:
@pin: A string containing the PIN code.
@enabled: %TRUE to enable PIN checking, %FALSE otherwise.
Enable or disable the PIN checking.
-->
<method name="EnablePin">
<tp:docstring>
Enable or disable the PIN checking.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_sim_enable_pin"/>
<arg name="pin" type="s" direction="in">
<tp:docstring>
The PIN code.
</tp:docstring>
</arg>
<arg name="enabled" type="b" direction="in">
<tp:docstring>
True to enable PIN checking.
</tp:docstring>
</arg>
<arg name="pin" type="s" direction="in" />
<arg name="enabled" type="b" direction="in" />
</method>
<!--
ChangePin:
@old_pin: A string containing the current PIN code.
@new_pin: A string containing the new PIN code.
Change the PIN code.
-->
<method name="ChangePin">
<tp:docstring>
Change the PIN code.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_sim_change_pin"/>
<arg name="old_pin" type="s" direction="in">
<tp:docstring>
The current PIN code.
</tp:docstring>
</arg>
<arg name="new_pin" type="s" direction="in">
<tp:docstring>
The new PIN code.
</tp:docstring>
</arg>
<arg name="old_pin" type="s" direction="in" />
<arg name="new_pin" type="s" direction="in" />
</method>
<property name="SimIdentifier" type="s" access="read">
<tp:docstring>
An obfuscated SIM identifier based on the IMSI or the ICCID. This may
be available before the PIN has been entered depending on the device
itself.
</tp:docstring>
</property>
<!--
SimIdentifier:
An obfuscated SIM identifier based on the IMSI or the
ICCID.
This may be available before the PIN has been entered depending
on the device itself.
-->
<property name="SimIdentifier" type="s" access="read" />
<!--
Imsi:
<property name="Imsi" type="s" access="read">
<tp:docstring>
The IMSI of the SIM card, if any.
</tp:docstring>
</property>
-->
<property name="Imsi" type="s" access="read" />
<!--
OperatorId:
<property name="OperatorId" type="s" access="read">
<tp:docstring>
The ID of the network operator that issued the SIM card,
formatted as a 5 or 6-digit MCC/MNC code (e.g. "310410").
</tp:docstring>
</property>
formatted as a 5 or 6-digit MCC/MNC code (e.g. <literal>"310410"</literal>).
-->
<property name="OperatorIdentifier" type="s" access="read" />
<!--
OperatorName:
<property name="OperatorName" type="s" access="read">
<tp:docstring>
The name of the network operator, as given by the SIM card, if known.
</tp:docstring>
</property>
-->
<property name="OperatorName" type="s" access="read" />
</interface>
</node>

View File

@@ -1,75 +1,98 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1.Sms:
@short_description: The ModemManager SMS interface.
The SMS interface Defines operations and properties of a single SMS message.
-->
<interface name="org.freedesktop.ModemManager1.Sms">
<tp:docstring>
Defines operations and properties of a single SMS message.
</tp:docstring>
<!--
Delete:
<!-- METHODS -->
Delete the message.
-->
<method name="Delete" />
<method name="Delete">
<tp:docstring>
Deletes the message.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_sms_delete"/>
</method>
<!--
Send:
<method name="Send">
<tp:docstring>
If the message has not yet been sent, queue it for delivery.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_modem_sms_send"/>
</method>
-->
<method name="Send" />
<!-- PROPERTIES -->
<!--
State:
<property name="State" type="u" access="read" tp:type="MM_MODEM_SMS_STATE">
<tp:docstring>
Describes the state of the message.
</tp:docstring>
</property>
A <link linkend="MMModemSmsState">MMModemSmsState</link> value,
describing the state of the message.
-->
<property name="State" type="u" access="read" />
<property name="To" type="s" access="readwrite">
<tp:docstring>
Indicates the number to which the message is addressed.
</tp:docstring>
</property>
<!--
To:
<property name="Text" type="s" access="readwrite">
<tp:docstring>
Message text. When sending, if the text is larger than the limit of
the technology or modem, the message will be broken into multiple
parts or messages.
</tp:docstring>
</property>
Number to which the message is addressed.
-->
<property name="To" type="s" access="readwrite" />
<property name="Smsc" type="s" access="readwrite">
<tp:docstring>
Indicates the SMS service center number. Always empty for 3GPP2/CDMA.
</tp:docstring>
</property>
<!--
Text:
<property name="Validity" type="u" access="readwrite">
<tp:docstring>
Specifies when the SMS expires in the SMSC. Always 0 for 3GPP2/CDMA.
</tp:docstring>
</property>
Message text.
<property name="Class" type="u" access="readwrite">
<tp:docstring>
3GPP message class (0..3). Always 0 for 3GPP2/CDMA.
</tp:docstring>
</property>
When sending, if the text is larger than the limit of the technology or
modem, the message will be broken into multiple parts or messages.
-->
<property name="Text" type="s" access="readwrite" />
<property name="Timestamp" type="s" access="read">
<tp:docstring>
Time message was received or was sent in ISO8601 format.
</tp:docstring>
</property>
<!--
SMSC:
Indicates the SMS service center number.
Always empty for 3GPP2/CDMA.
-->
<property name="SMSC" type="s" access="readwrite" />
<!--
Validity:
Specifies when the SMS expires in the SMSC.
Always 0 for 3GPP2/CDMA.
-->
<property name="Validity" type="u" access="readwrite" />
<!--
Class:
3GPP message class (0..3).
Always 0 for 3GPP2/CDMA.
-->
<property name="Class" type="u" access="readwrite" />
<!--
Timestamp:
Time message was received or was sent, in
<ulink url="http://en.wikipedia.org/wiki/ISO_8601">ISO8601</ulink>
format.
-->
<property name="Timestamp" type="s" access="read" />
<!-- ENUMS -->

View File

@@ -1,28 +1,40 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<!--
ModemManager 0.6 Interface Specification
Copyright (C) 2008 Novell, Inc.
Copyright (C) 2008-2011 Red Hat, Inc.
Copyright (C) 2011 The Chromium OS Authors
Copyright (C) 2011 Google, Inc.
-->
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
org.freedesktop.ModemManager1:
@short_description: The ModemManager Manager interface.
The Manager interface allows controlling and querying the status of the
ModemManager daemon.
-->
<interface name="org.freedesktop.ModemManager1">
<!-- METHODS -->
<!--
ScanDevices:
<method name="ScanDevices">
<tp:docstring>
Start a new scan for connected modem devices.
</tp:docstring>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_scan_devices"/>
</method>
-->
<method name="ScanDevices" />
<!--
SetLogging:
@level: One of <literal>"ERR"</literal>, <literal>"WARN"</literal>, <literal>"INFO"</literal>, <literal>"DEBUG"</literal>.
<method name="SetLogging">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_set_logging"/>
<tp:docstring>
Set logging verbosity.
</tp:docstring>
<arg name="level" type="s" direction="in">
<tp:docstring>
One of [ERR, WARN, INFO, DEBUG].
</tp:docstring>
</arg>
-->
<method name="SetLogging">
<arg name="level" type="s" direction="in" />
</method>
</interface>