• No results found

Begrijp de problemen met onsamenhangende desktoppresence-ontkoppeling van finesseimplementatie

N/A
N/A
Protected

Academic year: 2022

Share "Begrijp de problemen met onsamenhangende desktoppresence-ontkoppeling van finesseimplementatie"

Copied!
28
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Begrijp de problemen met onsamenhangende desktopPresence-ontkoppeling van finesse- implementatie en probleemoplossing

Inhoud

Inleiding Voorwaarden Vereisten

Gebruikte componenten

De implementatie van Finse BOSH begrijpen Meer informatie over XMPP

Voorbeeld XMPP-bericht

XMPP-implementatie met resultaten Voorbeelden: XMPP-aanvraag/respons

De betekenis van XMPP-berichten en XMPP-knooppunten

Voorbeeld 1: Pidgin gebruiken om finse XMPP-knooppunten te bekijken

Voorbeeld 2: Het tabblad Storage Manager gebruiken om HTTP-berichten weer te geven Problemen oplossen: Foutbericht voor BOSH verbroken verbinding

Log analyse

Vastlegging systeemberichten verwijderen  Vastlegging informatieservice

Vastlegging webservices

Gemeenschappelijke redenen voor BOSH-verbroken verbinding 

Probleem: Middelen verdwijnen op verschillende tijdstippen (client-side release) Aanbevolen acties 

Probleem: Alle agents maken tegelijkertijd los (serverzijkwestie) Aanbevolen acties 

Fiddler gebruiken Veelzeggende kwestie Configuratiestappen Wireshark gebruiken Verwante tekortkomingen Gerelateerde informatie

Inleiding

Dit document beschrijft de architectuur achter Finse verbindingen die Bidirectional-streams Over Synchronous HTTP (BOSH) gebruiken en hoe BOSH verbindingsproblemen kunnen worden gediagnosticeerd.

Voorwaarden

(2)

Vereisten

  

Cisco raadt kennis van de volgende onderwerpen aan:

Cisco Finesse

Unified Contact Center Enterprise (UCCE)

Unified Contact Center Express (UCCX)

Web browser ontwikkelingstools

Windows- en/of Mac-beheer

Gebruikte componenten

  

De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:

Cisco Finesse 9.0(1) - 11.6(1)

UCCX 10.0(1) - 11.6(2)

De informatie in dit document is gebaseerd op de apparaten in een specifieke

laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk levend is, zorg er dan voor dat u de mogelijke impact van om het even welke opdracht begrijpt.

De implementatie van Finse BOSH begrijpen

Meer informatie over XMPP

Extensible Messaging and Presence Protocol (XMPP) (ook bekend als Jabber) is een stateful protocol in een client-server-model. XMPP maakt het mogelijk om snel kleine stukjes

gestructureerde eXtensible Markup Language (XML) gegevens van de ene entiteit naar de andere te leveren. XMPP/Jabber wordt uitgebreid gebruikt in instant Messaging (IM) en Presence

Application.

Alle XMPP-entiteiten worden geïdentificeerd door hun Jabber-id (JID).

(3)

JID-adresseringsregeling: user@domain/resource

gebruikster Gebruikersnaam voor client op de XMPP-server of naam van de vergaderruimte domein XMPP server volledig gekwalificeerd domeinnaam (FQDN)

bron Identificatiecode van de specifieke entiteit/het specifieke eindpunt van de gebruiker (bijvoorbeeld laptop, smartphone, enz.), een sessidentificatiecode, of de naam van de pubsubknooppunten Opmerking: Alle drie de JID-componenten worden niet in alle gevallen gebruikt. Een server

zou normaal enkel door het domein worden gedefinieerd, een conferentiezaal gedefinieerd door user@domain, en een client door user@domain/resource. 

XMPP berichten worden stanzas genoemd. Er zijn drie core stanzas in XMPP:

1. <bericht>: één richting, één ontvanger

2. <aanwezigheid>: één richting, publiceren aan velen 3. <iq>: info/query - verzoek/antwoord

Alle stanzas moeten naar en van adressen en de meeste stanzas hebben ook type, id, en xml:taaleigenschappen.

Stanza

attribuut doel

aan bestemming JID

van bron-JID

type doel van het bericht

id unieke identificator die wordt gebruikt om een aanvraag te koppelen aan een reactie voor <iq>

standaarden

xml:lang definieert de standaardtaal voor elke menselijke leesbare XML in de stanza Voorbeeld XMPP-bericht

(4)

<message to='person1@example' from='person2@example' type='chat'>

<subject> Team meeting </subject>

<body>Hey, when is our meeting today? </body>

<thread>A4567423</thread>

</message>

XMPP-implementatie met resultaten

Als een webtoepassing met XMPP moet werken, ontstaan er meerdere problemen. Browsers ondersteunen XMPP over Transmission Control Protocol (TCP) niet, dus al het XMPP-verkeer moet worden verwerkt door een programma dat binnen de browser loopt. Webservers en browsers communiceren via HTTP-berichten (HyperText Transfer Protocol), zodat Finesse en andere webtoepassingen XMPP-berichten binnenin HTTP-berichten inpakken. 

De eerste moeilijkheid met deze benadering is dat HTTP een stateless protocol is. Dit betekent dat elk HTTP-verzoek geen verband houdt met een ander verzoek. Dit probleem kan echter worden aangepakt met behulp van toepassingsmiddelen, bijvoorbeeld door het gebruik van koekjes/postgegevens.

De tweede moeilijkheid is het unidirectionele gedrag van HTTP. Alleen de client stuurt verzoeken en de server kan alleen antwoorden. Het onvermogen van de server om gegevens te duwen maakt het onnatuurlijk om XMPP via HTTP te implementeren.

Dit probleem bestaat niet in de originele XMPP Core Specificatie (RFC 6120), waar XMPP aan TCP gebonden is. Maar als je het probleem wilt aanpakken met XMPP gebonden aan HTTP, omdat Javascript HTTP aanvragen kan verzenden, zijn er twee mogelijke oplossingen. Beide vereisen een brug tussen HTTP en XMPP.

De voorgestelde oplossingen zijn:

1. Verkiezingen (oude protocol): herhaalde HTTP-verzoeken om nieuwe gegevens zoals gedefinieerd in XEP-0025: Jabber HTTP-stemming

2. Lange opiniepeiling is ook bekend als BOSH: transportprotocol dat de semantiek van een langlevende, bidirectionele TCP-verbinding tussen twee entiteiten emuleert door efficiënt gebruik te maken van meerdere synchrone HTTP-aanvraag-/responsparen zonder het gebruik van

frequente opiniepeilingen gedefinieerd in XEP-0124: HTTP-binding en uitgebreid door XEP-0206:

XMPP via BOSH

Finesse implementeert BOSH omdat dit vrij efficiënt is vanuit het oogpunt van serverbelasting en traffic shaping. Het doel van het gebruik van BOSH is om het feit te verdoezelen dat de server niet hoeft te reageren zodra er een verzoek is. De respons wordt tot een bepaalde tijd uitgesteld tot de server gegevens voor de client heeft, en dan wordt het als antwoord verstuurd. Zodra de klant de reactie krijgt, doet de klant een nieuw verzoek enzovoort.

De Finse desktop client (webtoepassing) voert een stabiele BOSH-verbinding in via TCP poort 7443 elke 30 seconden. Na 30 seconden, als er geen updates van de Finse Meldingsdienst zijn, verstuurt de Meldingsdienst een HTTP-antwoord met 200 OK en een (bijna) lege responsinstantie.

Als de Meldingsdienst een update heeft van de aanwezigheid van een agent of een dialoog (vraag) gebeurtenis, bijvoorbeeld, worden de gegevens onmiddellijk naar de Finse web client verstuurd.

Voorbeelden: XMPP-aanvraag/respons

(5)

Dit voorbeeld toont de eerste respons van de XMPP berichtvraag die tussen de Finse client en Finse server wordt gedeeld om de BOSH verbinding in te stellen.

Finesse client request:

<body xmlns="http://jabber.org/protocol/httpbind" xml:lang="en-US" xmlns:xmpp="urn:xmpp:xbosh"

hold="1" ver="1.9" to="fin1.ucce.local" wait="30" xmpp:version="1.0"

from="47483648@fin1.ucce.local" rid="704654808"/>

Finesse server response:

<body xmlns="http://jabber.org/protocol/httpbind"

xmlns:stream="http://etherx.jabber.org/streams" authid="26779701" sid="26779701" secure="true"

requests="4" inactivity="60" polling="5" wait="30" hold="1" ack="704654808" maxpause="300"

ver="1.6"><stream:features><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp- sasl"><mechanism>PLAIN</mechanism></mechanisms><compression

xmlns="http://jabber.org/features/compress"><method>zlib</method></compression><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/><session xmlns="urn:ietf:params:xml:ns:xmpp- session"/></stream:features></body>

Samengevat:

De Finse web client heeft een stabiele HTTP-verbinding (http-bind) die is ingesteld naar de Finse server via TCP poort 7443. Dit is een BOSH lange enquête.

1.

De dienst voor het melden van fouten is een presentieservice die updates over de staat van een agent, oproep, enz. plaatst.

2.

Als de Meldingsdienst een update heeft, reageert hij op het http-bind verzoek met de state update als een XMPP bericht in het HTTP responsorgaan.

3.

Als er 30 seconden na het ontvangen van het http-bind verzoek geen state updates zijn, reageert de dienst van de Kennisgeving zonder staatupdates om de Finse web client in staat te stellen een ander http-bind verzoek te verzenden. Dit dient als een manier voor de

Meldingsdienst om te weten dat de Finse web client nog steeds verbinding kan maken met de Meldingsdienst en dat de agent hun browser niet heeft gesloten of hun computer niet in slaap heeft gezet, enz.

4.

De betekenis van XMPP-berichten en XMPP-knooppunten

Finesse implementeert ook XMPP-specificatie XEP-0060: publiceren-abonnement. Het doel van deze specificatie is om de XMPP-server (Meldingsservice) in staat te stellen om informatie te ontvangen die naar XMPP-knooppunten (onderwerpen) wordt gepubliceerd en om vervolgens XMPP-gebeurtenissen naar entiteiten te verzenden die zijn geabonneerd op het knooppunt. In het geval van Finse, verstuurt de server Computer Telephony Integration (CTI) CTI-berichten naar de Finse webservice om Finesse te informeren over configuratieupdates zoals, maar niet beperkt tot, de creatie van Agent of Contact Service Quwachtrij (CSQ) of informatie over een oproep. Deze informatie wordt vervolgens geconverteerd naar een XMPP-bericht dat de Finse webservice

publiceert op de Finse Meldingsservice. De Finse Meldingsservice verstuurt dan XMPP via BOSH- berichten naar agents die zijn geabonneerd op bepaalde XMPP-knooppunten.

Sommige Finse API-objecten die in de Finse Web Services Development Guide zijn gedefinieerd, zijn XMPP-knooppunten. Agent en supervisor Finesse web clients kunnen zich abonneren op updates van gebeurtenissen voor een aantal van deze XMPP-knooppunten om actuele informatie te hebben over gebeurtenissen in real-time (zoals Call gebeurtenissen, staatsgebeurtenissen,

(6)

enzovoort). In deze tabel worden de XMPP-knooppunten weergegeven die zijn ingeschakeld.

API-object voltooien doel abonnement

/finesse/api/gebruiker/<aanmelding/ID> Toont de staat- en

teammapping van de agent

Middelen en toezichthouders /finesse/api/gebruiker/<LoginID>/Dialogen

Toont de oproep(en) die door de agent

wordt/worden verwerkt

Middelen en toezichthouders

/finesse/api/gebruiker/<aanmelding/id>/clientlogboek

Gebruikt om

clientlogbestanden op te nemen vanaf de knop Error Report verzenden

Middelen en toezichthouders

/finesse/api/gebruiker/<Login-ID>/Wachtrij/<wachtrijID>

Toont gegevens in de wachtrij (indien

ingeschakeld)

Middelen en toezichthouders /finesse/api/team/<teamID>/gebruikers

Toont de agents die tot een bepaald team behoren, inclusief staatsinformatie

TOEZICHTHOUDERS

/finesse/api/SystemInfo

Toont de status van de Finse server. Gebruikt om te bepalen of failover nodig is

Middelen en toezichthouders

Voorbeeld 1: Pidgin gebruiken om finse XMPP-knooppunten te bekijken Stap 1. Downloaden en installeren van de XMPP-client.

Stap 2. Navigeer naar accounts > Wijzigen > Basis en stel de inlogopties in:

Protocol: XMPP

Username: AanmeldenID voor elke agent

Domain: FQDN-server van finse

Middel: Placehouder - elke waarde kan bijvoorbeeld worden gebruikt voor tests

Wachtwoord: Wachtwoord voor Agent

Controleer het selectieteken met het wachtwoord onthouden

(7)

Stap 3. navigeren naar accounts > Wijzigen > Geavanceerd en configureren:

Beveiliging van de verbinding: Gebruik encryptie indien beschikbaar

Controleer de functie Plaintext auth uitvoeren op andere niet-versleutelde stromen

verbindingspoort: 5222. Gebruik de standaardpoort 5222. Deze poort is vereist voor externe XMPP klanten. Finesse desktop clients gebruiken 7443. Gebruik poort 7443 niet.

Connection server: Finse server FQDN

(8)

Opmerking: Port 5222 wordt gebruikt omdat alleen Finesse-webclients poort 7443 kunnen gebruiken om verbinding te maken met de Meldingsservice.

Stap 4. Navigeer naar Gereedschappen > plug-ins en stel de XMPP-console in.

(9)

Stap 5. Navigeer naar Gereedschappen > XMPP-console > XMPP-console om de XMPP-console te openen.

(10)

Stap 6. Voer dit <iq> bericht uit om alle XMPP-knooppunten die bestaan te zien.

Bijvoorbeeld:

(11)

In een laboratoriumomgeving met twee agents en twee CSQ's ingesteld, is deze uitvoer in de Finse respons vervat:

(12)

Voorbeeld 2: Het tabblad Storage Manager gebruiken om HTTP-berichten weer te geven Elke browser heeft een set ontwikkelingstools. Het tabblad Network van de ontwikkelaar tools toont de HTTP-berichten die door de Finse web client (browser) zijn verstuurd en ontvangen.

Deze afbeelding laat bijvoorbeeld zien hoe de Finse webclient een aanvraag voor SystemInfo verstuurt die de status Finse Tomcat elke minuut controleert als een failover-controle. Daarnaast worden de http-bind berichten van de BOSH verbinding ook weergegeven. De Finse server stuurt binnen 30 seconden een antwoord terug als er geen updates zijn om op de XMPP-knooppunten te publiceren waarop de webclient is geabonneerd.

Problemen oplossen: Foutbericht voor BOSH verbroken verbinding

 Wanneer een BOSH-verbinding wordt verbroken, is de fout "Verloren verbinding met {Finse Server FQDN}. Wacht tot er een bereikbare Finesse Server wordt gevonden..." wordt

weergegeven in een rode banner boven op het bureaublad Finesse.

Dit bericht wordt weergegeven omdat er op dit moment geen XMPP-abonnementsgebeurtenissen kunnen worden ontvangen van de Cisco Finse Recognition Service. Daarom kunnen de informatie en de gespreksgegevens niet op het bureaublad worden weergegeven.

Voor UCCX, 60 seconden nadat de browser de verbinding verbroken heeft, wordt de agent in een Logout status geplaatst. De agent kan in de Klaar of Niet Klaar zijn om de logout te laten

(13)

gebeuren.

Voor UCCE duurt Finesse tot 120 seconden om te detecteren wanneer een agent de browser sluit of de browser crasht en Finesse 60 seconden wacht alvorens een gedwongen logout-verzoek naar de CTI server te verzenden, wat ervoor zorgt dat de CTI server de agent in Not Ready state stopt. Onder deze omstandigheden kan Finesse tot 180 seconden nodig hebben om het middel te tekenen. Anders dan in UCCX, beweegt de agent in een Niet Klaar staat in plaats van de

Uitlogstaat.

Opmerking: De CTI koppelt Not Ready vs. Logout state gedrag in UCCE wordt bepaald door de PG /LOAD parameter. Volgens de Releaseopmerkingen van Unified Contact Center Enterprise & Hosted release 10.0(1) wordt de LOAD-parameter vanaf UCCE 10.0 afgekeurd.

Raadpleeg voor meer informatie over het gedrag van het bureaublad UCCE Finesse het gedeelte Desktopgedrag van de Cisco Finse Failover-mechanismen in het hoofdstuk van de Cisco Finesse- beheergids.

Opmerking: De timerwaarden kunnen in de toekomst veranderen volgens de productvereisten.

Log analyse

De registers van de Fins- en UCCX-kennisgevingsdienst kunnen via RTMT of via de CLI worden verzameld:

bestand activeren/bureaublad-reces comprimeren Vastlegging systeemberichten verwijderen 

Opmerking: Stel vlak loggen voor tijdens het reproduceren van een probleem in. Schakel de afvoerbuis uit nadat het probleem is gereproduceerd.

Opmerking: Finse 9.0(1) heeft geen debug van level logging. Debug level logging werd geïntroduceerd in Finesse 9.1(1). De procedure voor het inschakelen van houtkap is in artikel 9.1(1) anders dan in artikel 10.0(1) - 11.6(1). Raadpleeg de handleiding

Bestuursbeheer en Serviceprovider voor dit proces.

Schakel Meldingsservice in om logbestanden van Unified Contact Center Express (UCCX) in te schakelen.

admin:utils uccx notification-service log enable

WARNING! Enabling Cisco Unified CCX Notification Service logging can affect system performance and should be disabled when logging is not required.

Do you want to proceed (yes/no)? yes

Cisco Unified CCX Notification Service logging enabled successfully.

(14)

NOTE: Logging will be disabled automatically if Cisco Unified CCX Notification Service is restarted.

Schakel Meldingsservice in om bestanden van Unified Contact Center Enterprise (UCCE) (Finse Standalone) te debug:

admin:utils finesse notification logging enable

Checking that the Cisco Finesse Notification Service is started...

The Cisco Finesse Notification Service is started.

Cisco Finesse Notification Service logging is now enabled.

WARNING! Cisco Finesse Notification Service logging can affect system performance and should be disabled when logging is not required.

Note: Logging will be disabled automatically if you restart the Cisco Finesse Notification Service

Deze logbestanden bevinden zich in de map /desktop/logs/openfire en worden debug.log genoemd.

Zoals in de afbeelding wordt getoond, debug.log van de Meldingsdienst (Openfire) toont de http binding met desktop samen met het IP adres en poort van de agent PC.

Zoals in de afbeelding wordt getoond, toont de laatste actieve 0 ms dat de sessie nog actief is.

Openbrand die de ongebruikte sessie sluit, geeft aan dat de agent logout in 60 seconden zal starten, waarbij Finesse een gedwongen logout met een argument code van 255 naar de CTI server zal sturen. Het eigenlijke gedrag van het bureaublad onder deze omstandigheden hangt af van de instelling voor Logout on Agent Disconnect (LOAD) in UCCE. In UCCX is dit altijd het gedrag.

 Als de Finse cliënt geen http-bind berichten naar de Finse server stuurt, zullen de logboeken de sessie op tijd tonen en de sessie dicht tonen.

2017.06.17 00:14:34 Session (id=f382a015) was last active 0 ms ago:

1001003@xxxxx.xxxx.xxx.cisco.com/desktop

2017.06.17 00:15:04 Session (id=f382a015) was last active 13230 ms ago:

1001003@xxxxx.xxxx.xxx.cisco.com/desktop

2017.06.17 00:15:34 Session (id=f382a015) was last active 43230 ms ago:

1001003@xxxxx.xxxx.xxx.cisco.com/desktop

2017.06.17 00:16:04 Session (id=f382a015) was last active 63231 ms ago:

1001003@xxxxx.xxxx.xxx.cisco.com/desktop

(15)

2017.06.17 00:17:04 Unable to route packet. No session is available so store offline. <message from="pubsub. xxxxx.xxxx.xxx.cisco. com" to="1001003@xxxxx.xxxx.xxx.cisco.com.cisco.com"

id="/finesse/api/User/1001003__1001003@xxxxx.xxxx.xxx.cisco.com__o5Aqb"><event

xmlns="http://jabber.org/protocol/pubsub#event"><items node="/finesse/api/User/1001003"><item id="0d78a283-466d-4477-a07e-6e33a856fce388"><notification

xmlns="http://jabber.org/protocol/pubsub">&lt;Update&gt

Vastlegging informatieservice

Deze logboeken zijn in de map Statistische informatie/logs/openfire te vinden en ze worden info.log genoemd. Als de Finse client geen http-JBIS-berichten naar de Finse server stuurt, tonen de logbestanden aan dat de sessie inactief wordt.

2017.06.17 00:16:04 Closing idle session (id=f382a015): 1001003@xxxxx.xxxx.xxx.

cisco.com/desktop after being inactive for more than threshold value of 60

2017.06.17 00:16:04 A session is being closed for 1001003@xxxxx.xxxx.xxx. cisco.com/desktop

Vastlegging webservices

Deze logbestanden bevinden zich in de map /desktop/logs/webservices en worden

desktopwebservices genoemd.YYY-MM-DTHH-MM-SS.sss.log. Als de Finse client binnen de opgegeven tijdsduur geen http-bind-berichten naar de Finse server stuurt, zullen de logbestanden de agent tonen die niet beschikbaar is en 60 seconden later zal een presense-uitloggen

voorkomen.

0000001043: XX.XX.XX.XXX: Jun 17 2017 00:16:04.630 +0530: %CCBU_Smack Listener Processor (1)-6- PRESENCE_NOTIFICATION_RECIEVED: %[FROM

JID=1001003@xxxxx.xxxx.xxx.cisco.com/desktop][PRESENCE_TYPE=unavailable]:Finesse received a presence notifcation

0000000417: XX.XX.XX.XXX: Jun 17 2017 00:16:04.631 +0530: %CCBU_Smack Listener Processor (1)-6- UNSUBSCRIBE_REQUEST_SUCCESS:

%[NodeId=/finesse/api/User/1001003/ClientLog][user_id=1001003@xxxxx.xxxx.xxx.cisco.com]:

Sucessfully unsubscribed from a node on the XMPP server

0000001044: XX.XX.XX.XXX: Jun 17 2017 00:16:04.631 +0530: %CCBU_Smack Listener Processor (1)-6- AGENT_PRESENCE_MONITOR: %[message_string=Adding agent 1001003 into the expiry hash.]:

0000001051: XX.XX.XX.XXX: Jun 17 2017 00:16:35.384 +0530: %CCBU_pool-8-thread-1-6- AGENT_PRESENCE_MONITOR: %[message_string=[Expired] Removed agent from cache 1001003]:

0000001060: XX.XX.XX.XXX:: Jun 17 2017 00:17:04.632 +0530: %CCBU_CoreImpl-worker12-6-PRESENCE DRIVEN LOGOUT: %[agent_id=1001003]: Performing CTI Logout on basis of the agents unavailable presence

0000001061: XX.XX.XX.XXX:: Jun 17 2017 00:17:04.633 +0530: %CCBU_CoreImpl-worker12-6-

MESSAGE_TO_CTI_SERVER: %[cti_message=Invoke id :39 , agentstate : 1, workmode : 0, reason code:

255, forceflag :1, agentcapacity: 1, agentext: 1001003, agentid: 1001003, supervisorid: null, ssoFlag=false][cti_message_name=SetAgentStateReq]: Message going to the backend cti server 0000001066: XX.XX.XX.XXX:: Jun 17 2017 00:17:04.643 +0530: %CCBU_CTIMessageEventExecutor-0-6- DECODED_MESSAGE_FROM_CTI_SERVER: %[cti_message=CTIAgentStateEvent [skillGroupState=1 (LOGOUT), stateDuration=0, skillGroupNumber=-1, skillGroupPriority=0, agentState=1 (LOGOUT),

eventReasonCode=255, numFltSkillGroups=0, CTIClientSignature=null, agentID=1001003, agentExtension=1001003, agentInstrument=null, agentID_Long=1001003, duration=null, nextAgentState=null, fltSkillGroupNumberList=[], fltSkillGroupIDList=[],

fltSkillGroupPriorityList=[], fltSkillGroupStateList=[], MRDId=1, agentMode=0]CTIMessageBean [invokeID=null, cti_sequence_id=105, msgID=30,

timeTracker={"id":"AgentStateEvent","CTI_MSG_RECEIVED":1497638824642,"CTI_MSG_DISPATCH":14976388 24643}, msgName=AgentStateEvent, deploymentType=CCX]][cti_response_time=1][dispatch_phase=DnD- CHECKPOINT-3B]: Decoded Message to Finesse from backend cti server

Gemeenschappelijke redenen voor BOSH-verbroken verbinding 

(16)

 BZH-verbindingen worden ingesteld door de webclient en de Finse server bepaalt of de agent niet aanwezig is. Dit zijn bijna altijd problemen aan de kant van de cliënt met betrekking tot de

browser, agentencomputer of netwerk, aangezien de taak van het opstarten van de verbinding tot de klant behoort.

Probleem: Middelen verdwijnen op verschillende tijdstippen (client-side release)

Aanbevolen acties 

Controleer op deze problemen:

1. Netwerkkwestie:

Review-regels en -logbestanden - TCP-poort 7443 mag niet worden geblokkeerd of geblokkeerd

Gebruik een HTTP web traffic sniffer zoals Fiddler® of Wireshark® om te bevestigen dat de browser http-bind verzoeken via TCP 7443 verstuurt en reacties ontvangt

Controleer alle netwerkapparaten/interfaces tussen de gescande computer en de Finse server op buitensporige vertraging of pakketverlies Traceroute kan handig zijn om het pad te bepalen en vertragingen te bepalen Op een Microsoft® Windows® PC: tracert {Finse Server IP |

FQDN-geldserverOp een Mac®: traceroute {Finse Server IP | FQDN-geldserverOp Cisco IOS® software kunnen de interfacestatistieken worden gecontroleerd: tonen interfaces  Verminder de daling van de invoerwachtrij voor probleemoplossing en uitloop

Verzamel Finse clientbestanden voor een testagent. Clientlogbestanden kunnen op drie manieren worden verzameld: Webconsole-weblogs voor browser Firefox-

webconsoleWebconsole voor Internet ExplorerChroom-webconsoleDruk op de knop Fout- rapport verzenden op de pagina Voltooien en neem de logbestanden van de Finse server op.

De loggen bevinden zich in/desktop/logs/clientlogs.Meld u aan via https://<Finesse- FQDN>/desktop/locallog en verzamel de logbestanden na het probleem.

 Elke minuut sluit de client zich aan op de Finse server om de snelheid en netwerkvertraging te berekenen:

<PC date-time with GMT offset>: : <Finesse FQDN>: <Finesse server date-time with offset>: Header : Client: <date-time>, Server: <date-time>, Drift: <drift> ms, Network Latency (round trip):

<RTT> ms

2019-01-11T12:24:14.586 -05:00: : fin1.ucce.local: Jan 11 2019 11:24:14.577 -0600: Header : Client: 2019-01-1

Als u problemen hebt met blogverzameling, raadpleegt u Problemen oplossen bij Cisco Finse desktop Persistent Logging Problem 

2. Niet-ondersteunde browser en/of versie:

Gebruik ondersteunde browser/versie en instellingen volgens de compatibiliteitsmatrixen: 

UCS-compatibiliteitsmatrix UCCX-compatibiliteitsmatrix

(17)

3. Steekproef van browser door inhoud/verwerking van andere tab/venster:

Controleer de agens werkschema om te zien of ze:

Er zijn vaak andere tabbladen of vensters die voortdurend andere real-time toepassingen draaien, zoals muziek/video streaming, WebexSocket-verbindingen, Customer Relationship Management (CRM) webclients, enz

U kunt een groot aantal tabbladen of vensters openen

Heb browser caching uitgeschakeld

Ze hebben hun browser lange tijd laten draaien en sluiten de browser niet aan het eind van de werkdag

4. Computer in slaap:

Controleer of het agens hun computer in slaap zet voor hij uit Finesse logt of dat de slaapinstelling van de computer erg laag is.

5. Hoge CPU of hoge geheugenproblemen op clientcomputer:

Als de browser in een gedeelde omgeving draait zoals Microsoft Windows Remote Desktop Services, Citrix® XenApp®, Citrix XenDesktop®, bepalen of de zoekprestaties afhankelijk zijn van het aantal gebruikers dat de browser tegelijkertijd uitvoert Zorg ervoor dat de juiste geheugen- en CPU-bronnen zijn geconfigureerd op basis van het aantal gebruikers

Controleer problemen bij gebruik van computerbronnen:

Windows: Windows PowerShell Get-Counter opdracht die % van de CPU-tijd, Megabytes aan geheugen beschikbaar en % geheugen in gebruik elke 2 seconden controleert: GetCounter - Counter "\Processor(_Total)\% processortijd","\Memory\Available MBytes","\Memory\%

verbonden aan Bytes in gebruik" -SampleInterval 2 -ContinuumIn plaats van PowerShell te gebruiken om de prestatietellers van Windows te bekijken, kan Windows Performance Monitor worden gebruiktTask Manager kan worden gebruikt om de statistieken van bewegende CPU's en geheugen wereldwijd en op procesgewijze basis weer te gevenMac: opdracht terminal top die het totaal CPU en geheugen controleert: bovenkant Controleer processen en sorteren op CPU-gebruik: top-o CPUControleer processen en sorteer op geheugen gebruik: top-o MEMDe activiteitsmonitor kan worden gebruikt om de statistieken van bewegende CPU's en geheugen mondiaal en procesgeoriënteerd te bekijken

6. Gadgets van de derde partij die onverwachte, problematische activiteiten op de achtergrond uitvoeren:

Test het gedrag van Finesse bureaublad met alle 3rd party gadgets verwijderd.

7. NTP-kwestie op server of client:

Controleer de utils ntp status op de Finse uitgeverserver om er zeker van te zijn dat het NTP- serverstratum 4 of lager is

Controleer het verloop en de netwerkvertraging in de clientlogs

Probleem: Alle agents maken tegelijkertijd los (serverzijkwestie)

Aanbevolen acties 

(18)

Controleer op deze problemen:

1. De Cisco Unified Communications Manager-serviceproviders sluiten de verbinding af. Als alle CTIManager-providers voor UCCX shutdown of crashen, zien UCCX-agents de fout aan de rode banner. De agenten van UCCE zien de rode banner niet als dit gebeurt, maar de vraag leidt niet naar behoren naar de agenten.

Controleer of de Cisco CTIManager-service is gestart op de CUCM-servers die als CTI- providers worden gebruikt

Controleer of de service van Cisco CTIManager via het Event Viewer -

Toepassingsbestanden op RTMT is gecrasht om te zien of de Cisco CTIManager-service is crashed U kunt de logbestanden van de evenementenviewer op RTMT als volgt verzamelen:

Systeem > Gereedschappen > Centraal overschakelen > Verzamelen van bestanden >

Selecteren systeemservices/toepassingen > Event Viewer-toepassing

U kunt de logbestanden van het Event Viewer-Application op CLI verzamelen: bestand activeren/syslog/CiscoSyslog* abstime hh:mm:MM/DD/YY hh:mm:MM/DD/YY

Om core dumps op CLI te bekijken: utils core active list

Opmerking: Core dumps-bestandsnamen gebruiken de bestandsindeling:

core.<ProcentID>.<SignalNumber>.<Procesnaam>.<EpochTime>. 

Voorbeeld: core.24587.6.CTIManager.153441238

Het tijdstip van de crash kan dus worden bepaald vanaf het tijdperk van het tijdperk.

2. Meldingen/UCCX-meldingsservice gestopt of crashen:

Controleer de in het venster van het evenement weergegeven logboek op fouten van de Meldingsservice of om te zien of de service is gestopt

Controleer of de dienst voor kennisgeving is opgezet: gebruik een servicelijst

Controleer de tijden dat de melding wordt stopgezet: zoekactie voor bestanden/bureaubladen/blogs/openvuur "Openfire gestopt"

Controleer de tijden dat de melding wordt gestart: zoekactie voor

(19)

bestanden/bureaublad/logbestanden/openbrand "HTTP-bind-service gestart"

Controleer op een melding van een storing in het geheugen: lijst van bestanden activelog/desktop/logs/openfire/*.hprof

Controleer of de dienst voor melding naar verkeer op TCP poort 7443 luistert: Open havens regexp 7443.*LISTEN

Controleer of deze defecten van toepassing zijn (deze defecten zouden loginfalen

veroorzaken voor agents logging in en voor agents die al aangemeld zijn, deze agents zien het rode spandoek Finesse loskoppelen bericht): CSCva7280 - Finesse Tomcat en

OpenFirePOWER voor ongeldige XML tekensCSCva72325 -UCCX: Finesse Tomcat en OpenFirePOWER voor ongeldige XML tekens

Start Cisco Finse Tomcat- en Meldingsservice opnieuw als er een storing wordt vermoed. Dit wordt alleen aanbevolen in een situatie waarin het netwerk is uitgevallen, anders worden de agents opnieuw opgestart op de Finesse server.

Stappen voor UCCE: utist-servicetak Cisco Finse Tomcatutisten-servicetak Cisco Finse- melding-serviceutist-service start Cisco Finse Tomcatutist-service start de Cisco Finse- melding Service

Stappen voor UCCX: utist-servicetak Cisco Finse Tomcatutist-servicetak Cisco Unified CCX- meldingutist-service start Cisco Finse Tomcatutist-service start Cisco Unified CCX-

meldingsservice

Fiddler gebruiken

Het configureren van Fiddler kan een ietwat uitdagende taak zijn zonder de stappen te begrijpen die nodig zijn en zonder te begrijpen hoe Fiddler werkt. Fiddler is een man-in-the-middle web proxy die staat tussen de Finesse-client (webbrowser) en de Finesse-server. Wegens de

verbindingen die tussen de Finse client en Finse server worden beveiligd, voegt dit een laag van complexiteit toe aan de configuratie van Fidler om beveiligde berichten te bekijken.

Veelzeggende kwestie

Aangezien Fiddler tussen de Finse client en Finse server staat, moet de Fidler-toepassing ondertekende certificaten maken voor alle Finse TCP-poorten die certificaten vereisen:

Cisco Fijnafstanden voor papieren servicecertificaten

Finse uitgeverserver TCP 8445 (en/of 443 voor UCCE) 1.

Finse Subscriber server TCP 8445 (en/of 443 voor UCCE) 2.

Cisco Fins (Unified CCX) Meldingsservicecertificaten Finse uitgeverserver TCP 7443

1.

Finse Subscriber server TCP 7443 2.

HTTPS-decryptie moet voor Fiddler in staat worden gesteld om op dynamische wijze certificaten te genereren namens de Finse server. Dit is standaard niet ingeschakeld.

Als HTTPS decryptie niet wordt gevormd, wordt de aanvankelijke tunnelverbinding aan de Dienst van de Kennisgeving gezien, maar het http-bind verkeer is niet. Fiddler toont alleen:

(20)

Tunnel to <Finesse server FQDN>:7443

Vervolgens moeten de Finse certificaten die door Fiddler zijn ondertekend, door de cliënt worden vertrouwd. Als deze certificaten niet worden vertrouwd, kan u voorbij de versleutelde verbinding maken... stadium van inloggen bij Finesse niet worden gebruikt.

In sommige gevallen werkt het niet om de certificaatuitzonderingen op de inlognaam te aanvaarden en de certificaten moeten handmatig door de browser worden vertrouwd. 

Configuratiestappen

Voorzichtig: De voorbeeldconfiguratie die wordt geboden is voor Fiddler v5.0.20182.28034 voor .NET 4.5en Mozilla Firefox 64.0.2 (32-bits) op Windows 7 x64 in een labomgeving.

Deze procedures kunnen niet voor alle versies van Fiddler, alle browsers of alle

computerbesturingssystemen generaliseren. Als uw netwerk actief is, zorg er dan voor dat u het mogelijke effect van een configuratie begrijpt. Raadpleeg de officiële documentatie bij Fiddler voor meer informatie. 

Stap 1. Downloadster

Stap 2. HTTPS-decryptie inschakelen: Gereedschappen > Opties > HTTPS > Controleer de selectieknop voor decryptie HTTPS-verkeer

(21)

Stap 3. Er is een waarschuwingsbericht beschikbaar om te vragen of u het Pause-certificaat van het filter wilt vertrouwen. Selecteer Ja.

Stap 4. Er wordt een waarschuwingsbericht geopend met het bericht "U staat op het punt een certificaat te installeren van een certificeringsinstantie (CA) die probeert het volgende te

vertegenwoordigen: DO_NOT_TRUST_FiddlerRoot... Wilt u dit certificaat installeren?" Selecteer Ja.

Stap 5. Voeg handmatig de Finse uitgever en de abonneecertificaten toe aan de computer of browser, zodat deze op vertrouwen kunnen vertrouwen. Zorg ervoor dat poorten 845, 7443 en (alleen voor UCCE) 443. Bij Firefox bijvoorbeeld, kan dit alleen worden gedaan zonder certificaten te downloaden van de pagina Besturingssysteem:

Opties > Zoeken in opties (zoeken) > Certificaten > servers > Uitzondering toevoegen > Locatie >

Voer https:// in <Finse server>:poort voor de relevante poorten voor beide Finse servers.

(22)

Stap 6. Meld u aan bij Finesse en zie de http-bind-berichten de Finesse-client via Fiddler achterlaten aan de Finesse-server. 

In het voorgelegde voorbeeld, tonen de eerste 5 berichten http-bind berichten waarop door de Finesse server werd gereageerd. Het eerste bericht bevat 1571 bytes van gegevens die in de tekst van het bericht zijn teruggegeven. Het lichaam bevat een XMPP update met betrekking tot een agent gebeurtenis. Het laatste http-bind bericht is verstuurd door de Finesse client, maar heeft geen antwoord gekregen van de Finesse server. Dit kan worden bepaald door te zien dat het HTTP resultaat ongeldig is (-) en het aantal bytes in het responslichaam ongeldig is (-1).

  

(23)

Diepgaande weergave van de gegevens:

Antwoordorgaan voor XMPP-bericht:

(24)

Wireshark gebruiken

Wireshark is een populair pakketsnuifgereedschap dat kan worden gebruikt voor het snuiven en decoderen van HTTPS-verkeer. HTTPS-verkeer is HTTP-verkeer beveiligd via Transport Layer Security (TLS). TLS biedt integriteit, verificatie en vertrouwelijkheid tussen hosts. Het wordt vaak gebruikt in web toepassingen, maar het kan met elk protocol worden gebruikt dat TCP als het protocol op de transportlaag gebruikt. Secure Socket Layer (SSL) is de voormalige versie van het TLS-protocol, die niet langer wordt gebruikt omdat het onveilig is. Deze namen worden vaak onderling verwisselbaar gebruikt en het Wireshark filter dat gebruikt wordt voor SSL of TLS- verkeer is ssl.

Voorzichtig: De voorbeeldconfiguratie is beschikbaar voor Wireshark 2.6.6 (v2.6.6-0- gdf942cd8) en Mozilla Firefox 64.0.2 (32-bits) op Windows7 x64 in een labomgeving. Deze procedures kunnen niet generaliseren voor alle versies van Fiddler, alle browsers of alle computerbesturingssystemen. Als uw netwerk actief is, zorg er dan voor dat u het mogelijke effect van een configuratie begrijpt. Raadpleeg de officiële documentatie bij WinShark SSL voor meer informatie. Draadloos 1.6 of hoger is vereist.

Opmerking: deze methode werkt alleen voor Firefox en Chrome. Deze methode werkt niet voor Internet Explorer.

Stap 1. Navigeer op de Windows-pc van de agent naar Control Panel > System and Security >

System > Advanced System Settings Environmental Variables...

(25)

Stap 2. Navigeer naar gebruikersvariabelen voor gebruiker <gebruikersnaam> > Nieuw..

Maak een variabele met de naam SSLKEYLOGFILE.

Een bestand maken als u het SSL-premaster-geheim in een privémap wilt opslaan:

SSLKEYLOGFILE=</pad/to/private/folder/with/logfile>

Opmerking: Het creëren van een systeemvariabele in plaats van een gebruikersvariabele en/of het opslaan van het bestand in een niet-privé folder zal ook werken, maar dan kunnen alle gebruikers op het systeem toegang hebben tot het premaster-geheim, wat minder veilig

(26)

is.

Stap 3. Als Firefox of Chrome open zijn, sluit u de toepassingen. Nadat ze opnieuw zijn geopend, beginnen ze met schrijven naar het SSLKEYLOGFILE.

Stap 4. Navigeer voor draadloos bewerken > Voorkeuren...

Navigeer naar Protocols > SSL.

(27)

Stap 5. Voer de locatie in van de oorspronkelijke geheime logbestandsnaam die in Stap 2 is ingesteld.

Stap 6. Gebruik van Wireshark filter tcp.port==7443 && ssl, wordt de beveiligde HTTP-

communicatie tussen de Finse client en Finse server (Meldingsservice) gedecrypteerd gezien.

(28)

Verwante tekortkomingen

CSCva7280 - Finesse Tomcat en OpenFirePOWER voor ongeldige XML tekens

CSCva72325 -UCCX: Finesse Tomcat en OpenFirePOWER voor ongeldige XML tekens

Gerelateerde informatie

XMPP-specificaties

XEP-0124: BOSH

XEP-0060: publiceren-abonnement

Firefox-webconsole

Webconsole voor Internet Explorer

Chroom-webconsole

Windows PowerShell  

Windows Performance Monitor

Stapels voor probleemoplossing in invoerwachtrij en uitloop

Windows Automation Manager

Mac Terminal

Mac-activiteitsmonitor

Fiddler Download

Configuratie Fiddler

Draadloze downloads

Wireshark SSL-decryptie

Technische ondersteuning en documentatie – Cisco Systems

Referenties

GERELATEERDE DOCUMENTEN

Dit zijn de belangrijkste activiteiten van de uitgevende instelling: is voornemens om certificaten van cumulatieve preferente aandelen Burton International B.V.. Burton

Beloning voor behalen onderwijseenheden Met een edubadge tonen studenten of werkenden aan dat ze bepaalde kennis en vaardigheden hebben opgedaan in het regulier

Competentie in informatie- en communicatietechnologie (ICT) is een belangrijke burgerlijke vaardigheid, zowel als onderdeel van tweetaligheid als op zichzelf. ICT is een object en

Opmerking: Als u de opdracht voor csr-generatie uitvoert en het resulterende certificaat nog niet installeert, is uw WLC bij de volgende herstart volledig onbereikbaar op HTTPS,

De tekst op de kaart moest betrekking hebben op het fregat Huis te Warmelo, het enige Nederlandse oorlogsschip dat destijds in de Finse Golf is vergaan.. De eerste mailwisseling

Het voomemen tot sloop is niet onopgemerkt gebleven en wij hebben, evenals in de aanloop naar de besluitvorming in 2014, de afgelopen maanden opnieuw initiatieven ontvangen waarin

impliceert het behoud van de Finse school op de huidige locatie een directe keuze, een toekomstige verplaatsing van het kermisexploitantenterrein naar deze locatie is dan niet

%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore - genkeypair -alias wsm_certificate -keysize 2048 -keyalg RSA -validity XXXX.. Voer