/// <summary>
/// A class which defines the properties of call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class CallData
{
internal uint CallId;
/// <summary>
/// Gets call id.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public uint Id
{
get
/// <summary>
/// Gets call direction(MO or MT).
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallDirection Direction
{
get
/// <summary>
/// Get the call number.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public string CallNumber
{
get
/// <summary>
/// Get the contact name of calling number.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public string CallingName
{
get
/// <summary>
/// Get the call type(Voice call or Video call).
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallType Type
{
get
/// <summary>
/// Get the call state(Incoming, Active, etc).
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallState State
{
get
/// <summary>
/// Get the member count.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public int MemberCount
{
get
/// <summary>
/// Checks if the call is emergency call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsEmergency
{
get
/// <summary>
/// Checks if the number is voice mail number.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsVoiceMailNumber
{
get
/// <summary>
/// Get the call domain(PS call, CS call, etc).
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallDomain Domain
{
get
/// <summary>
/// Get the person ID.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public int PersonId
{
get
/// <summary>
/// Get the start time of the call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public long StartTime
{
get
/// <summary>
/// Get the contact name mode.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallNameMode Mode
{
get
/// <summary>
/// Get the session ID of the call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public int SessionId
{
get
/// <summary>
/// Checks if HD is enabled for calling.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsHdEnable
{
get
/// <summary>
/// Checks if the call is a WiFi call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsWiFiCalling
{
get
/// <summary>
/// Checks if upgrade/downgrade is enabled.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsUpgradeDowngradeEnable
{
get
/// <summary>
/// Checks if the remote call is on hold.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsRemoteOnHold
{
get
/// <summary>
/// Checks if the call is added to conference.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsAddedToConference
{
get
/// <summary>
/// Checks if the incoming call is a forwarded call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public bool IsMtForwarded
{
get
/// <summary>
/// A class which manages call manager events, properties and functions.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class CmClientHandle
{
internal IntPtr _handle = IntPtr.Zero;
/// <summary>
/// This event is raised when call status changes.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<CallStatusChangedEventArgs> CallStatusChanged
{
add
/// <summary>
/// This event is raised when the mute status changes.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<CallMuteStatusChangedEventArgs> CallMuteStatusChanged
{
add
/// <summary>
/// This event is raised when call events change.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<CallEventEventArgs> CallEvent
{
add
/// <summary>
/// This event is raised when dial status changes.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<DialStatusEventArgs> DialStatusChanged
{
add
/// <summary>
/// This event is raised when audio status changes.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<AudioStatusChangedEventArgs> AudioStateChanged
{
add
/// <summary>
/// This event is raised during DTMF indication.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<DtmfIndicationEventArgs> DtmfIndication
{
add
/// <summary>
/// This event is raised when call comes to foreground.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<EventArgs> GoForeground
{
add
/// <summary>
/// This event is raised when voice record status is changed.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public event EventHandler<VoiceRecordStatusEventArgs> VoiceRecordStatusChanged
{
add
/// <summary>
/// Gets the status of the current call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallStatus CallStatus
{
get
/// <summary>
/// Gets the mute status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallMuteStatus CallMuteStatus
{
get
/// <summary>
/// Gets the audio state.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public AudioState AudioState
{
get
/// <summary>
/// Gets the list of call data.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public IEnumerable<CallData> AllCalls
{
get
/// <summary>
/// Gets the list of conference call data.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public IEnumerable<ConferenceCallData> AllConferenceCalls
{
get
/// <summary>
/// Rejects the incoming call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <privlevel>partner</privlevel>
/// <privilege>http://developer.samsung.com/tizen/privilege/call.reject</privilege>
/// <exception cref="UnauthorizedAccessException">Thrown when privilege access is denied.</exception>
/// <summary>
/// Starts incoming call alert ringtone.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="UnauthorizedAccessException">Thrown when privilege access is denied.</exception>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void StartAlert()
/// <summary>
/// Stops incoming call alert ringtone.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <privlevel>partner</privlevel>
/// <privilege>http://developer.samsung.com/tizen/privilege/call.reject</privilege>
/// <exception cref="UnauthorizedAccessException">Thrown when privilege access is denied.</exception>
/// <summary>
/// Enables call recovery.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="appId">App ID to be recovered.</param>
/// <exception cref="ArgumentNullException">Thrown appId is passed as null.</exception>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
/// <summary>
/// Dials a call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="number">Calling number to be dialed.</param>
/// <param name="type">Type of the call to be dialed.</param>
/// <param name="slot">Multi sim slot type in which the call is dialed.</param>
/// <summary>
/// Swaps the calls.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SwapCall()
{
/// <summary>
/// Joins a call with another.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void JoinCall()
{
/// <summary>
/// Splits a call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="id">Call id to be splitted.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SplitCall(uint id)
/// <summary>
/// Transfers a call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void TransferCall()
{
/// <summary>
/// Accepts MT ViLTE call as VoLTE.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="answerType">Call answer type.</param>
/// <param name="type">Call type.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
/// <summary>
/// Answers an incoming call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="answerType">Call answer type.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void AnswerCall(CallAnswerType answerType)
/// <summary>
/// Upgrades a call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void UpgradeCall()
{
/// <summary>
/// Downgrades a call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void DowngradeCall()
{
/// <summary>
/// Confirms upgrade call request.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="response">Upgrade response type.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void ConfirmUpgradeCall(CallUpgradeResponseType response)
/// <summary>
/// Sets the speaker on/off.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="status">Status of the speaker to be set.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void ManageSpeaker(FeatureStatus status)
/// <summary>
/// Sets the bluetooth feature on/off.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="status">Status of the bluetooth to be set.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void ManageBluetooth(FeatureStatus status)
/// <summary>
/// Sets extra volume if needed.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="isExtraVolume">Boolean value to indicate if the call is set to have extra volume.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SetExtraVolume(bool isExtraVolume)
/// <summary>
/// Sets the noise reduction feature during call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="isNoiceReduction">Boolean value to indicate whether the call needs noise reduction.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SetNoiseReduction(bool isNoiceReduction)
/// <summary>
/// Sets the mute state of the call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="isMuteState">Mute state to be set.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SetMuteState(bool isMuteState)
/// <summary>
/// Starts sending signal through DTMF digit.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="dtmfDigit">DTMF digit to be pressed on the phone.</param>
/// <exception cref="ArgumentException">Thrown when method failed due to invalid parameter.</exception>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
/// <summary>
/// Stops sending DTMF signal.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void StopDtmf()
{
/// <summary>
/// Sends signal through DTMF digits.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="dtmfDigits">DTMF digits.</param>
/// <exception cref="ArgumentNullException">Thrown when dtmfDigits is passed as null.</exception>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
/// <summary>
/// Sends DTMF response.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="response">DTMF response type.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SendDtmfResponse(DtmfResponseType response)
/// <summary>
/// Activates call manager UI.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void ActivateUi()
{
/// <summary>
/// Sets device LCD time out.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="timeout">LCD timeout to be set.</param>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void SetLcdTimeout(LcdTimeOut timeout)
/// <summary>
/// Starts voice recording.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="number">Call number.</param>
/// <exception cref="ArgumentNullException">Thrown when number is passed as null.</exception>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
/// <summary>
/// Stops voice record.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <exception cref="InvalidOperationException">Thrown when method failed due to invalid operation.</exception>
public void StopVoiceRecord()
{
/// <summary>
/// Gets all current call data.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="incoming">Incoming calldata instance to be filled.</param>
/// <param name="active">Active calldata instance to be filled.</param>
/// <param name="held">Held calldata instance to be filled.</param>
/// <summary>
/// Holds the active call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <privlevel>platform</privlevel>
/// <privilege>http://developer.samsung.com/tizen/privilege/call.admin</privilege>
/// <exception cref="UnauthorizedAccessException">Thrown when privilege access is denied.</exception>
/// <summary>
/// Unholds the active call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <privlevel>platform</privlevel>
/// <privilege>http://developer.samsung.com/tizen/privilege/call.admin</privilege>
/// <exception cref="UnauthorizedAccessException">Thrown when privilege access is denied.</exception>
/// <summary>
/// Ends ongoing call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
/// <param name="id">ID of the call which is to be ended.</param>
/// <param name="type">Call release type.</param>
/// <privlevel>platform</privlevel>
/// <summary>
/// Enumeration for Call status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallStatus
{
/// <summary>
/// <summary>
/// Enumeration for Mute status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallMuteStatus
{
/// <summary>
/// <summary>
/// Enumeration for call dial status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum DialStatus
{
/// <summary>
/// <summary>
/// Enumeration for DTMF indication type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum DtmfIndication
{
/// <summary>
/// <summary>
/// Enumeration for audio state type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum AudioState
{
/// <summary>
/// <summary>
/// Enumeration for video record status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum VrStatus
{
/// <summary>
/// <summary>
/// Enumeration for Video record status extra type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum VrStatusExtraType
{
/// <summary>
/// <summary>
/// Enumeration for call type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallType
{
/// <summary>
/// <summary>
/// Enumeration for sim slot type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum MultiSimSlot
{
/// <summary>
/// <summary>
/// Enumeration for call answer types for accepting the incoming call.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallAnswerType
{
/// <summary>
/// <summary>
/// Enumeration for call upgrade response type while receiving upgrade request.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallUpgradeResponseType
{
/// <summary>
/// <summary>
/// Enumeration for feature(speaker/bluetooth) status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum FeatureStatus
{
/// <summary>
/// <summary>
/// Enumeration for DTMF response type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum DtmfResponseType
{
/// <summary>
/// <summary>
/// Enumeration for LCD time out.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum LcdTimeOut
{
/// <summary>
/// <summary>
/// Enumeration for contact name mode.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallNameMode
{
/// <summary>
/// <summary>
/// Enumeration for LCD control state.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum LcdControlState
{
/// <summary>
/// <summary>
/// Enumeration for call event type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallEvent
{
/// <summary>
/// <summary>
/// Enumeration for call direction
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallDirection
{
/// <summary>
/// <summary>
/// Enumeration for the call state.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallState
{
/// <summary>
/// <summary>
/// Enumeration for call domain.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallDomain
{
/// <summary>
/// <summary>
/// Enumeration for call end cause type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallEndCause
{
/// <summary>
/// <summary>
/// Enumeration for call release type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public enum CallReleaseType
{
/// <summary>
/// <summary>
/// An extended EventArgs class which contains information about DTMF indication.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class DtmfIndicationEventArgs : EventArgs
{
private DtmfIndication _indication;
/// <summary>
/// DTMF indication.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public DtmfIndication Indication
{
get
/// <summary>
/// DTMF number.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public string DtmfNumber
{
get
/// <summary>
/// An extended EventArgs class which contains changed audio status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class AudioStatusChangedEventArgs : EventArgs
{
private AudioState _state;
/// <summary>
/// Audio state.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public AudioState State
{
get
/// <summary>
/// An extended EventArgs class which contains changed voice record status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class VoiceRecordStatusEventArgs : EventArgs
{
private VrStatus _status;
/// <summary>
/// Voice record status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public VrStatus Status
{
get
/// <summary>
/// Voice record status extra type.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public VrStatusExtraType ExtraType
{
get
/// <summary>
/// An extended EventArgs class which contains changed call mute status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class CallMuteStatusChangedEventArgs : EventArgs
{
private CallMuteStatus _Status;
/// <summary>
/// Call mute status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallMuteStatus Status
{
get
/// <summary>
/// An extended EventArgs class which contains changed call status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class CallStatusChangedEventArgs : EventArgs
{
private CallStatus _status;
/// <summary>
/// Call status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallStatus Status
{
get
/// <summary>
/// Call number.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public string CallNumber
{
get
/// <summary>
/// An extended EventArgs class which contains changed dial status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class DialStatusEventArgs : EventArgs
{
private DialStatus _status;
/// <summary>
/// Dial status.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public DialStatus Status
{
get
/// <summary>
/// An extended EventArgs class which contains changed call event.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public class CallEventEventArgs : EventArgs
{
private CallEvent _event;
/// <summary>
/// Call event.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallEvent Event
{
get
/// <summary>
/// Call event data.
/// </summary>
+ /// <since_tizen> 4 </since_tizen>
public CallEventData EventData
{
get