Вы находитесь на странице: 1из 115

Troubleshooting Jabber Like a TAC

Engineer
Kabeer Noorudeen
Technical Leader
BRKUCC-3662
“Jabber is just a client…!”

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
Agenda
• Jabber Problem Reporting
• Understanding the Jabber Problem Report

• Troubleshooting Jabber Logins


• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory
• Presence Updates
• Instant Messaging
• Phone Control

• Cisco Jabber Diagnostics Tool


• Conclusion
Jabber Problem Reporting
Agenda
• Jabber Problem Reporting
• Understanding the Jabber Problem Report
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory
• Presence Updates
• Instant Messaging
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Generating a Problem Report

Jabber Gear Logo à Help


à Report a problem…

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
Generating a Problem Report, cont’d..

1. Select the Problem Type

2. Enter a Summary of the


problem

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Generating a Problem Report, cont’d..

1. Steps to reproduce the


problem with timestamps

1. Select “Save”

For troubleshooting crash issues, the


“Include Memory Dump” checkbox must be
checked when creating the report,
otherwise the memory dump is not
needed.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
Problem Report Contents

1. Problem Report is saved as


a .ZIP file

2. Contains Jabber logs, client


information, cached info, and
comments

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
Problem Report Contents – Bootstrap folder

1. Click2XRegistraiton – The
installation of the Click to
Call plugin

1. jabber-bootstrap – List of
install switches

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
Problem Report Contents – Config folder
1. cachedPresenceConfigStore – cache
servers to connect to
2. cachedPresenceProductModeStore –
Default, Cloud, or Phone-Only Modes
3. cachedTFTPConfigStore – parced jabber-
config.xml
4. cachedUcm90ConfigStore – Service
Profile Info and UDS discovery
5. deviceData3 – Speakers and cameras
6. Home-uds-info – Home UDS node hash
7. Jabber-LocalConfig – Last used
information, last known version, user
information
8. Service-location – services domain and
SRV discovered
9. SSOAuthInfoStore – SSO authentication
location

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Problem Report Contents – Contacts folder

1. DirectoryRSCache - cached
directory information for all
Jabber contacts
2. PersonManagerForensics –
Contact, contact source, and IM
address for each contact. This
file also shows the total number
of contacts

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
Problem Report Contents – JabberWerxCpp folder

1. Jwx -<Date>-<Time>.wbt – logs


the MAPI connections, Webex
connections of the Jabber client

This .wbt file would be


opened and viewed with the
Webex Tracing tool(aka
WBX Tracer). This can be
downloaded from here

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
Problem Report Contents – jabber.log

Jabber.log – these files are the


Jabber client logs.

These files would be the most beneficial


to an engineer troubleshooting the jabber
client. 90% of the client activity that
takes place will be logged here. All
troubleshooting mentioned in this
session will be gathered from these logs.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
Problem Report Contents – metadata.txt

Metadata.txt – contains the


Username, login mode, client
version, IM Address

This file is good to verify the Jabber


client version that is being utilized on the
client machine in the event that you are
not sure.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Problem Report Contents – microdump.dmp

Microdump.dmp – useful in the event


that there is a crash of the client. For
troubleshooting crash issues, the
“Include Memory Dump” checkbox
must be checked when creating the
report.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
Problem Report Contents – MSIba0dc.txt

MSIba0dc.txt – Jabber install log that


was created on Jabber installation.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
Problem Report Contents – PRT.txt

PRT.txt – Log showing the execution


and internal workings of the Jabber
Problem Reporting Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
Problem Report Contents – user-comment.txt

User-comment.txt – This would show


the contents of what the end user or
administrator typed into the
“Summary” and “Steps to reproduce
the problem” text fields when
generating the problem report

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Know the problem report

• What information is saved in the cachedUcm90ConfigStore?

Service Profile Info and UDS discovery

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
Troubleshooting Jabber - Login
Agenda
• Jabber Problem Reporting
• Understanding the Jabber Problem Report
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory
• Presence Updates
• Instant Messaging
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 23
Service Discovery
Jabber Client - Service Discovery Failed

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
Service Discovery Full Log Analysis
No SRV Records are found
• Making query for SRV:
• 2016-05-14 08:46:51,781 INFO [0x00000848] [rc\dnsutils\win32\win32DnsUtils.cpp(343)] [csf.dns]
[csf::dns::DnsUtils::executeSRVRecordQuery] - About to make DNS SRV record query '_cisco-
uds._tcp.ciscoliveus.net.'

• SRV query failed (Discovery Failed):


• 2016-05-14 08:46:51,785 WARN [0x00000848] [src\dnsutils\win32\win32DnsUtils.cpp(52)]
[csf.dns] [csf::dns::mapFromWindowsDNSResult] - *-----* DNS query _cisco-
uds._tcp.ciscoliveus.net. has failed: DNS name does not exist. (9003).

• 2016-05-14 08:46:51,788 WARN [0x00000848] [vices\impl\DiscoveryHandlerImpl.cpp(681)]


[service-discovery] [CSFUnified::DiscoveryHandlerImpl::handleFailedDiscoveryResult] - *-----*
Discovery failed: ServiceDiscoveryNoSRVRecordsFound.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 26
Service Discovery Failure Code and Logs
All detailed discovery-related logs have [service-discovery] logger name in them

Jabber problem report – jabber.log

Example: 2016-05-14 08:46:51,788 WARN [0x00000688]


[vices\impl\DiscoveryHandlerImpl.cpp(719)] [service-discovery]
[CSFUnified::DiscoveryHandlerImpl::callOnFailedDiscoveryResultOnDispa
tcherThread] - Discovery Failure -> (id) name :: (1005)
ServiceDiscoveryNoSRVRecordsFound
ID Name UI Message Description

1005 ServiceDiscoveryNoSRVRecordsFound Failed to discover No SRV records


services. were found.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
Service Discovery Failure Codes
ID Name UI Message Description

1001 ServiceDiscoveryFailure Failed to discover network services. Unknown Discovery failure. This is
normally a DNS issue
1002 ServiceDiscoveryAuthenticationFailure Your username or password is not Failed to authenticate with
correct. CUCM(9.0+)
1003 ServiceDiscoveryCannontConnectToCUCMServer Cannot communicate with server. Cannot connect to CUCM(9.0+)

1004 ServiceDiscoveryNoCUCMConfiguration Failed to discover network services. CUCM server is misconfigured.

1005 ServiceDiscoveryNoSRVRecordsFound Failed to discover network services. No SRV records are found

1006 ServiceDiscoveryCannotConnectToEdge Cannot communicate with the server. Unable to connect to Expressway
Edge server
1007 ServiceDiscoveryNoNetworkConnectivity Cannot communicate with the server. Ensure the PC has network
connectivity and can reach the
DNS server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
Failed nslookup of cisco-uds SRV record

Issue the nslookup command in Windows CLI

Only search for SRV records


The name if the SRV record to search for
DNS Server used for the search

SRV could not be found on the DNS server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 29
Packet Capture of Service Discovery Failed

Cisco-uds SRV Query


Each of these queries fails with “No such name”
Cuplogin SRV Query as the query result. This means that the SRV
could not be located on the DNS server.
Collab-Edge SRV Query

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 30
Configure the SRV in DNS

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 31
Configure the SRV in DNS

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
Configure the SRV in DNS

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
Configure the SRV in DNS

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
Successful nslookup of SRV record

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
Jabber Client - Service Discovery Successful

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
Debugging Service Discovery Cache File
<?xml version="1.0" ?>
- <UCServices>
<ServicesDomain>ciscoliveus.net</ServicesDomain>
<VoiceServicesDomain>ciscoliveus.net</VoiceServicesDomain>
- <UCService> This information is held in the
<type>CUCM</type> Jabber client PC in the “service-
location.xml” file. The location
- <connectionInformation> of this file is
<name>_cisco-uds</name> %appdata%\Cisco\Unified
<scope>INNER</scope> Communications\Jabber\CSF\C
onfig\
<address>cucmpub.ciscoliveus.net</address>
<protocol>tcp</protocol>
<port>8443</port>
</connectionInformation>
</UCService>
</UCServices>
BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 37
Know service discovery

• What is the recommended on-premises discovery method?

cisco-uds

• What should be the DNS recordtype for _cisco-uds ?

SRV

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 38
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messaging
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 39
Jabber Login Process
Jabber Login – Stage 1

George’s Jabber
client
SOAP
message
Client Profile
Cisco Tomcat LDAP/CUCM
TCP port Agent
8443

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
Jabber Login – Stage 1 Response

George’s Jabber
client
SOAP
message
Client Profile
Cisco Tomcat LDAP/CUCM
TCP port Agent
8443

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Jabber Login – Stage 2

George’s Jabber
client
XMPP
message
XCP XCP
Connection XCP Router Authentication
TCP port Manager Service
5222

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
Jabber Login – Stage 2 Response

George’s Jabber
client
XMPP
message XCP XCP
TCP port
Connection Authentication
5222 Manager Service

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Initial Request to IM and Presence for Login
All detailed discovery-related logs have [IMPServices] and [csf.jwcpp] logger
name in them
Jabber problem report – jabber.log

Login Starts - 2016-05-15 14:50:40,039 INFO [0x00000b2c]


[ters\imp\commands\LoginCommands.cpp(165)] [IMPServices]
[CSFUnified::IMPStackCap::LoginCommands::SignOn] - Signing into Presence
Server. Server: IMPPub;IMPSub, login mode: ON_PREM, result: 0

Initial SOAP Request - 2016-05-15 14:50:40,043 INFO [0x00000360]


[upSoapClient\CupSoapClientImpl.cpp(1317)] [csf.jwcpp]
[CupSoapClientImpl::getEndpoint] - @CupSoapCli: soap,
endpoint:https://IMPPub:8443/EPASSoap/service/v80

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
Jabber for Windows Authentication Error
This would be what a rejection from Client Profile Agent would look like in the
Jabber client logs
Jabber problem report – jabber.log

Login Failed - 2016-05-15 16:44:54,836 ERROR [0x00000c88]


[rx\jwcpp\LoginMgr\LoginCUPState.cpp(394)] [csf.jwcpp]
[CLoginCup::OnLoginFailed] - @LoginMgr: #0, CLoginCup::OnLoginFailed err-
code: -1, err-string: The username/password entered is invalid.. request-token:0

Error is presented - 2016-05-15 16:44:54,836 INFO [0x00000c88]


[ts\adapters\imp\components\Login.cpp(98)] [IMPServices]
[CSFUnified::IMPStackCap::Login::OnLoginError] - OnLoginError: (data=0)
LERR_CUP_AUTH <12>:

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 46
Client Profile Agent Authentication Result Codes
These codes would be found for user authenticating to IMP in Stage 1 of the login
process
• User is not licensed for IMP - WARN [http-bio-443-exec-5]
handlers.LoginHandlerAbstract - preLogin:PRELOGIN reasoncode=FAILURE. User either
not CUP licensed or not found in database
• Incorrect Password - INFO [http-bio-443-exec-15] handlers.LoginHandlerNonSSO -
doLogin:Wrong credential for gwashington| IMS result code:1
• Account Locked by Admin - INFO [http-bio-443-exec-15]
handlers.LoginHandlerNonSSO - doLogin:Administratively locked for gwashington|
IMS result code:2
• Account Hack Locked - INFO [http-bio-443-exec-15] handlers.LoginHandlerNonSSO -
doLogin:Hack locked for for gwashington| IMS result code:3
• User Inactive in LDAP - INFO [http-bio-443-exec-15] handlers.LoginHandlerNonSSO -
doLogin:End user status is INACTIVE for gwashington| IMS result code:7
BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 47
Successful SOAP Login to IM and Presence
All detailed discovery-related logs have [IMPServices] and [csf.jwcpp] logger
name in them
Jabber problem report – jabber.log

IMP Version presented - 2016-05-15 14:50:40,593 INFO [0x00000360]


[upSoapClient\CupSoapClientImpl.cpp(1075)] [csf.jwcpp]
[CupSoapClientImpl::Login] - @CupSoapCli: Cup server version is 11.0.1

Initial Login Result - 2016-05-15 14:50:40,593 INFO [0x00000360]


[upSoapClient\CupSoapClientImpl.cpp(1082)] [csf.jwcpp]
[CupSoapClientImpl::Login] - @CupSoapCli: login cup succeeds.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 48
Successful XCP Authentication Service Log Analysis
Logs can be collected from Real Time Monitoring Tool à XCP Authentication
Service
XCP Authentication Service– auth-svc-1.XXXXXXX.log

Request is received - 09:24:01.017 | debug| SXComponent::_processRequest():


[PACKET_IN]: <xdb from='cm-1_jsmcp-1.imppub-ciscoliveus-net' id='jtx_145'
ns='http://jabber.com/protocol/sasl' to='presidents.net' type='set'><auth
mechanism='CISCO-VTG-TOKEN' xmlns='urn:ietf:params:xml:ns:xmpp-
sasl'>dXNlcmlkPWd3YXNoaW5ndG9uQHByZXNpZGVudHMubmV0AHRva2VuPTc
yMDcxMTI=</auth></xdb>

UserID is decoded - 09:24:01.017 | debug| SXUtils::parseAuthText(): auth comp


decodeAuthText(): [userid=gwashington@presidents.net]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 49
Successful XCP Authentication Service Log Analysis
Logs can be collected from Real Time Monitoring Tool à XCP Authentication
Service
XCP Authentication Service– auth-svc-1.XXXXXXX.log
Token is created- 09:24:01.017 | debug| SXUtils::toUTF8() UTF8 encoded string is
[gwashington@presidents.net]
09:24:01.035 | debug| SXUtils::getPasswordFromNameVal(): Entering
SXUtils::getgetPasswordFromNameVal for nameVal: [token=7207112]
UserID is decoded - 09:24:01.035 | debug| SXComponent::_processRequest(): auth comp
mechanism: [CISCO-VTG-TOKEN]
09:24:01.035 | debug| SXComponent::authenticateVTGToken(): auth comp mechanism:
[CISCO-VTG-TOKEN]
09:24:01.035 | debug| SXComponent::authenticateVTGToken(): Userid Name/value pair is:
[gwashington]
09:24:01.035 | debug| SXComponent::authenticateVTGToken(): Token Name/Value pair is:
[7207112]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 50
Successful XCP Authentication Service Log Analysis
Logs can be collected from Real Time Monitoring Tool à XCP Authentication
Service
XCP Authentication Service– auth-svc-1.XXXXXXX.log

We ensure the user is valid - 09:24:01.051 | debug|


TokenAuthUtils::executeUserFromIMaddressQuery: IMDB (imaddress) query
successful: [SELECT pkid, userid FROM validendusers WHERE
xep106imaddress='gwashington@presidents.net';]

One Time Password is queried - 09:24:01.095 | debug|


TokenAuthUtils::executeAuthQuery(): IMDB query successful: [SELECT * FROM
ONETIMEPASSWORD WHERE userid='gwashington';]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 51
Successful XCP Authentication Service Log Analysis
Logs can be collected from Real Time Monitoring Tool à XCP Authentication
Service
XCP Authentication Service– auth-svc-1.XXXXXXX.log
Token is validated - 09:24:01.099 | debug| TokenAuthUtils::authencateUsingOTP(): Lets
validate token now
09:24:01.099 | debug| TokenAuthUtils::authencateUsingOTP(): DB stored token is: [7207112]
09:24:01.099 | debug| TokenAuthUtils::authencateUsingOTP(): User provided token is:
[7207112]
09:24:01.099 | debug| TokenAuthUtils::authencateUsingOTP(): Token matched for userid:
[gwashington]
09:24:01.099 | debug| IMDBMgr::returnTTLoginIMDBConnection(): [5]

Authentication Success - 09:24:01.124 | debug| SXComponent::authenticateVTGToken():


Authentication success for userid: [gwashington@presidents.net]
09:24:01.124 | debug| SXComponent::_sendAuthSuccess(): JID: [gwashington@presidents.net]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 52
Know Jabber login

• What protocols are used for jabber login?

SOAP & XMPP

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 53
Troubleshooting Jabber – Core
Features
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messages
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 55
Directory Integration
How do I know if directory is connected?

Not
Connected to
Connected to
Directory
a Directory
Source
Source

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 57
Enhanced Directory Integration(EDI)
Default directory Integration for Jabber for Windows

Authentication to
• PC must be the GC • Jabber connects
joined to the to the directory
domain • Default Windows
credentials are
used for
authentication
Successful
Jabber is installed Directory
Connection

*CDI recommended from Jabber 11.8


BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 58
Determine the Directory Source
In the Jabber logs we see the client attempting to connect to the Global Catalog
for directory
Jabber Diagnostic Tool – Active Directory Section

Jabber Problem Report – jabber.log

2016-05-20 14:32:41,459 DEBUG [0x000003ec]


[rdsource\ADPersonRecordSourceLog.cpp(50)] [csf.person.adsource]
[WriteLogMessage] - ConnectionManager::GetDirectorySearcher - Using default
windows credentials to connect [GC://CiscoLivePC] with tokens [1]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 59
Basic Directory Integration(BDI)
Used for Jabber for MAC, iPhone/iPad, Android

Authentication to
the configured
• Device is not server • Credentials
on the domain • Server is are also
provided in the supplied
CUCM Service
profile Successful
Jabber is installed Directory
Connection

*CDI recommended from Jabber 11.8


BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 60
BDI Packet Capture – User Authentication

Bind Request from user that is Successful bind response, meaning


configured in the Service Profile that we have successfully
authenticated to LDAP

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 61
BDI Packet Capture – Contact Search

Search Base from


Service Profile

In the Jabber client we searched


for the string “george”

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 62
Basic Directory Integration(BDI)
• Server, username, password, and search base are used from the Service Profile
if configured
• This information can also be provided in the jabber-config file
• The “BDIPresenceDomain” is a mandatory Directory parameter for BDI
jabber-config.xml sample directory configuration
<?xml version="1.0" encoding="utf-8"?>
<config version="1.0">
<Directory>
<BDIPresenceDomain>presidents.net</BDIPresenceDomain>
</Directory>
</config>

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 63
Cisco Directory Integration(CDI)
Uses service discovery to automatically connect and authenticate with LDAP server

_gc._tcp.domain.com
_ldap._tcp.domain.com

Service Discovery
Authentication to
to identify the GC
• Userdnsdomain GC/LDAP server • Jabber
system variable • End user connects to the
• Domain from directory
credentials are
email address used for
authentication
Successful
Jabber is installed Directory
Connection

*CDI recommended from Jabber 11.8


BRKUCC-3662 64
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Determine the Global Catalog/LDAP server
In the Jabber logs we see the client attempting to identify the Global Catalog for
directory

Jabber Problem Report – jabber.log

2017-03-09 12:54:49,166 INFO [0x00000c80] [rc\dnsutils\win32\win32DnsUtils.cpp(343)]


[csf.dns] [csf::dns::DnsUtils::executeSRVRecordQuery] - About to make DNS SRV record
query '_gc._tcp.MYTESTDOMAIN.NET.’

2017-03-09 12:54:49,166 INFO [0x00000c80] [src\dnsutils\win32\win32DnsUtils.cpp(47)]


[csf.dns] [csf::dns::mapFromWindowsDNSResult] - *-----* DNS query
_gc._tcp.MYTESTDOMAIN.NET. has succeeded.

BRKUCC-3662 65
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
User Data Service(UDS)
Used when connected via MRA. Optional for on-net connections

“Use UDS for


Contact Resolution”
• Device is not is selected • CUCM End
on the domain • UDS is User is
selected in the authenticated
CUCM Service
profile Successful
Jabber is installed Directory
Connection

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 66
User Data Service(UDS)
Checking to see if we are connected to UDS for Directory

Jabber Diagnostic Tool – Active Directory Section

Jabber Problem Report – jabber.log

2016-05-21 15:34:17,700 DEBUG [0x000009a0]


[rces\DefaultRecordSourcesManager.cpp(98)] [ContactService-
DefaultRecordSourcesManagerLogger]
[DefaultRecordSourcesManager::initUDSRecordSource] - UDS directory enabled
- adding record source

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 67
UDS Search in the Jabber logs
Source – Problem Report – jabber.log
User Request:

2016-05-21 15:34:17,735 DEBUG [0x000009a0]


[ls\src\http\MultiHttpClientImpl.cpp(245)] [csf.httpclient]
[csf::http::MultiHttpClientImpl::enqueueRequest] - [99007528] New request:
https://cucmsub:8443/cucm-uds/private/users

Resolving the contact list to CUCMSub:

2016-05-21 15:34:17,841 DEBUG [0x000009a0]


[c\main\person\PersonManagerImpl.cpp(204)] [csf.person]
[csf::person::PersonManagerImpl::refreshAllPersons] - Resolving 5 records to
source UDS-cucmsub

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 68
Know directory Services

• Which directory service is recommended for on-prem


deployments?

CDI

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 69
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messages
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 70
Presence Updates
Presence Update from client to server

George’s Jabber
client
XMPP
message
XCP
Connection Presence
XCP Router Engine
TCP port
5222
Manager

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 72
Manual Presence Change
All presence related logs have [PresenceAreaPlugin] and [csf.jwcpp] logger name
in them
Jabber problem report – jabber.log

User sets Presence Manually - 2016-05-15 17:44:05,740 DEBUG [0x00000b2c]


[nceareaplugin\CustomPresenceBox.cpp(115)] [PresenceAreaPlugin]
[CustomPresenceBox::setCustomPresenceState] - Setting to custom presence:
Off to Mt. Vernon

XMPP Message sent to the IM&P server - 2016-05-15 17:44:05,767 INFO


[0x00000b2c] [rwerx\jwcpp\xmppsdk\XmppClient.cpp(1505)] [csf.jwcpp]
[CXmppClient::logEscapedMessage] - @XmppSDK: #0, 452, Send:<presence
to="gwashington@presidents.net/composed"><show>away</show><priority>15</prior
ity><x var="0" xmlns="http://webex.com/connect/customstatus" /><status>Off to Mt.
Vernon</status>…

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 73
Presence Update From server to the client
George’s Jabber
client

XMPP

XMPP XCP
Connection Presence
XCP Router Engine
Manager

IM and Presence Server

George’s
Watchers

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 74
Presence Change Received
All presence related logs have [PresenceAreaPlugin] and [csf.jwcpp] logger name
in them
Jabber problem report – jabber.log
XMPP message for confirmation of presence change - 2016-05-15
17:44:05,979 INFO [0x00000b2c] [rwerx\jwcpp\xmppsdk\XmppClient.cpp(1505)]
[csf.jwcpp] [CXmppClient::logEscapedMessage] - @XmppSDK: #0, 884,
Recv:<presence from="gwashington@presidents.net/composed"
to="gwashington@presidents.net"><show>away</show><c hash="sha-1"
node="http://cisco.com/cup/caps" ver="L0mwOaX6n8VnczsxLk2dMU2QzAg="
xmlns="http://jabber.org/protocol/caps" /><status>Off to Mt. Vernon</status>….

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 75
Know Presence Updates

• What protocol is used for status updates?

XMPP

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 76
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messages
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 77
Instant Messaging
Instant Message from Thomas to George

Thomas’s
Jabber client
XMPP
message XCP
Connection XCP Router
Manager

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 79
Instant Message from Thomas to George

George’s Jabber
client
XMPP
message XCP
Connection XCP Router
Manager

IM and Presence Server

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 80
Instant Message as seen in the Jabber logs
All presence related logs have [csf.jwcpp] logger name in them
Jabber problem report – jabber.log
XMPP message is compiled and sent- 2016-06-16 11:50:52,453 INFO
[0x00000934] [rwerx\jwcpp\xmppsdk\XmppClient.cpp(1505)] [csf.jwcpp]
[CXmppClient::logEscapedMessage] - @XmppSDK: #0, 362, Send:<message
to="gwashington@presidents.net"
from="tjefferson@presidents.net/jabber_30074"
id="uid:5740c27d:000024c7:00000015" type="chat"><body>******</body>….

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 81
Know Instant Messaging

• What services are responsible for messaging


on the presence server?

XCP Connection manager and XCP router

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 82
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messages
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 83
Jabber Softphone Control
Jabber Softphone Mode
HTTPS GET

HTTPS Response

HTTPS\TFTP GET
HTTPS\TFTP Response

SIP REGISTER

SIP 200OK
CCMCIP
HTTPS/TFTP
SIP

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 85
Softphone TFTP Process Starts
TFTP related logs have [csf.ecc] and HTTPS requests have the [csf.httpclient]
logger name
Jabber problem report – jabber.log
TFTP process begins - 2016-05-22 17:31:21,837 DEBUG [0x00000fa0]
[nents\ecc\src\config\TftpHelper.cpp(137)] [csf.ecc]
[csf::ecc::TftpHelperData::doRetrieveFile] - Asked to retrieve file:
'https://CUCMPub.CiscoLiveUS.net:6972/CSFGWASHINGTON.cnf.xml', using
FileRetrievalProtocol: eHttpOnly
HTTPS GET Request is configured - 2016-05-22 17:31:21,837 INFO
[0x00000fa0] [etutils\src\http\CurlHttpUtils.cpp(1087)] [csf.httpclient]
[csf::http::CurlHttpUtils::configureEasyRequest] - *-----* Configuring
request #16 GET https://CUCMPub.CiscoLiveUS.net:6972/[...]

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 86
Softphone TFTP Process Completes
TFTP related logs have [csf.ecc] and HTTPS requests have the [csf.httpclient]
logger name
Jabber problem report – jabber.log
200 response is returned for the config file - 2016-05-22 17:31:21,916 INFO
[0x00000fa0] [ls\src\http\BasicHttpClientImpl.cpp(448)] [csf.httpclient]
[csf::http::executeImpl] - *-----* HTTP response code 200 for request #16 to
https://CUCMPub.CiscoLiveUS.net:6972/[...]

HTTPS GET Request is configured - 2016-05-22 17:31:21,917 DEBUG


[0x00000fa0] [\ecc\src\config\ConfigRetriever.cpp(569)] [csf.ecc]
[csf::ecc::ConfigRetriever::unsecureRetrieveConfigFromServer] -
Retrieved file
tftp://CUCMPub.CiscoLiveUS.net/CSFGWASHINGTON.cnf.xml

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 87
Softphone Config file is stored locally
TFTP file storage is logged with [jcf.tel.storage] and the fetch completion is
logged with [csf.ecc]
Jabber problem report – jabber.log
200 response is returned for the config file - 2016-05-22 17:31:21,921 DEBUG
[0x00000fa0] [ephonyservice\StorageHelperImpl.cpp(327)] [jcf.tel.storage]
[CSFUnified::StorageHelperImpl::writeFile] - data written to file
[C:\Users\Administrator\AppData\Roaming\Cisco\Unified
Communications\Jabber\CSF\Security\CSFGWASHINGTON.cnf.xml.config.encr]
success = true
Fetch config is completed - 2016-05-22 17:31:21,922 DEBUG
[0x00000fa0] [src\callcontrol\ServicesManager.cpp(651)] [csf.ecc]
[csf::ecc::ServicesManager::fetchDeviceConfig] - fetchDeviceConfig()
retrieved config for CSFGWASHINGTON

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 88
Jabber Softphone control – Packet Capture

REGISTER is sent from the Jabber PC to CUCM OK is sent from CUCM. The phone is now registered

View from the Jabber client

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 89
Know Jabber Softphone

• What protocols are involved to get the


softphone registered?

HTTPS, TFTP and SIP

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 90
Jabber Deskphone Control
Jabber Deskphone Mode
HTTPS GET

HTTPS Response

Provider Open Request

Provider Open Response

CCMCIP – TCP
port 8443
CTI – TCP port
2748

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 92
Jabber Deskphone control – CTI Manager Logs
CTI Manager service logs can be found on the CUCM server. They can be
collected with RTMT.
CTI Manager service Logs – SDLXXX_XXX_XXXXXX.txt
Provider Open Request to CTI Manager - 03636047.002 |08:28:46.218 |AppInfo
|[CTI-APP] [CTIHandler::processIncomingMessage] CTI
ProviderOpenRequest ( seq#=2 provider=UCProvider login=troosevelt
heartbeat=60 timer=10 priority=0 lightWeightProviderOpen=0 AuthType=0
RequestOldFetch=0 EncryptedSSODataSize=0)
User Authentication is attempted - 03636053.089 |08:28:47.085 |AppInfo
|Attempt to authenticate DN: CN=Theodore
Roosevelt,OU=Presidents,DC=CiscoLiveUS,DC=net

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 93
Jabber Deskphone control – CTI Manager Logs
CTI Manager service logs can be found on the CUCM server. They can be
collected with RTMT.
CTI Manager service Logs – SDLXXX_XXX_XXXXXX.txt

End User Authentication is successful - 03636053.099 |08:28:47.094 |AppInfo


|LDAP authentication bind SUCCESS for CN=Theodore
Roosevelt,OU=Presidents,DC=CiscoLiveUS,DC=net

Success is generated - 03636076.004 |08:28:47.232 |AppInfo |[CTI-


INFO] [CTIHandler::GenerateQBEProviderOpenSuccess]
totalControllableDevices = 1

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 94
Jabber Deskphone control – CTI Manager Logs
CTI Manager service logs can be found on the CUCM server. They can be
collected with RTMT.
CTI Manager service Logs – SDLXXX_XXX_XXXXXX.txt
Success is sent to Jabber - 03636076.007 |08:28:47.232 |AppInfo |[CTI-APP]
[CTIHandler::OutputCtiMessage ] CTI ProviderOpenCompletedEvent
(seq#=2) provider id=33554440 dscpForCTI2Apps =96 EnableIpv6 =0
autoCallPickupEnabled =0 LoginUserID = NoOfDaysPwdToExp =4294967295
TotalControllableDevices =1 ClusterId =StandAloneCluster

View from the Jabber client

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 95
Know Jabber Desk phone Control

• What CUCM service is used for jabber deskphone control ?

CTI Manager

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 96
Cisco Jabber Diagnostic Tool
Agenda
• Troubleshooting Jabber Logins
• Service Discovery
• Login Process

• Troubleshooting Jabber Core Features


• Directory Integration
• Presence Updates
• Instant Messages
• Phone Control

• Cisco Jabber Diagnostics Tool

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 98
Cisco Jabber Diagnostic Tool
Available in Jabber for Windows 11.6.0
• Designed by TAC and Business Unit Escalation engineers
• Quick access to Jabber settings by pressing Ctrl+Shift+D
• Quick and easy verification of configuration

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 99
Jabber Diagnostic Tool - Discovery

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 100
Jabber Diagnostic Tool - WebEx

Jabber will attempt to look up the domain as a WebEx domain before service
discovery. The above shows a failed WebEx lookup due to lack of internet
connectivity.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 101
Jabber Diagnostic Tool – UCM Summary

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 102
Jabber Diagnostic Tool – UCM Configuration

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 103
Jabber Diagnostic Tool - Voicemail

This is the voicemail server that Jabber is attempting


to connect to. This can be configured in the Service
Profile or in the jabber-config.xml file

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 104
Jabber Diagnostic Tool – Certificate Verification

We can see above that this will tell us whether Jabber will
be presented with certificates. In this case, the user will
need to manually accept the certificates.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 105
Jabber Diagnostic Tool – Active Directory

This setting tells us what contact source Jabber is using to


resolve contacts. There are two options, LDAP(EDI or BDI) or
UDS. In the above, we are connected via UDS.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 106
Jabber Diagnostic Tool – DNS Records

This will display whether the Jabber client was able to find the
UDS or Collab-Edge SRV record. In this case we found the
UDS record and what CUCM server the record pointed to. We
can also see that we would not find the Collab-Edge record.

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 107
Collaboration Solutions Analyser

https://cway.cisco.com/tools/CollaborationSolutionsAnalyzer/

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 98
Collaboration Solutions Analyser

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 99
SRV Record Tool
https://cway.cisco.com/tools/SrvRecord/

BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 100
Conclusion
Q&A
Complete Your Online Session Evaluation
Give us your feedback and receive a
Cisco Live 2017 Cap by completing the
overall event evaluation and 5 session
evaluations.

All evaluations can be completed via the


Cisco Live Mobile App.

Caps can be collected Friday 10 March Learn online with Cisco Live!
at Registration. Visit us online after the conference
for full access to session videos and
presentations.
www.CiscoLiveAPAC.com
BRKUCC-3662 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 113
Thank you

Вам также может понравиться