I have a softphone solution made with PSDK 8.0. During an outbound campaign, how can I change the CallResult value of an established call? What type of request should I make?
So you say that I must do an HTTP request in order to update the callresult. But, is there a way I can achieve it by using the Platform SDK directly? I mean, I can see in the PSDK documentation that there are ScheduledCall and UpdateCallCompletionStats object types in the OutboundDesktop namespace that can be sent through protocolManagementService requests, I just can’t quite get what call I should do
Unfortunately, I couldn’t find a way to make the appropiate request
I think I’m missing something important here, as I can’t tell for sure trough which object/namespace I should make the request for update (I checked for TServer.Requests namespace and couldn’t understand how to do it). There are threads related here, but pointing to a broken link.
Cavagnaro: I read about the Monitored DN, but I couldn’t understand how the request is made (under what namespace).
In the UserEvent need to add the required fields to the UserData for either a UpdateCallCompletionStats or a RecordProcessed request (see the Outbound Contact Reference Manual)..
For example a RecordProcessed request would be something like:
Another question… When the call is finished (one of the parties hang up the phone), the record is marked as updated and I wouldn’t be able to change it. Is it possible to reinject the record in AfterCallWork? If so, can I retrieve all the contact records related with the chain_id or recordhandle during the call in order to use them in AfterCallWork?
I’m just checkin’ if it can be done, but the snippet you posted helped a lot and may be enough!
If the Agent goes into Ready at the end of a call the OCS will assume that record is finished with, so if you set this option to not let the Agent go into Ready that should mean you can still update the record.
outbound_release_action
Type: Optional
Default Value: soft_previous
Valid Value(s): hard_ready, hard_not_ready, soft_previous, hard_acw
Changes Take Effect: Immediately
Determines the agent’s place state after an outbound call is released.
• When set to hard_ready, OCS sends a request to T-Server to force the
teleset to the Ready state.
• When set to hard_not_ready, OCS sends a request to T-Server to force the
teleset to the Not Ready state.
• When set to soft_previous, OCS uses the Agent State provided by Stat
Server.
• When set to hard_acw, OCS sends a request to T-Server to force the teleset
to the After Call Work state after an outbound call is released from an
agent’s DN.
Yes as you say using http commands to OCS is one way.
The other way I was thinking was using the OutboundDesktop PSDK API, in the background it’s the same in that it sends a UserEvent, just a slightly different API. I’ve never used this method though, always just create my own UserEvents..
Actually thinking about this more, I have some distant memory that some of the OCCS HTTP requests are specific to certain dialling modes and will only work with Power GVP and Progressive GVP modes. I think it is the RecordProcessed and UpdateCallCompletionStats requests that are only supported by these dialling modes.
When the agent is in NotReady status during after call work, is the record finished already?
Is the OCS option you mentioned campaign/group specific or is it globally scoped? I mean, will all outbound campaigns be affected by this configuration?
If the Agent goes into Not Ready after the call without first going Ready then the record should still be able to be updated. Have a look at the TServer and OCS logs to see what is happening.
Looks like the option can either be set a application level or switch level..