Skype For Business 2019 Using SIP Trunk (TLS) To Cisco Unified .

Transcription

Application NoteSkype for Business 2019 using SIP trunk (TLS)to Cisco Unified Communications ManagerRelease 12.5.1Page 1 of 102Application No

Table of ContentsIntroduction . 4The following items were tested: . 4Listed below are the highlights of the integration issues: . 4Below are the key results:. 5Network Topology . 5Limitations . 5System Components. 6Hardware Requirements . 6Software Requirements . 7Features . 7Features Supported . 7Features Not Supported or Not Tested . 8Configuration . 9Global Trunk Configuration Highlights: . 9Configuring Sequence and Tasks: . 9Configuring the Skype for Business. 11Add Cisco UCM to Skype for Business Topology . 11Trunk Configuration . 15Route Configuration. 19Voice Policy and PSTN Usage Configuration . 22Dial Plan Configuration . 24Call Park Range Configuration . 25Global Media Bypass Configuration . 26User Configuration . 27Client Configuration . 33Configuring the Cisco Unified Communications Manager . 35SIP Trunk Security Profile for Trunk to Skype for Business . 35SIP Trunk Security Profile for Trunk to Unity Connection . 36SIP Profile . 38Media Resource Group . 42Media Resource Group List . 46Device Pool Configuration . 48Page 2 of 102

Region Configuration . 52Normalization Script . 53SIP Trunk to Skype for Business Configuration . 61SIP Trunk to Cisco Unity Connection Configuration. 66Voice Mail Configuration . 70Route Pattern to Skype for Business Extensions . 70Route Pattern to invoke Jabber client with Remote Destination configured as Skype for BusinessExtensions . 72Route Pattern to Skype for Business Call Park range. 75Route Pattern to Unity Connection Voice Mail . 77Cisco UCM Extent and Connect. 79UC service Configuration . 79Service Profile Configuration . 80Cisco Unified CM IM Presence – CCMCIP Profile Configuration . 82SIP trunk to Cisco IM&Presence Trunk Configuration . 83End user configuration . 88Remote Destination Configuration . 91Cisco UCM CTI Remote Device Configuration. 94Cisco Unity Connection . 96Telephony Integration – Add Phone System . 96Telephony Integration – Add Port Group . 96Telephony Integration – Add Ports . 98SIP Certificate . 99User Configuration . 100Acronyms . 102Test Results. Error! Bookmark not defined.Page 3 of 102

IntroductionThis document describes the steps and configurations necessary for Cisco Unified CommunicationsManager (Cisco UCM) release 12.5.1 to interoperate with the Skype for Business 2019 on TLS using thefollowing configuration:The following items were tested: Basic call between the two systems and verification of voice path, using both SIP and Legacy phoneson the Cisco side, and SIP client on the Skype for Business side (Refer to limitation section for moreinfo)CLIP/CLIR/CNIP/CNIR features: Calling party Name and Number delivery (allowed and restricted)(Refer to limitation section for more info) COLP/CONP/COLR/CONR features: Connected Name and Number delivery (allowed and restricted)(Refer to limitation section for more info) Call Transfer: Attended and Early attended (Refer to limitation section for more info) Alerting Name Identification (Refer to limitation section for more info) Call forwarding: Call Forward Unconditional(CFU), Call Forward Busy (CFB), and Call Forward NoAnswer (CFNA) Hold and Resume with Music on Hold Three-way conferencing (Refer to limitation section for more info) Voice messaging and MWI activation-deactivation (Refer to limitation section for more info) Extend and Connect (Refer to limitation section for more info) Call Park (Refer to limitation section for more info)Listed below are the highlights of the integration issues: Basic calls work from Cisco UCM to Skype for Business and vice versa. Only Cisco SIP phones wereused on Cisco UCM side as SCCP phones do not support 80-bit crypto attribute required by Skypefor BusinessSkype for Business drops the call on HOLD after 30 seconds where the call hold inititated from Skypefor Business client.Basic calls work from Cisco UCM to Skype for Business and vice versa using G711 ulaw and alaw Caller name and number is not updated correctly for basic calls, attended and early-attendedtransfer scenarios Video calls between the Cisco UCM and Skype for Business users were not tested REFER support should be disabled in Skype for Business for the Call Park scenarios Skype for business does not consider privacy:id sent in 18x and 2xx message from Cisco UCMPage 4 of 102

A call placed on hold by the Skype client is dropped after 30 seconds when Skype for Business Server2019 version 7.0.2046.123 is used. The issue is resolved with the newer release of Skype forBusiness 2019 version 7.0.2046.151 and above.Below are the key results: Basic call, Call Transfer, Call Forwarding, Conference Call, and Hold and Resume tested successfullywith a few caveats and limitations. Centralized voicemail, using Unity Connection server integrated with Cisco UCM via SIP is used fortesting. This voicemail solution can provide centralized voicemail services, supporting both Skypefor Business users and Cisco end users.Network TopologyLimitationsThese are the known limitations, caveats, or integration issues: Skype for Business does not support G729 codec. Trunk tested with only G711 ulaw and alaw. Disable Media Bypass on Skype for Business. If enabled, the Hold INVITE sent by Cisco UCM(without SDP) being rejected with 488 on Skype for Business. Skype for Business and Cisco UCM does not support overlap dialing modes on their SIP endpointsPage 5 of 102

Skype for Business does not consider Privacy: ID parameter sent by Cisco UCM during 180 Ringingor 200 OK when Connected Name/ID is resticted on Cisco UCM. Subsequently, Skype for Businessdoes not support updating the Connected Party’s display as Private. Skype for Business does not update the CLID in transfer/conference scenarios. Aftertransfer/conference is completed, Cisco UCM sends mid call INVITE and UPDATE messages thatcontain PAI and RPI. Skype for Business does not update this information on thier client display. Skype for Business sends incorrect number in history-info during forward scenarios. As a workaround Skype for Business, users DN are configured with a prefix " ". Cisco UCM Remote Destination is configured with a prefix “ ” and a Route Pattern to route a DNwith a preix ‘ ’ is added. (Refer Cisco UCM configuration section - Cisco Unified CommunicationsManager Route Pattern to invoke Jabber client with Remote Destination configured as Skype forBusiness Extension). Skype for Business does not support MWI notification from Cisco Unity Connection. It respondswith a “405 Method Not Allowed” for a NOTIFY Message received from the Cisco UCM that hasMWI information. In Multiple Call Forwarding scenario between Skype for Business Users and Cisco UCM Users,wherein both originator and terminator being Skype for Business Users, originator does notdisplay the Caller ID of terminator. When Cisco UCM User completes the conference, the audio is on RTP. Pad-lock symbol on theCisco phone disappears. When Skype for Business user makes a caller ID, restricted call to Cisco Phone A, caller ID isdisplayed as Private. However, when Cisco Phone A transfers the call to Cisco Phone B, the callerID displayed on Cisco Phone B is Skype for Business user’s caller ID instead of displaying as Private.System ComponentsHardware RequirementsThe following hardware are used: Cisco UCS-C240-M3S VMWare Host Cisco 8851 and 7841 IP phonesPage 6 of 102

Software RequirementsThe following software are used: Cisco UCSC-C240-M3S VMware vSphere Image Profile: ESXi-5.5.0-1331820-standard Cisco Unified Communications Manager release 12.5.1.11900-146 Cisco Unified Communications Manager IM & Presense Service release 12.5.1.11900-117 Cisco Unity Connection release 12.5.1.11900-57 Cisco Jabber 12.6.1.34405 Build 284405 Skype for Business Server 2019 version 7.0.2046.0 Skype for Business Client version 16.0.11328.20390FeaturesThis section lists supported and unsupported features. No deviation from the configuration presented inthis document will be supported by Cisco. Please see the Limitations section for more information.Features Supported CLIP—calling line (number) identification presentation CLIR—calling line (number) identification restriction CNIP—calling Name identification presentation CNIR—calling Name identification restriction Attended call transfer Early attended call transfer CFU—call forwarding unconditional CFB—call forwarding busy CFNA—call forwarding no answer COLP—connected line (number) identification presentation COLR—connected line (number) identification restriction CONP—connected Name identification presentation CONR—connected Name identification restriction Hold and resume Conference call MWI—Message Waiting Indicator (only for Cisco Endpoints)Page 7 of 102

Audio Codec Preference List Call Park/Pickup(see limitation section) Extend and Connect Shared Line on Cisco EndpointsFeatures Not Supported or Not Tested G729 voice codec Call completion (callback, automatic callback) Shared Line on Skype for Business Message Waiting Indicator on Skype for Business Endpoints Blind transfer Video calls Scenarios that required third PBX. Scenarios involving Non-SIP interfaces Scenarios involving Cisco UCM SCCP Phones Scenarios involving Non-SIP interfaces Connected party restriction sends and receives on Skype for Business Server is not supportedPage 8 of 102

ConfigurationThe goal of this guide is to provide an overview of the integration between Cisco Unified CommunicationManager and Skype for Business. The deployment will interconnect the UC systems using SIP. No PSTNconnectivity has been tested with this integration. The following sections provide the requiredconfigurations for a successful integration.Global Trunk Configuration Highlights:SettingValueSkype for Business Media BypassDISABLEDSkype for Business Encryption SupportOPTIONALSkype for Business REFER SupportDISABLEDCisco UCM SIP Trunk MTPDISABLEDCisco UCM PRACKENABLEDCisco UCM Early OfferENABLEDTransport type Cisco UCM to Skype for BusinessTLSCisco UCM SRTP allowedEnabledConfiguring Sequence and Tasks:Configuring the Skype for Business: Add Cisco UCM to Skype for Business Topology Trunk Configuration Route Configuration Voice Policy and PSTN Usage Configuration Dial Plan Configuration Call Park range Configuration Media Bypass Configuration User Configuration Client ConfigurationConfiguring the Cisco Unified Communications Manager: SIP trunk security profileSIP profileMedia resource group and media resource group listAssign media resource group list (MRGL) in the default device poolRegion configurationNormalization scriptPage 9 of 102

SIP trunk to Skype for BusinessSIP Trunk to Cisco Unity ConnectionAssign User in Cisco Unity ConnectionSIP phones device configurationRoute Group, Route List and SIP Route PatternVoice MailRoute pattern to Skype for Business, Unity Connection and Skype for Business call ParkRangeExtend and Connect Feature and User configurationConfiguring the Cisco Unity Connection: Cisco Unity Connection Telephony IntegrationCisco Unity Connection User ConfigurationPage 10 of 102

Configuring the Skype for BusinessAdd Cisco UCM to Skype for Business TopologyRun the Skype for Business 2019 Topology Builder as a user in the CSAdministrator group.Navigation: Skype for Business Server CleanDefaultTopology Shared Components PSTN gatewaysRight click and select “New IP/PSTN Gateway”Set FQDN FQDN of the Cisco UCM – clus22pub.tekvizionlabs.com is used in this test.Click Next.Page 11 of 102

Skype for Business – Add PSTN Gateway (Continued)Page 12 of 102

Check the Enable IPv4 and Use all configured IP addresses radio buttonClick Next.Set Trunk Name FQDN of the Cisco UCM – clus22pub.tekvizionlabs.com is used for this testSet Listening port for IP/PSTN gateway The Listening port should match the Incoming Port setting inthe CISCO UCM’s SIP Trunk Security Profile – 5061 is used for this testSet SIP Transport Protocol TLSSet Associate Mediation Server: Assign this PSTN gateway to the Front End co-located mediation server– fe.sfblabtn.local is used for this test.Click Finish.Page 13 of 102

Skype for Business – Add PSTN Gateway (Continued)Publish the topology so these new configurations take effect.Page 14 of 102

Skype for Business – Add PSTN Gateway (Continued)Trunk ConfigurationOpen the Skype for Business 2019 Control Panel.Navigation: Voice Routing - Trunk ConfigurationSelect New Pool TrunkSet Service Trunk to Cisco UCM that was created earlier as a PSTN gateway in the topology builder –clus22pub.tekvizionlabs.com is used for the test.Set Maximum early dialogs supported 23Page 15 of 102

Set Encryption support level OptionalSet Refer Support NoneUncheck Enable media bypassCheck Centralized media processingUncheck Enable RTP latchingCheck Enable forward call historyUncheck Enable forward P-Asserted-Identity data* [Note: this is checked when test scenarios that involverestrict ID need to be executed]Uncheck Enable outbound routing failover timerPage 16 of 102

Skype for Business –Trunk Configuration (Continued)Page 17 of 102

Skype for Business –Trunk Configuration (Continued)Page 18 of 102

Route ConfigurationNavigation: Voice Routing - RouteClick NewSet Name enter a name to identify this Route. CiscoRoute is used for this test.Add associated trunks select the trunk configured earlier – PstnGateway: clus22pub.tekvizionlabs.comPage 19 of 102

Skype for Business –Route Configuration (Continued)Page 20 of 102

Skype for Business –Route Configuration (Continued)Page 21 of 102

Voice Policy and PSTN Usage ConfigurationNavigation: Voice Routing - Voice PolicyClick NewSet Name enter a name to identify this voice policy – Cisco is used in this test.Set Calling Features: Check Enable call forwarding Check Enable delegation Check Enable call transfer Check Enable call park Check Enable simultaneous ringing of phones Check Enable team call Check Enable PSTN reroute Uncheck Enable bandwidth policy override Uncheck Enable malicious call tracing Enable Busy options Uncheck Enable busy options for FederationSet Associated PSTN usages: Click New Set Name: enter a name to identify the PSTN Usage record – CiscoPSTNUsage is used in the test. Set Associated Routes select the route created earlier CiscoRoutePage 22 of 102

Page 23 of 102

Dial Plan ConfigurationNavigation: Voice Routing- Dial PlanDefault Dial plan used for this topologyPage 24 of 102

Call Park Range ConfigurationNavigation: Voice Features - Call ParkClick New.Set Name enter text to identify the call Park Range – Orbit range is used in the test.Set Number Range 4500 to 4599 is used in the test.Set FQDN of destination server select the desired server – fe.sfblabtn.local is used in the testPage 25 of 102

Global Media Bypass ConfigurationNavigation: Network Configuration - GlobalEdit Global Setting – Uncheck Enable media bypassCommit the configuration.Page 26 of 102

User ConfigurationLogin to the Skype for Business Active DirectoryNavigation: Active Directory Users and Computers UsersAdd a New UserPage 27 of 102

Skype for Business – New User configuration (continued)Follow the screenshots below to add a new user:Page 28 of 102

Skype for Business – New User configuration (continued)Page 29 of 102

Skype for Business – New User configuration (continued)Once the user is created, login to the Skype for Business 2019 Control PanelNavigation: Users Enable usersClick on the Add button and find the new user created earlier.Page 30 of 102

Skype for Business – New User configuration (continued)Set Assign users to a pool fe.sfblabtn.local from drop down menuSet Generate user’s SIP URI: Specify a SIP URI: sip:test1@sfbsp.local .This is used in this testSet Telephony Enterprise VoiceSet Line URI: tel: 5001 is used for the test. This is the DN for the user.Set Dial plan policy Automatic (as configured earlier)Set Voice policy Cisco (as configured earlier)Click Enable.Page 31 of 102

Skype for Business – New User configuration (continued)Page 32 of 102

Client ConfigurationDownload the latest version of the Skype for Business client and launch the same.Navigation: Settings Tools Options Personal MyAccountSet Sign-in-address enter the sip uri of the user configured in username@domain format.test1@sfblabtn.local is used for example.Click Advanced. Select Manual Configuration.Set Internal Server Name Enter the FQDN of the domain (fe.sfblabtn.local is used for example)Page 33 of 102

Page 34 of 102

Configuring the Cisco Unified Communications ManagerCisco Unified Communications Manager Software VersionSIP Trunk Security Profile for Trunk to Skype for BusinessNavigation: System Security SIP trunk security profileSet Name* SFB SECURITY PROFILE. This is used for the test.Set Device Security mode EncryptedSet Incoming Transport Type TLSSet Outgoing Transport Type TLSSet X.509 Subject Name fe.sfblabtn.localSet Incoming Port 5061Check Accept Presence SubscriptionCheck Accept out of dialog referCheck Accept unsolicited notificationCheck Accept Replaces headerCheck Transmit security statusAll other values are default.Page 35 of 102

SIP Trunk Security Profile for Trunk to Unity ConnectionNavigation: System Security SIP trunk security profileSet Name* TLS CUC. This is used for the test.Set Device Security mode EncryptedSet Incoming Transport Type TLSSet Outgoing Transport Type TLSSet X.509 Subject Name clus22cuc.tekvizionlabs.comSet Incoming Port 5061check Accept Presence SubscriptionCheck Accept out-of-dialog refer**Check Accept unsolicited notificationCheck Accept Replaces headerPage 36 of 102

Check Transmit security statusAll other values are default.Page 37 of 102

SIP ProfileNavigation: Device Device Settings SIP ProfileSet Name* SFB SIP PROFILE - Standard SIP Profile. This is used for this test.Set SIP Rel1XX Options Send PRACK for all 1xx messagesSet Early Offer support for voice and video calls Best Effort (no MTP inserted)Check Enable OPTIONS Ping to monitor Destination status for Trunks with Service Type "None (Default)"All other values are default.Page 38 of 102

Cisco Unified Communications Manager SIP Profile (Continued)Page 39 of 102

Cisco Unified Communications Manager SIP Profile (Continued)Page 40 of 102

Cisco Unified Communications Manager SIP Profile (Continued)Page 41 of 102

Cisco Unified Communications Manager SIP Profile (Continued)Media Resource GroupNavigation Path: Media Resources Media Resource Group; Add NewMedia Resource Group MRGSet Name* MRG SW MTP, This is used for this test.Set all resources in the Selected Media Resources* Box.All other values are default.Page 42 of 102

Resource Group for MRG SW NoMTPSet Name* MRG SW NoMTP. This is used for the test.Set Available Media Resources MTP 2, MTP 3 and MTP 4Set other resources in the Selected Media Resources*All other values are default.Page 43 of 102

Page 44 of 102

Cisco Unified Communications Manager Media Resource Group ConfigurationPage 45 of 102

Media Resource Group ListNavigation Path: Media Resources Media Resource Group ListAdd NewSet Name* MRGL SW MTP. This is used for this test.Set Available Media Resources MRG NO-MTPSet Selected Media Resource Groups MRGL SW MTPAdd newSet Name* MRGL SW NoMTP. This is used for the testSet Available Media Resources MRG SW MTPSet Selected Media Resource Groups MRGL SW NoMTPPage 46 of 102

Page 47 of 102

Cisco Unified Communications Manager Media Resource Group List ConfigurationDevice Pool ConfigurationDevice Pool - G711 Pool is created in this test.Navigation Path: System Device PoolAdd New.Set Device Pool Name* G711 pool. This is used in the test.Set Cisco Unified Communications Manager Group* DefaultSet Date/Time Group* CMLocalSet Region* G711 Region. This is used in this exampleSet Media Resource Group List MRGL NO MTP. This is used in this example.All other values are default.Page 48 of 102

Page 49 of 102

Cisco Unified Communications Manager Device Pool Configuration (Continued)Page 50 of 102

Cisco Unified Communications Manager Device Pool Configuration (Continued)Page 51 of 102

Region ConfigurationNavigation Path: System Region Information RegionAdd NewG711 Region is created in this test.Set Name* G711 Region. This is used in this exampleSet Region G711 Region. This is used in this exampleSet Audio Codec Preference List G711 Preferred Codec ListSet Maximum Audio Bit Rate 64 Kbps (G7.22, G7.11). This is used in this exampleSet Region Default. This is used in this exampleSet Audio Codec Preference List G711 Preferred Codec List. This is used in this exampleSet Maximum Audio Bit Rate 64 Kbps (G722, G7.11). This is used in this exampleAll other values are defaultPage 52 of 102

Normalization ScriptNavigation: Device- Device Settings- SIP Normalization ScriptAdd NewSet Name enter text here to identify the normalization script for use on trunk. Lync interop updatedis used in this test.Set Content add script content.Note: “lync interop” was the originally provided script by Cisco Support for Cisco UCM-Skype forBusiness TLS integration. However, with the script activated, the call from Skype for Business to CiscoUCM was not established on SRTP still. Cisco UCM sent AVP (that is, chose RTP instead of SRTP) whenSkype for Business sent a tcap: 1 RTP/SAVP through INVITE SDP. The script was updated to fix this issueand “lync interop updated” is the updated script.Page 53 of 102

Normalization Script--[[Description:Provides interoperability for Microsoft LyncHandle Below Scenarios1. Add user phone for all outbound Invite messages because it ismandatory for Lync2. Change the CT Line values to 1000 , Moderate bandwidth in alloutgoing messages from CUCM to Lync3. There is Remote ringback hear issueThere is issue with PRACK enabled on CUCM and media bypass enabled onLync. Enabling media bypass on Lync allows the rtp from lyncendpoint to flow through CUCM directly instead of flowing throughMediation server. The problem with PRACK enabled is that Lync endpoint is now not able to answer the incoming call.Looking into thetraces, it appears that even though Lync sent updated connectioninformation in 183 w/sdp, the call manager is still sending rtp to themediation server which seems to be incorrect" So In this scenarioCUCM expects 180 Ringing not 183 Session progress.So added the Script to convert 183 Session Progress to 180 Ringing.4. There is incoming Invite from Lync and in From Header there is"user phone" which cause CUCM to send malformed data in todifferent layers which cause call failure.So this is work around for thatScenario.5. Script modify the AS header which from outgoing messages because call forwardfails due to bandwith negotiation value is A 64 is not supported6. Script convert the History info to diversion Header since call forward to unityIs not supported.7. Transfer Scenario: Referred-By in Incoming Invite is converted to Diversion Header.Script Parameters:Release: 9.1(2) , 10.0.(1)Copyright (c) 2009-2011 Cisco Systems, Inc. All rights reserved.All rights reserved.Page 54 of 102

--]]M {}M.allowHeaders {"History-Info"}trace.enable()local function getDisplayName (i header)local position of uri string.find(i header, " ")if position of uri 2thendisplay name nilelse-- save display name which arrives in quoteslocal display name tmp string.sub(i header,1, (position of uri - 1))-- now remove the quotesdis

SIP trunk to Skype for Business SIP Trunk to Cisco Unity Connection Assign User in Cisco Unity Connection SIP phones device configuration Route Group, Route List and SIP Route Pattern Voice Mail Route pattern to Skype for Business, Unity Connection and Skype for Business call Park Range