
When receiving an SMS, if the encoding is either GSM7 or UCS2, we will treat the contents of the SMS as text; and if the encoding is either 8BIT or unknown, we will just dump the contents of the SMS as data. When creating an SMS, the user is not allowed to give both text and data, only one can be given. We will use by default 8BIT when data is given, and guess the best encoding if text is given. Note that it's still possible to have SMS with neither text nor data, as in delivery status reports. This commit also handles the split of the input data in order to make it fit into singlepart or multipart messages.
181 lines
5.1 KiB
XML
181 lines
5.1 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
|
<!--
|
|
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">
|
|
|
|
<!--
|
|
Send:
|
|
|
|
If the message has not yet been sent, queue it for delivery.
|
|
-->
|
|
<method name="Send" />
|
|
|
|
<!--
|
|
Store:
|
|
|
|
Store the message in the device if not already done.
|
|
|
|
This method requires a <link linkend="MMSmsStorage">MMSmsStorage</link>
|
|
value, describing the storage where this message is to be kept; or
|
|
<link linkend="MM-SMS-STORAGE-UNKNOWN:CAPS"><constant>MM_SMS_STORAGE_UNKNOWN</constant></link>
|
|
if the default storage should be used.
|
|
-->
|
|
<method name="Store">
|
|
<arg name="storage" type="u" direction="in" />
|
|
</method>
|
|
|
|
<!--
|
|
State:
|
|
|
|
A <link linkend="MMSmsState">MMSmsState</link> value,
|
|
describing the state of the message.
|
|
-->
|
|
<property name="State" type="u" access="read" />
|
|
|
|
<!--
|
|
PduType:
|
|
|
|
A <link linkend="MMSmsPduType">MMSmsPduType</link> value,
|
|
describing the type of PDUs used in the SMS message.
|
|
-->
|
|
<property name="PduType" type="u" access="read" />
|
|
|
|
<!--
|
|
Number:
|
|
|
|
Number to which the message is addressed.
|
|
-->
|
|
<property name="Number" type="s" access="read" />
|
|
|
|
<!--
|
|
Text:
|
|
|
|
Message text, in UTF-8.
|
|
|
|
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.
|
|
|
|
Note that Text and Data are never given at the same time.
|
|
-->
|
|
<property name="Text" type="s" access="read" />
|
|
|
|
<!--
|
|
Data:
|
|
|
|
Message data.
|
|
|
|
When sending, if the data is larger than the limit of the technology or
|
|
modem, the message will be broken into multiple parts or messages.
|
|
|
|
Note that Text and Data are never given at the same time.
|
|
-->
|
|
<property name="Data" type="ay" access="read" />
|
|
|
|
<!--
|
|
SMSC:
|
|
|
|
Indicates the SMS service center number.
|
|
|
|
Always empty for 3GPP2/CDMA.
|
|
-->
|
|
<property name="SMSC" type="s" access="read" />
|
|
|
|
<!--
|
|
Validity:
|
|
|
|
Specifies when the SMS expires in the SMSC.
|
|
|
|
Always 0 for 3GPP2/CDMA.
|
|
-->
|
|
<property name="Validity" type="u" access="read" />
|
|
|
|
<!--
|
|
Class:
|
|
|
|
3GPP message class (0..3).
|
|
|
|
Always 0 for 3GPP2/CDMA.
|
|
-->
|
|
<property name="Class" type="u" access="read" />
|
|
|
|
<!--
|
|
DeliveryReportRequest:
|
|
|
|
#TRUE if delivery report request is required, #FALSE otherwise.
|
|
-->
|
|
<property name="DeliveryReportRequest" type="b" access="read" />
|
|
|
|
<!--
|
|
MessageReference:
|
|
|
|
Message Reference of the last PDU sent/received within this SMS.
|
|
|
|
If the PDU type is
|
|
<link linkend="MM-SMS-PDU-TYPE-STATUS-REPORT:CAPS"><constant>MM_SMS_PDU_TYPE_STATUS_REPORT</constant></link>,
|
|
this field identifies the Message Reference of the PDU associated to the status report.
|
|
-->
|
|
<property name="MessageReference" type="u" access="read" />
|
|
|
|
<!--
|
|
Timestamp:
|
|
|
|
Time when the first PDU of the SMS message arrived the SMSC, in
|
|
<ulink url="http://en.wikipedia.org/wiki/ISO_8601">ISO8601</ulink>
|
|
format.
|
|
This field is only applicable if the PDU type is
|
|
<link linkend="MM-SMS-PDU-TYPE-DELIVER:CAPS"><constant>MM_SMS_PDU_TYPE_DELIVER</constant></link>.
|
|
or
|
|
<link linkend="MM-SMS-PDU-TYPE-STATUS-REPORT:CAPS"><constant>MM_SMS_PDU_TYPE_STATUS_REPORT</constant></link>.
|
|
-->
|
|
<property name="Timestamp" type="s" access="read" />
|
|
|
|
<!--
|
|
DischargeTimestamp:
|
|
|
|
Time when the first PDU of the SMS message left the SMSC, in
|
|
<ulink url="http://en.wikipedia.org/wiki/ISO_8601">ISO8601</ulink>
|
|
format.
|
|
|
|
This field is only applicable if the PDU type is
|
|
<link linkend="MM-SMS-PDU-TYPE-STATUS-REPORT:CAPS"><constant>MM_SMS_PDU_TYPE_STATUS_REPORT</constant></link>.
|
|
-->
|
|
<property name="DischargeTimestamp" type="s" access="read" />
|
|
|
|
<!--
|
|
DeliveryState:
|
|
|
|
A <link linkend="MMSmsDeliveryState">MMSmsDeliveryState</link> value,
|
|
describing the state of the delivery reported in the Status Report message.
|
|
|
|
This field is only applicable if the PDU type is
|
|
<link linkend="MM-SMS-PDU-TYPE-STATUS-REPORT:CAPS"><constant>MM_SMS_PDU_TYPE_STATUS_REPORT</constant></link>.
|
|
-->
|
|
<property name="DeliveryState" type="u" access="read" />
|
|
|
|
<!--
|
|
Storage:
|
|
|
|
A <link linkend="MMSmsStorage">MMSmsStorage</link> value,
|
|
describing the storage where this message is kept.
|
|
-->
|
|
<property name="Storage" type="u" access="read" />
|
|
|
|
</interface>
|
|
</node>
|