The Call object has a set of methods to control call states.
|Answer a ringing call||public void answer();|
|Place the call on hold||public void hold();|
|Retrieve the call from hold||public void resume();|
|Mute the microphone||public void mute();|
|Unmute the microphone||public void unmute();|
|Start or resume call recording||public ResultCode startRecording();|
|Stop or pause call recording||public ResultCode stopRecording();|
|Send DTMF digits to other parties in the call||public void sendDtmf(string dtmf);|
|Disconnect the call||public void drop();|
In order to reflect changes in call states to the user, the application should subscribe to the following events:
public event CallConnectedCallback callConnectedCallback; public event CallDataChangedCallback callDataChangedCallback; public event CallMutedCallback callMutedCallback; public event CallUnmutedCallback callUnmutedCallback; public event CallLocalHeldCallback callLocalHeldCallback; public event CallLocalResumedCallback callLocalResumedCallback; public event CallRemoteHeldCallback callRemoteHeldCallback; public event CallRemoteResumedCallback callRemoteResumedCallback; public event CallDisconnectedCallback callDisconnectedCallback;
The following properties of the Call object can be used to check the current status of call recording:
public bool isRecording - specifies it the call is being recorded public bool isRecordingMuted - specifies if the call is being recorded with actual voice replaced by silence (muted recording)
The following Call property specifies the URL postfix which can be used to download the recording.
public string recordingPlaybackUrl
The full URL should be composed by joining the web server address with this postfix.
Assuming that the agent handles one interaction at a time, event callDisconnectedCallback will be normally followed by the stateChangedCallback event. Depending on the contact center configuration, this event may indicate that the agent is in the Ready, Not Ready, or After-call Work state.