Thanks for the suggestion, I have got the request for ACW time working now with the Extension and ACW period, the code for the button click is below:
private void Button_Click(object sender, RoutedEventArgs e)
{
try
{
KeyValueCollection reasons = new KeyValueCollection(); // Reason data
KeyValueCollection extensions = new KeyValueCollection(); // Extensin data
extensions.Add("WrapUpTime", duration); // AfterCallWork extended time of 30 seconds
RequestAgentNotReady request = RequestAgentNotReady.Create(thisDN, AgentWorkMode.AfterCallWork, thisQueue, reasons, extensions);
TServerProtocol tserver = (TServerProtocol) this.agent.FirstMediaVoice.Channel.Protocol;
tserver.Send(request); // Send the request to tserver
btn_Eacw.IsEnabled = false;
}
catch (Exception)
{
return;
}
}
------------------------------
Dean Smith
Connect Managed Services
------------------------------
Original Message:
Sent: 09-05-2019 19:40
From: Jason McLennan
Subject: WDE Customisation - making a specific channel Ready
Well sounds like you have a solution. However as Daniel mentioned you can probably just let SIP Server handle this rather than having to handle it in the client. If you add an Extension to your Not Ready request of WrapUpTime with a value greater than 0 it'll add that many seconds to the ACW period. Check out SIP server Deployment guide Page 253.
------------------------------
Jason McLennan
Commonwealth Bank of Australia
Original Message:
Sent: 09-04-2019 09:55
From: Dean Smith
Subject: WDE Customisation - making a specific channel Ready
Hi Daniel, so wrap up time will be used as well the custom button gives them more time to complete aftercallwork. The scenario is the agent is in wrap up time and then they will decide they need alot more time so they will press the custom button, this will then give them a set amount of extra time in aftercallwork, when that extra time period has passed they will be put back into ready. The custom button will not be used on every call but will be there if they need it.
------------------------------
Dean Smith
Original Message:
Sent: 09-04-2019 09:00
From: Daniel Hilaire
Subject: WDE Customisation - making a specific channel Ready
Hi Dean,
This sounds like what the wrap up feature does. Why not use that built in feature to put the agent back to a ready status?
Original Message------
I am working on a customisation of WDE and I am trying to work out the best way to make a channel ready and not all channels ready when an agent clicks a custom button I have put on the toolbar.
The scenario is the agent has just released the call, they are put into AfterCallWork and then after a specific number of seconds I want to put that channel "Voice" back into Ready.
What I have working at the moment is I execute the following code:
private readonly IAgent agent;
this.agent.Ready();
but all the Agents channels are put into Ready, so is there a way to make just 1 channel the Voice channel Ready?
I have read about the chain of commands and adding the "MediaVoiceReady" command to the chain but I am not sure where you would get the parameters from for that e.g. IClientChannel
Is there not a simple command that can be executed on the agent like this.agent.Ready() that targets a specif channel?
#Omni-ChannelDesktop/UserInterface
------------------------------
Dean Smith
------------------------------