summaryrefslogtreecommitdiff
path: root/spec/Connection_Interface_Cellular.xml
blob: 3dc29e3298ae411c4daabe61f88fa50e15c56903 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
<?xml version="1.0" ?>
<node name="/Connection_Interface_Cellular"
  xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">

  <tp:copyright>Copyright © 2008-2010 Nokia Corporation</tp:copyright>
  <tp:copyright>Copyright © 2010 Collabora Ltd.</tp:copyright>
  <tp:license xmlns="http://www.w3.org/1999/xhtml">
    <p>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.</p>

    <p>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.</p>

    <p>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.</p>
  </tp:license>

  <interface name="org.freedesktop.Telepathy.Connection.Interface.Cellular">
    <tp:added version="0.19.8">(as stable API)</tp:added>

    <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
      <p>This interface is for various cellular things (GSM and/or CDMA) that
        aren't really applicable to other protocols.</p>
    </tp:docstring>

    <property name="MessageValidityPeriod" tp:name-for-bindings="Message_Validity_Period"
      type="u" access="readwrite">
      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
        <p>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.</p>

        <p>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.</p>

        <p>Connections with this interface SHOULD provide this property as a
          parameter of the same (fully-qualified) name to <tp:dbus-ref
            namespace="org.freedesktop.Telepathy"
            >ConnectionManager.RequestConnection</tp:dbus-ref>, with the
          <code>DBus_Property</code> flag. For connections managed by the
          <tp:dbus-ref
          namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>,
          this property SHOULD be set via the Account Manager as follows:</p>

        <blockquote>
          <code><tp:dbus-ref namespace="org.freedesktop.Telepathy.Account"
            >UpdateParameters</tp:dbus-ref>({
              "org.freedesktop.Telepathy.Connection.Interface.Cellular.MessageValidityPeriod": <var>new_validity_period</var>
              }, [])</code>
        </blockquote>

        <p>The AccountManager provides change-notification, as long as all
          other clients cooperate by using it instead of setting this property
          directly.</p>
      </tp:docstring>
    </property>

    <property name="OverrideMessageServiceCentre"
        tp:name-for-bindings="Override_Message_Service_Centre"
        type="b" access="readwrite">
      <tp:added version='0.19.12'>Previously, as an undocumented
        feature, setting <tp:member-ref>MessageServiceCentre</tp:member-ref>
        to the empty string caused the SIM's default SMSC to be used.</tp:added>
      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
        <p>If <code>True</code>, SMSes will be sent via the service centre
          specified by <tp:member-ref>MessageServiceCentre</tp:member-ref>. If
          <code>False</code>, the SIM's default SMSC will be used, ignoring the
          value of MessageServiceCentre.</p>

        <tp:rationale>
          <p>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.</p>
        </tp:rationale>

        <p>Connections with this interface SHOULD provide this property as a
          parameter of the same (fully-qualified) name to <tp:dbus-ref
            namespace="org.freedesktop.Telepathy"
            >ConnectionManager.RequestConnection</tp:dbus-ref>, with the
          <code>DBus_Property</code> flag. For connections managed by the
          <tp:dbus-ref
          namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>,
          this property SHOULD be set via the Account Manager as follows:</p>

        <blockquote>
          <code><tp:dbus-ref namespace="org.freedesktop.Telepathy.Account"
            >UpdateParameters</tp:dbus-ref>({
              "org.freedesktop.Telepathy.Connection.Interface.Cellular.OverrideMessageServiceCentre": True
              }, [])</code>
        </blockquote>

        <p>The AccountManager provides change-notification, as long as all
          other clients cooperate by using it instead of setting this property
          directly.</p>
      </tp:docstring>
    </property>

    <property name="MessageServiceCentre" tp:name-for-bindings="Message_Service_Centre"
      type="s" access="readwrite">
      <tp:changed version='0.19.12'>This property's value is now
        ignored unless
        <tp:member-ref>OverrideMessageServiceCentre</tp:member-ref> is
        <code>True</code>.</tp:changed>

      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">

        <p>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
          <tp:member-ref>OverrideMessageServiceCentre</tp:member-ref> is
          <code>False</code>, this property's value should be ignored by the CM
          in favour of the SIM's default SMSC.</p>

        <p>Connections with this interface SHOULD provide this property as a
          parameter of the same (fully-qualified) name to <tp:dbus-ref
            namespace="org.freedesktop.Telepathy"
            >ConnectionManager.RequestConnection</tp:dbus-ref>, with the
          <code>DBus_Property</code> flag. For connections managed by the
          <tp:dbus-ref
          namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>,
          this property SHOULD be set via the Account Manager as follows:</p>

        <blockquote>
          <code><tp:dbus-ref namespace="org.freedesktop.Telepathy.Account"
            >UpdateParameters</tp:dbus-ref>({
              "org.freedesktop.Telepathy.Connection.Interface.Cellular.MessageServiceCentre": <var>new_smsc_address</var>
              }, [])</code>
        </blockquote>

        <p>The AccountManager provides change-notification, as long as all
          other clients cooperate by using it instead of setting this property
          directly.</p>
      </tp:docstring>
    </property>

    <property name="IMSI" tp:name-for-bindings="IMSI" type="s" access="read">
      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
        <p>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 ("").</p>
      </tp:docstring>
    </property>

    <signal name="IMSIChanged" tp:name-for-bindings="IMSI_Changed">
      <tp:docstring>
        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).
      </tp:docstring>

      <arg name="IMSI" type="s">
        <tp:docstring>
          The new IMSI value.  This may be an empty string in the case where
          the IMSI is being reset or removed.
        </tp:docstring>
      </arg>
    </signal>

    <property name="MessageReducedCharacterSet"
      tp:name-for-bindings="Message_Reduced_Character_Set"
      type="b" access="readwrite">
      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
        <p>Determines whether SMSes containing characters that do not fit into
          a 7‐bit GSM character set should be sent as UCS‐2, or lossily
          recoded. If <code>False</code> (which SHOULD be the default),
          messages will be sent with no loss of fidelity (at the potential
          financial cost of using twice as many SMSes); if <code>True</code>,
          the message will be recoded in an implementation‐specific way to fit
          into a country‐specific GSM reduced character set.</p>

        <p>Connections with this interface SHOULD provide this property as a
          parameter of the same (fully-qualified) name to <tp:dbus-ref
            namespace="org.freedesktop.Telepathy"
            >ConnectionManager.RequestConnection</tp:dbus-ref>, with the
          <code>DBus_Property</code> flag. For connections managed by the
          <tp:dbus-ref
          namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>,
          this property SHOULD be set via the Account Manager as follows:</p>

        <blockquote>
          <code><tp:dbus-ref namespace="org.freedesktop.Telepathy.Account"
            >UpdateParameters</tp:dbus-ref>({
              "org.freedesktop.Telepathy.Connection.Interface.Cellular.MessageReducedCharacterSet": <var>new_value</var>
              }, [])</code>
        </blockquote>

        <p>The AccountManager provides change-notification, as long as all
          other clients cooperate by using it instead of setting this property
          directly.</p>
      </tp:docstring>
    </property>
  </interface>
</node>
<!-- vim:set sw=2 sts=2 et ft=xml: -->