r294 - trunk/specifications/otapi
smartphones-commits at linuxtogo.org
smartphones-commits at linuxtogo.org
Sat May 3 01:13:11 CEST 2008
Author: mickeylauer
Date: 2008-05-03 01:13:11 +0200 (Sat, 03 May 2008)
New Revision: 294
Modified:
trunk/specifications/otapi/org.freesmartphone.GSM.Call.xml.in
Log:
otapi/org.freesmartphone.GSM.Call.xml.in: simplify and improve call progress signals based on
spyre's comments. This feels much better now.
Modified: trunk/specifications/otapi/org.freesmartphone.GSM.Call.xml.in
===================================================================
--- trunk/specifications/otapi/org.freesmartphone.GSM.Call.xml.in 2008-05-02 14:05:39 UTC (rev 293)
+++ trunk/specifications/otapi/org.freesmartphone.GSM.Call.xml.in 2008-05-02 23:13:11 UTC (rev 294)
@@ -24,14 +24,45 @@
</arg>
</method>
- <signal name="IncomingCall">
+ <signal name="CallStatus">
<doc:doc>
- <doc:description>Sent frequently whenever there is an incoming call.</doc:description>
+ <doc:description>
+ Sent whenever there is any status or property change on a call in the system,
+ no matter whether this is an incoming, active, held, or released call.
+ </doc:description>
<doc:inote>This signal is emitted once for every 'RING' from the modem.</doc:inote>
</doc:doc>
- <arg name="type" type="s" />
- <arg name="number" type="s" />
- <arg type="i" name="id" />
+ <arg type="i" name="id">
+ <doc:doc>
+ <doc:summary>The index of the call that changed its status or properties.</doc:summary>
+ </doc:doc>
+ </arg>
+ <arg type="s" name="status">
+ <doc:doc>
+ <doc:summary>
+ The new status of the call. Expected values are:
+ "incoming" = The call is incoming (but not yet accepted),
+ "outgoing" = The call is outgoing (but not yet established),
+ "active" = The call is the active call (you can talk),
+ "held" = The call is being held,
+ "released" = The call is being released.
+ Further information can be part of the properties.
+ </doc:summary>
+ </doc:doc>
+ </arg>
+ <arg type="a{sv}" name="properties">
+ <doc:doc>
+ <doc:summary>
+ An array of changed property values. To get the full status for a call,
+ you need to issue the GetCallStatus() method. Note that the properties
+ are optional. Expected tuples are:
+ ( "number", string ) = The number of the peer (on incoming calls only if we received a CLIP)
+ ... [ add more here ]
+ ( "auxstatus", string ) = An auxillary connection status (if your modem supports that),
+ ...
+ </doc:summary>
+ </doc:doc>
+ </arg>
</signal>
<method name="Activate">
@@ -45,18 +76,6 @@
<arg type="i" name="id" direction="in" />
</method>
- <signal name="ActivatedCall">
- <doc:doc>
- <doc:description>
- Sent whenever a call becomes the active call. No difference is made whether this
- is a new call or a call that has been put on hold.
- </doc:description>
- </doc:doc>
- <arg name="type" type="s" />
- <arg name="number" type="s" />
- <arg type="i" name="id" />
- </signal>
-
<method name="Hold">
<annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
@@ -65,15 +84,6 @@
<arg type="i" name="id" direction="in" />
</method>
- <signal name="HeldCall">
- <doc:doc>
- <doc:description>Sent whenever a call has been put on hold.</doc:description>
- </doc:doc>
- <arg name="type" type="s" />
- <arg name="number" type="s" />
- <arg type="i" name="id" />
- </signal>
-
<method name="Release">
<annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
@@ -83,18 +93,6 @@
<arg type="i" name="id" direction="in" />
</method>
- <signal name="ReleasedCall">
- <doc:doc>
- <doc:description>
- Sent whenever a call has been released. No difference is made whether
- this was the active call or a call that has been put on hold.
- </doc:description>
- </doc:doc>
- <arg type="b" name="success" />
- <arg type="s" name="reason" />
- <arg type="i" name="id" />
- </signal>
-
<method name="ReleaseAll">
<annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
@@ -108,9 +106,7 @@
<doc:doc>
<doc:description>Initiate an outgoing call.</doc:description>
<doc:inote>
- The next guaranteed signal you will receive is either
- 'ReleasedCall' (in case the peer rejects the call), or
- 'ActivatedCall' (in case the peer takes the call).
+ This is implemented using the atd command.
</doc:inote>
</doc:doc>
<arg type="s" name="number" direction="in" />
@@ -118,61 +114,71 @@
<arg type="i" name="id" direction="out" />
</method>
- <signal name="CallProgress">
+ <method name="ListCalls">
+ <annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
- <doc:description>Optional: Sent when a call changes progress.</doc:description>
- <doc:inote>This maps to a GSM extension command not specified by standards.</doc:inote>
+ <doc:description>Retrieve indices of calls.</doc:description>
</doc:doc>
- <arg type="s" name="progress">
+ <arg type="a(i)" name="calls" direction="out">
<doc:doc>
- <doc:summary>
- The call progress. Expected values are:
- "Setting up",
- "Disconnect",
- "Alert",
- "Proceed",
- "Sync",
- "Progress",
- "Connected",
- "Release",
- "Reject",
- "Unknown".
- </doc:summary>
+ <doc:summary>Indices of calls in the system.</doc:summary>
</doc:doc>
</arg>
- <arg type="i" name="id">
- <doc:doc>
- <doc:description>Index of call that changed call progress.</doc:description>
- </doc:doc>
- </arg>
- </signal>
+ </method>
- <method name="ListCalls">
+ <method name="GetCallStatus">
<annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
- <doc:description>Retreive list of calls.</doc:description>
+ <doc:description>Retrieve the status for a call in the system.</doc:description>
</doc:doc>
- <arg type="a{isb}" name="calls" direction="out">
+ <arg type="i" name="id" direction="in">
<doc:doc>
+ <doc:summary>The index of the call that you want to retreive the status for.</doc:summary>
+ </doc:doc>
+ </arg>
+ <arg type="i" name="id" direction="out">
+ <doc:doc>
+ <doc:summary>The index of the call.</doc:summary>
+ <doc:inote>This is repeated here to be in line with the signature of the signal CallStatus.</doc:inote>
+ </doc:doc>
+ </arg>
+ <arg type="s" name="status" direction="out">
+ <doc:doc>
<doc:summary>
- The calls. Expected structure decomposes to:
- 1. Index,
- 2. Number of the peer,
- 3. True, if it is the active call, False otherwise.
+ The new status of the call. Expected values are:
+ "incoming" = The call is incoming (but not yet accepted),
+ "outgoing" = The call is outgoing (but not yet established),
+ "active" = The call is the active call (you can talk),
+ "held" = The call is being held,
+ "released" = The call is being released.
+ Further information can be part of the properties.
</doc:summary>
</doc:doc>
</arg>
+ <arg type="a{sv}" name="properties">
+ <doc:doc>
+ <doc:summary>
+ An array of changed property values. To get the full status for a call,
+ you need to issue the GetCallStatus() method. Note that the properties
+ are optional. Expected tuples are:
+ ( "number", string ) = The number of the peer (on incoming calls only if we received a CLIP)
+ ... [ add more here ]
+ ( "auxstatus", string ) = An auxillary connection status (if your modem supports that),
+ ...
+ </doc:summary>
+ </doc:doc>
+ </arg>
</method>
<method name="SendDtmf">
<annotation name="org.freedesktop.DBus.GLib.Async" value="fso_gsm_call" />
<doc:doc>
- <doc:description>Send a Dual Tone Multiple Frequency (DTMF) signal during a call.</doc:description>
+ <doc:description>Send a Dual Tone Multiple Frequency (DTMF) signal during an active call.</doc:description>
<doc:inote>This maps to the TIA IS 101 command +VTS=(value), see 3GPP TS 07.07 Chapter C.2.11.</doc:inote>
</doc:doc>
- <arg type="s" name="signal" direction="out">
+ <arg type="s" name="tone" direction="out">
<doc:doc>
- <doc:summary>The signal to sent. Expected valid values are: (0-9,#,*,A-D)</doc:summary>
+ <doc:summary>The tone to send. Allowed values are: (0-9,#,*,A-D)</doc:summary>
</doc:doc>
</arg>
</method>
More information about the Smartphones-commits
mailing list