Genesys CTI User Forum
Genesys CTI User Forum => Genesys-related Development => Topic started by: Franklin Garzón on November 06, 2007, 11:26:51 PM
-
Hi people, I have a problem with Toolkit Desktop VB6 (7.1), when ocs is on mode Progessive I need change the status manualy, for example I have a 3 phone number of a one client, the ocs sendme the firts number (chain_n=0), on this number the uncle of the client answere but the client is on the seccond number (chain_n=1), I need put the call_result on "no answer" because a treatment when the callresult is no answere giveme the next chain_n. But when send a "RecordProcessed" ocs sendme the error: [font=Verdana][b]Record not found.[/b][/font]
Note: I put on: evironment-applications-oc_server (options/ocserver: record_processed = yes)
[b]Thanks for your help.[/b]
This is the code:
[font=Verdana][b]For send the update call result:[/b][/font]
Dim OUTUD As CTKVList
Set OUTUD = New CTKVList
Dim OUTP As CTKVPair
Set OUTP = New CTKVPair
OUTP.key = "GSW_AGENT_REQ_TYPE"
OUTP.Type = CKVTypeString
OUTP.StringValue = "RecordProcessed"
OUTUD.AddTail OUTP
OUTP.key = "GSW_APPLICATION_ID"
OUTP.Type = CKVTypeNum
OUTP.NumValue = 136
OUTUD.AddTail OUTP
OUTP.key = "GSW_CALLING_LIST"
OUTP.Type = CKVTypeString
OUTP.StringValue = "Calling List TAO"
OUTUD.AddTail OUTP
OUTP.key = "GSW_CAMPAIGN_NAME"
OUTP.Type = CKVTypeString
OUTP.StringValue = "Campaign_Renewals"
OUTUD.AddTail OUTP
OUTP.key = "GSW_CALL_RESULT"
OUTP.Type = CKVTypeNum
OUTP.NumValue = 33
OUTUD.AddTail OUTP
Dim i As Integer
Dim gswRH As String
For i = 0 To PublicCTKVListCallNow.GetCount()
If PublicCTKVListCallNow.Get(i).key = "GSW_RECORD_HANDLE" Then
gswRH = PublicCTKVListCallNow.Get(i).NumValue
End If
Next
OUTP.key = "GSW_RECORD_HANDLE"
OUTP.Type = CKVTypeNum
OUTP.StringValue = gswRH
OUTUD.AddTail OUTP
Dim EVENI As TEventInfo
Set EVENI = New TEventInfo
EVENI.UserData = OUTUD
Me.TExtension1.TSendUserEvent EVENI
[font=Verdana][b]For active the updated record:[/b][/font]
Dim OUTUD As CTKVList
Set OUTUD = New CTKVList
Dim OUTP As CTKVPair
Set OUTP = New CTKVPair
OUTP.key = "GSW_AGENT_REQ_TYPE"
OUTP.Type = CKVTypeString
OUTUD.AddTail OUTP
OUTP.key = "GSW_APPLICATION_ID"
OUTP.Type = CKVTypeNum
OUTP.NumValue = 136
OUTUD.AddTail OUTP
OUTP.key = "GSW_CAMPAIGN_NAME"
OUTP.Type = CKVTypeString
OUTP.StringValue = "Campaign_Renewals"
OUTUD.AddTail OUTP
Dim i As Integer
Dim gswRH As String
For i = 0 To PublicCTKVListCallNow.GetCount()
If PublicCTKVListCallNow.Get(i).key = "GSW_RECORD_HANDLE" Then
gswRH = PublicCTKVListCallNow.Get(i).NumValue
End If
Next
OUTP.key = "GSW_RECORD_HANDLE"
OUTP.Type = CKVTypeNum
OUTP.StringValue = gswRH
OUTUD.AddTail OUTP
Dim EVENI As TEventInfo
Set EVENI = New TEventInfo
EVENI.UserData = OUTUD
Me.TExtension1.TSendUserEvent EVENI
-
Please check this previous post:
http://www.sggu.com/smf/index.php/topic,2517.0.html
-
Thanks, I'm test with:
-agent is talking
-agent is on AfterCallWork
-All time the agent is on Ready
but OCS send me, "Record not found" yet.
-
what is the value of Record_Process on OCS application?
-
the value is "yes".
-
So in OCM when the agent hang up the record_status is Retrieved, right?
-
[quote author=Franklin Garzón link=topic=2562.msg9905#msg9905 date=1194472483]
the value is "yes".
[/quote]
Did you stop and start OCS after the change to "yes"?
-
Yes, I restart the OCS service, and when the agent si Hang Up the genesys return me the information of the call, such as: phone number, agent id, record_id, campaign name, etc.
-
Yes of course as a new event was triggered, however, what is the status of the record on OCM?
-
The first status is "Ready" for the chain 0,1 y 2, in few secconds the status auto-change to "Retrive" for the chain 0 and in this moment OCS send me the information of the call to agent desktop, and when the agent answere the status call is "retrive" yet, but when the agent hung-up the status call is "Udated" with the call result "answere".
-
Ok that means that something (agent or application) is closing the record and that is why anything else you do after doesn't work as Record_Handle is no longer available.
Check that after you agent hangs up he is on WrapUp or AfterCallWork status, check on OCS that outbound_release_action = soft_call_work.
If agent puts on Ready by manual action or by software (PBX or CTI) you will not be able to do anything more with that record.