Archive for the ‘Tips & Tricks’ Category

VMWare ESX and Openfiler – 95% shutdown

Informational, Tips & Tricks | Posted by admin
Jul 30 2010

Well this one certainly caused me some heartache. I’m posting it here in hopes that it helps someone else.
I don’t remember when exactly it started or why, but I noticed that when I tried to shut down my virtual machines, they would lock up. I could not tell what was wrong with them and if I tried to use VM -> Power -> Off they would get to 95% and then lock up.
I would end up having to reboot the VMWare server to get them back online.
While doing some VM upgrading, this was happening a lot. It got frustrating enough for me to start seriously trying to figure out the problem.
Reviewing the VMWare server logs showed a lot of “Sync CR” messages in the log. These indicate reservation conflicts for SCSI control in VMWare.
It seemed that for some reason, my problem was not VMWare, but the iSCSI initiator on Openfiler.
For me this issue was resolved by restarting the iSCSI initiator service like this:
/etc/init.d/open-iscsi restart

This should be a last resort though, since, without properly shutting down your VMs, it WILL seriously anger the VMWare server and probably screw up any virtual machines running on the iSCSI drive.

Inactive PC Port on Cisco 524SG Phones

Informational, Tips & Tricks | Posted by admin
Oct 20 2009

Some of the older UC520 systems were shipped with other firmware versions for the 521 and 524 phones.  It seems there are a number of feature upgrades with the newer firmwares.  One of which is the ability to enable the switch port on a 524SG model phone.

You should load at least 8.1.13 or higher firmware on the system.

Don’t forget to setup the tftp-server and load commands so that your phone updates.

SIP Early Media and ISDN in Communications Manager 6 and 7

Informational, Tips & Tricks | Posted by admin
Oct 16 2009

There are several ways to configure a gateway for use in Cisco’s Unified Communications Manager. MGCP, H.323, SIP. Each has it’s own benefits and drawbacks.
Here are some of the big issues for me :

  • Call Preservation – When network connectivity to the system goes down, it would be nice if all active calls didn’t drop
  • Centralized Management – Being able to configure everything from one place and not have to duplicate settings on a per device basis
  • Distributed Call Management – Calls routed optimally while maintaining a reasonably small configuration that can scale well

I know there are other issues here, but these were the important ones for me.  MGCP provides the centralized management, but not the other features.  Most importantly Call Preservation.  This is why I rarely use MGCP for VoIP deployments.

To configure a SIP gateway for a Cisco Unified Communications Manager there are two steps.

  1. Configure the Gateway
  2. Configure the Communications Manager

Configuring the Gateway

This part is fairly easy.  Here I’m assuming that you already have your PRI configured.

voice rtp send-recv
!
dial-peer voice 1000000 voip
incoming called-number .
dtmf-relay rtp-nte
!
dial-peer voice 9000100 pots
 destination-pattern [2-9]……
 no digit-strip
 port 0/0/0:23
dial-peer voice 9000200 pots
 destination-pattern 1[2-9]..[2-9]……
 no digit-strip
 port 0/0/0:23

You could have more dial-peers, but this is enough to get started.

Configuring the Communications Manager

Go to the Device -> Trunk menu.

Click on the Add New button

Select SIP Trunk as the type and click the Next button.

There are a few fields here that need to have information in them:

  • Device Name – This can be anything, but should be descriptive
  • Device Pool – Appropriate device pool for your deployment
  • Location – Again use the appropriate location in your system
  • SIP Trunk Security Profile – Default should be fine unless you have some special requirements
  • SIP Profile – Again, Default should be fine for most users.

There are two other settings here to be aware of:

Media Termination Point Required

This should be unchecked.  While some SIP gateways may require this, it’s my experience that it causes more headaches than anything else.  It also causes all outbound calls to consume an MTP resource or Transcoder in some configurations.

DTMF Signaling Method

You might be wondering why DTMF signaling makes any difference… here’s why:  On a Cisco Unified Communications Manager even if you have MTP requirements disabled, if the DTMF relay types do not match (or are not compatible) the trunk will dynamically allocate an MTP resource which will act as a DTMF translator converting one method to another.  For maximum compatibility use : RFC 2833.  You’ll see that the gateway configuration above uses RFC 2833 for it’s DTMF relay with the following command : dtmf-relay rtp-nte

The Problem with this is…

Now that our system is configured, we can make calls out.  You’ll find that everything seems to work fine.  There are a few cases however where it will not.  An example of this is when the telco sends an announcement message prior to connecting the call.  A few common uses of this method are prompts for account codes, incorrect dialing messages, etc.

SIP Trunks on Cisco’s Communications Managers create ringback locally and wait for the ISDN Connect message before actually connecting the IP media stream.  So if you receive a message from your telco before their switch sends you the Connect message, you will only continue to hear ringback on the phone until the telco terminates the connection.

An easy way to fix this is to require that all calls use a Media Termination Point.  I pointed out above that I don’t recommend this.  It drives cost up, makes troubleshooting more difficult and can cause issues with faxing.

The better way to fix this is simple, but I’m going to go into a little background explaining the why.

Whenever your telco sends an announcement message, they will flag the Progress Indicator of the Q.931 message with an 8 (Usually.  Some telcos may do this a little differently)  Your Cisco gateway will take this indicator and generate a SIP 183 Session Progress message which contains an SDP with connection parameters.  This tells the Communications Manager that there is possibly some in-band data that the user may be interested in.  The problem is that the Communications Manager will ignore this and continue to play the ringback tone instead of letting you hear the message.

To allow the Communications Manager to react to the 183 messages go into System -> Service Parameters, select your server then select the CallManager service.  Scroll down and find the Clusterwide Parameters (Device – SIP) section.  Find the SIP Rel1XX Enabled parameter and set it to True.  This parameter tells the Communications Manager to send ACK packets back in response to any 100 series SIP message received.  The IOS command above, voice rtp send-recv, is used to connect the media path in both directions instead of just a single direction.

That’s it!  Press the Save button and you’re done.  Now when the system is signalled from the ISDN network it will properly cut through the media path and your users will hear any possible announcement messages.

.wav File Mailbox Delivery in Unity Connection

Tips & Tricks | Posted by admin
Aug 12 2009

Since I’ve had several requests for more information on this, I thought I’d get back into my blogging by addressing this topic.
There are 2 ways to get this functionality. And I believe there are Pros and Cons to each approach. Both methods require that you have licensing on the system for IMAP access.

For Either Method :
First, create a new Class of Service in Unity Connection. Duplicate your default settings. Under ‘Licensed Features’ check ‘Allow Users to Access Voice Mail Using an IMAP Client’ and select ‘Allow Users to Access Message Bodies’.
Save the Class of Service. If you have sufficient licensing, you can just change the default Class of Service and skip the next step.
Next you will need to select which users will have this feature by selecting their Alias under Users and
changing ‘Class of Service’ to whatever you named the class you just created.
At this point you may need to change the Web Application password for the user account. Or at least set the password not to require changing at login. This is the password that will be used to access the server.

Method 1 : Configuring another account on the mail client
This is probably the easier of the two options to implement. But with multiple users it can also be the most time consuming.
Simple change the settings on the users email client.
Create a new account with the following settings :
Type : IMAP
Server : UnityConnectionIP
User Name : (Unity Alias)
Password : (Unity Alias Password)
Then you will probably want to configure rules that copy the incoming messges to the users inbox.
Copying is important since if you move it, the voicemail will be removed from the users phone as well.

Method 2: Forwarding voicemails to the primary mail server
This method is a little more difficult and requires an extra server. As it is more in-depth I’ll address it in my next post.

Don’t forget the ATA186

Tips & Tricks | Posted by admin
Jun 08 2009

A big drawback to the previous post is that ATAs cannot be used for fax machines. The reason for this is because the gateway, when sensing a fax tone, immediately moves into T.38 mode. The ATA is unable to handle T.38 and so tries to continue in g.711 mode. Since these two are incompatible, the call will fail.

However, even Cisco recommends that a fax machine be connected to a VG224/VG248 or FXS card connected to a router.  These devices support more than just straight passthrough for fax machines.

T.38 Fax Relay with Callmanager 4.1

Tips & Tricks | Posted by admin
Jun 02 2009

Fax issues are the bane of my existance.  It never ceases to amaze me how difficult it can be to get them to work sometimes.

A brief history of fax machines :

Years ago, the ancients developed a technology for sending images across standard telephone lines. Man called it Fax.  Somewhere around the time man discovered fire, this technology was found to be obsolete.  But for some reason continued to use it.  Even with newer high-speed data connections capable of transmitting color images of much greater detail at speeds thousands of times faster with less error, there are some that cling to the fax technology like a floating piece of wood in piranha infested waters.  The log won’t save them from the piranha, but they cling to it anyway.

If, for some unholy reason, you must use faxes on a VoIP network.  Fax relay is the way to go.

The problem is that it’s not 100% compatible with callmanager 4 and 5.  Cisco got this fixed with version 6 and above.

In order to make fax relay work properly on MGCP controlled voice gateways, the following command should appear in the config:

mgcp fax t38 gateway force

This command will cause the gateways to negotiate the fax-relay themselves rather than rely on the call processing system (callmanager).

If you need to do the same thing with H.323or SIP the command is

voice service voip
 fax protocol t38 nse force

VG224 Voltage Levels

Tips & Tricks | Posted by admin
Jun 01 2009

And just like that… it’s 2 weeks have passed.  I can’t believe how much I’ve had to do at home and work.  I really mean to keep this updated daily, but somehow things just make their way on top of the priority list.

This last week we were having issues with some VG224s interoperating with fax machines.  One technician noted that the line voltage was only 38 volts.  Many fax machines, particularly the older ones, and other devices do not work properly or at all with voltages as low as 38.

The fix for this is simple, the following command placed under the voice-port configuration will increase the idle voltage of the VG224 port to a more acceptable level.

alt-battery-feed feed2

Cisco Unity Connection .wav file delivery

Third-Party Software, Tips & Tricks | Posted by admin
Apr 27 2009

Recently I was asked by a customer to deliver .wav files to the inbox of their mail server from a Unity Connection server.  Well, by asked I mean that the salesperson promised it to them and I had to find a way to deliver it.

I came up with an idea to do this… it didn’t work.  But the idea was sound, it just needed a little tuning to make it work right.

I used a Linux server with PHP and Postfix to make all the magic work.  It also helped that none of the customers used Unity Connection’s web client.

I created aliases on the Postfix server redirecting users to a custom script.  The script then logs into the Unity Connection system and retrieves the .wav file and retransmits it as a new message to a specified email address.

I’m still polishing it up a bit, but it’s fully functional and delivering .wav files to our inboxes as expected.  When I get it to a more flexible format I’ll release it on this site.  For now, if you are interested and don’t mind a ‘beta’ version of the software, let me know and I can provide you with a copy and instructions for use.

Command Line? on a CE-500

Tips & Tricks | Posted by admin
Apr 08 2009

I was recently told about a method to gain command line access to a CE-500.  Since I much prefer the command line to the GUI interfaces, I was thrilled.  After investigating however, I found that the “command line” was actually a web based frontend to the cli.  In my opinion, it’s better than the GUI, but I would prefer a telnet/ssh connection.

To get to the web command line interface go to :

http://switch-address/exec/