Fixing SIP Problems with UC Manager & CUBE Normalization Tools

Size: px
Start display at page:

Download "Fixing SIP Problems with UC Manager & CUBE Normalization Tools"

Transcription

1

2 Fixing SIP Problems with UC Manager & CUBE Normalization Tools Mark Stover, CCIE #6901 Consulting Systems Engineer BRKCOL-2455

3 Why have this session? More systems than ever use SIP Last count was 107 Products on SIP Wikipedia Page Google Search for SIP Server yields 14 Million Hits Many of the SIP bits don t quite match up Hence, the need for Interoperability events Things in the real world don t go the way of data sheets and Interoperability Forums! BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 3

4 What this Session is About Fact 1: SIP is a Standard Fact 2: SIP Configurations are not standardized Which headers are included Format of data in headers (URIs, etc.) Ordering of header fields Contents of the SIP Message Body What do we do when Fact #1 and Fact #2 are at odds in our deployment? We have tools in our toolbox: Unified CM s SIP Transparency and Normalization CUBE s SIP Profiles BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 4

5 Typical Interop Scenario BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 5

6 Cisco Spark Ask Question, Get Answers Use Cisco Spark to communicate with the speaker after the event! What if I have a question after visiting Cisco Live?... Cisco Spark Spark rooms will be available until July 29, 2016 How 1. Go to the Cisco Live Mobile app 2. Find this session 3. Click the join link in the session description 4. Navigate to the room, room name = Session ID 5. Enter messages in the room BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 6

7 Agenda Introduction (Very) Brief Review of SIP When Things Don t Work Overview of SIP Normalization Methods Using Unified CM Normalization Scripts Using IOS SIP Profiles Normalization Using Unified CM Transparency Conclusion 7

8 Brief Review of SIP 8

9 Basic Design SIP is a Client-Server Protocol Clients send requests, receive responses Servers receive requests, send responses Modeled after HTTP Text Encoded Protocol Client request Server Each request invokes method on server Main purpose of request response Messages contain bodies BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 9

10 SIP Methods and Messages SIP Messages have distinct parts: IP/TCP/UDP Envelope SIP Header SIP Message Body MIME-Encoded Session Description Protocol (SDP) May contain other data Call signaling performed by SIP Methods Six Original SIP Methods: INVITE ACK OPTIONS BYE CANCEL REGISTER BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 10

11 SIP Methods OPTIONS Queries a participant about their media capabilities, and finds them, but doesn t invite PING identifies reachability ACK For reliability and call acceptance REGISTER Informs a SIP server about the location of a user INVITE Invites a participant to a session idempotent - reinvites for session modification BYE Ends a client s participation in a session CANCEL Terminates a search For Your Reference BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 11

12 SIP Message Syntax Many header fields from http Payload contains a media description SDP Session Description Protocol INVITE sip:alice@company.com SIP/2.0 From: Bob <sip:bob@university.edu> To: Alice <sip:alice@company.com> Via: SIP/2.0/UDP pc.university.edu Call-ID: @ Content-type: application/sdp CSeq: 4711 INVITE Content-Length: 187 v=0 o=ccm-sip IN IP s=sip Call c=in IP m=audio RTP/AVP a=rtpmap:0 PCMU/8000 a=ptime:20 a=mid:1 c=in IP6 2001:0db8:aaaa::0987:65ff:fe01:234b m=audio RTP/AVP 0 a=mid:2 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 12

13 Negotiating the Session Called party receives SDP offered by caller Each stream can be accepted rejected Accepting involves generating an SDP listing same stream port number and address of called party subset of codecs from SDP in request Rejecting indicated by setting port to zero Audio stream accepted, PCMU only Video stream rejected, Port 0 For Your Reference v=0 o=user IN IP t=0 0 m=audio 3456 RTP/AVP 0 c=in IP m=video 0 RTP/AVP 86 c=in IP Resulting SDP returned in 200 OK Media can now be exchanged BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 13

14 SIP Responses Status Code Classes (1XX): Informational (2XX): Success (3XX): Redirection (4XX): Client Error (5XX): Server Error (6XX): Global Failure Two groups : Provisional (Not reliable) : Final, Definitive Example 200 OK 180 Ringing Look much like requests Headers, bodies Differ in top line Status Code Numeric, Meant for computer processing Protocol behavior based on 100s digit Other digits give extra info Reason Phrase Text phrase for humans Can be anything BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 14

15 SIP Transactions Fundamental unit of messaging exchange Request Zero or more provisional responses Usually one final response Maybe ACK All signaling composed of independent transactions Transactions identified by Cseq Sequence number Method tag BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 15

16 When things don t work 16

17 Identifying A Problem Goal is to make two SIP systems talk Both systems already configured with: Appropriate Network Configurations Trunk configuration to reach the other system Routing (dial plan) information in place Make a call From: 1001 on System A; To: 2001 on System Z Both phones exist, are configured, and are able to make other calls And wait BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 17

18 Symptoms Possible failure modes: Wait forever and get fast busy Call rejected right away Calls work, but other services (e.g. MWI) fail These can be symptoms of numerous problems No bandwidth No DNS Bad Codecs SIP Header Mismatches Etc. Unfortunately, it will take some troubleshooting to isolate the issue BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 18

19 Gather Information Logs are good: Will help you determine if SIP is the problem May not reflect what is really on the wire May not include the header level detail Packet Capture is your friend Various ways to gather traces Further discussion just ahead Review Paul Giralt s SIP Troubleshooting session for many more details: BRKUCC-2932 Troubleshooting SIP with Cisco Unified Communications Scheduled for Thursday Morning at 09:00 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 19

20 Getting SIP Messages Three main sources of SIP Message Information 1. Unified CM Trace Files 2. Unified CM Network Capture utils network capture 3. Cisco IOS Packet Capture IP Traffic Capture Feature 4. Network Packet Capture (Wireshark) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 20

21 Example of Unified CM Trace File 17:38: //SIP/SIPTcp/wait_SdlReadRsp: Incoming SIP TCP message from on port with 1872 bytes: INVITE SIP/2.0 Via: SIP/2.0/TCP :5060;branch=z9hG4bK From: "Alice" To: Date: Wed, 12 Oct :38:59 GMT Call-ID: Supported: 100rel,timer,resource-priority,replaces,sdp-anat Cisco-Guid: User-Agent: Cisco-SIPGateway/IOS-12.x CSeq: 101 INVITE Timestamp: Expires: 180 Allow-Events: telephone-event Content-Type: multipart/mixed;boundary=uniqueboundary Mime-Version: 1.0 Content-Length: uniqueboundary Content-Type: application/sdp Content-Disposition: session;handling=required v=0 o=ciscosystemssip-gw-useragent IN IP s=sip Call c=in IP t=0 0 m=audio RTP/AVP c=in IP a=rtpmap:0 PCMU/8000 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 21

22 Using Unified CM Network Capture admin:utils network capture size 1500 port 5060 file testsipcap verbose Executing command with options: size=1500 count=1000 interface=eth0 src= dest= port=5060 ip= admin:file list activelog platform/cli/ testsipcap.cap dir count = 0, file count = 1 admin:file get activelog platform/cli/testsipcap.cap Please wait while the system is gathering files info...done. Sub-directories were not traversed. Number of files affected: 1 Total size in Bytes: 6040 Total size in Kbytes: Would you like to proceed [y/n]? y SFTP server IP: SFTP server port [22]: User ID: admin Password: ******** Download directory: Downloads. Transfer completed. BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 22

23 Using Wireshark BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 23

24 Determine Needed Results 1. Make calls in both directions: Get SIP Captures of test calls in both directions 2. Traces may give you a clue: Mismatch in domain names No domain in one direction Mailbox you want is last redirect instead of first in list 3. May have to research each system s SIP trunk requirements Compare it to the other vendor s normal operation 4. Use your research and troubleshooting to determine the fix: Change the domain name of messages from incorrectly configured system Add a missing domain Remove headers that cause a failure BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 24

25 Write, Test, and Deploy Use the desired result to formulate a plan Configure SIP Normalization to process appropriate headers Test against traffic on a SIP trunk that does not carry production traffic Deploy to production trunk and verify BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 25

26 SIP Transparency & Normalization vs. IOS SIP Profiles 26

27 SIP Transparency & Normalization Unified CM s Normalization Tool Provide an interface for customization of SIP messages Initially conceived for Cisco Unified CM Session Management Edition (SME) Also supports Cisco Unified Communications Manager without SME Available in Release 8.5 and later Include: A Lua execution environment SIP Transparency & Normalization APIs Support: Transparent passing of SIP information from one call leg to another Normalizing SIP Messages to provide interoperability BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 27

28 IOS SIP Profiles Unified Border Element s (CUBE) Normalization Tool Key Cisco Unified Border Element (CUBE) function Customize SIP messaging to enable session negotiation with SIP Service Provider (to meet policy and security needs) Resolve incompatibilities between SIP devices inside the enterprise network Use IOS feature navigator to confirm minimum version requirements First available in IOS XZ Inbound SIP Profiles available in IOS T Uses regular expressions to match and replace fields in SIP messages BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 28

29 New Features in IOS SIP Profiles New Normalization and Transparency features continue to be added Inbound SIP Profiles available in IOS 15.4(2)T (CUBE ) New features in IOS 15.5(2)T (CUBE 11.0): SIP Profile Rule Tags Normalization support for non-standard SIP Headers SDP Pass-Through and Normalization in IOS 15.6 (1)T (CUBE 11.5) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 29

30 Normalization Comparison What s the difference between SIP Profiles and SIP T&N Feature IOS SIP Profiles SIP T&N Platform CUBE Unified CM Outbound Messages Yes Yes Inbound Messages Yes (15.4.2T) Yes Transparency SDP Only (15.6.1T) Yes Programmability Match & Replace Lua Scripting Matching RegEx (egrep) Lua Matching (globbing) Conditionals & Loops No Yes Headers Yes Yes Message Body SDP Only Any BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 30

31 Overview of SIP Transparency & Normalization 31

32 SIP Transparency & Normalization Unified CM s Normalization Tool Provide an interface for customization of SIP messages Initially conceived for Cisco Unified CM Session Management Edition (SME) Also supports Cisco Unified Communications Manager without SME Available in Release 8.5 and later Include: A Lua execution environment SIP Transparency & Normalization APIs Support: Transparent passing of SIP information from one call leg to another Normalizing SIP Messages to provide interoperability BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 32

33 SIP Transparency Unified CM is a Back to Back User Agent (B2BUA) In a Session Management role, Unified CM will (by default ) insert itself in the call Will become the call agent for next leg Will remove any unsupported headers on the next leg Transparency allows SIP information to be passed from one call leg to another What that means? Transparency allows 3rd-Party Headers to pass through Unified CM BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 33

34 What can a transparency script do? To provide transparency, the script has to pass SIP information Almost any information in a SIP message can be passed through Currently, SIP Transparency can manage: SIP headers SIP parameters Content bodies BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 34

35 SIP Normalization The process of transforming inbound and outbound SIP messages Inbound normalization makes the SIP message useable by Unified CM For Example, how can we handle SIP redirecting numbers? Unified CM uses the Diversion header for redirecting number(s) Other SIP devices use the History-Info header for this purpose Normalization can transform History-Info headers into Diversion headers Outbound normalization makes the SIP message useable by another SIP device Use normalization to transform Unified CM s Diversion headers into History-Info headers for another SIP PBX BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 35

36 What can a normalization script change? Manipulate almost every aspect of a SIP message Currently, SIP Normalization can change: The request URI The response code and phrase SIP headers SIP parameters Content bodies SDP BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 36

37 Normalization Script Examples Reorder codecs in the SDP of an early offer Remove specific headers such as Cisco-Guid Mask the number to E.164 in a Diversion header to meet Service Provider requirements Fix the domain name of a system with the wrong one using a configured parameter in Unified CM Convert IP addresses to domain names Add content to the SIP Message Body BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 37

38 Case Study-Problem Statement Customer has several PBXs trunked to a Unified CM cluster Unified CM SIP trunked to a 3rd-party voice mail system After multiple call forwards, some calls are sent to voice mail Most calls go to the correct voice mail box Calls from one PBX did not In the broken case: Reaching the greeting for the station that finally forwarded the call to voice mail Not reaching the voice mail of the station originally called Will solve this problem with SIP Normalization in just a little while BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 38

39 Using Unified CM Normalization Scripts 39

40 Putting SIP Normalization to Work Using message handlers to manipulate SIP messages Message Handler name tells you: When the Handler will be invoked What type of message the Handler is for You want your script to process INVITEs received by Unified CM: Script should have an inbound_invite message handler Corresponding message handler invoked anytime an inbound INVITE is received A single parameter called msg represents the SIP Message in script Scripts use Cisco SIP Message API library to access and manipulate the msg parameter Let s try looking at a diagram BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 40

41 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 41

42 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 42

43 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 43

44 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 44

45 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 45

46 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 46

47 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 47

48 How a Normalization Script Gets Run BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 48

49 Let s Start with a Simple Script Need to convert incoming History-Info headers into Diversion headers Script will run when Unified CM receives an INVITE Need to remove Cisco-Guid from outgoing headers Script will run when Unified CM sends an INVITE BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 49

50 Our First SIP Normalization Script M = {} function M.inbound_INVITE(msg) msg:converthitodiversion() end function M.outbound_INVITE(msg) msg:removeheader("cisco-guid") end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 50

51 Focus on SIP Normalization Script - 1 M = {} Creates an empty Lua Table called M for all Handlers M is also the name of the Lua Module function M.inbound_INVITE(msg) msg:converthitodiversion() end function M.outbound_INVITE(msg) msg:removeheader("cisco-guid") end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 51

52 Focus on SIP Normalization Script - 2 M = {} function M.inbound_INVITE(msg) end msg:converthitodiversion() Inbound INVITE Message Handler Inbound SIP Message accessed through msg Invokes an API call to perform the actual conversion function M.outbound_INVITE(msg) msg:removeheader("cisco-guid") end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 52

53 Focus on SIP Normalization Script - 3 M = {} function M.inbound_INVITE(msg) msg:converthitodiversion() End function M.outbound_INVITE(msg) end msg:removeheader("cisco-guid") Outbound INVITE Message Handler Outbound SIP Message accessed through msg Invokes API call to remove a header (in this case, Cisco-Guid) return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 53

54 Focus on SIP Normalization Script - 4 M = {} function M.inbound_INVITE(msg) msg:converthitodiversion() end function M.outbound_INVITE(msg) msg:removeheader("cisco-guid") end return M Line is required Returns the Lua Table containing the message handlers to Unified CM execution environment Cisco SIP Lua Environment uses Table M to identify the message handlers BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 54

55 SIP Message Handler Formalities Each Transparency and Normalization script provides: Set of call-back functions to manipulate SIP messages Call-back functions are called message handlers The message handler s name indicates when a handler is invoked Only one Transparency AND Normalization Script per SIP Trunk or Device Must define all message handlers in that single script Mix and match methods and directions in a single script Handlers for requests and responses have slightly different formats Will be covered next BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 55

56 Request Message Handlers Request message handler is named by combining: the SIP message direction AND the SIP method name Identify the method name from the 'request line' of the SIP message Request format: <direction>_<method> Examples: inbound_invite outbound_update BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 56

57 Response Message Handlers Response message handler is named by combining: the message direction PLUS the response code AND the SIP method Identify the method name from the CSeq header Response format: <direction>_<response code>_<method> Examples: inbound_183_invite inbound_200_invite outbound_200_update BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 57

58 Using Wild Cards in Message Handler Names For Request Messages A wildcard ANY can be used in place of <method> <direction> does not support a wild card For Response Messages: A wildcard ANY can be used in place of <method> A wildcard ANY can be used in place of <response code> <method> and <response code> can both be ANY <direction> does not support a wild card Cannot have a wildcard ANY <method> with a specific <response code> A wildcard character X can be used in <response code> BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 58

59 Examples of Wild Cards Valid Request Message Handler Names M.inbound_INVITE M.inbound_ANY M.outbound_ANY Valid Response Message Handler Names M.inbound_183_INVITE M.inbound_18X_INVITE M.outbound_ANY_INVITE M.outbound_ANY_ANY Invalid Response Names M.inbound_183_ANY BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 59

60 Rules for picking a message handler For Your Reference Unified CM uses these rules to choose a message handler: Message handlers are case-sensitive The direction is either inbound or outbound The direction is always written as lowercase The message direction is relative to Unified CM Note: The message direction has nothing to do with the dialog direction of the SIP session The method name in the SIP message is converted to uppercase to pick the message handler Longest match criteria: Unified CM uses the longest-match to choose the message handler A script has two message handlers: inbound_any_any and inbound_183_invite A 183 response is received by Unified CM The inbound_183_invite handler will be executed since it is the longest match BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 60

61 Built-In Normalization Scripts You can also find Transparency & Normalization scripts in some Interoperability guides. BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 61

62 APIs for SIP and SDP Normalization SIP Messages APIs: Allows script to manipulate the SIP message SDP APIs: Allows script to manipulate the SDP For Your Reference SIP Pass Through APIs: Allows script to pass information from one call leg to another SIP Utility APIs: Utilities to manipulate header data such a parsing URIs into a SIP URI object SIP URI APIs: Allows script to manipulate the parsed SIP URI object Trace APIs: Allows script to enable, disable and manage tracing Script Parameters API: Allows script to obtain trunk or line specific parameters BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 62

63 SIP Objects and Normalization Which SIP methods can be normalized? You can invoke a scripts based on any Method that Unified CM handles Which SIP headers can your script access? You can access any headers in the message that invokes the script Which lines in the message s SDP can you access? Your script can access any of the SDP lines For normalization, scripts can manipulate almost every aspect of a SIP message BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 63

64 SIP Objects and Transparency support Transparency is limited to INVITE dialogs on SIP trunks Transparency scripts can pass almost any information in a SIP message SIP Headers SIP Parameters Content Bodies These SIP objects do not support Transparency scripts SUBSCRIBE dialogs PUBLISH out-of-dialog REFER out-of-dialog unsolicited NOTIFY MESSAGE BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 64

65 Unified CM Normalization Case Study 65

66 Case Study Calls going to the wrong mail box Customer has several PBXs trunked to Cisco Unified CM Unified CM interfaced to a 3rd-party voice mail system via SIP Calls sent to voice mail after multiple call forwards Most calls were going to the correct voice mail box Calls from one PBX were not In the broken case, calls were going to the voice mail box of the last station the call was forwarded to Let s look in detail at these call flows BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 66

67 Case study call flow 5 Call from PSTN for x Call from PSTN for x Call Forward All to x1200 Bad Result 7 8 No Answer to Voice Mail Greeting for x Greeting for x Call Forward All to x2200 Good Result 3 No Answer to Voice Mail BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 67

68 Problem: SIP header from call to wrong mail box INVITE SIP/2.0 Via: SIP/2.0/TCP :5060;branch=z9hG4bK12b5cc229a69621 From: "PSTN" To: Date: Wed, 19 Dec :45:01 GMT Call-ID: Supported: 100rel,timer,resource-priority,replaces User-Agent: Cisco-CUCM8.5 Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY CSeq: 101 INVITE Expires: 180 Call-Info: <sip: :5060>;method="notify;event=telephone-event;duration=500" Cisco-Guid: Diversion: Diversion: Contact: Content-Length: 0 Call goes to x1200 greeting instead of x1100 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 68

69 What the script will have to accomplish Keep it simple & just remove the headers we don t need for voice mail BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 69

70 Minimal Normalization Script for outbound INVITEs M = {} function M.outbound_INVITE(msg) INVITES to VM -- Process outbound -- Process INVITE to normalize it... end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 70

71 Add logic to remove extra Diversion Headers -- Get all Diversion Headers local DiversArray = msg:getheadervalues("diversion ) local DiversCount = #DiversArray if DiversCount > 1 then for I = 1, (DiversCount - 1) do -- Number of Diversion Headers -- Only if there s more than one -- Remove all but last header -- remove a Diversion Header msg:removeheadervalue("diversion", DiversArray[I]) end end BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 71

72 Completed Script M = {} function M.outbound_INVITE(msg) local DiversArray = msg:getheadervalues("diversion ) local DiversCount = #DiversArray if DiversCount > 1 then for I = 1, (DiversCount - 1) do -- Process outbound INVITES to VM -- Get all Diversion Headers -- # of Diversion Headers in Invite -- Only if there s more than one -- Remove all but last header msg:removeheadervalue("diversion", DiversArray[I]) -- remove a Diversion Header end end end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 72

73 Deploy the script to Unified CM Now that we have a script, what do we do with it? Apply it to the voice mail SIP trunk in Unified CM: 1. Add a SIP Normalization Script 2. Can be imported from a text file or copy/paste 3. Save the Script 4. Apply the Script to the appropriate SIP trunk BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 73

74 Add a SIP Normalization Script BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 74

75 Import the Script BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 75

76 Configure and save the Script BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 76

77 Apply the Script to the SIP trunk BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 77

78 Verify that your script fixes the problem INVITE SIP/2.0 Via: SIP/2.0/TCP :5060;branch=z9hG4bK12b5cc229a69621 From: "PSTN" To: Date: Wed, 19 Dec :45:01 GMT Call-ID: Supported: 100rel,timer,resource-priority,replaces User-Agent: Cisco-CUCM8.5 Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY CSeq: 101 INVITE Call-Info: <sip: :5060>;method="notify;event=telephone-event;duration=500" Cisco-Guid: Session-Expires: 1800 Diversion: Contact: Content-Length: 0 Call now goes to x1100 greeting (1 Diversion Header) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 78

79 Revisiting Use Last Diversion Header Same symptoms, different cause Thought this had been solved Another customer had calls to voic going to the wrong destination Discovered there were multiple Diversion Headers Diversion: Doe, John" Diversion: Doe, John" Because of the comma in the Header, it breaks the processing It actually causes an issue with the SIP Normalization API The Headers are parsed into a Lua Table using commas and <CR><LF> BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 79

80 New Approach to Choosing the Last Diversion Process all Diversion Headers as one long string getheader( Diversion ) returns all Diversion Headers in a single string Each header will be comma separated Doe, John" <sip:jdoe@ >;reason=no-answer;privacy=off, Doe, John" <sip:1000@ >;reason=no-answer;privacy=off To get right voic box, really care about: Doe, John <sip:1000@ >;reason=no-answer Rest of the string can be discarded Can use Lua string matching to greedy match everything up to the last, "(.+),\" -- Note the \ to be able to match a Can replace everything matched with using: \ Doe, John" <sip:1000@ >;reason=no-answer;privacy=off BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 80

81 Complete Lua Script M = {} function M.outbound_INVITE(msg) -- Get all Diversion Headers local DiversHeaders = msg:getheader("diversion") if string.len(diversheaders) == 0 then -- no Diversion Headers else -- Greedy match everything up to the last," and replace with " newdiversheader = string.gsub(diversheaders, "(.+),\", "\"") msg:removeheader("diversion") -- remove Diversion Headers msg:addheader("diversion", newdiversheader) -- add last Diversion Header back end end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 81

82 Some Common Scripting Forms 82

83 Navigating Script Formats Sample Normalization Scripts are available Can be confusing, not all scripts follow same format Scripts follow two basic formats: Function Name made up of the direction and SIP method example: function M.inbound_INVITE(msg) Function Name indicates purpose, but not direction or SIP Method example: function add_reply_to_header(msg) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 83

84 Name = Direction + Method M = {} function M.inbound_INVITE(msg)... (function code)... end return M Good: Know exactly what SIP messages will be acted on Bad: Cannot reuse the function for anything else Need to repeat the code to duplicate processing on outbound INVITE BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 84

85 Example: Name with Purpose M = {} local function add_reply_to_header(msg)... (function code)... end M.outbound_INVITE = add_reply_to_header return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 85

86 Name with Purpose Good: Function name describes exactly what it does Can reuse the function without repeating it To use add_reply_to_header for inbound INVITES: M.inbound_INVITE = add_reply_to_header To use add_reply_to_header for outbound INVITES: M.outbound_INVITE = add_reply_to_header Bad: Might search through entire script to figure out the direction and SIP Method BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 86

87 Using Script Parameters SIP T&N allows you to set script parameters Available in Unified CM Admin pages Allows deployment of a generic script Provide script with site settings at load time Use same script in multiple locations without rewriting Example: local mydomain = scriptparameters.getvalue("localdomain") local fqdn = host..... mydomain BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 87

88 Setting a Script Parameter Access Unified CM Admin Set on the SIP Trunk Configuration page Must know the Parameter Name from the script Parameters are not indexed by Unified CM No pick-list provided BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 88

89 Enabling Tracing in Scripts Scripts can write trace information to Unified CM logs Tracing must be enabled in BOTH: Your script Unified CM Configuration Can embed tracing in every script: Use for testing and troubleshooting Disable from Unified CM Admin in production to optimize performance Trace output added to Unified CM SDI Trace BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 89

90 Adding Tracing to Your Scripts trace.enable() function M.inbound_NOTIFY(msg) local callid = msg:getheader("call-id") trace.format("m.inbound_notify: callid is '%s'", callid) trace.format(" -- missing URI host, no changes made") BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 90

91 Enabling Tracing from Unified CM BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 91

92 Overview of SIP Profiles Normalization 92

93 IOS SIP Profiles Unified Border Element s (CUBE) Normalization Tool CUBE supports normalization of SIP messages Includes add/remove/modify/copy of headers in a SIP message SIP Profiles feature added in 12.4(20)T and enhanced in 15.1(3)T and 15.4(1)T Inbound SIP Profiles available in IOS 15.4(2)T Inbound normalization takes place before regular SIP call processing CUBE acts as if it directly received the normalized message BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 93

94 IOS SIP Profile Uses Situations that IOS SIP Profiles can address Device rejects an unknown (IOS) header instead of ignoring it Device sends incorrect data in a SIP message For example, uses internal extension instead of E.164 number Device does not implement (or implements incorrectly) protocol procedures Device expects an optional header value or parameter that can be implemented in different ways Device sends a value or parameter that must be changed (or suppressed) before it leaves or enters the network Variations in the SIP standards on how to achieve certain functions BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 94

95 What can SIP Profiles normalization change? Add, modify, remove or copy any SIP or SDP header value in a SIP message SIP Profiles does not allow you to remove or add mandatory SIP headers Only the modify option is available for mandatory headers Mandatory SIP headers include: To From Via Cseq Call-Id Max-Forwards Mandatory SDP headers include: v, o, s, t,c, and m BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 95

96 Case Study-Problem Statement Customer has SIP trunks configured to the SIP service provider Unified CM configured to turn 4-digit extension into a valid E.164 number Dialed calls to the PSTN are completed Calls forwarded to PSTN fail Will solve this problem with SIP Profiles BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 96

97 Using IOS SIP Profiles Normalization 97

98 Putting SIP Profiles to Work Using profiles to manipulate SIP messages SIP profiles can be configured either at the dial-peer or global levels Message modification uses regular expressions to match and replace fields Modification can also be used to change a header name to the compact form For example, From to f By default, IOS never sends the compact form (it receives either long or short form) SIP Profiles cannot modify compact form headers Changes made to messages are not remembered by CUBE Content-length field is recalculated after normalization is applied BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 98

99 Using Wild Cards in Rules ANY keyword indicates that a rule will be applied to any message within the specified category Note that rules configured for an INVITE message only apply to the first INVITE in the call REINVITE supports operations needed on subsequent INVITEs in the call BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 99

100 Using SIP Profiles: Adding Headers Add new information that might be missing from a message s SIP or SDP Headers Useful for adding fixed value headers to SIP Messages Used for: Adding new headers to SIP Requests or Responses Adding new SDP headers to specific SDP lines BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 100

101 Example: Adding Headers Adding a Retry-After Header Incoming Outgoing 480 Temporarily Not Available CUBE 480 Temporarily Not Available Retry-After: 60 voice class sip-profiles 10 response 480 sip-header Retry-After add Retry-After: 60 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 101

102 Example: Adding Headers Adding a Retry-After Header Incoming Outgoing 480 Temporarily Not Available CUBE 480 Temporarily Not Available Retry-After: 60 voice class sip-profiles 10 rule 10 response 480 sip-header Retry-After add Retry-After: 60 Note that, rule tagging is a new CUBE feature in IOS 15.5(2)T BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 102

103 Using SIP Profiles: Removing Headers Provides the ability to remove a message s SIP or SDP Headers Used for: Removing an incompatible header Discarding internal information not needed by SIP Service Provider BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 103

104 Example: Removing Headers Removing the Cisco-Guid Header Incoming INVITE SIP/2.0 Cisco-Guid: CUBE Outgoing INVITE SIP/2.0 voice class sip-profiles 20 rule 10 request ANY sip-header Cisco-Guid remove rule 20 response ANY sip-header Cisco-Guid remove BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 104

105 Using SIP Profiles: Modifying Messages Using regular expressions to match and replace fields Add fixed strings to existing header Substrings that have been matched can be part of replacement patterns When multiple rules apply to the same header, the second rule applies to the result string of the first rule Used for: Adding parameters to a header Modifying the URI Changing SDP BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 105

106 Example: Modifying Headers (1) Modify the originator SDP o= line Incoming INVITE SIP/2.0 o=ciscosystemssip-gw-useragent IN IP CUBE Outgoing INVITE SIP/2.0 o= IN IP voice class sip-profiles 30 request INVITE sdp-header Session-Owner modify CiscoSystems-SIP-GW-UserAgent - BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 106

107 Example: Modifying Headers (2) Change anonymous to a directory number Incoming INVITE sip: @sip.com:5060 SIP/2.0 From: <sip:anonymous@public.com:5060> CUBE Outgoing INVITE sip: @sip.com:5060 SIP/2.0 From: <sip: @public.com:5060> voice class sip-profiles 40 request INVITE sip-header From modify sip:anonymous@" sip: @ BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 107

108 Using SIP Profiles: Copying Header Information Matched substrings can be saved in variables to copy into another header Variables u01 to u99 are shared by inbound and outbound SIP Profiles Can be used to copy information from inbound message to outbound message Uses peer-header feature of SIP Profiles Can use additional rules to modify the copied information Used for: Duplicating content of existing header to another header BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 108

109 Example: Copying Headers Copying phone number to Request URI Incoming INVITE SIP/2.0 To: tjones CUBE Outgoing INVITE SIP/2.0 To: tjones voice class sip-profiles 50 request INVITE sip-header To copy u01 request INVITE sip-header SIP-Req-URI modify "INVITE BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 109

110 Using the SIP Profile Generation Tool BU provided web-based tools to help you build SIP Profiles Paste in messages, edit what you need, see the rule Manipulate the rule and see if the results are still correct Found at: BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 110

111 SIP-Profile Generation Tool Example BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 111

112 SIP-Profile Generation Tool Example BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 112

113 SIP-Profile Generation Tool Example BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 113

114 SIP-Profile Generation Tool Example BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 114

115 Inbound versus Outbound SIP Profiles SIP profiles can be applied to outgoing SIP messages Outbound rules are applied as the last step before the message leaves CUBE Normalization is after destination dial-peer matching has taken place Changes to the SIP message are not remembered after the message is sent SIP profiles can be applied to incoming SIP messages Inbound rules are first applied as the message enters CUBE Normalization is done prior to dial-peer matching CUBE will perform a preliminary match to determine if inbound SIP Profile exists After normalization, final dial peer will be chosen BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 115

116 Some Inbound SIP Profile Notes Incoming messages can contain multiple instances of same header For example, an INVITE can have multiple Diversion headers Header values will be in a comma separated list Must keep this in mind if you plan to modify these headers If preliminary inbound dial-peer matching fails, Inbound SIP Profiles attached to dial peers will not run Could happen if the inbound message has an invalid Request URI. A global Inbound SIP profile could be used, but use caution Performing SIP normalization will add extra processing logic, which slightly reduces CUBE performance BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 116

117 Enabling Inbound SIP Profile Feature Inbound SIP Profile has to be enabled at global level for normalizing incoming messages Configuration Example voice service voip sip sip-profiles inbound BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 117

118 Enabling Outbound SIP Profile Dial-Peer Profile Configuration Outbound SIP Profile removes the Cisco-Guid from any message leaving CUBE via specified Dial-Peer Configuration Example: voice class sip-profiles 20 request ANY sip-header Cisco-Guid remove response ANY sip-header Cisco-Guid remove dial-peer voice 10 voip voice-class sip profiles 20 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 118

119 Troubleshooting Commands Debug and Show Debug commands: debug ccsip info debug ccsip feature sip-profile debug ccsip error debug ccsip message Show commands: Verify the SIP Profile is assigned to a dial-peer: show dial-peer voice 1 include sip profile BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 119

120 Troubleshooting Sample sip profile to change user part of From header from anonymous to some value. voice class sip-profiles 1 request INVITE sip-header FROM modify "sip:anonymous@" "sip:1234@" INVITE sip:1111@ :5060 SIP/2.0 Via: SIP/2.0/UDP ;branch=z9hG4bK From: anonymous <sip:anonymous@ :9232>;tag=1 To: 1111 <sip:1111@ :5060> Call-ID: @ Sample log: Sample incoming message with From header set to anonymous. Sip profile invoked for modifying the message is displayed here Jan 17 18:24:00 EST: //-1/xxxxxxxxx/SIP/Info/verbose/64/ccsip_inbound_profile_populate_callinfo_in_ccb: Dial-peer 1 is used for inbound profiles config Jan 17 18:24:00 EST: //-1/xxxxxxxxx/SIP/Info/info/64/sipSPISetSipProfilesTag: voice class SIP Profiles inbound tag is set : 1 Jan 17 18:24:00 EST: //-1/xxxxxxxxx/SIP/Info/info/64/sip_profiles_application_modify_remove_header: Header before modification : From: sipp <sip:anonymous@ :9232>;tag=1 Jan 17 18:24:00 EST: //-1/xxxxxxxxx/SIP/Info/info/64/sip_profiles_application_modify_remove_header: Header after modification : From: sipp <sip:1234@ :9232>;tag=1 From header after modification BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 120

121 SIP Profiles Case Study 121

122 Case Study-Problem Statement Forwarded PSTN calls fail Customer has SIP trunks configured to the SIP service provider Unified CM configured to turn 4-digit extension into a valid E.164 number Dialed calls to the PSTN are completed Calls forwarded to PSTN fail Let s look at the problem BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 122

123 SIP Headers for Forwarded Call INVITE SIP/2.0 Via: SIP/2.0/TCP :5060;branch=z9hG4bK12b5cc229a69621 From: Mark" To: Cisco-Guid CSeq: 101 INVITE meaningless outside Cisco-Guid: enterprise Diversion: Content-Length: 0 Diversion Header contains internal Extension (x1100) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 123

124 Tackling the Problem (1) Removing Cisco-Guid Removing Cisco-Guid from all requests and responses is straightforward No downside on trunks to SIP SP since it has no meaning outside enterprise SIP profile rules: request ANY sip-header Cisco-Guid remove response ANY sip-header Cisco-Guid remove BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 124

125 Tackling the Problem (2) Modifying Diversion Header Need to add the required E.164 digits to the extension in the Diversion Header Take advantage of the dial-plan All internal extensions have the format 1xxx Insert the digits in front of the extension Match the in Diversion Header: (1 Replace the match with : Complete SIP profile rule: request INVITE sip-header Diversion modify ( \1@ BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 125

126 Complete the Configuration Applying the SIP Profile rules to outgoing dial-peer Sample Configuration: voice class sip-profiles 100 request ANY sip-header Cisco-Guid remove response ANY sip-header Cisco-Guid remove request INVITE sip-header Diversion modify (1 dial-peer voice 100 voip voice-class sip profiles 100! BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 126

127 Verify Results of SIP Profiles INVITE SIP/2.0 Via: SIP/2.0/TCP :5060;branch=z9hG4bK12b5cc229a69621 From: Mark" To: Cisco-Guid removed CSeq: 101 INVITE Diversion: Content-Length: 0 Diversion Header normalized to E.164 BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 127

128 Bonus Case Study 128

129 MWI Lights Don t Light Adapting SIP Notify Problem: Unity Connection provides voic for user on multiple vendor PBXs Unity Connection homed to Unified CM SME SME connects to other PBXs via SIP One vendors PBX fails to update MWI status Initial Troubleshooting: Gathered traces: SIP Notify being sent to system Opened case with vendor Software release running on system needs Message-Account in the Notify BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 129

130 First Try Add a Message-Account header No detail available on what Notify should look like You need a Message-Account Header Make it look like the To: Header That s easy Use geturi(to) gives me the URI from the To: Use that to add a new header to message: addheader( Message-Account, <uri from geturi>) Turns out it wasn t so easy BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 130

131 Revisiting the Problem Discover that Message-Account isn t a SIP Header at least for this release Message-Account should be in the content body Oh, and by the way Can you make sure it is right after the Messages-Waiting line That s a bit more complicated BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 131

132 Tackling the Problem Can use the geturi( To ) function to grab the To: header like before You can t edit the content body in place: Read the body and save it: getcontentbody() Delete the current body: removecontentbody() Add updated body: addcontentbody() Easy: Add the Message-Account: line to beginning or end of body Harder content body processing: Add Message-Account: line right after Messages-Waiting: line Don t know where in the body Messages-Waiting: line is Maintain CR-LF terminator on each line of body Use string matching and (partial) substitution BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 132

133 Updating the Content Body Before and After Content-Body from Unity Connection: Messages-Waiting: yes Voice-Message: 5/0 (0/0) Fax-Message: 0/0 (0/0) Content-Body desired: Messages-Waiting: yes Message-Account: Voice-Message: 5/0 (0/0) Fax-Message: 0/0 (0/0) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 133

134 Build the Script Basics M = {} function M.outbound_NOTIFY(msg)... end return M BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 134

135 Create the Message-Account Line -- Get the URI from To: and extract user and host local uristring = msg:geturi("to") local nuri = siputils.parseuri(uristring) nuser = nuri:getuser() nhost = nuri:gethost() -- Build the Message-Account line ma = string.format( Message-Account: sip:%s@%s\r\n, nuser, nhost) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 135

136 Update the Content Body -- Set the content type of the body local ct = "application/simple-message-summary" -- Get the existing content body local cb = msg:getcontentbody(ct) -- Build a new content body local ncb = string.gsub(cb, "Messages%-Waiting%:%s%w+%c+", "%0".. ma) -- Have to remove the existing content body and re-add msg:removecontentbody(ct) msg:addcontentbody(ct, ncb) BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 136

137 Taking a Look at the String Operation Breaking down the key string operation string.gsub(cb, "Messages%-Waiting%:%s%w+%c+", "%0".. ma) string.gsub takes three arguments: 1. String you want to process 2. String you want to find (match) 3. What you want to replace the matched string with Looking for Messages-Waiting: yes\r\n (or no) Take what we matched: %0 concatenate on the Message-Address we built before get the two lines we want for the Content Body BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 137

138 Overview of Unified CM Transparency 138

139 SIP Transparency Recap Unified CM is a B2BUA, so it consumes SIP headers that pass through: That s true for KNOWN headers (there s a list of 71 of them) Unknown headers pass through transparently Transparency feature allow s you to take information from known headers and preserve it as the call legs pass across Unified CM Unified CM can transparently pass: Parameters Unknown headers Unknown content-bodies BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 139

140 Why Use SIP Transparency? BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 140

141 Why Use SIP Transparency? Unified CM acting as SME will begin routing calls between PBX-A and PBX-Z BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 141

142 Why Use SIP Transparency? BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 142

143 Why Use SIP Transparency? BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 143

144 How Can Transparency Preserve 181 Unified CM consumes Reason header it is a known header The transparency feature lets you pass unknown headers through Unified CM Goal is to preserve the 181 Call is being forwarded Place in an unknown header when it ingresses Unified CM Restore the 181 as it egresses Unified CM BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 144

145 On Inbound 1. Invoked when Unified CM receives a 181 message response in an INVITE dialog 2. Create the PassThrough message block 3. Get the Reason header contents 4. Add the contents to an unknown X-Reason header B = {} function B.inbound_181_INVITE(msg) local pt = msg:getpassthrough() local rson = msg:getheader("reason") if pt and rson then pt:addheader("x-reason", rson) end end return B BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 145

146 Unified CM Processes the SIP Message Because the reason is preserved in the X-Reason header: Unified CM will not consume it It is preserved through call processing in the pass-through object Unified CM will consume the actual 181 Response and Unified CM will create a new 180 Response to take it s place The 180 Response still contains the pass-through object The 180 Response is now ready for Outbound Processing BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 146

147 On Outbound A = {} function A.outbound_180_INVITE(msg) local reason = msg:getheader("x-reason") if reason then if string.find(reason, "cause=181") then msg:setresponsecode(181,"call is being forwarded") msg:addheader("reason", reason) end msg:removeheader("x-reason") end end return A BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 147

148 Conclusion 148

149 How to Choose Your Tool Should I pick Unified CM or IOS There is overlap between what you can accomplish with both tools Some things to consider when choosing a tool: What does the call flow look like? Programming versus Match/Replace? Knowledge of Language (Lua vs. RegEx)? Is the right version available? Are needed features available? BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 149

150 Make a Plan and Practice Patience If you can identify the problem, you can fix it Traces and packet captures are your friend All normalization scripts or expressions have same beginnings Transparency relies on turning known headers into unknown ones Test, write, test, fix, test, then go to production BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 150

151 Next Steps Use the available resources to learn more I ve listed many in the following slides Use the Appendix to this deck Introduction to Lua Some additional Normalization examples Start small, and build on your knowledge BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 151

152 Resources Unified CM Transparency & Normalization SIP Chapter in Unified CM System Guide: BK_SE5FCFB6_00_cucm-system-guide-100_chapter_ html Developer Guide for SIP Transparency and Normalization Cisco Interoperability Portal Cisco Developer Network BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 152

153 Resources IOS SIP Profiles Configuration Note for CUBE SIP Normalization: SIP Configuration Guide (15M&T) CUBE Configuration Guide for SIP Profiles BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 153

154 Resources: Where to Ask Questions Cisco Developer Network has a SIP Transparency and Normalization Forum Part of the SIP Developer Portal Post questions there and interact with other developers BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 154

155 Complete Your Online Session Evaluation Give us your feedback to be entered into a Daily Survey Drawing. A daily winner will receive a $750 Amazon gift card. Complete your session surveys through the Cisco Live mobile app or from the Session Catalog on CiscoLive.com/us. Don t forget: Cisco Live sessions will be available for viewing on-demand after the event at CiscoLive.com/Online BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 155

156 Continue Your Education Demos in the Cisco campus Walk-in Self-Paced Labs Lunch & Learn Meet the Engineer 1:1 meetings Related sessions BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 156

157 Join the Customer Connection Program 19,000+ Members Strong Influence product direction Access to early adopter & beta trials Monthly technical & roadmap briefings Connect in private online community Exclusive perks at Cisco Live Collaboration NDA Roadmap Sessions Mon & Tues Q&A Open Forum with Collaboration Product Management Tues 4:00 5:30 Reserved seats at Collaboration Innovation Talk Thurs 8:00am 9:00am 2 new CCP tracks launching at Cisco Live: Security & Enterprise Networks Join in World of Solutions Collaboration zone Join at the Customer Connection stand New member thank-you gift * CCP ribbon for access to NDA sessions Join Online Come to Collaboration zone to get your ribbon and new member gift * While supplies last BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 157

158 Please join us for the Service Provider Innovation Talk featuring: Yvette Kanouff Senior Vice President and General Manager, SP Business Joe Cozzolino Senior Vice President, Cisco Services Thursday, July 14 th, :30 am - 12:30 pm, In the Oceanside A room What to expect from this innovation talk Insights on market trends and forecasts Preview of key technologies and capabilities Innovative demonstrations of the latest and greatest products Better understanding of how Cisco can help you succeed Register to attend the session live now or watch the broadcast on cisco.com 158

159 Thank you 159

160

161 Collaboration Cisco Education Offerings Course Description Cisco Certification CCIE Collaboration Advanced Workshop (CIEC) Implementing Cisco Collaboration Applications (CAPPS) Implementing Cisco IP Telephony and Video Part 1 (CIPTV1) Implementing Cisco IP Telephony and Video Part 2 (CIPTV2) Troubleshooting Cisco IP Telephony and Video (CTCOLLAB) Implementing Cisco Collaboration Devices (CICD) Implementing Cisco Video Network Devices (CIVND) Gain expert-level skills to integrate, configure, and troubleshoot complex collaboration networks Understand how to implement the full suite of Cisco collaboration applications including Jabber, Cisco Unified IM and Presence, and Cisco Unity Connection. Learn how to implement Cisco Unified Communications Manager, CUBE, and audio and videoconferences in a single-site voice and video network. Obtain the skills to implement Cisco Unified Communications Manager in a modern, multisite collaboration environment. Troubleshoot complex integrated voice and video infrastructures Acquire a basic understanding of collaboration technologies like Cisco Call Manager and Cisco Unified Communications Manager. Learn how to evaluate requirements for video deployments, and implement Cisco Collaboration endpoints in converged Cisco infrastructures. CCIE Collaboration CCNP Collaboration CCNP Collaboration CCNA Collaboration For more details, please visit: Questions? Visit the Learning@Cisco Booth or contact ask-edu-pm-dcv@cisco.com BRKCOL Cisco and/or its affiliates. All rights reserved. Cisco Public 161

162 Appendix Overview of Lua & Lua Programming Additional SIP Normalization Scripts 162

Fixing SIP Problems with UC Manager's SIP Normalization Tools

Fixing SIP Problems with UC Manager's SIP Normalization Tools Fixing SIP Problems with UC Manager's SIP Normalization Tools Mark Stover Agenda Why have this session? Brief review of SIP When things don t work Overview of SIP Transparency and Normalization Overview

More information

Fixing SIP Problems with UC Manager & CUBE Normalization Tools

Fixing SIP Problems with UC Manager & CUBE Normalization Tools Fixing SIP Problems with UC Manager & CUBE Normalization Tools Mark Stover, CCIE #6901 Consulting Systems Engineer Agenda Introduction (Very) Brief Review of SIP When Things Don t Work Overview of SIP

More information

Fixing SIP Problems with UC Manager's SIP Normalization Tools

Fixing SIP Problems with UC Manager's SIP Normalization Tools Fixing SIP Problems with UC Manager's SIP Normalization Tools Mark Stover, CCIE #6901 Collaboration Consulting SE Why have this session? More systems than ever use SIP Last count was 107 Products on SIP

More information

Fixing SIP Problems with UC Manager's SIP Normalization Tools

Fixing SIP Problems with UC Manager's SIP Normalization Tools Fixing SIP Problems with UC Manager's SIP Normalization Tools Mark Stover Why have this session? More systems than ever use SIP I counted 103 SIP Products on SIP Wikipedia Page Google Search for SIP Server

More information

Figure 1: Incoming and Outgoing messages where SIP Profiles can be applied

Figure 1: Incoming and Outgoing messages where SIP Profiles can be applied Session Initiation Protocol (SIP) profiles change SIP incoming or outgoing messages so that interoperability between incompatible devices can be ensured. SIP profiles can be configured with rules to add,

More information

SIP Reliable Provisional Response on CUBE and CUCM Configuration Example

SIP Reliable Provisional Response on CUBE and CUCM Configuration Example SIP Reliable Provisional Response on CUBE and CUCM Configuration Example Document ID: 116086 Contributed by Robin Cai, Cisco TAC Engineer. May 16, 2013 Contents Introduction Prerequisites Requirements

More information

Figure 1: Incoming and Outgoing messages where SIP Profiles can be applied

Figure 1: Incoming and Outgoing messages where SIP Profiles can be applied Session Initiation Protocol (SIP) profiles change SIP incoming or outgoing messages so that interoperability between incompatible devices can be ensured. SIP profiles can be configured with rules to add,

More information

Domain-Based Routing Support on the Cisco UBE

Domain-Based Routing Support on the Cisco UBE First Published: June 15, 2011 Last Updated: July 22, 2011 The Domain-based routing feature provides support for matching an outbound dial peer based on the domain name or IP address provided in the request

More information

Mid-call Re-INVITE/UPDATE Consumption

Mid-call Re-INVITE/UPDATE Consumption The Mid-call Re-INVITE/UPDATE consumption feature helps consume unwanted mid-call Re-INVITEs/UPDATEs locally avoiding interoperability issues that may arise due to these Re-INVITES. Feature Information

More information

SIP Transparency. Supported Features CHAPTER

SIP Transparency. Supported Features CHAPTER CHAPTER 10 Cisco Unified Communications Manager (Unified CM) is a Back to Back User Agent (B2BUA). Therefore, any SIP to SIP call consists of 2 SIP dialogs. It is often useful to pass information from

More information

SIP Trunk design and deployment in Enterprise UC networks

SIP Trunk design and deployment in Enterprise UC networks SIP Trunk design and deployment in Enterprise UC networks Tony Mulchrone Technical Marketing Engineer Cisco Collaboration Technology Group Objectives of this session a) Provide a quick overview of SIP

More information

SIP Core SIP Technology Enhancements

SIP Core SIP Technology Enhancements SIP Core SIP Technology Enhancements This feature contains the following sections: Information About SIP Core SIP Technology Enhancements, page 104 Prerequisites for SIP Core SIP Technology Enhancements,

More information

Manipulating the Request or Response line. getrequestline() returns the method, request-uri, and version

Manipulating the Request or Response line. getrequestline() returns the method, request-uri, and version CHAPTER 3 SIP s APIs The Lua scripting environment provides a set of APIs that allows messages to be manipulated These APIs are explained under the following categories: Manipulating the Request or Response

More information

Application Notes for Configuring SIP Trunking between Cincinnati Bell Any Distance evantage and Avaya IP Office Issue 1.0

Application Notes for Configuring SIP Trunking between Cincinnati Bell Any Distance evantage and Avaya IP Office Issue 1.0 Avaya Solution & Interoperability Test Lab Application Notes for Configuring SIP Trunking between Cincinnati Bell Any Distance evantage and Avaya IP Office Issue 1.0 Abstract These Application Notes describe

More information

SIP Trunk design and deployment in Enterprise UC networks

SIP Trunk design and deployment in Enterprise UC networks SIP Trunk design and deployment in Enterprise UC networks BRKUCC-2006 Tony Mulchrone Technical Marketing Engineer Cisco Collaboration Technology Group Housekeeping We value your feedback- don't forget

More information

INTERFACE SPECIFICATION SIP Trunking. 8x8 SIP Trunking. Interface Specification. Version 2.0

INTERFACE SPECIFICATION SIP Trunking. 8x8 SIP Trunking. Interface Specification. Version 2.0 8x8 Interface Specification Version 2.0 Table of Contents Introduction....3 Feature Set....3 SIP Interface....3 Supported Standards....3 Supported SIP methods....4 Additional Supported SIP Headers...4

More information

SIP Trunk design and deployment in Enterprise UC networks

SIP Trunk design and deployment in Enterprise UC networks SIP Trunk design and deployment in Enterprise UC networks BRKUCC-2006 Tony Mulchrone Technical Marketing Engineer Cisco Collaboration Technology Group Housekeeping We value your feedback- don't forget

More information

Department of Computer Science. Burapha University 6 SIP (I)

Department of Computer Science. Burapha University 6 SIP (I) Burapha University ก Department of Computer Science 6 SIP (I) Functionalities of SIP Network elements that might be used in the SIP network Structure of Request and Response SIP messages Other important

More information

Cisco Unified Communications Manager Trunks

Cisco Unified Communications Manager Trunks CHAPTER 2 A trunk is a communications channel on Cisco Unified Communications Manager (Cisco Unified CM) that enables Cisco Unified CM to connect to other servers. Using one or more trunks, Cisco Unified

More information

Copying SIP Headers. Feature Information for Copying with SIP Profiles

Copying SIP Headers. Feature Information for Copying with SIP Profiles This feature shows you how outgoing SIP headers can be manipulated using information from incoming and other outgoing SIP headers. Feature Information for Copying with SIP Profiles, page 1 How to Copy

More information

Copying SIP Headers. Feature Information for Copying with SIP Profiles

Copying SIP Headers. Feature Information for Copying with SIP Profiles This feature shows you how outgoing SIP headers can be manipulated using information from incoming and other outgoing SIP headers. Feature Information for Copying with SIP Profiles, on page 1 How to Copy

More information

TSM350G Midterm Exam MY NAME IS March 12, 2007

TSM350G Midterm Exam MY NAME IS March 12, 2007 TSM350G Midterm Exam MY NAME IS March 12, 2007 PLEAE PUT ALL YOUR ANSWERS in a BLUE BOOK with YOUR NAME ON IT IF you are using more than one blue book, please put your name on ALL blue books 1 Attached

More information

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom without registration, with static routing.

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom without registration, with static routing. Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom without registration, with static routing Author: Peter Hecht Valid from: 1st January, 2019 Last modify:

More information

CCIE Collaboration.

CCIE Collaboration. CCIE Collaboration Cisco 400-051 Dumps Available Here at: /cisco-exam/400-051-dumps.html Enrolling now you will get access to 605 questions in a unique set of 400-051 dumps Question 1 Refer to the exhibit.

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Application Notes for Configuring SIP Trunking between Sotel IP Services SIP Edge Advanced SIP Trunking Solution and an Avaya IP Office Telephony Solution Issue

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Application Notes for Configuring SIP Trunking between Global Crossing Voice over IP services including VoIP On- Net Plus, VoIP Outbound, VoIP Local Service,

More information

Configuring SIP MWI Features

Configuring SIP MWI Features This module describes message-waiting indication (MWI) in a SIP-enabled network. Finding Feature Information, on page 1 Prerequisites for SIP MWI, on page 1 Restrictions for SIP MWI, on page 2 Information

More information

Chapter 3: IP Multimedia Subsystems and Application-Level Signaling

Chapter 3: IP Multimedia Subsystems and Application-Level Signaling Chapter 3: IP Multimedia Subsystems and Application-Level Signaling Jyh-Cheng Chen and Tao Zhang IP-Based Next-Generation Wireless Networks Published by John Wiley & Sons, Inc. January 2004 Outline 3.1

More information

Setting up Alcatel 4400 Digital PIMG Integration

Setting up Alcatel 4400 Digital PIMG Integration up Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection Up an Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection, on page 1 Up an Alcatel 4400 Digital PIMG Integration with

More information

Setting Up an Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection

Setting Up an Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection up Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection Up an Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection, page 1 Up an Alcatel 4400 Digital PIMG Integration with Cisco

More information

Setting Up a Mitel SX-2000 Digital PIMG Integration with Cisco Unity Connection

Setting Up a Mitel SX-2000 Digital PIMG Integration with Cisco Unity Connection Up a Mitel SX-2000 Digital PIMG Integration with Cisco Unity Connection Up a Mitel SX-2000 Digital PIMG Integration, page 1 Up a Mitel SX-2000 Digital PIMG Integration Task List for Mitel SX-2000 PIMG

More information

Application Scenario 1: Direct Call UA UA

Application Scenario 1: Direct Call UA UA Application Scenario 1: Direct Call UA UA Internet Alice Bob Call signaling Media streams 2009 Jörg Ott 1 tzi.org INVITE sip:bob@foo.bar.com Direct Call bar.com Note: Three-way handshake is performed only

More information

Voice over IP Consortium

Voice over IP Consortium Voice over IP Consortium Version 1.6 Last Updated: August 20, 2010 121 Technology Drive, Suite 2 University of New Hampshire Durham, NH 03824 Research Computing Center Phone: +1-603-862-0186 Fax: +1-603-862-4181

More information

Application Note 3Com VCX Connect with SIP Trunking - Configuration Guide

Application Note 3Com VCX Connect with SIP Trunking - Configuration Guide Application Note 3Com VCX Connect with SIP Trunking - Configuration Guide 28 May 2009 3Com VCX Connect Solution SIP Trunking Table of Contents 1 3COM VCX CONNECT AND INGATE... 1 1.1 SIP TRUNKING SUPPORT...

More information

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER CHAPTER 4 Revised: October 30, 2012, This chapter describes features that apply to all SIP system operations. It includes the following topics: SIP Timer Values, page 4-1 Limitations on Number of URLs,

More information

Cisco Unified Border Element Intercluster Lookup Service

Cisco Unified Border Element Intercluster Lookup Service Cisco Unified Border Element Intercluster Lookup Service The Cisco Unified Border Element (Cisco UBE) Intercluster Lookup Service feature enables Cisco Unified Communications Manager to establish calls

More information

Configuring Multi-Tenants on SIP Trunks

Configuring Multi-Tenants on SIP Trunks The feature allows specific global configurations for multiple tenants on SIP trunks that allow differentiated services for tenants. allows each tenant to have their own individual configurations. The

More information

SIP Compliance APPENDIX

SIP Compliance APPENDIX APPENDIX E This appendix describes Cisco SIP proxy server (Cisco SPS) compliance with the Internet Engineering Task Force (IETF) definition of Session Initiation Protocol (SIP) as described in the following

More information

Session Initiation Protocol (SIP) Overview

Session Initiation Protocol (SIP) Overview Session Initiation Protocol (SIP) Overview T-110.7100 Applications and Services in Internet 6.10.2009 Jouni Mäenpää NomadicLab, Ericsson Contents SIP introduction, history and functionality Key concepts

More information

SIP Profiles Feature Module

SIP Profiles Feature Module Document Release History Publication Date Comments December 2009 Updated the SIP Header Tables section on page 8. February 2009 Updated for the ISUP timer profile reference in a SIP profile. November 2008

More information

Session Initiation Protocol (SIP) Overview

Session Initiation Protocol (SIP) Overview Session Initiation Protocol (SIP) Overview T-110.7100 Applications and Services in Internet 5.10.2010 Jouni Mäenpää NomadicLab, Ericsson Research Contents SIP introduction, history and functionality Key

More information

Cisco Unified Border Element (CUBE) Integration Guide

Cisco Unified Border Element (CUBE) Integration Guide Cisco Unified Border Element (CUBE) Integration Guide Technical Documentation for integrating Cisco Unified Border Element with Blue Jeans Network 516 Clyde Avenue Mountain View, CA 94070 www.bluejeans.com

More information

SIP System Features. Differentiated Services Codepoint CHAPTER

SIP System Features. Differentiated Services Codepoint CHAPTER CHAPTER 6 Revised: December 30 2007, This chapter describes features that apply to all SIP system operations. It includes the following topics: Differentiated Services Codepoint section on page 6-1 Limitations

More information

Avaya IP Office 4.1 SIP Customer Configuration Guide For use with AT&T IP Flexible Reach. Issue th April 2008

Avaya IP Office 4.1 SIP Customer Configuration Guide For use with AT&T IP Flexible Reach. Issue th April 2008 Avaya IP Office 4.1 SIP Customer Configuration Guide For use with AT&T IP Flexible Reach Issue 3.0 4 th April 2008 trademark rights, and all such rights are reserved. Page 1 of 23 Table of contents 1 Introduction...

More information

Cisco Unified Border Element SIP Support Configuration Guide, Cisco IOS Release 15M&T

Cisco Unified Border Element SIP Support Configuration Guide, Cisco IOS Release 15M&T Cisco Unified Border Element SIP Support Configuration Guide, Cisco IOS Release 15M&T Last Modified: 2017-04-14 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA

More information

2015/04/13 11:41 1/22 UNIVERGE 3C

2015/04/13 11:41 1/22 UNIVERGE 3C 2015/04/13 11:41 1/22 UNIVERGE 3C UNIVERGE 3C Requirements DuVoice 5.20.040 or above. Dialogic HMP. UNIVERGE 3C version 8.5.3 or above. Features Name display change. Class of service change. Do not disturb

More information

Application Notes for IntelePeer CoreCloud SIP Trunking Service with Avaya IP Office Release Issue 1.0

Application Notes for IntelePeer CoreCloud SIP Trunking Service with Avaya IP Office Release Issue 1.0 Avaya Solution & Interoperability Test Lab Application Notes for IntelePeer CoreCloud SIP Trunking Service with Avaya IP Office Release 8.1 - Issue 1.0 Abstract These Application Notes describe the procedures

More information

Configuring SIP Registration Proxy on Cisco UBE

Configuring SIP Registration Proxy on Cisco UBE The Support for SIP Registration Proxy on Cisco UBE feature provides support for sending outbound registrations from Cisco Unified Border Element (UBE) based on incoming registrations. This feature enables

More information

Cisco TelePresence Integration Guide Documentation for integrating Cisco CTS/TX TelePresence Systems with BlueJeans

Cisco TelePresence Integration Guide Documentation for integrating Cisco CTS/TX TelePresence Systems with BlueJeans Cisco TelePresence Integration Guide Documentation for integrating Cisco CTS/TX TelePresence Systems with BlueJeans Last Updated: April 2018 5 1 6 C l y d e A v e n u e M o u n t a i n V i e w, C A 9 4

More information

Compliance with RFC 3261

Compliance with RFC 3261 APPENDIX A Compliance with RFC 3261 This appendix describes how the Cisco Unified IP Phone 7960G and 7940G complies with the IETF definition of SIP as described in RFC 3261. It contains compliance information

More information

Signaling trace on GSM/CDMA VoIP Gateway

Signaling trace on GSM/CDMA VoIP Gateway Signaling trace on GSM/CDMA VoIP Gateway Part1. Login the gateway & General Knowledge the command This is a document for some customers who need to get the logs on gateway Tips: The document is fit for

More information

2018/05/18 23:05 1/2 UNIVERGE 3C

2018/05/18 23:05 1/2 UNIVERGE 3C 2018/05/18 23:05 1/2 UNIVERGE 3C Table of Contents UNIVERGE 3C... 1 Requirements... 1 Features... 1 PBX Configuration Part One... 1 Active Directory... 1 Web Services User... 1 SIP User Agents... 4 Class

More information

Session Initiation Protocol (SIP)

Session Initiation Protocol (SIP) Session Initiation Protocol (SIP) Introduction A powerful alternative to H.323 More flexible, simpler Easier to implement Advanced features Better suited to the support of intelligent user devices A part

More information

Matching Inbound Dial Peers by URI

Matching Inbound Dial Peers by URI The feature allows you to configure selection of inbound dial peers by matching parts of the URI sent by remote (neighboring) SIP entity. The match can be done on different parts of the URI like hostname,

More information

Configuring an Error Response Code upon an Out-of-Dialog OPTIONS Ping Failure

Configuring an Error Response Code upon an Out-of-Dialog OPTIONS Ping Failure Configuring an Error Response Code upon an Out-of-Dialog OPTIONS Ping Failure Cisco Unified Border Element (Cisco UBE) provides an option to configure the error response code when a dial peer is busied

More information

Application Notes for Configuring SIP Trunking between Bandwidth.com SIP Trunking Solution and an Avaya IP Office Telephony Solution Issue 1.

Application Notes for Configuring SIP Trunking between Bandwidth.com SIP Trunking Solution and an Avaya IP Office Telephony Solution Issue 1. Avaya Solution & Interoperability Test Lab Application Notes for Configuring SIP Trunking between Bandwidth.com SIP Trunking Solution and an Avaya IP Office Telephony Solution Issue 1.0 Abstract These

More information

Troubleshooting Cisco Unity Connection

Troubleshooting Cisco Unity Connection Troubleshooting Cisco Unity Connection Bryan Shapess 2 Agenda Troubleshooting Methodology Troubleshooting Tools CUC Traces Case Studies Message Waiting Indicator Visual Voicemail Single Inbox Message Delivery

More information

Common Components. Cisco Unified Border Element (SP Edition) Configuration Profile Examples 5 OL

Common Components. Cisco Unified Border Element (SP Edition) Configuration Profile Examples 5 OL The following components of the Cisco Unified Border Element are common to all of the configuration profile examples in this document. Secure Media Adjacencies Call Policies CAC Policies SIP Profiles 5

More information

Setting Up an Avaya Definity ProLogix Digital PIMG Integration with Cisco Unity Connection

Setting Up an Avaya Definity ProLogix Digital PIMG Integration with Cisco Unity Connection CHAPTER 4 Setting Up an Avaya Definity ProLogix Digital PIMG Integration with Cisco Unity Connection For detailed instructions for setting up an Avaya Definity ProLogix digital PIMG integration with Cisco

More information

BRKCOC-2399 Inside Cisco IT: Integrating Spark with existing large deployments

BRKCOC-2399 Inside Cisco IT: Integrating Spark with existing large deployments Inside Cisco IT: Integrating Spark with existing large deployments Jan Seynaeve, Sr. Collaborations Engineer Luke Clifford, Sr. Collaborations Engineer Cisco Spark How Questions? Use Cisco Spark to communicate

More information

Overview of SIP. Information About SIP. SIP Capabilities. This chapter provides an overview of the Session Initiation Protocol (SIP).

Overview of SIP. Information About SIP. SIP Capabilities. This chapter provides an overview of the Session Initiation Protocol (SIP). This chapter provides an overview of the Session Initiation Protocol (SIP). Information About SIP, page 1 How SIP Works, page 4 How SIP Works with a Proxy Server, page 5 How SIP Works with a Redirect Server,

More information

Rev CUCM Mobility. c cnac o okbook.com

Rev CUCM Mobility. c cnac o okbook.com Rev. 20170424.065954 12. CUCM Mobility c cnac o okbook.com C U C M M O B I L I T Y F E A T U R E S Mobile Connect (AKA Single Number Reach) All devices configured for mobile connect ring at the same time.

More information

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER CHAPTER 4 Revised: March 24, 2011, This chapter describes features that apply to all SIP system operations. It includes the following topics: SIP Timer Values, page 4-1 SIP Session Timers, page 4-7 Limitations

More information

MITEL SIP CoE Technical. Configuration Note. Configure Mitel MiVoice Office 6.1 SP1 PR2 for use with IntelePeer SIP Trunking. SIP CoE XXX

MITEL SIP CoE Technical. Configuration Note. Configure Mitel MiVoice Office 6.1 SP1 PR2 for use with IntelePeer SIP Trunking. SIP CoE XXX MITEL SIP CoE Technical Configuration Note Configure Mitel MiVoice Office 6.1 SP1 PR2 for use with IntelePeer SIP Trunking SIP CoE 12-4940-00XXX NOTICE The information contained in this document is believed

More information

Contents XO COMMUNICATIONS CONFIDENTIAL 1

Contents XO COMMUNICATIONS CONFIDENTIAL 1 www.xo.com XO SIP Service Customer Configuration Guide for Cisco Unified Communications Manager (CUCM) 8.0.3 XO SIP Packages 1 and 2, implemented without Cisco Unified Border Control Element (CUBE) SIP

More information

SIP profile setup. About SIP profile setup. SIP profile reset. SIP profile deletion

SIP profile setup. About SIP profile setup. SIP profile reset. SIP profile deletion SIP profile setup This chapter provides information to configure and locate SIP profiles. A SIP profile comprises the set of SIP attributes that are associated with SIP trunks and SIP endpoints. SIP profiles

More information

Deploy Webex Video Mesh

Deploy Webex Video Mesh Video Mesh Deployment Task Flow, on page 1 Install Webex Video Mesh Node Software, on page 2 Log in to the Webex Video Mesh Node Console, on page 4 Set the Network Configuration of the Webex Video Mesh

More information

Extensions to Session Initiation Protocol (SIP) and Peer-to-Peer SIP

Extensions to Session Initiation Protocol (SIP) and Peer-to-Peer SIP Extensions to Session Initiation Protocol (SIP) and Peer-to-Peer SIP T-110.7100 Applications and Services in Internet 1.10.2008 Jouni Mäenpää NomadicLab, Ericsson Contents Extending SIP SIP extension negotiation

More information

CUCM 10.5 / CUBE 9.5. BT SIP Trunk Configuration Guide. 1 BT SIP Trunk Configuration Guide

CUCM 10.5 / CUBE 9.5. BT SIP Trunk Configuration Guide. 1 BT SIP Trunk Configuration Guide 1 BT SIP Trunk Configuration Guide CUCM 10.5 / CUBE 9.5 BT SIP Trunk Configuration Guide This document covers service specific configuration required for interoperability with the BT SIP Trunk service.

More information

Voice over IP (VoIP)

Voice over IP (VoIP) Voice over IP (VoIP) David Wang, Ph.D. UT Arlington 1 Purposes of this Lecture To present an overview of Voice over IP To use VoIP as an example To review what we have learned so far To use what we have

More information

Cisco Unified CM SIP Trunking, Session Management, and Global Dial Plan Replication

Cisco Unified CM SIP Trunking, Session Management, and Global Dial Plan Replication LTRUCC-2150 Cisco Unified CM SIP Trunking, Session Management, and Global Dial Plan Replication Paul Giralt - @PaulGiralt Markus Schneider - @Markus73 Agenda Objectives Technology Overview Unified CM Session

More information

Cisco Expressway Session Classification

Cisco Expressway Session Classification Cisco Expressway Session Classification Deployment Guide First Published: December 2016 Last Updated: December 2017 Expressway X8.10 Cisco Systems, Inc. www.cisco.com 2 Preface Preface Change History Table

More information

SIP Tutorial. Leonid Consulting V1.4. Copyright Leonid Consulting, LLC (2007) All rights reserved.

SIP Tutorial. Leonid Consulting V1.4. Copyright Leonid Consulting, LLC (2007) All rights reserved. SIP Tutorial Leonid Consulting V1.4 Contents Contents... 2 Tables and Diagrams... 3 Introduction... 4 SIP... 5 A Brief Introduction... 5 What is SIP?... 5 Who maintains SIP?... 5 What are the elements

More information

Configure Jabber Extend and Connect and Modify Calling Party Display

Configure Jabber Extend and Connect and Modify Calling Party Display Configure Jabber Extend and Connect and Modify Calling Party Display Contents Introduction Prerequisites Requirements Components Used Configure Network Diagram Troubleshooting example Introduction This

More information

Setup for Cisco Unified Communications Manager

Setup for Cisco Unified Communications Manager Setup for Cisco Unified Communications Manager This chapter describes how you can set up Cisco Jabber for ipad using Cisco Unified Communications Manager. System and Network Requirements, page 1 Recommended

More information

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom.

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom. Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom Author: Peter Hecht Valid from: September, 2015 Version: 70 1 Use of the service Service Business Trunk is

More information

Application Notes for Configuring Avaya IP Office 8.1 with Etisalat SIP Trunk service Issue 1.0

Application Notes for Configuring Avaya IP Office 8.1 with Etisalat SIP Trunk service Issue 1.0 Avaya Solution & Interoperability Test Lab Application Notes for Configuring Avaya IP Office 8.1 with Etisalat SIP Trunk service Issue 1.0 Abstract These Application Notes describe the procedures for configuring

More information

Application Notes for Windstream SIP Trunking Service using Broadsoft Platform with Avaya IP Office Issue 1.0

Application Notes for Windstream SIP Trunking Service using Broadsoft Platform with Avaya IP Office Issue 1.0 Avaya Solution & Interoperability Test Lab Application Notes for Windstream SIP Trunking Service using Broadsoft Platform with Avaya IP Office 8.1 - Issue 1.0 Abstract These Application Notes describe

More information

GSM VoIP Gateway Series

GSM VoIP Gateway Series VoIP Gateway Series SIP Protocol Debugging Service Overview www.addpac.com AddPac Technology Sales and Marketing Contents? Network Diagram for SIP Debugging? SIP Debugging Access Method via Console Port?

More information

ICE / TURN / STUN Tutorial

ICE / TURN / STUN Tutorial BRKCOL-2986 ICE / TURN / STUN Tutorial Kristof Van Coillie, Technical Leader, Services Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session

More information

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom with registration of pilot account.

Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom with registration of pilot account. Technical specifications for connecting SIP PBX to the Business Trunk service by Slovak Telekom with registration of pilot account Author: Peter Hecht Valid from: 1st January, 2019 Last modify: 29th december,

More information

Transparent Tunneling of QSIG and Q.931 over SIP TDM Gateway and SIP-SIP Cisco Unified Border Element

Transparent Tunneling of QSIG and Q.931 over SIP TDM Gateway and SIP-SIP Cisco Unified Border Element Transparent Tunneling of QSIG and Q.931 over SIP TDM Gateway and SIP-SIP Cisco Unified Border Element Transparent Tunneling of QSIG and Q.931 over Session Initiation Protocol (SIP) Time-Division Multiplexing

More information

Multimedia networking: outline

Multimedia networking: outline Multimedia networking: outline 9.1 multimedia networking applications 9.2 streaming stored video 9.3 voice-over-ip 9.4 protocols for real-time conversational applications: SIP Skip RTP, RTCP 9.5 network

More information

Internet Protocol Version 6 (IPv6)

Internet Protocol Version 6 (IPv6) This chapter provides information about Internet Protocol version 6 (IPv6), which is the latest version of the Internet Protocol (IP). Packets are used to exchange data, voice, and video traffic over dual-stack

More information

How to set FAX on asterisk

How to set FAX on asterisk How to set FAX on asterisk Address: 10/F, Building 6-A, Baoneng Science and Technology Industrial Park, Longhua New District, Shenzhen, Guangdong,China 518109 Tel: +86-755-82535461, 82535095, 82535362

More information

N-Squared Software SIP Specialized Resource Platform SIP-SDP-RTP Protocol Conformance Statement. Version 2.3

N-Squared Software SIP Specialized Resource Platform SIP-SDP-RTP Protocol Conformance Statement. Version 2.3 N-Squared Software SIP Specialized Resource Platform SIP-SDP-RTP Protocol Conformance Statement Version 2.3 1 Document Information 1.1 Scope and Purpose This document describes the implementation of the

More information

SIP Trunking & Peering Operation Guide

SIP Trunking & Peering Operation Guide SIP Trunking & Peering Operation Guide For OfficeServ v2.3.0 SIP Trunking & Peering Operation Guide For Samsung OfficeServ Oct 5, 2010 doc v2.4.0 Sungwoo Lee Senior Engineer sungwoo1769.lee@samsung.com

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Application Notes for Configuring SIP Trunking between the PAETEC Broadsoft based SIP Trunking Solution and an Avaya IP Office Telephony Solution Issue 1.0 Abstract

More information

Configuring SIP Call-Transfer Features

Configuring SIP Call-Transfer Features Configuring SIP Call-Transfer Features Configuring SIP Call-Transfer Features Last Updated: May 05, 2011 This chapter describes how to configure SIP call-transfer features. It describes the following features:

More information

Call Park and Directed Call Park

Call Park and Directed Call Park Call Park Overview Call Park Overview, on page 1 Call Park Prerequisites, on page 2 Call Park Configuration Task Flow, on page 2 Call Park Interactions and Restrictions, on page 17 Troubleshooting Call

More information

SIPPING Working Group A. Johnston, Ed. Internet-Draft Avaya Intended status: BCP R. Sparks Expires: January 12, 2009 Estacado Systems C. Cunningham S.

SIPPING Working Group A. Johnston, Ed. Internet-Draft Avaya Intended status: BCP R. Sparks Expires: January 12, 2009 Estacado Systems C. Cunningham S. SIPPING Working Group A. Johnston, Ed. Internet-Draft Avaya Intended status: BCP R. Sparks Expires: January 12, 2009 Estacado Systems C. Cunningham S. Donovan Cisco Systems K. Summers Sonus July 11, Status

More information

Understanding SIP exchanges by experimentation

Understanding SIP exchanges by experimentation Understanding SIP exchanges by experimentation Emin Gabrielyan 2007-04-10 Switzernet Sàrl We analyze a few simple scenarios of SIP message exchanges for a call setup between two SIP phones. We use an SIP

More information

Cisco Expressway Options with Cisco Meeting Server and/or Microsoft Infrastructure

Cisco Expressway Options with Cisco Meeting Server and/or Microsoft Infrastructure Cisco Expressway Options with Cisco Meeting Server and/or Microsoft Infrastructure Deployment Guide First Published: December 2016 Last Updated: October 2017 Expressway X8.9.2 Cisco Systems, Inc. www.cisco.com

More information

Cisco Unified CME Commands: M

Cisco Unified CME Commands: M Cisco Unified CME Commands: M mac-address (ephone), page 3 mac-address (voice-gateway), page 5 mailbox-selection (dial-peer), page 7 mailbox-selection (ephone-dn), page 9 max-calls-per-button, page 11

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Configuring SIP trunks between Avaya Aura Session Manager Release 6.2, Avaya Meeting Exchange Enterprise Edition Release 6.2 and Cisco Unified Communications

More information

SIP Protocol Debugging Service

SIP Protocol Debugging Service VoIP Gateway Series SIP Protocol Debugging Service Overview www.addpac.com AddPac Technology 2011, Sales and Marketing Contents Network Diagram for SIP Debugging SIP Debugging Access Method via Console

More information

Services Extended Media Forking

Services Extended Media Forking Cisco Unified Communications Gateway Services--Extended Media Forking The Cisco Unified Communications (UC) Services API provides a unified web service interface for the different services in IOS gateway

More information

TSIN02 - Internetworking

TSIN02 - Internetworking Lecture 8: SIP and H323 Litterature: 2004 Image Coding Group, Linköpings Universitet Lecture 8: SIP and H323 Goals: After this lecture you should Understand the basics of SIP and it's architecture Understand

More information

Call Forwarding. Call Forwarding Overview

Call Forwarding. Call Forwarding Overview Overview, page 1 Configuration Task Flow, page 3 Interactions and Restrictions, page 12 Overview As a user, you can configure a Cisco Unified IP Phone to forward calls to another phone. The following call

More information

Cisco Unified Communications Gateway Services--Extended Media Forking

Cisco Unified Communications Gateway Services--Extended Media Forking Cisco Unified Communications Gateway Services--Extended Media Forking The Cisco Unified Communications (UC) Services API provides a unified web service interface for the different services in IOS gateway

More information