Skip to content

How are Calls joined together in JoinType.DIRECT mode?

wchen edited this page Jul 4, 2011 · 12 revisions

When the application joins to Call together, there are different permutations of underlying signaling message sequences based on the Calls' states and roles (UAC or UAS).

The relevant Call's states are defined below, based on the SIP implementation in Moho.

  • Initialized: The Call is initialized but neither invited or inviting. The Call must be in INITIALIZED state. This applies to Outbound Call only.
  • Unanswered: The Call is invited or inviting but no final response has been sent or received. The Call must in one of the INVITING, PROGRESSING, PROGRESSED, and RINGING states.
  • Answered: The Call has received the final response. The Call must be ANSWERED state.

The following table shows the supported permutations when two Inbound Calls (UAS) are joined.

Inbound Call (UAS) Inbound Call (UAS) SIP Sequence
State Unanswered Unanswered 7
Answered Unanswered 5
Answered Answered 1

The following table shows the supported permutations when an Inbound Calls (UAS) is joined with an Outbound Call (UAC).

Inbound Call (UAS) Outbound Call (UAC) SIP Sequence
State Unanswered Initialized 8
Unanswered Unanswered 5
Answered Initialized 1
Answered Answered 1
Answered Answered 1
Answered Answered 1
Answered Answered 1

DIRECT Join Answered Inbound Call and Initialized Outbound Call

3

DIRECT Join Answered Inbound Call and Answered Outbound Call

2

DIRECT Join Unanswered Inbound Call and Answered Inbound Call

5

DIRECT Join Unanswered Inbound Call and Initialized Outbound Call

8

DIRECT Join Unanswered Inbound Call and Answered Outbound Call

6

DIRECT Join Unanswered Inbound Call and Unanswered Inbound Call

7

DIRECT Join Initialized Outbound Call and Answered Outbound Call

9

DIRECT Join Initialized Outbound Call and Initialized Outbound Call

10

DIRECT Join Answered Outbound Call and Answered Outbound Call

4

Clone this wiki locally