Copyright © 2008-2010 Nokia Corporation Copyright © 2010 Collabora Ltd.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

(as stable API)

This interface is for various cellular things (GSM and/or CDMA) that aren't really applicable to other protocols.

Define how long should the service centre try message delivery before giving up, failing delivery and deleting the message. A value of 0 means to use the service centre's default period.

The value specified is in seconds. Note that various protocols or implementations may round the value up (eg. to a minute or hour precision). The maximum validity period may vary depending on protocol or provider.

Previously, as an undocumented feature, setting MessageServiceCentre to the empty string caused the SIM's default SMSC to be used.

If True, SMSes will be sent via the service centre specified by MessageServiceCentre. If False, the SIM's default SMSC will be used, ignoring the value of MessageServiceCentre.

It could be desirable for a configuration interface to remember the user's previous choice of custom SMSC, even if it's not in use. This boolean allows that choice to be saved as an account parameter by Mission Control, rather than the UI needing to save it elsewhere to be restored if the user wants to reactivate it.

This property's value is now ignored unless OverrideMessageServiceCentre is True.

Address for the messaging service centre. Typically (as is the case for GSM's SMSC), it's the ISDN / telephony address (ie. a phone number). If OverrideMessageServiceCentre is False, this property's value should be ignored by the CM in favour of the SIM's default SMSC.

The International Mobile Subscriber Identifier, if it exists. This would originate from a SIM card. If the IMSI is unknown, this will contain an empty string ("").

Emitted when the IMSI for the connection changes. This sort of thing is rare, but could happen on cellular phones that allow hot-swapping of SIM cards. In the case of SIM swapping, this signal would be emitted twice; the first time while the SIM is being ejected (with an empty string), and the second time after a new SIM has been inserted (assuming that the IMSI can be determined from the new SIM). The new IMSI value. This may be an empty string in the case where the IMSI is being reset or removed.

Determines how to encode SMSes containing characters that do not fit into a non-Unicode character set. If False (which SHOULD be the default), messages will be encoded as UCS-2 and sent with no loss of fidelity (at the potential financial cost of using twice as many SMSes); if True, the message will be recoded in an implementation‐specific way to fit into a GSM reduced character set.

Hint for the connection manager for the GSM character set that should be used to send SMSes. The connection manager SHOULD follow this hint unless it has other ways to determine a better encoding. If the value is "gsm" (which SHOULD be the default), SMSes will be encoded in the normal 7-bit GSM character set, eventually falling back to UCS-2; see the MessageReducedCharacterSet property for details. Other valid character sets are specified in the GSM standard and are, for instance, "turkey", "spain" or "portugal". If the SMS cannot be encoded using the requested character set the behaviour is implementation-specific, but it is RECOMMENDED that the connection manager should behave as if this property was set to "gsm".