本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本文檔介紹如何在Unified Contact Center Express(UCCX)指令碼中配置OnException Goto步驟。
許多呼叫流程中出現的問題是由不正確使用此步驟造成的。此最佳實踐旨在使用此功能時防止呼叫流程和引擎級別出現問題。
ContactInactiveException 的OnException用於您已斷開呼叫(不再活動),即在遠端終止的情形。
這些影象顯示了配置此步驟的常用方法,並使Goto步驟指向指令碼的結尾。
但是在錯誤的情況下請參閱此映像,對於已斷開連線的呼叫,在End標籤之後會使用Terminate步驟。
發生的情況是,當在執行指令碼期間斷開呼叫時,OnException步驟將執行1000次並生成警報(「已到達的最大步驟數:1000")。 雖然此錯誤不會影響引擎或生產,但它是引擎上的問題,並且會生成警報。
原因是,終止已處於非活動狀態(被遠端方放棄)的呼叫會導致生成另一個ContactInactiveException。
實際上,聯絡非活動例外會持續循環並生成,這將生成更多例外。這是一個異常循環。
以下日誌顯示問題:
// application getting triggered//
Line 1999: Trigger: ContactApplicationTrigger[time=1526359880518,locale=en_US,cfg=JTAPITriggerConfig[schema=ApplicationTriggerConfig,time=2018-05-13 04:51:23.0,recordId=928,desc=Cisco JTAPI Trigger,name=3014804565,type=Cisco JTAPI Trigger,appName=Clinical_Center_Admin,enabled=true,sessions=2,idleTimeout=5000,locale=en_US,parms={},taskGroups=[],controlClass=class com.cisco.call.CallControlChannel,controlGroupId=7,contactGroups=[GroupInfo[class=com.cisco.dialog.DialogChannel,id=0]],dn=3014804565,redirectCSS=default,cmDeviceName=ClinicalCAdmin,cmDeviceInvalid=false,cmDescription=Clinical Center Admin,cmDevicePoolUUID={ED1A849A-1601-36F6-3254-25D867408A73},cmDevicePoolName=CIT_UCCX_DP,cmCallingSearchSpaceUUID=,cmCallingSearchSpaceName=None,cmLocationUUID={29C5C1C4-8871-4D1E-8394-0B9181E8C54D},cmLocationName=Hub_None,cmPartitionUUID={11C5CF59-66A5-02E4-9A1B-A5B2853B9127},cmPartitionName=All-Phones_pt,cmVoiceMailProfileUUID=,cmVoiceMailProfileName=None,cmCallPickUpGroupUUID=,cmCallPickUpGroupName=,cmDisplay=...
Line 2001: ID: 29000007909
Line 2099: 1934897: May 15 00:51:20.521 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : Start
Line 2101: 1934899: May 15 00:51:20.521 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : On Exception(ContactInactiveException) Goto End
Line 2139: 1934937: May 15 00:51:20.524 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : Delay 1 sec
Line 2142: 1934940: May 15 00:51:21.525 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : Accept (--Triggering Contact--)
// Customer disconnecting the call//
Line 2257: 1935055: May 15 00:51:36.481 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2951-77-2-TERM_CONN_EV:2951] RequestImpl: CallID:3586 MediaId:11102124/2 Task:29000007909 gets TermConnDroppedEv, meta code:132, cause code:100
Line 2258: 1935056: May 15 00:51:36.481 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2951-77-2-TERM_CONN_EV:2951] RequestImpl: CallID:3586 MediaId:11102124/2 Task:29000007909, TerminalConnection to Terminal: ClinC_2951 is DROPPED, 11102124/2
// call is ended and call loops and END step is executed for 1000 times and RTMT alert is generated for the dissconnected call//
Line 2260: 1935058: May 15 00:51:36.488 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : End:
Line 3260: 1936058: May 15 00:51:36.569 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : Terminate (--Triggering Contact--)
Line 3261: 1936059: May 15 00:51:36.573 EDT %MIVR-APP_MGR-3-TASK_ABORTED:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFWorkflowAppDebugTaskWrapper: Application task aborted: Application=App[name=Clinical_Center_Admin,type=Cisco Script Application,id=400,desc=Clinical_Center_Admin,enabled=true,max=2,valid=true,cfg=[ApplicationConfig[schema=ApplicationConfig,time=2015-01-13 23:42:42.0,recordId=131,desc=Clinical_Center_Admin,name=Clinical_Center_Admin,type=Cisco Script Application,id=400,enabled=true,sessions=2,script=SCRIPT[ClinicalCenter/ClinicalCenter_ADMIN.aef],defaultScript=,vars=[],defaultVars=null]]],Application Trigger=ContactApplicationTrigger[time=1526359880518,locale=en_US,cfg=JTAPITriggerConfig[schema=ApplicationTriggerConfig,time=2018-05-13 04:51:23.0,recordId=928,desc=Cisco JTAPI Trigger,name=3014804565,type=Cisco JTAPI Trigger,appName=Clinical_Center_Admin,enabled=true,sessions=2,idleTimeout=5000,locale=en_US,parms={},taskGroups=[],controlClass=class com.c...
Line 3261: 1936059: May 15 00:51:36.573 EDT %MIVR-APP_MGR-3-TASK_ABORTED:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFWorkflowAppDebugTaskWrapper: Application task aborted: Application=App[name=Clinical_Center_Admin,type=Cisco Script Application,id=400,desc=Clinical_Center_Admin,enabled=true,max=2,valid=true,cfg=[ApplicationConfig[schema=ApplicationConfig,time=2015-01-13 23:42:42.0,recordId=131,desc=Clinical_Center_Admin,name=Clinical_Center_Admin,type=Cisco Script Application,id=400,enabled=true,sessions=2,script=SCRIPT[ClinicalCenter/ClinicalCenter_ADMIN.aef],defaultScript=,vars=[],defaultVars=null]]],Application Trigger=ContactApplicationTrigger[time=1526359880518,locale=en_US,cfg=JTAPITriggerConfig[schema=ApplicationTriggerConfig,time=2018-05-13 04:51:23.0,recordId=928,desc=Cisco JTAPI Trigger,name=3014804565,type=Cisco JTAPI Trigger,appName=Clinical_Center_Admin,enabled=true,sessions=2,idleTimeout=5000,locale=en_US,parms={},taskGroups=[],controlClass=class com.c... Line 2261: 1935059: May 15 00:51:36.488 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-3-TASK:0x6c08900e5_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007909 : Terminate (--Triggering Contact--)
//RTMT ALERT//
Message: : 235: citvoip-ccxsvr-b.net.nih.gov: May 15 2018 12:40:22 AM.980 UTC : %UC_APP_MGR-3-TASK_ABORTED: %[app.trigger=ContactApplicationTrigger[time=1526344761313,locale=en_US,cfg=JTAPITriggerConfig[schema=ApplicationTriggerConfig,time=2018-05-13 ][exception=com.cisco.wfframework.obj.WFMaxExecutedStepsExceededException: No. of executed steps: 1000][UNKNOWN_PARAMTYPE:Task id=29000007864][app=App[name=NLM_Inbound,type=Cisco Script Application,id=202,desc=NLM_Inbound,enabled=true,max=50,valid=true,cfg=[ApplicationConfig[][task.class=class com.cisco.app.impl.WFWorkflowAppDebugTaskWrapper][ClusterID=][NodeID=citvoip-ccxsvr-b]: Application task aborted
要解決此問題,需要在Goto Label之後跳過Terminate步驟,即,請參見圖2,在Terminate步驟之後配置Goto步驟的END標籤步驟,或者完全刪除OnException步驟和相應的END標籤。
摘要不會終止已處於活動狀態的呼叫並嘗試捕獲ContactInactive異常。這在邏輯上是錯誤的。
這是正確指令碼的影象。
工作日誌
// working call// Line 5048: 1951439: May 15 01:39:50.491 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-7-TASK:0x6c08900eb_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007915 : Start Line 5049: 1951440: May 15 01:39:50.491 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-7-TASK:0x6c08900eb_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007915 : Delay 2 sec Line 5112: 1951503: May 15 01:39:52.492 EDT %MIVR-ENG-7-UNK:[MIVR_ENG_TASKS-31-7-TASK:0x6c08900eb_ClinicalCenter/ClinicalCenter_ADMIN.aef] WFTracingLogImpl: Execute step of Task 29000007915 : Accept (--Triggering Contact--) Line 5116: 1951507: May 15 01:39:52.500 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] RequestImpl: CallID:3591 MediaId:11104504/2 Task:29000007915, TerminalConnection to Terminal: ClinC_2903 is ACTIVE Line 5120: 1951511: May 15 01:39:52.501 EDT %MIVR-SS_TEL-7-UNK:[(P1-10.129.7.10) EventThread] InCallObserverImpl: CallID:3591 MediaId:11104504/2 Task:29000007915 com.cisco.jtapi.CiscoMediaOpenLogicalChannelEvImpl received //customer disconnects the call// Line 5232: 1951623: May 15 01:40:10.953 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] RequestImpl: CallID:3591 MediaId:11104504/2 Task:29000007915 gets TermConnDroppedEv, meta code:132, cause code:100 Line 5233: 1951624: May 15 01:40:10.953 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] RequestImpl: CallID:3591 MediaId:11104504/2 Task:29000007915, TerminalConnection to Terminal: ClinC_2903 is DROPPED, 11104504/2 Line 5236: 1951627: May 15 01:40:10.955 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] CallImpl: Call.abandoned() JTAPICallContact[id=3591,type=Cisco JTAPI Call,implId=11104504/2,active=false,state=CALL_DISCONNECTED,inbound=true,handled=false,locale=en_US,aborting=false,app=App[name=Clinical_Center_Admin,type=Cisco Script Application,id=400,desc=Clinical_Center_Admin,enabled=true,max=2,valid=true,cfg=[ApplicationConfig[schema=ApplicationConfig,time=2018-05-15 01:38:54.0,recordId=1168,desc=Clinical_Center_Admin,name=Clinical_Center_Admin,type=Cisco Script Application,id=400,enabled=true,sessions=2,script=SCRIPT[ClinicalCenter/ClinicalCenter_ADMIN.aef],defaultScript=,vars=[],defaultVars=null]]],task=29000007915,session=Session[id=001-0x131794c237,parent=null,active=true,state=SESSION_IDLE,time=1526362790448],seqNum=0,time=1526362790447,cn=3014804565,dn=3014804565,cgn=2673343616,ani=null,dnis=null,clid=null,atype=DIRECT,lrd=null,ocn=3014804565,odn=null,uui=null,aniii=null,ced=n... Line 5237: 1951628: May 15 01:40:10.956 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] InCallObserverImpl: CallID:3591 MediaId:11104504/2 Task:29000007915, released TP[type=Cisco CTI Port,id=25,implId=2903,active=false,state=IDLE] from 3014804565, and releasing udpPort 28084 Line 5238: 1951629: May 15 01:40:10.956 EDT %MIVR-SS_TEL-7-UNK:[MIVR_SS_TEL_PORT_QEXE_2903-82-2-TERM_CONN_EV:2903] InCallObserverImpl: CallID:3591 MediaId:11104504/2 Task:29000007915 com.cisco.jtapi.TermObservationEndedEvImpl received // call is disconnected with no exception// Line 5286: 1951640: May 15 01:40:11.832 EDT %MIVR-SS_CM-7-UNK:[MIVR_SS_RMCM_RmCmCleanupThread-370-0-RmCmCleanupThread] ContactMgr: Cleanup detected final state of afw ct: JTAPICallContact[id=3591,type=Cisco JTAPI Call,implId=11104504/2,active=false,state=CALL_DISCONNECTED,inbound=true,handled=false,locale=en_US,aborting=false,app=App[name=Clinical_Center_Admin,type=Cisco Script Application,id=400,desc=Clinical_Center_Admin,enabled=true,max=2,valid=true,cfg=[ApplicationConfig[schema=ApplicationConfig,time=2018-05-15 01:38:54.0,recordId=1168,desc=Clinical_Center_Admin,name=Clinical_Center_Admin,type=Cisco Script Application,id=400,enabled=true,sessions=2,script=SCRIPT[ClinicalCenter/ClinicalCenter_ADMIN.aef],defaultScript=,vars=[],defaultVars=null]]],task=29000007915,session=Session[id=001-0x131794c237,parent=null,active=false,state=SESSION_DISPOSED,time=1526362790448],seqNum=0,time=1526362790447,cn=3014804565,dn=3014804565,cgn=2673343616,ani=null,dnis=null,clid=null,atype=DIRECT,lrd=null,ocn=3014804565,...