US Robotics Modem Configuration for CS1000

So my favourite way to connect to a CS1000 for maintenance programming is with a modem. This quick and easy method requires very little effort to connect. Unfortunately a modem will not work with the CS1000 out of the box. There is a bit of programming that needs to be done.

A standard external US Robotics modem comes with a power supply and a line cord. A DB25 cable will be required. For an Option 11 system a null modem will also be needed. It's always a good idea to head to the phone room with a handful of cables and adapters. Check to make sure the TTY is enabled and working. I usually hook up with my laptop to the TTY first to check connectivity and then proceed with hooking up the modem afterwards.

Programming the modem is straightforward and only takes a couple of minutes. Unbox the modem and check the dip switches first. You need to set it so that 1, 3, and 7, are down and the rest are up. Connect the modem to your PC using a serial cable and power it on. Using your favourite terminal program (I usually use Procomm for this but Putty would also work) set to 9600/N/8/1 check to see that the modem is responding. Enter AT and press enter, the modem should respond with OK. If you don't see OK try throwing a null modem adapter in the mix and test again. Once you have a response from the modem you can enter the configuration command:

AT&B1&N6&W&W1

The modem should once again respond with OK. Once this is done power down the modem and change the DIP switch settings again. At this point you need to have 1 and 4 down, the rest up. Plug the modem into the TTY port and test. The modem should answer. If you don't see and output on the TTY then you may need to either add or remove a null modem to get everything working. 

Upgrade: File Access Error

I am in the middle of programming up an IP Office and I came across an issue with the phones. I plugged a phone in and I received the following message:

Upgrade: File Access Error

I did some digging and found the solution. I decided to share it here.

This issue comes from the fact that the phone is not able to get the firmware from the system or wherever it is configured to go for the update. In my case I had configured the IP Office to retrieve its firmware from Manager, however I had the wrong IP Address in Manager. Basically what happened is the phone went looking for the firmware and couldn't retrieve it from the identified location. The solution is quite easy. In my case I just changed the Phone File Server Type to Memory Card. The other options would be to configure the Manager PC IP Address to reflect the location of the correct version of Manager (Making sure the IP Office can reach that PC), or to change the type to Custom and specify the IP Address of the server that contains your BIN files.

Hopefully this helps!

IP Office BCM CS1000 Integration with NRS

I recently had to network some BCMs, and IP Office 8.1, and a CS1000 together for four-digit dialing. I figure I will share some of my knowledge here. With the release of IP Office 9.0 a Session Manager is required which greatly simplifies the implementation, as long as you know how to route calls using Session Manager.

For the purpose of this article I'm going to assume that everyone knows the basics of how to build a SIP trunk on all three platforms. I will also assume that the appropriate licenses have been purchased and that the BCM is SIP capable.

Let's start with the CS1000. The NRS needs to be configured You will need to create endpoints for the BCMs and IP Offices, as well as any CS1000 locations that you have. The IP Office and BCM endpoints must be configured as static SIP endpoints.Routing entries need to be created for each endpoint to correspond with your dialing plan. It may seem obvious, but you need to build SIP trunks and routes from the CS1000. Once you have finished with this you are done with the easy part.

The BCM configuration is also quite easy. Build your SIP trunks on the BCM. Configure your SIP domain and enable RTP keepalives. Calls will be routed on the Private network, so navigate to the Private tab under SIP Trunking. Ensure that your URI map matches the URI Map on your node:

Next you need to configure your routing table. For any BCM or CS1000 endpoint you need to enter the destination digits and direct it to the NRS IP. I also selected MCDN Protocol CSE. Ensure that the port number matches up with what the CS1000 is expecting. For each IP Office configure the destination digits per your dialing plan and use the IP address of the IP Office.

And now on to the fun piece. Configuring the IP Office is the most time consuming part of the whole setup. You need to configure three items: SIP Lines, Incoming Call Routes, and Short Codes.
For your SIP Lines you need a connection to each networked system. For simplicity I chose to use the same incoming call route, however the Line Group ID needs to be different for each site. In my example I used SIP Lines 17-20. All my Incoming Call Groups were 17, however I matched up the Line Group ID with the line number. Since these are IP trunks you can configure them however you like as long as they don't interfere with any other lines in the system. For the SIP line to the CS1000 use the Node IP address. For the BCM SIP Lines use the IP address of each individual BCM. Configure each SIP line with the maximum number of calls equal to the maximum number of SIP Line licenses in the system. This way each site is capable of having the maximum number of VoIP calls, as long as no other licenses are in use.
If you used the same incoming call route for each SIP trunk you only need to create a single incoming call route for IP calls. For the destination use a period (.) to have the call sent to whichever digits are being sent from the far end.
In order to make outgoing calls work you need to create short codes on the system to match the dialing plan. In my case we had four-digit dialing with each site having a unique first digit. This made it easy, I configured a short code for each first digit (i.e. 1XXX, 2XXX, 3XXX, etc.). Each short code was configured as Dial 3K1 using the appropriate line group for the far end site. The BCMs will not understand the standard dial string sent by the IP Office so you need to configure the phone context in the telephone number. In my example I showed the Private/CDP URI as cdp.udp so I needed the following Telephone Number in my short code:
.";phone-context=cdp.udp"

Once all of this is done just go ahead and commit your changes to the IP Office. It will probably require a reboot as you are changing IP information. Once everything comes up go ahead and make your test calls and give the customer a big smile on your way out the door, you're their hero.

As always feel free to comment if you have any questions. I'll always do my best to help!