Adding an audio/video call is similar to adding an instant messaging (IM) call. When a call is added to a conversation, we say that a new modality is added to the conversation. Adding a modality can be done in a conversation when the conversation is in two-party or conference mode. When a call is established, the corresponding provider is asked for the offer that contains the media types needed for the call. These media types are dependent on how the flow is configured by the application. After a successful offer/answer is negotiated on the call, the corresponding media types are locked in the conversation. It is not possible to add additional calls that want to negotiate the locked media types.
When a call is added, the remote participant for the call itself depends on the state of the conversation. If the conversation is in two-party mode, the remote participant is same as the remote participant of the conversation. If the conversation is in conference mode, the remote participant is the Multipoint Control Unit (MCU) corresponding to the default media type of the call. This requires that the corresponding MCU sessions are bound to the conference session and the session joined.