De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
In dit document wordt beschreven hoe Enterprise Chat en Email (ECE) de status van agent kunnen identificeren wanneer klanten chatsessies openen.
Cisco raadt kennis van de volgende onderwerpen aan:
De informatie in dit document is gebaseerd op de softwareversie ECE 11.6.
De informatie in dit document werd gemaakt van de apparatuur in een specifieke labomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie.
Om Cisco Unified Intelligent Contact Management Enterprise (ICM) te beheren (agent activiteiten en routetaken) moet ICM alle agents die in ICM worden geregistreerd, controleren. De toepassingsinstanties, zoals ECE, rapporteren de agent activiteiten en de agentenstatus door de uitgebreide ICM CTI/ARM (het rapport en het beheer van de Agent) interface.
De ARM-service is gebaseerd op de huidige CTI-serverfunctionaliteit en staat een clienttoepassing toe om toepassingsagents en taakactiviteit te controleren. Met de ARM-interface kan een clienttoepassing een bepaalde reeks agents (werkstationmodus) of alle agents (brugmodus) die aan een toepassing zijn gekoppeld, bewaken.
De afbeelding toont meer details over de ARM-interfaces. Een toepassingsinstantie gebruikt de ARM-interface om agents op een of meer Agent-telefoons te beheren (loggen ze in en uit media, enzovoort) en om informatie te geven over hun taakactiviteit (Start Task, End Task enz.).
De beschikbaarheid van de agent wordt geïdentificeerd aan de kant van de CTI Server. Wanneer een agent inlogt om console te vormen, verstuurt het ECE-luisterproces het verzoek naar CTI Server. Het verzoek geeft aan dat de agent is inlogd en zichzelf als beschikbaar gemarkeerd.
Dit zijn de indicatoren die door de ECE-applicatie naar de CTI-server worden verstuurd:
Wanneer een agent wordt ingelogd, stuurt een luisteraar een MEDIA_LOGIN_REQ. De MEDIA_LOGIN_REQ logt de gespecificeerde agent in een Domein van de Mediaroute (MRD) (logt agent in alle vaardigheden die voor die MRD en agent zijn ingesteld). Wanneer een agent zichzelf als beschikbaar tekent, stuurt de luisteraar nog twee verzoeken die erop wijzen dat de agent ROUTABLE of NOT ROUTABLE en READY of NOT READY is, en verstrekt hij client-gedefinieerde agent informatie. De CTI-client moet het Application Path for the related MRD Perifeer paars in het Open Application bericht hebben gespecificeerd of het logbestand wordt verworpen. Om te slagen moet de agent ook worden geconfigureerd om tot ten minste één Skill Group (SG) te behoren die tot de aangegeven MRD behoort.
De afbeelding toont het diagram van de berichtenstroom voor loggen in verzoek:
Logboek van luisteraar met het INFO-spoorniveau:
2019-07-20 18:27:31.749 GMT+0000 <@> INFO <@> [14285:listener-event-pool-priority-arm-request-executor::-0] <@> ProcessId:4584
<@> PID:1 <@> UID:1005 <@> HttpSessionId:IrltMMd3T0prrkbhAwK8wkL5 <@> com.ipcc.listener.arm.ARMLogger <@>
<@> Sending MEDIA_LOGIN_REQ -> 0 0 0 27 0 0 0 -105 0 2 8 1 0 0 19 -120 0 0 19 -87 0 0 0 0 0 0 0 1 107 5 49 48 48 53 0 <@>
2019-07-20 18:27:32.037 GMT+0000 <@> INFO <@> [71:Thread-9] <@> ProcessId:4584 <@> PID:1 <@> UID:12 <@> HttpSessionId:
<@> com.ipcc.listener.arm.ARMLogger <@> <@> Received MEDIA_LOGIN_RESP -> 0 0 0 8 0 0 0 -104 0 2 8 1 0 0 0 0 <@>
CTIsvr log met standaard sporenniveau:
20:27:32:466 cg1A-ctisvr Trace: ProcessMediaLoginReq - sessionID 4
20:27:32:466 cg1A-ctisvr Trace: SendARMMsg -- InvokeID = 591309094, MRDID = 5000, ICMAgentID = 5033, AgentMode = 0
IsAvailable = 0, MaxTaskLimit = 1, AgentInfo = 1005, ApplicationPathID = 5001, PeripheralID = 0, AgentID =
20:27:32:607 cg1A-ctisvr Trace: ProcessARMMediaLoginRespMsg -- InvokeID = 591309094, Status = 0, AgentSkillTargetID = 5033
Status 0 betekent dat er geen fouten zijn opgetreden aan de kant van de CTI-server.
Als de agent aan de chat SG wordt geassocieerd, en deze SG wordt geassocieerd aan de ECE rij in het Punt van de Toegang van het Kat, wanneer de agent zich beschikbaar tekent, zie 2 verzoeken, de MAKE_AGENT_ROUTABLE_IND en MAKE_AGENT_READY_IND.
Make Agent Routable Indication vertelt aan ICM dat de gespecificeerde agent op een ROUTABLE-modus is ingesteld voor de gespecificeerde MRD.
Opmerking: Het bericht van de Routable Indicatie van Make Agent kan worden verstuurd terwijl het wacht op een Geen Routable Respons van Make Agent en annuleert het hangende Make Agent niet Routable Aanvraag.
Zodra het verzoek van Make Agent Ready Indicatie door de luisteraar van de toepassingsserver is ontvangen, stuurt de luisteraar het verzoek door naar de CTI server en op dat moment de agent die als beschikbaar voor ECE wordt beschouwd. In dat geval, als chatten tegelijkertijd wordt gestart, staat het systeem toe om te beginnen en de chatactiviteit te maken voor die chat.
Het logboek toont deze verzoeken indien het INFO-spoor is ingeschakeld:
2019-08-19 13:34:09.773 GMT+0000 <@> INFO <@> [8938:listener-event-pool-priority-arm-request-executor::-441] <@> ProcessId:5436 <@> PID:1 <@> UID:12 <@> HttpSessionId: <@> com.ipcc.listener.AgentAvailabilityStatusHandler <@> <@> AgentAvailabilityStatusHandler:agentIsAvailable() MAKE_AGENT_ROUTABLE_IND to ARM armLoginDataArraySize= ARMAgentData ==================================================================
2019-08-19 13:34:09.773 GMT+0000 <@> INFO <@> [8938:listener-event-pool-priority-arm-request-executor::-441] <@> ProcessId:5436 <@> PID:1 <@> UID:12 <@> HttpSessionId: <@> com.ipcc.listener.arm.ARMLogger <@> <@> Sending MAKE_AGENT_ROUTABLE_IND -> 0 0 0 16 0 0 0 -102 0 1 57 43 0 0 19 -120 0 0 25 20 0 0 0 2 <@>
2019-08-19 13:34:09.774 GMT+0000 <@> INFO <@> [8938:listener-event-pool-priority-arm-request-executor::-441] <@> ProcessId:5436 <@> PID:1 <@> UID:12 <@> HttpSessionId: <@> com.ipcc.listener.arm.ARMLogger <@> <@> Sending MAKE_AGENT_READY_IND -> 0 0 0 14 0 0 0 -99 0 1 57 44 0 0 19 -120 0 0 25 20 0 1 <@>
2019-08-19 13:34:09.774 GMT+0000 <@> INFO <@> [8938:listener-event-pool-priority-arm-request-executor::-441] <@> ProcessId:5436 <@> PID:1 <@> UID:12 <@> HttpSessionId: <@> com.ipcc.listener.AgentAvailabilityStatusHandler <@> <@> PRINT_STATE after sending MAKE_AGENT_READY_IND to ARM:
De output van CTI Server en OPC verwerkt logboeken:
### CTI Server
15:34:09:841 cg1A-ctisvr Trace: ProcessMakeAgentRoutableInd - sessionID 6
15:34:09:841 cg1A-ctisvr Trace: SendARMMsg -- InvokeID = 80171, MRDID = 5000, ICMAgentID = 6420, MaxTasks = 2, SessionID = 6
15:34:09:841 cg1A-ctisvr Trace: ProcessMakeAgentReadyInd - sessionID 6
15:34:09:841 cg1A-ctisvr Trace: SendARMMsg -- InvokeID = 80172, MRDID = 5000, ICMAgentID = 6420, MakeRoutable = 1, SessionID = 6
### OPC
15:34:09:841 PG1A-opc Trace: MakeAgentRoutableInd - InvokeID = 80171, MRDID = 5000, ICMAgentID = 6420, MaxTasks = 2, SessionID = 6
15:34:09:841 PG1A-opc Trace: MakeAgentReadyInd - InvokeID = 80172, MRDID = 5000, ICMAgentID = 6420, MakeRoutable = 1, SessionID = 6
Als resultaat hiervan verwijdert OPC de agent van de staat AS_NOT_READY en zet deze op de status AS_NOT_ACTIVE. NewState=AS_NOT_ACTIVE is eigenlijk de Ready status voor Chat/mail.
15:34:09:841 PG1A-opc Trace: SetAgentState: ASTID=6420 Periph#=15003 MRDomainID=5000 SGSTID=6928 SG#=70518(0x11376) OldState=AS_NOT_READY NewState=AS_NOT_ACTIVE Duration=0 CurLine=-1 ReasonCode=0 AgentObj=0x44535b8
Op dit moment is de agent Routable en Beschikbaar vanuit het routerperspectief. De beste manier om dit te controleren is door het testprogramma te gebruiken:
rttest: agent_status /agent 6420 ### 6520 is ICMAgtID Agent CUCM.Agent_test (6420, periph# 15003) domain: Cisco_Voice (1), state = [nr-0:1,R], 411 secs CL nr TEST_SG (6274, periph# 70520) L nr CUCM_PIM1.Cisco_Voice.defa.88025 (5000, periph# 31858) domain: ECE_Chat (5000), state = [na-0:2,RA], 383 secs CL na TEST_Chat (6928, periph# 70518) L na CUCM.ECE_Chat.default.11006 (6909, periph# 54839)
ng - Nietactief
0:2 - AciteTasks:contentTaskLimit
RA - R is routeerbaar (indien ingesteld), A wees op de router de stof beschikbaar voor nieuw werk op dit domein
Voorzichtig: In ICM 11.5, 11.6 en 12.0 kunt u het defect CSCvq11852 Chat raken en e-mails worden niet toegewezen aan agents, zelfs zij zijn beschikbaar. In zulke scenario's zie je wel in de testuitvoer [na-0:2,RD], waarbij D domein betekent dat niet beschikbaar is (zoals gerapporteerd via app path).
Buiten dat, kunt u de agentenstaat van OPCtest en Agent PG procmon nutsbedrijven controleren.
Voorbeelden:
opctest /cust <inst> /node PG1A opctest: dump_agent 5000 15003 C:\icm\pcc12\ra\logfiles>procmon <inst> PG1A pim1 11:38:40 Trace: EMT Creating Mutex Global\IMTConnect_DisconnectLock >>>>dagent 15003
Waar 5000 perifere ID is waar de agent gecreëerd wordt, en 15003 is de agent Periprandnummer.
In chatinitialisaties kunnen je klanten het bericht "Bedankt voor je onderzoek" zien. Onze diensttijden zijn 9.00 - 17.00 uur PST, maandag-vrijdag." Dit bericht kan zelfs verschijnen wanneer er een agent in Klaar voor een gesprek is. Om de beschikbaarheid van de agent te identificeren verstuurt het systeem de API vraag wanneer klanten de URL van het Punt van de Ingang uitvoeren. Het API-verzoek gaat via een ECE-webserver naar een ECE-toepassingsserver. Deze beschikbaarheid wordt bepaald door de sessies die op de toepassingsserver worden gemaakt.
In ECE 11.6 onderzoekt het Beschikbaarheidsvereiste de beschikbaarheid van MRD en indien er een stof beschikbaar is in MRD, is Chat beschikbaar. Het probleem hier komt, dat als je 2 SG in CHAT MRD hebt, dan als er een agent beschikbaar is in één van de SG, je MRD actief wordt en CHAT wordt aangeboden. Dit probleem wordt opgelost in ECE 12.0 en latere versies. De versterking werd uitgevoerd door gebruik van de SG in de configuratie. In dat geval telt het systeem ook de Skill Group voor agenten die zich beschikbaar merken voor de specifieke MRD.
API-aanvraag:
http://<ECE_WEB_Server_IP>/system/egain/chat/entrypoint/initialisatie/1001
1001 is het invoerpunt-ID.
API-respons:
{"checkEligibility":{"responseType":0},"maskingPatterns":{"maskingPattern":[]},"isVideoChatLicensed":false,"isVideoChatEnabled":false,"videoChatMaxEscalation":5,"isDirectAudioChatEnabled":true,"isChatAttachmentEnabled":false,"maxChatAttachmentSize":3,"isBlackListType":false,"isOffRecordEnabled":false,"htmlTagMatcherRegEx":"((?:[\\r\\n|\\n]*(?:<[^>]*>)*[\\r\\n|\\n]*)*)","htmlTagMatcherIncr":1,"isOneTagOff":true}
Er zijn twee opties voor hoe het systeem definieert dat de agent beschikbaar is. Ofwel de agent is beschikbaar voor een chat of er is een Wachtrij Diepte waarmee dit kan worden gedaan. De configuratie van de wachtrijdiepte maakt het aantal klanten mogelijk dat in de wachtrij kan worden geplaatst wanneer alle agents bezig zijn.
In de API-reactie moet aandacht worden besteed aan checkEligibility: responstype waarde. Het geeft aan wat er op dat moment een agent beschikbaar is.
Opmerking: Er zijn hier geen opties om te zien hoeveel agents op het specifieke tijdstip beschikbaar zijn.
Als een agent beschikbaar is, worden de andere .js-bestanden ontvangen door de webbrowser. Als resultaat hiervan ziet een cliënt de eerste pagina met log in naam en onderwerpparameters voor het Punt van de Ingang.
De API-antwoorden zijn beschikbaar aan de clientkant (van de web browser Network-spoorlijn) of op de ECE-toepassingsserver met debug- of spoorniveau dat niet wordt aanbevolen om lang te blijven vanwege de hoge IO die wordt verbruikt.