Confirmed users
978
edits
m (Reformat the interface block.) |
(Proposal: telephony call states to support call holding) |
||
| Line 42: | Line 42: | ||
readonly attribute TelephonyCall call; | readonly attribute TelephonyCall call; | ||
} | } | ||
<h3> Proposal: Enhance telephony call states to hold a call </h3> | |||
<p>The diagram below shows the current design of B2G telephony call states (white blocks) and the proposal for holding a call (yellow blocks). | |||
The diagram below shows the current design of B2G telephony call states (white blocks) and the proposal for holding a call (yellow blocks). | </p><p><br /> | ||
</p><p> State transition in detail: | |||
</p> | |||
<ul><li>Scenario #1: There is no other call on-line (current design)<br />When a remote party dials, a new call is generated with its call index (no. 1), and the call state now is CALL_STATE_INCOMING.<br />When user answers/hangs up the call, the call state is eventually pushed to CALL_STATE_CONNECTED/CALL_STATE_DISCONNECTED according to user's decision. | |||
< | </li><li>Scenario #2: There is already a call on-line<br />When the third party dials, a new call is generated with the state of CALL_STATE_INCOMING. Since there is already a call on-line, the new call's index is no. 2. When user answers the new call (call no. 2), its state is going to be transferred to CALL_STATE_CONNECTED. In the meanwhile, the state of the originally connected call (call no. 1) should be forced to CALL_STATE_HELD. <br /> | ||
</li><li>Scenario #3: User wants to hold a call when there's no waiting call<br />User can |HoldCall()| to change the call state from CALL_STATE_CONNECTED to CALL_STATE_HELD. User can |ResumeCall()| to make a call from CALL_STATE_HELD back to <br />CALL_STATE_CONNECTED. | |||
State transition in detail: | </li></ul> | ||
<p> <img src="/images/thumb/b/b9/Proposal_TelephonyCallStates_v2.png/777px-Proposal_TelephonyCallStates_v2.png" _fck_mw_filename="Proposal TelephonyCallStates v2.png" _fck_mw_width="778" _fck_mw_height="865" alt="Proposal of telephony call states to support call holding" /><br /> | |||
</p> | |||
=== Proposal: Enhance WebTelephony API to hold a call === | === Proposal: Enhance WebTelephony API to hold a call === | ||