Friday, February 21, 2014

A Mini-Adventure Using Expect to Query Voice Gateway Configurations

Many moons ago, I started a series on the NetCraftsmen blog site covering various "tools" in my UC toolkit . I never did finish that series out and I may pick it back up and carry it forward. I still get asked about it from time to time and a recent query got me thinking about some of the more useful tools in my toolkit: scripting/programming languages.

I don't want to get into the pros/cons of specific languages here. There are just too many options available and I am not fool enough to consider myself an expert on the nuances between programming languages or development environments. I'll leave that to those who live and breath this stuff.

What I want to do with this entry is emphasize the fact that the greatest tool you can add to your toolkit is "ingenuity". Sometimes you need to go outside of the box and create a solution to your problem rather than waiting for Cisco or some other vendor to solve your problem with a bit of software. 

Personally, if I can't find a way to automate a task using existing tools I wonder if I can build it myself. That doesn't always work (trust me) but it works more often than not and I find the process to be a lot of fun. Then again, I am a bit of a nerd and what I find fun usually isn't by most standards. That's cool, too.

Tuesday, February 18, 2014

Dealing with Provisional Response and SIP 183 Messages with SDP

A month or so ago, I was deploying a solution integrating SIP trunks from a CLEC with Cisco Unified Communications Manager (CUCM) and Cisco Unified Border Element (CUBE). While running through the ol' validation routine, I came across an issue with SIP provisional response. Normally, we wouldn't have hit this problem because of the way we provision SIP trunks. However, this time around the integration guide for the ITSP had a configuration requirement that hindered our ability to support provisional acknowledgements.

The interesting thing about this particular issue is that if you weren't looking for it, you probably wouldn't catch it. Normal call setup was working fine. But when you called certain numbers you would receive ringing when you are expecting the call to be treated with an IVR.

There are a couple of ways of dealing with provisional SIP responses. The following covers some of the techniques I tested/used.

Wednesday, February 5, 2014

Cisco TelePresence Endpoints and IP Address Dialing with CUCM

Cisco has been steering customers and partners to centralize all call processing on the Cisco Unified Communications Manager (CUCM). This includes video or we can call it telepresence, if you prefer. For deployments where the Cisco Video Communications Server (VCS) is in play with CUCM, Cisco has some general design guidance that is slanted to registering Cisco telepresence endpoints on the CUCM. The VCS being relegated to legacy endpoint registration, protocol interworking, and facilitating firewall traversal.

This is all well and good but there are gaps. One of those gaps is supporting the ability to dial an H.323 party by IP address. Dialing by IP address refers to the ability of an endpoint to set up a video session with a remote party by simply using the IP address. This method is natively supported by H.323 devices. SIP devices use a URI format for "dialing". While SIP URIs can certainly use an IP address as the suffix, that is not the focus here.