/// <summary> /// Send a re-INVITE request to put the remote call party on hold. /// </summary> public void PutOnHold() { LocalOnHold = true; // The action we take to put a call on hold is to switch the media status // to sendonly and change the audio input from a capture device to on hold // music. AdjustSdpForMediaState(LocalSDP); SessionMediaChanged?.Invoke(LocalSDP.ToString()); }
/// <summary> /// Gets the a basic Session Description Protocol object that describes this RTP session. /// </summary> /// <param name="destinationAddress">The RTP socket we will be to. This determines /// which local IP address will be put in the offer.</param> /// <returns>An Session Description Protocol object that can be sent to a remote callee.</returns> public Task <string> CreateOffer(IPAddress destinationAddress = null) { LocalSDP = CreateOfferInternal(destinationAddress); return(Task.FromResult(LocalSDP.ToString())); }
/// <summary> /// Send a re-INVITE request to take the remote call party on hold. /// </summary> public void TakeOffHold() { LocalOnHold = false; AdjustSdpForMediaState(LocalSDP); SessionMediaChanged?.Invoke(LocalSDP.ToString()); }