78
BRKUCC-2785 Cisco Unified Presence 8.x Pablo Marrone, TSA November 2011

Cisco Unified Presence 8D2zmdbbm9feqrf.cloudfront.net/2011/mex/pdf/BRKUCC-2785.pdf•Understand Cisco Unified Presence Components •Understand Cisco Unified Presence 8.x Deployment

  • Upload
    others

  • View
    45

  • Download
    1

Embed Size (px)

Citation preview

BRKUCC-2785

Cisco Unified Presence 8.x

Pablo Marrone, TSA

November 2011

Message + Replay: London - Calcuta

• 1800: 2 years (sailing ship)

• 1914: 1 month (steamship)

• 1950: 1 week (air mail)

• 1980: 2 days (overnight mail)

• 1993: 10 minutes (commercial email)

• 1999: 1 second (instant messaging)

Presence is the dial tone of the real-time Internet

Integrated, Multidimensional Presence Unlock the Power of Unified Communications

Use Contextual Communications to Get Answers and Make Decisions Faster

Status Generated from Multiple Sources

Status Published in Multiple Applications

“Gartner clients making collaboration and communications decisions are increasingly realizing the central role IM and presence play”

Rich Presence Worker Benefits

• Accelerate communications

See who is available and the best communications mode to reach people

See and control your current state

• Enhance workflow and output

• Eliminate communication delays

• Increased productivity for desktop and mobile users

• Accelerate business processes through unified communication integration

• Improve customer satisfaction

Federa

tions

Open XMPP clients

Choic

e o

f C

lients

Cisco Unified Presence Overview Always-On, Network-Based Availability

• Rich network presence

Always-on telephony and calendar integration

Aggregation from multiple sources and clients

• Unified contact lists

Corporate, business partner, and personal contacts

• IT controls

Policy, compliance

History and logging controls

• Standards-based federation

XMPP and SIP/SIMPLE

• Client choices

Cisco desktop and mobile clients

Third-party XMPP clients

Extensible web SDK and applications

Unified Personal

Communicator

Mobile

IM Clients

Contact Center

Integration

Expert Advisor

Agent Desktop

Third-Party XMPP Clients

B2B and B2C Federations

Cisco Unified Presence 8.0

MS Exchange Calendaring

Always-On Network Presence

CUCM 7.x/8.0 Integration

Business App and Process Integration

APIs and

SDKs

At the end of the session, the participants should be able to:

• Understand Cisco Unified Presence Components

• Understand Cisco Unified Presence 8.x Deployment Modes

• Understand Cisco Unified Presence 8.x HA and Sizing

• Understand IM and Federation considerations

• Design a solution for enterprise presence and instant messaging

• Bonus Track: Cisco Jabber user Experience

Session Objectives

Cisco Unified Presence 8.x

Components

What Is Presence?

• Examples of presence in action today

IM “Buddy List” status indication (Available, Idle, Away)

“Busy” tone on traditional phone

Contact Center Agent status

• Publish/Subscribe/Notify

A Person can publish presence information to other users via a Presence Service

Users of the Presence Service can subscribe to receive Notification of Status Change of a Person

Information About a Person’s Availability and Willingness to

Communicate

Presence Presentity and Watcher—Publish and Subscribe

• A Person will PUBLISH the status of communication Services/Devices to the PRESENCE SERVICE using their PRESENTITY

• A WATCHER can SUBSCRIBE (for a period of time) to receive updates on status changes for the PRESENTITY

• A WATCHER can (and most likely will) also have a Presentity

Person [email protected]

Presentity

Presence

Service

PERSON “A”

(RFC-3903)

A Registration

Will Have Preceded

the PUBLISH

PERSON “B”

(RFC-3265)

WATCHER

Presence Presentity and Watcher—Notify

Person (jsmith)

Presentities

Presence

Service

PERSON “A” PERSON “B”

On a Change of status the PRESENTITY is updated on the Presence Service

The Presence Service will NOTIFY all the subscribers of the PRESENTITY

WATCHER

NOTIFY

(RFC-3265)

(RFC-3265)

Off-Hook Status

Event

Unified CM

Presence “In Action” with CUCM—BLF Speed Dial and Call History

Off-Hook

John Smith Makes a Call

Steve Jones Is Monitoring

John Smith Status

John Smith

5553004

Steve Jones

5553003

John Smith Status Is Advertised

to a Presence Network

Contact: John Smith Ext: 5553004

John Smith

From John Smith

5553004 BLF

Speed Dial BLF

Call History

Cisco

Unified Presence

Server

Cisco Unified Presence

Operation Models

Cisco Unified Communications Manager Cluster

Cisco Unified Presence Server

Cisco Unified Personal Communicator

Cisco Unified IP Phone Messenger

Cisco Unified Presence Server provides:

•SIP/SIMPLE / XMPPPresence Server

•OCS/LCS Remote Call Control Gateway for Cisco Unified Communications Manager

•SIP Proxy for Cisco Voice Portal

Cisco Unified

CM Microsoft Office

Communicator/Lync Click to Call Integration

MS OCS or LCS

Microsoft

LCS/OCS

IBM Lotus

Sametime

Carriers /

other vendors

PBXs

Unified CM 6.x, 7.x, 8.x Cisco Unified

Presence 8.x

SIP/SIMPLE

CTI/QBE

CSTA over SIP

H.323

SCCP

IMAP

LDAPv3

SOAP

HTTP/HTTPS

Cisco Unity/Unity Connection

Unified Personal

Communicator 7.x

MeetingPlace/

MeetingPlace

Express

LDAP

Microsoft

Exchange

WebDAV/EWS

Third Party

Open API

CUMA

JTAPI

XMPP

Unified Mobility

Advantage

Cisco

WebEx

GoogleTalk

Jabber

Unified Personal

Communicator 8.x Third Party

XMPP

Client

Cisco Unified Presence Components

Cisco Unified Presence 8.x

SIP Proxy

Presence Engine / Instant Message Bridge

Instant Messaging Compliance and

Logging

Jabber Session Manager

Jabber XCP

XCP Route Fabric

Third Party Open API

Calendar

Unified CM Sync Agents

Third Party XMPP Client (Spark, Adium, Pidgin,

MomentIM, etc)

Unified Personal Communicator 8.x

PostgreSQL

Unified Personal Communicator 7.x

CUMA

Unified Application Environment

SIP Interface

Unified Mobility Advantage 7.x

ODBC

XDB

XMPP

SIP/SIMPLE

Unified CM AXL/SOAP

SIP/SIMPLE

XMPP

Microsoft

Exchange Cisco Agent

Desktop

ICMICM

Expert Advisor

Cisco Agent

Desktop

ICMICM

Expert Advisor future

Third Party

Compliance

Server

Cisco Unified Presence 8.x Architecture

Cisco Unified Presence 8.x

SIP Proxy

Presence Engine / Instant Message Bridge

Instant Messaging Compliance and

Logging

Jabber Session Manager

Jabber XCP

XCP Route Fabric

Third Party Open API

Calendar

Unified CM Sync Agents Unified Personal

Communicator 7.x

CUMA

Unified Mobility Advantage 7.x

Unified CM

AXL/SOAP

SIP/SIMPLE

XMPP

All messages, SIP

and XMPP, are routed

through the Jabber

Session Manager.

Cisco Agent

Desktop

ICMICM

Expert Advisor

Cisco Agent

Desktop

ICMICM

Expert Advisor

Unified Application Environment

SIP Interface

future

Third Party XMPP Client (Spark, Adium, Pidgin,

MomentIM, etc)

Unified Personal Communicator 8.x

SIP and XMPP Client Interoperability

Cisco Unified Presence

Deployment Models, HA and

Sizing

IDS Global User Data Replication

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

1A 3A 2A

Sub-cluster 2 Sub-cluster 3 Sub-cluster 1

Database Sync

Cisco Unified Presence 8.x Cluster Basic Deployment

• Cluster:

up to 6 servers, including publisher

Up to 30000 users full UC (no HA)

Up to 45000 users IM only

• Subcluster

Up to 2 servers

Up to 3 subclusters per cluster

Cisco Unified Presence 8.x Cluster Basic Deployment Interactions

© 2011 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 18

Cisco Unified Presence 8.x

SIP Proxy

Presence Engine / Instant Message Bridge

Instant Messaging Compliance and

Logging

Jabber Session Manager

Jabber XCP

XCP Route Fabric

Third Party Open API

Calendar

Unified CM Sync Agents

Cisco Unified Communications

Manager

Call Control

CTI Manager

Licensing

Database

AXL SOAP

User and Device

configuration on Unified

Communications Manager

remains consistent with

previous releases

User Assignment

on Cisco Unified

Presence remains

consistent with

previous releases

Cisco Unified Presence User Assignment

Database Sync

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

Sub-cluster 1

1A

1B

Sub-cluster 2

2A

2B

Sub-cluster 3

3A

3B

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

Cisco Unified Presence 8.x Cluster High Availability Deployment

CoW Support A minimum of 5 Mb bandwidth required between nodes of each subcluster with up to 80 ms delay

Database Sync

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

Sub-cluster 1

1A

1B

Sub-cluster 2

2A

2B

Sub-cluster 4

3A

4A

Sub-cluster 3

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

Cisco Unified Presence 8.x Cluster Mixed Deployment

2A

Cisco Unified Presence 8.x

Sub-cluster 1

1A

1B

Sub-cluster 2

3A

Sub-cluster 3

Cisco Unified Presence 8.0

2A

Sub-cluster 2

4A

Sub-cluster 4

1A

Sub-cluster 1

3A

Sub-cluster 3

Cisco

Unified CM

6.x/7.x/8.x

Cisco

Unified CM

6.x/7.x/8.x

Cisco

Unified CM

6.x/7.x

Cisco Unified Presence 7.x

SIP Trunk

Intercluster Peer IDS Global User Data Replication

AXL/SOAP CTI/QBE

XMPP

SIP SIP

Volatile Persistent Data (Login state) Times Ten Soft State Data (Presence info)

Cisco Unified Presence 8.x Cluster Multi-cluster Deployment

IM Only Deployment Model

Cisco Unified

Presence Cluster

Unified CM for

user database

Deployment

Cisco Unified Presence cluster

• One to six nodes on any Cisco Unified Presence supported hardware

Unified CM hardware for user database and licensing

• No additional user licensing for Unified CM software

Clients Supported

Cisco Unified Personal Communicator 8.x and 3rd party XMPP clients

Cisco Unified Personal Communicator 8.x

3rd party

XMPP clients

Server Recovery Manager

monitors the following:

* IDS Database

* Presence Engine

* XCP Router

* Message Archiver

* SIP Proxy

* SIP Federation CM

Configuration Agent

monitors the TimesTen

replication between the

nodes within the

subcluster for use with

CoW and High Availability

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

Server

Recovery

Manager

Server

Recovery

Manager

SIP/SIMPLE

SIP/SIMPLE List Subscription

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

Server Recovery Manager Heartbeat

Cisco Unified Presence XCP HA Server Recovery Manager / Configuration Agent

Cisco Unified Presence XCP Failover Database Failure

Unified Personal

Communicator 8.x

user123

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

Server

Recovery

Manager

Server

Recovery

Manager

Server Recovery Manager

determines IDS database is

no longer communicating

and initiates a user move

operation from 1A to 1B.

Presence Engine and XCP

Router are still operational;

therefore, a XMPP message

is sent from 1A that the user

has been moved, forcing

Unified Personal

Communicator 8.x to

disconnect from 1A and

move to 1B

user123 moved from home

server 1A and is now homed

to server 1B

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

XMPP

Server Recovery Manager Heartbeat

Cisco Unified Presence XCP Failover Presence Engine Failure

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

Server

Recovery

Manager

Server

Recovery

Manager

Server Recovery Manager

determines Presence Engine

is no longer communicating

and initiates a user move

operation from 1A to 1B.

XCP Router on 1A is still

operational; therefore,

Presence Engine on 1B

triggers a XMPP message

sent from 1A that the user

has been moved, forcing

Unified Personal

Communicator 8.x to

disconnect from 1A and

move to 1B

user123 moved from home

server 1A and is now homed

to server 1B

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

XMPP

Server Recovery Manager Heartbeat

Unified Personal

Communicator 8.x

user123

Cisco Unified Presence XCP Failover XCP Router Failure (Graceful)

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

Server

Recovery

Manager

Server

Recovery

Manager

Server Recovery Manager

determines XCP Router is no

longer communicating and

initiates a user move

operation from 1A to 1B.

With XCP Router not

functional Unified Personal

Communicator 8.x looses

connectivity with 1A, tears

down the connection when

the XMPP stream goes away

with 1A, and re-establishes

connectivity with 1B

user123 moved from home

server 1A and is now homed

to server 1B

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

XMPP

Server Recovery Manager Heartbeat

Unified Personal

Communicator 8.x

user123

Cisco Unified Presence XCP Failover XCP Router Failure (Non-graceful)

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

Server

Recovery

Manager

Server

Recovery

Manager

Server Recovery Manager

determines XCP Router is no

longer communicating and

initiates a user move

operation from 1A to 1B.

With XCP Router not

functional Unified Personal

Communicator 8.x looses

connectivity with 1A, tears

down the connection after

the “whitespace ping”

interval indicates a failure

with 1A, and re-establishes

connectivity with 1B

user123 moved from home

server 1A and is now homed

to server 1B

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

XMPP

Server Recovery Manager Heartbeat

Unified Personal

Communicator 8.x

user123

Cisco Unified Presence SIP Failover Cisco Unified Personal Communicator 7.x

Cisco Unified Presence 8.5 Cluster

Sub-cluster

1A

1B

SIP/SIMPLE

SIP/SIMPLE List Subscription

SOAP

IDS Global User Data Replication

Volatile Persistent Data (Login state)

Times Ten Soft State Data (Presence info)

Unified Personal

Communicator 7.x

Terminating NOTIFY for

Presence & UCCN

Subscription-State: deactivated

Re-SUBSCRIBE for

Presence & UCCN

Subscription-State: active

Cisco Unified Presence Sizing

MCS Platform Users Supported per Platform

7816 500

7825 1000

7835 2500

7845 5000

There is no binding between hardware and user licenses

There is no administrative limit on the number of users configured

BHCA of three (Unified CM PUBLISH rate of six/device/hour)

Contact list size is 200 (Presence & Non-Presence)

© 2011 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 31

Cisco Unified Presence Sizing

Cisco Unified Presence 8.x

Supported (EOS) Servers

MCS-7816-H3

MCS-7816-I3

MCS-7825-H2-IPC2

MCS-7825-I2-IPC2

MCS-7825-H3-IPC1

MCS-7825-I3-IPC1

MCS-7835-H2-IPC1

MCS-7835-I2-IPC1

MCS-7845-H2-IPC1

MCS-7845-I2-IPC1

Cisco Unified Presence 8.5 Hardware Cisco Unified Presence 8.5 Supported Servers

MCS-7816-I4, MCS-7816-I5

MCS-7825-H4-IPC1

MCS-7825-I4-IPC1, MCS-7825-I5-IPC1

MCS-7835-H2-IPC2

MCS-7835-I2-IPC2

MCS-7835-H3-IPC1

MCS-7835-I3-IPC1

MCS-7845-H2-IPC2

MCS-7845-I2-IPC2

MCS-7845-H3-IPC1

MCS-7845-I3-IPC1

UCS C-Series - C200, C210 M1, and C210 M2

UCS B-Series Blade (7835 equivalent)

2 vCPU, 4 GB RAM, 80 GB Drive, 1 vNIC

UCS B-Series Blade (7845 equivalent)

4 vCPU, 4 GB RAM, Two 80 GB Drive, 1 vNIC

Cisco Unified Presence

Federation

Internet Unified

Presence 8.x

Unified Personal

Communicator 7.x

Unified

CM

Adaptive Security

Appliance

DMZ DMZ

Unified

Presence

8.x

Unified

Presence

8.x

SIP/SIMPLE

Intercluster Peer

Domain A

Domain B

Unified

Presence 8.x XMPP

Unified Personal

Communicator 8.x

IBM Lotus Sametime Connect Clients

IBM Lotus Sametime 8.x

IBM Lotus Sametime Gateway

Adaptive Security

Appliance

Unified Presence 8.5 XMPP Federation

Microsoft Office Communicator /

Lync 2010

Microsoft Office Communications Server 2007 / Lync Server 2010

Unified

CM Internet

Access Proxy

DMZ DMZ

Unified

Presence

8.x

Unified

Presence

8.x

SIP/SIMPLE

Intercluster Peer Domain A Domain B

Unified Personal

Communicator 7.x

Unified Personal

Communicator 8.x

Unified

Presence 8.5

XMPP

Adaptive Security

Appliance AOL SIP Access

Gateway

User Communities

aol.com, icq.com, aim.com

Hosted Domains

Clearing House

[email protected]

[email protected]

Unified Presence 8.5 SIP Federation

• Federating with users of AOL communities

Users would be fall under the following domains

@aol.com, @aim.com, @icq.com

• Federating with hosted domains

[email protected] of Enterprise hosteddomain123.com whose domain is hosted by AOL

• Federating with enterprises that are using AOL as a Clearing House

[email protected] of Enterprise somehostedcompany123.com who at the far end is federating with AOL

Cisco Unified Presence Federation AOL SIP Federation

Cisco Unified Presence Federation Inter-Domain State Mapping

Microsoft Office Communicator

Microsoft Office Communications

Server 2007 / Live Communications

Server 2005

Unified CM

SIP/SIMPLE

Unified Personal

Communicator

Cisco Unified

Presence 8.6

XMPP

Unified Presence Intra-Domain Federation

Shared

Active

Directory

Domain A

Partitioned SIP Intra-Domain Federation is enabled via configured static routes or internal DNS entries

on both Unified Presence and Live/Office Communications Server

External SIP

Federated

Enterprise

External XMPP

Federated

Enterprise

Public DNS records are required to enable external federation for each domain

Unified Presence Users Unified Presence and Communications Server Users

• Static routes must be configured on each Unified Presence cluster to point to each Office Communications Server

• Unified Presence static routes must be configured for:

The local domain: com.domaina.*

Each server of Office Communications Server / Live Communications Server within the domain: com.domaina.server1

Unified Presence Intra-Domain Federation Unified Presence Static Routes to Office Communications Server

Unified Presence 8.6

Unified Presence 8.6

Office

Communications

Server 2007

Office

Communications

Server 2007

• Routing Unified Presence server will forward to home node

• A static route, which maps the local domain to the routing Unified Presence server, must be configured for each Office Communications / Live Communications pool/server.

• Each Office Communications / Live Communications pool/server may configure the static route to point to a different Unified Presence server, or hardware load balancer, to further balance the load.

Unified Presence Intra-Domain Federation Office Communications Server Static Routes to Unified Presence

Unified Presence 8.6

Unified Presence 8.6

Unified Presence 8.6

Office

Communications

Server 2007

Office

Communications

Server 2007

• Each Unified Presence cluster performs a DNS SRV lookup to the internal DNS server for the default route to the Office Communications / Live Communications server which accepts incoming requests.

TCP: _sip._tcp.domaina.com

TLS: _sips._tcp.domaina.com

• This approach removes the need for Static Route configuration on Unified Presence; however, is dependent on the DNS SRV records being unused within the domain.

Unified Presence Intra-Domain Federation Unified Presence DNS SRV Lookup

Unified Presence 8.6

Unified Presence 8.6

Office

Communications

Server 2007

Office

Communications

Server 2007

Internal DNS Server

Unified Presence Intra-Domain Federation Unified Presence Administration

Based on msRTCSIP-PrimaryUserAddress

Cisco Unified Presence

Enterprise Instant Messaging

Cisco Unified Presence 8.x Persistent Chat

Database Sync

IDS Global User Data Replication

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

Sub-cluster 4

1A

4A

Sub-cluster 6

3A

6A

Sub-cluster 5

2A

5A

Sub-cluster 2 Sub-cluster 3 Sub-cluster 1

ODBC

• Each server in the Unified Presence cluster requires a separate database instance for

persistent chat. The database instances can share the same hardware, but are not required to.

•PostgreSQL is the only supported DB

Unique Separate Database Instance

PostgreSQL

Cisco Unified Presence 8.x Native Compliance/Message Archiving

• DB supported: PostgreSQL, 1 instance per cluster

• Non blocking compliance and archive

Database Sync

IDS Global User Data Replication

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

Sub-cluster 4

1A

4A

Sub-cluster 6

3A

6A

Sub-cluster 5

2A

5A

Sub-cluster 2 Sub-cluster 3 Sub-cluster 1

ODBC

PostgreSQL

Cisco Unified Presence 8.x Blocking 3rd Party Compliance

Database Sync

IDS Global User Data Replication

Cisco Unified Communications

Manager Publisher

Cisco Unified Presence 8.x Cluster

1A 3A 2A

Sub-cluster 2 Sub-cluster 3 Sub-cluster 1

XDB

Third Party

Compliance

Server

XDB XDB

Third Party

Compliance

Server

Third Party

Compliance

Server

• 1 compliance server per cluster each server

• Each user confugures visibility and reachability rules

• Feature storage

Persistent chat requires an external database to store chat rooms and conversations.

Ad-hoc group chat is stored in memory on Cisco Unified Presence if persistent chat disabled, or is stored in external database for duration of chat if persistent chat enabled

Offline IM is stored in IDS on Cisco Unified Presence.

• Native compliance/message archiver

Recommendation is to have one instance per cluster.

• Persistent group chat

Required to have a separate database instance PER Cisco Unified Presence SERVER, not just per cluster.

• Third party compliance

Required to have a separate compliance server PER Cisco Unified Presence SERVER

IM Message Storage Summary

© 2011 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 48

IM Message Store sizing

Now, let’s design a few

solutions!

User Assignment IDS Global User Data Volatile Persistent Data Times Ten Soft State Data

Cisco Unified Presence 7.x

Sub-cluster 1

1A

1B

2A

Sub-cluster 2

3A

Sub-cluster 3 Sub-cluster 4

4A

4B

Cisco Unified Presence 8.x

Sub-cluster 1

1A

1B

2A

Sub-cluster 2

3A

Sub-cluster 3 Sub-cluster 4

4A

4B

Migration to Cisco Unified Presence 8.x

• 4000 user Commercial deployment

HA is not required, All Cisco components, IM logging required

Cisco Unified Presence 8.5

PostgreSQL

Single MCS-7845 for Unified CM, could use Pub and Sub if desired

Single MCS-7845 for Unified Presence (supports up to 5000 users)

External database (PostgreSQL) for archiving

Cisco Unified CM 8.x

4000 User Commercial Deployment

Cisco Unified Presence 8.5

Cisco Unified CM 8.x

10,000 user Higher Education Presence/IM deployment

Presence and IM solution only

MCS-7845 for Unified CM, publisher and one or two subscribers

Three MCS-7845 for Unified Presence equal user balance

10,000 users is a borderline scale number, even though 5000 users

are supported per MCS-7845 it is best to allow for some growth

10,000 User Higher Education Deployment

Cisco Unified Presence 8.5

PostgreSQL

Cisco Unified CM 8.x

PostgreSQL PostgreSQL

100,000 user Enterprise deployment

HA is required, Cisco and non-Cisco components, Open APIs, IM logging and persistent chat required

MAXIMUM 15,000 per cluster deployment for full HA; therefore, need

seven clusters

Unified CM cluster configured with multiple subscribers for HA, most likely

using MCS-7845 servers but other combinations will work

Unified Presence cluster configure with three MCS-7845 full capacity, or up

to six MCS-7845 with equal user balance

External database (likely more than one) for archiving, where each server

in the Unified Presence cluster has a separate DB instance for chat

100,000 User Enterprise Deployment

Cisco Jabber

Any device, Any consumption model !

• Predictive contact and directory search Recent contacts history

Even if party is not in contacts list

Corporate contacts

Personal contacts

Federated business partner contacts

• Adding contacts Click and drag into your contact list

Personalize with alternate numbers or photos

• Enhances collaboration and effectiveness Across campus or across the globe

• Simple user interface Click-to-call for voice and/or video

Single number for voice and/or video

• Media escalation to multiparty video

• Standards-based H.264 Video

• Advanced video call control Yields tremendous call/video user experience

• Video resolution choices QCIF, CIF, VGA, HD ( 720p 30fps)

• Accelerate team collaboration

Reduce travel expenses with fewer in-person meetings

• No scheduling needed Impromptu multiparty video calls

• Standards-based HD video endpoint interoperability

Video phones, soft clients, room end points, Cisco TelePresence

Sample vendors: Cisco Tandberg, Polycom, LifeSize, etc.

• Collaborate more effectively Improve operational effectiveness

Speed up decision making

• Share documents, applications, and presentations

Overcome geographic boundaries

Scale content to interface automatically

Collaborate with white boarding

z

• Unified Pane

• Call Logs

• Visual Voicemail Message waiting indicator with counter

• Chat Easily find past chats

• Presence everywhere

• One-click to return the communication

Voice, video, IM, email

Communications Integrated for Easy Access

• View availability and initiate communications

Dynamic presence status

Click-to-chat & call (audio/video)

Point-to-point & multi-party

• Microsoft Outlook, SharePoint, Office

• Browsers, Web–applications

Cisco Presence Light-ups Cisco Click to IM/Call

• Cisco commitment to desktop experience

• Cisco Unified Presence 8.x delivers Enterprise IM and Presence in a highly available deployment

• Third Party Interoperability

• Open APIs extend the reach of Cisco Unified Presence

Key Takeaways

You can find additional information about the topics and products covered in this session at the following links:

Cisco Unified Presence: http://www.cisco.com/en/US/products/ps6837/index.html

Cisco Unified Personal Communicator: http://www.cisco.com/en/US/products/ps6844/index.html

Cisco Unified Presence APIs http://developer.cisco.com/web/cupapi

Unified Communications Sizing Tool: http://tools.cisco.com/TSTVMS/

Additional Resources

• Receive 25 Cisco Preferred Access points for each session evaluation you complete.

• Give us your feedback and you could win fabulous prizes. Points are calculated on a daily basis. Winners will be notified by email after July 22nd.

• Complete your session evaluation online now (open a browser through our wireless network to access our portal) or visit one of the Internet stations throughout the Convention Center.

• Don’t forget to activate your Cisco Live and Networkers Virtual account for access to all session materials, communities, and on-demand and live activities throughout the year. Activate your account at any internet station or visit www.ciscolivevirtual.com.

Complete Your Online Session Evaluation

What is XMPP?

XMPP Protocol

An open Extensible Markup Language (XML) protocol for near-real-time

messaging, presence, and request-response services

The base XMPP RFCs:

http://www.xmpp.org/rfcs/rfc3920.html

http://www.xmpp.org/rfcs/rfc3921.html

XML Streams XML Stanzas

<stream> </stream> <presence> </presence>

<message> </message>

<iq> </iq>

Common attributes to all stanzas, although not required

to

from

id

type

xml:lang

Jabber Identifier - JID

Entities that can be addressed in Jabber must have a Jabber ID, and are

typically made up of three main components:

Node identifier – client username on the server or a room name for conference

Domain identifier – primary identifier; typically identifies the primary server

Resource identifier – represents a specific session, connection (i.e. device or

location), or object (i.e. participant in a multi-user chat room).

The JID takes the form of: node@domain/resource

The domain identifier is the only required identifier, and the node and resource

identifier allow for increased granularity for user, room, or device.

XMPP Architecture

XMPP XML Streams

XML Streams

<stream> </stream>

| ---------------------------------- |

| <stream> |

|----------------------------------- |

| <presence> |

| <show/> |

| </presence> |

|----------------------------------- |

| <message to = ‘foo’> |

| <body/> |

| </message> |

|----------------------------------- |

| ………. |

|----------------------------------- |

|</stream> |

|----------------------------------- |

Server to

Server

Client to

Server

XMPP Presence Stanza

The ‘type’ attribute determines usage and can take one of the following values:

available - The user is available.

unavailable – Typically sent by client before logging out.

probe - Sent by a server to poll for a users presence.

subscribe - Sent by a user when subscribing to another users presence

unsubscribe - Sent by a user when unsubscribing to another users presence

subscribed- Sent by a user in response to a subscribe when accepting a

subscription

unsubscribed - Sent by a user in response to an unsubscribe when accepting

an unsubscribe request.

The presence stanza contains up to three child elements.

<show/> - users availability: away, chat, dnd, normal or xa

<status/> - qualifier for availability – a text string containing more

information e.g. “on the phone”

<priority/> - priority of this entity (defines the priority of this resource)

XMPP Presence Stanza Example

serverA UserB@serverA/home userA@serverA/laptop

<presence> <status>I’m busy</status>

<show>dnd</show><priority>1</priority>

</presence>

<presence from=“userA@serverA/laptop"

to=“userB@serverA"><status>I’m

busy</status><show>dnd</show>

<priority>1</priority>

</presence>

Server sends

presence

update for

User A to all

subscribed for

User As

presence

XMPP Message Stanza

The 'type' attribute of a message stanza is RECOMMENDED. If included, the

'type' attribute MUST have one of the following values:

chat - The message is sent in the context of a one-to-one chat conversation

error - An error has occurred related to a previous message sent by the sender

groupchat - The message is sent in the context of a multi-user chat environment

headline - The message is typically generated by an automated service that

delivers or broadcasts content (news, sports, market info, RSS feeds, etc.)

normal - The message is a single message that is sent outside the context of a

one-to-one conversation or groupchat, and to which it is expected that the

recipient will reply.

The message stanza can contains up to three child elements

<subject/> - the subject or title of the message

<body/> - the main body of the message

<thread/> - unique identifier linked to a conversation.

XMPP Message Stanza Example

serverA UserB@serverA/home userA@serverA/laptop

<message from=“userA@serverA/laptop"

to=“userB@serverA"

type="chat"><body>hi</body></message>

<message from=“userA@serverA/laptop"

to=“userB@serverA"

type="chat"><body>hi</body></message>

<message from=“userB@serverA/home"

to=“userA@serverA" type="chat"><body>hi there

user A</body></message>

<message

from=“userB@serverA/home

" to=“userA@serverA"

type="chat"><body>hi there

user A</body></message>

XMPP IQ Stanza

Command response based messages that can be either ‘set’ or ‘get’. The

response is either ‘result’ or ‘error’. ‘set’, ‘get’, ‘result’ or ‘error’ is set in the type

field of the iq stanza.

The iq stanza is very flexible and can be used in for many purposes. Examples

include Roster Management, Privacy List Management, Non SASL

Authentication, and Service Discovery.

IQ get usually contains a sub element with a qualifying namespace that defines

the essence of the get activity. <iq type='get' to=‘alice'>

<query xmlns='jabber:iq:version'/>

</iq>

IQ set usually contains the qualifying namespace and also child tags that hold

the data to be set. Example of a vCard being updated: <iq type='set'>

<vCard xmlns='vcard-temp' version='3.0'>

... [vCard information] ...

</vCard>

</iq>

XMPP IQ Stanza Example

serverA UserB@serverA/home userA@serverA/laptop

<iq id=”id123”

type=”get”><query

xmlns=jabber:iq:roster”/>

</iq>

<iq from='userA@serverA/laptop'

id='jcl_16' type='result'>

<query xmlns='jabber:iq:roster'>

<item jid=‘johndoe@serverA'

name=‘johndoe'

subscription='none'><group>Friends

</group></item>

<item ask='subscribe'

jid=‘janedoe@serverA'

name=‘janedoe'

subscription='none'><group>Friends

</group></item>

<item jid=‘jendoe@serverA'

name=‘jendoe'

subscription='none'><group>Friends

</group></item>

<item jid=‘jimdoe@serverA'

name=‘jimdoe'

subscription='none'><group>Friends

</group></item>

</query>

</iq>

Server stores

user As roster.

Server serves up

the roster to

userA when

requested

Thank you.