Warning, /frameworks/modemmanager-qt/src/dbus/introspection/org.freedesktop.ModemManager1.Modem.Location.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8" ?>
0002 
0003 <!--
0004  ModemManager 1.0 Interface Specification
0005 
0006    Copyright (C) 2008 Novell, Inc.
0007    Copyright (C) 2008-2013 Red Hat, Inc.
0008    Copyright (C) 2011-2013 Google, Inc.
0009    Copyright (C) 2011-2013 Lanedo GmbH
0010 -->
0011 
0012 <node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
0013 
0014   <!--
0015       org.freedesktop.ModemManager1.Modem.Location:
0016       @short_description: The ModemManager Location interface.
0017 
0018       The Location interface allows devices to provide location information to
0019       client applications. Not all devices can provide this information, or even
0020       if they do, they may not be able to provide it while a data session is
0021       active.
0022   -->
0023   <interface name="org.freedesktop.ModemManager1.Modem.Location">
0024 
0025     <!--
0026         Setup:
0027         @sources: Bitmask of <link linkend="MMModemLocationSource">MMModemLocationSource</link> flags, specifying which sources should get enabled or disabled. <link linkend="MM-MODEM-LOCATION-SOURCE-NONE:CAPS">MM_MODEM_LOCATION_SOURCE_NONE</link> will disable all location gathering.
0028         @signal_location: Flag to control whether the device emits signals with the new location information. This argument is ignored when disabling location information gathering.
0029 
0030         Configure the location sources to use when gathering location
0031         information. Also enable or disable location information gathering.
0032         This method may require the client to authenticate itself.
0033 
0034         When signals are emitted, any client application (including malicious
0035         ones!) can listen for location updates unless D-Bus permissions restrict
0036         these signals from certain users. If further security is desired, the
0037         @signal_location argument can be set to %FALSE to disable location
0038         updates via D-Bus signals and require applications to call
0039         authenticated APIs (like
0040         <link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.GetLocation">GetLocation()</link>
0041         ) to get
0042         location information.
0043     -->
0044     <method name="Setup">
0045       <arg name="sources"         type="u" direction="in" />
0046       <arg name="signal_location" type="b" direction="in" />
0047     </method>
0048 
0049     <!--
0050         GetLocation:
0051         @location: Dictionary of available location information when location information gathering is enabled.
0052 
0053         Return current location information, if any. If the modem supports
0054         multiple location types it may return more than one. See the
0055         #org.freedesktop.ModemManager1.Modem.Location:Location property
0056         for more information on the dictionary returned at @location.
0057 
0058         This method may require the client to authenticate itself.
0059     -->
0060     <method name="GetLocation">
0061       <arg name="Location" type="a{uv}" direction="out">
0062         <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="LocationInformationMap"/>
0063       </arg>
0064     </method>
0065 
0066     <!--
0067         Capabilities:
0068 
0069         Bitmask of <link linkend="MMModemLocationSource">MMModemLocationSource</link>
0070         values, specifying the supported location sources.
0071     -->
0072     <property name="Capabilities" type="u" access="read" />
0073 
0074     <!--
0075         Enabled:
0076 
0077         Bitmask specifying which of the supported
0078         <link linkend="MMModemLocationSource">MMModemLocationSource</link>
0079         location sources is currently enabled in the device.
0080     -->
0081     <property name="Enabled" type="u" access="read" />
0082 
0083     <!--
0084         SignalsLocation:
0085 
0086         %TRUE if location updates will be emitted via D-Bus signals, %FALSE if
0087         location updates will not be emitted.
0088 
0089         See the
0090         <link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.Setup">Setup()</link>
0091         method for more information.
0092     -->
0093     <property name="SignalsLocation" type="b" access="read" />
0094 
0095     <!--
0096         Location:
0097 
0098         Dictionary of available location information when location information
0099         gathering is enabled. If the modem supports multiple location types it
0100         may return more than one here.
0101 
0102         Note that if the device was told not to emit updated location
0103         information when location information gathering was initially enabled,
0104         this property may not return any location information for security reasons.
0105 
0106         This dictionary is composed of a
0107         <link linkend="MMModemLocationSource">MMModemLocationSource</link>
0108         key, with an associated data which contains type-specific location
0109         information:
0110 
0111         <variablelist>
0112         <varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-3GPP-LAC-CI:CAPS">MM_MODEM_LOCATION_SOURCE_3GPP_LAC_CI</link></term>
0113           <listitem>
0114             <para>
0115               Devices supporting this
0116               capability return a string in the format <literal>"MCC,MNC,LAC,CI"</literal> (without the
0117               quotes of course) where the following applies:
0118             </para>
0119             <variablelist>
0120               <varlistentry><term><literal>MCC</literal></term>
0121                 <listitem>
0122                   This is the three-digit ITU E.212 Mobile Country Code of the
0123                   network provider to which the mobile is currently registered.
0124                   e.g. <literal>"310"</literal>.
0125                 </listitem>
0126               </varlistentry>
0127               <varlistentry><term><literal>MNC</literal></term>
0128                 <listitem>
0129                   This is the two- or three-digit GSM Mobile Network Code of the
0130                   network provider to which the mobile is currently registered.
0131                   e.g. <literal>"26"</literal> or <literal>"260"</literal>.
0132                 </listitem>
0133               </varlistentry>
0134               <varlistentry><term><literal>LAC</literal></term>
0135                 <listitem>
0136                   This is the two-byte Location Area Code of the base station with
0137                   which the mobile is registered, in upper-case hexadecimal format
0138                   without leading zeros, as specified in 3GPP TS 27.007 section
0139                   10.1.19. e.g. <literal>"84CD"</literal>.
0140                 </listitem>
0141               </varlistentry>
0142               <varlistentry><term><literal>CI</literal></term>
0143                 <listitem>
0144                   This is the two- or four-byte Cell Identifier with which the mobile
0145                   is registered, in upper-case hexadecimal format without leading
0146                   zeros, as specified in 3GPP TS 27.007.
0147                   e.g. <literal>"2BAF"</literal> or <literal>"D30156"</literal>.
0148                 </listitem>
0149               </varlistentry>
0150             </variablelist>
0151             <para>
0152               The entire string may only be composed of the ASCII digits <literal>[0-9]</literal>,
0153               the alphabetical characters <literal>[A-F]</literal>, and the comma (<literal>,</literal>) character.
0154               No other characters are allowed.  For example: <literal>"310,260,8BE3,2BAF"</literal> or
0155               <literal>"250,40,CE00,1CEAD8F0"</literal>.
0156             </para>
0157             <para>
0158               If any of these four items (<literal>MCC</literal>, <literal>MNC</literal>,
0159               <literal>LAC</literal>, <literal>CI</literal>) is unknown or the
0160               mobile is not registered with a network, then the
0161               <link linkend="MM-MODEM-LOCATION-SOURCE-3GPP-LAC-CI:CAPS">MM_MODEM_LOCATION_SOURCE_3GPP_LAC_CI</link>
0162               location
0163               information item should not be provided as a returned value from the
0164               <link linkend="gdbus-method-org-freedesktop-ModemManager1-Modem-Location.GetLocation">GetLocation()</link>
0165               method or in the #org.freedesktop.ModemManager1.Modem.Location:Location property.
0166             </para>
0167           </listitem>
0168         </varlistentry>
0169         <varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-GPS-RAW:CAPS">MM_MODEM_LOCATION_SOURCE_GPS_RAW</link></term>
0170           <listitem>
0171             <para>
0172               Devices supporting this
0173               capability return a D-Bus dictionary (signature <literal>"a{sv}"</literal>) mapping well-known
0174               keys to values with defined formats.
0175             </para>
0176             <para>
0177               The allowed key/value pairs and their formats are:
0178             </para>
0179             <variablelist>
0180               <varlistentry><term><literal>"utc-time"</literal></term>
0181                 <listitem>
0182                   (Required) UTC time in ISO 8601 format, given as a string value (signature <literal>"s"</literal>). e.g. <literal>203015</literal>.
0183                 </listitem>
0184               </varlistentry>
0185               <varlistentry><term><literal>"latitude"</literal></term>
0186                 <listitem>
0187                   (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.
0188                 </listitem>
0189               </varlistentry>
0190               <varlistentry><term><literal>"longitude"</literal></term>
0191                 <listitem>
0192                   (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.
0193                 </listitem>
0194               </varlistentry>
0195               <varlistentry><term><literal>"altitude"</literal></term>
0196                 <listitem>
0197                   (Optional) Altitude above sea level in meters, given as a double value (signature <literal>"d"</literal>). e.g. <literal>33.5</literal>.
0198                 </listitem>
0199               </varlistentry>
0200             </variablelist>
0201           </listitem>
0202         </varlistentry>
0203         <varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-GPS-NMEA:CAPS">MM_MODEM_LOCATION_SOURCE_GPS_NMEA</link></term>
0204           <listitem>
0205             <para>
0206               Devices supporting this capability return
0207               a string containing one or more NMEA sentences (D-Bus signature <literal>'s'</literal>).
0208               The manager will cache the most recent NMEA sentence of each type for
0209               a period of time not less than 30 seconds.  When reporting multiple
0210               NMEA sentences, sentences shall be separated by an ASCII Carriage
0211               Return and Line Feed (<literal>&lt;CR&gt;&lt;LF&gt;</literal>) sequence.
0212             </para>
0213             <para>
0214               For example, if the device sends a <literal>$GPRMC</literal> sentence immediately
0215               followed by a <literal>$GPGGA</literal> sentence, the reported location string would be
0216               (where of course the <literal>&lt;CR&gt;&lt;LF&gt;</literal> is replaced with the actual
0217               ASCII <literal>CR</literal> (0x0D) and <literal>LF</literal> (0x0A) control characters):
0218               <para><literal>
0219                 $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
0220               </literal></para>
0221               If the device sends a new <literal>$GPRMC</literal> three seconds later, the new <literal>$GPRMC</literal>
0222               replaces the previously received <literal>$GPRMC</literal> sentence, and the updated
0223               string would be:
0224               <para><literal>
0225                 $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
0226               </literal></para>
0227               If the device then sends a <literal>$GPGSA</literal> sentence about 5 seconds later, the
0228               <literal>$GPGSA</literal> sentence is added to the string (since no <literal>$GPGSA</literal> sentence was
0229               obviously received in this session), the updated string would be:
0230               <para><literal>
0231                 $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
0232               </literal></para>
0233               The manager may discard any cached sentences older than 30 seconds.
0234             </para>
0235             <para>
0236               This allows clients to read the latest positioning data as soon as
0237               possible after they start, even if the device is not providing
0238               frequent location data updates.
0239             </para>
0240           </listitem>
0241         </varlistentry>
0242         <varlistentry><term><link linkend="MM-MODEM-LOCATION-SOURCE-CDMA-BS:CAPS">MM_MODEM_LOCATION_SOURCE_CDMA_BS</link></term>
0243           <listitem>
0244             <para>
0245               Devices supporting this
0246               capability return a D-Bus dictionary (signature <literal>"a{sv}"</literal>) mapping well-known
0247               keys to values with defined formats.
0248             </para>
0249             <para>
0250               The allowed key/value pairs and their formats are:
0251             </para>
0252             <variablelist>
0253               <varlistentry><term><literal>"latitude"</literal></term>
0254                 <listitem>
0255                   (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.
0256                 </listitem>
0257               </varlistentry>
0258               <varlistentry><term><literal>"longitude"</literal></term>
0259                 <listitem>
0260                   (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.
0261                 </listitem>
0262               </varlistentry>
0263             </variablelist>
0264           </listitem>
0265         </varlistentry>
0266         </variablelist>
0267     -->
0268     <property name="Location" type="a{uv}" access="read">
0269       <annotation name="org.qtproject.QtDBus.QtTypeName" value="LocationInformationMap"/>
0270     </property>
0271 
0272   </interface>
0273 </node>