CISCO Version 11 – New “Conference Now” feature!

Is your ShoreTel or CISCO Audio Conference Secure?

Most all phone systems have some embedded resource for ad-hock audio conferences, ShoreTel and CISCO are no different.    CISCO, like ShoreTel,   had “meet me” conference facilities, but it had one serious flaw.   Anyone could dial into the conference bridge, even after the conference had started and there was no security against “lurkers”.   This made the conference facility the last place you would hold a team meeting or corporate strategy discussion!  Optionally both vendors addressed this with add-on conference applications usually requiring a separate server and additional licensing based on number of ports or supported users.   CISCO offered the now defunct Meeting Place server and ShoreTel still offers its own Conference server application.   How frustrating is that!  Deploy a brand new phone system only to find out it has limited conferencing functionality without an additional investment.

CISCO Conference Now in Version 11

CISCO for one, has now addressed this in the most recent release of CISCO Unified Call Manager, Version 11.   A new feature, “Conference Now” has been added to the still available meet me conference facilities.    Setup is relatively simple and now provides password protection for conference ports.   Call into the Conference Now IVR application and you will be prompted for a meeting ID and a password.  The password is provided by the “host” who must be a participate before the conference can begin.   Advanced features like calendaring still require an external conference facility, but if you are looking for audio conference security, this is an ideal solution and is bundled as a basic feature of CUCM Version 11!

ConferenceNow

Basic Configuration

Conference Now Configuration is simple and a new line entry in CUCM Call routing administrator web page.  Just give the application a Directory Number, Route Partition, a Description and set the maximum time the bridge should wait for the “host” to join before dumping everyone!   You can also select a Music source that provides the media conference attendees will hear until the host joins!  Then Set Media Resources, Confirm that IVR is registered with phone system and that it is be part of Media Resource Group.

Users must have the “Conference Now” privileged enabled before they can establish conference sessions.   Under User Management you enable the users privilege to use this as a host and set their PIN.  A good practice is to set that users extension number as the Meeting Number.   Granted, not the most secure solution as you basically establish the same attendee access code for all that users conference sessions, but it is way more usable than the previous meet me conference solution.

ConferenceUser

Select or Create Custom Prompts!

There is a library of CISCO provided prompts to support this IVR application, but you can create custom prompts and select them as appropriated!

ConferencePrompts

As embedded Conference facilities go, this is about the best we have seen.   It is a standard Call Manager feature and can be enabled by individual User and provides password protection for Conferences in session!

 

 

CISCO Configuration Professional Express

When you lease expect it, expect it!

We were deploying a new CISCO Voice Gateway, a CISCO 2921 with a PRI and mistakenly pointed a browser at the LAN Interface while searching for the CUCM URL!   Sometimes accidents result in new information.  We generally do not use Configuration Manger so we were very surprised when the browser returned the following screen.

CCPEScreen1

What Can you do with it?

After the initial WTF?  We started to poke around and what we found was more than interesting!  This is a lightweight version of CISCO Configuration Professional, embedded in the router flash memory and it is enabled by default on newly Minted access routers.  Currently, Version 2.7 is shipping and it has both an Admin portal and a User Portal. The Admin portal is enabled and shipped on the router.  If you want to add the Use Portal (I have no clue why you would do that) you have to download and install additional software to flash memory.  The System enables base configuration of key components like WAN links,  VLANs,  User, DHCP and SSID management.  It has a Quick Setup Wizard and some interesting Router Diagnostics!  There are also basic troubleshooting tools like Ping and Trace to assist debug efforts.

CCPEScreen2

“Plug and Play” Option

There is also and an option for a “Plug and Play” server as part of the Prime Infrastructure support to automate remote deployments.   If you are deploying a multi-site solution, this can significantly speed things along allowing for centralized planning, design, installation and management.    Ship the router to someone who is capable of plugging in the right cables and off you go!  The router finds the gateway, sends a request to the mother ship, identifies itself by serial number and can then download firmware and configuration files!   Reload, up and running!

When folks wonder why they should pay more for a CISCO router when they can get Brand X for so much less, you might think about the impacts this can have on total deployment and maintenance costs!   It had a great beat and it was easy to dance to, we gave it a 10!

 

Cloud based Next Gen Firewalls?

Firewall or Security Appliance?

Along with the general tend for business to move to a subscription based, recurring revenue model, the ubiquitous firewall has also moved to the cloud!   In the case of the firewall, however, there is measurable and dynamic benefit to be realized by coupling your firewall to a cloud based subscription.   The “wild west” that characterizes the internet in the 21st century demands a dynamic, self healing, unified treat management strategy!    It is no longer acceptable to use simple statefull packet inspection based firewalls that limit activity based on network layer source and destination IP address matching.  Firewalls must now become “security appliance” solutions!   Content Filtering Intrusion detection and prevention and a growing shared database of malware protection with cross referenced “reputation” based real time analysis is now the minimum daily adult requirement for network Internet work security.

Most of the popular firewalls in the commercial market place now couple some form of a subscription service to the base cost of the actual hardware.  Generally these subscriptions are spam and email filtering solutions at the low end, but include very advanced content filtering and malware protection at the high end.    Effective content filtering and malware protection requires access to a ever growing database where global information about daily treat and reputation analysis can be analyzed and shared among subscribers.    Identity based networking is also an essential component in managing network resource access.  Group policies that limit the facilities that the “guest” wireless network can access and the bandwidth that it can use, from the facilities and bandwidth that the corporate user can access begin to define the minimum specification for network computing.

Meet My Meraki!

We are particularly fond of the Meraki solution as a good fit alongside of the more sophisticated CISCO Next Generation and “SourceFire” solutions.  Both technologies are recent CISCO acquisitions and significantly expand the company’s well established range of threat management, Identity and VPN solutions.   The Meraki products are not only subscription based,  but are truly “cloud” resident.   This makes it very attractive for IT teams or Managed Service Providers to remotely install, configure and monitor geographically distributed firewalls and VPN devices.    When coupled with the subscriptions for ongoing software updates, the system provides unparalleled cost/benefit performance in the following key areas:

  • Identity Based Access and User Group Policy Control – Local or Active Directory definition of users and guest
  • Intrusion Prevention – Active before, during and after monitoring of known treats
  • VPN Automation – Mesh or Hub and Spoke configurations to integrate remote offices and work groups
  • Content Filtering – Limit internet access by specif URL or Group like “peer to peer”,  “file sharing” or “Social Media”.
  • Anti Malware and Anti Phishing – Active scanning of all HTTP traffic
  • High Availability and Fail over – Device and connection security through multiple uplinks
  • Application Visibility and Control – Know exactly who is using what and how much!
  • Centralized Management  – Log into the device through your cloud based “dashboard

Content Filtering and Central Management

Content Filtering is based on subject matter or specific site URL and is intuitive to configure as show below.     The group polices enable you to assign content filtering based on Active Directory identity and group authentication.  Guest log in pages enable visitors network access.   All of this functionality is dynamically made current through subscriptions and is centrally managed through a “dashboard” that is defined in the “cloud” and accessible by authorized personnel from anywhere on the Internet!

 

merakicontentmanager

Register for a webinar and qualify for a free switch, firewall or WAP!

Put your ShoreTel to work automating “Interviews” and “Surveys”

Customer Survey or Order Entry

One of the most requested IVR applications we are regularly asked when working with the ShoreTel product line is can we create a “customer survey” or automated voice “order entry” solution.    In this application the caller is answered and greeted by an automated attendant.   The callers is then  asked a number of questions.   All the individual answers are collected as a single voice file and sent to a predetermined voice mail box for later bulk processing.    This application is actually simple to create and because it uses actual voice recordings rather than touch tone, there is no data processing requirement to review the results.

The solution makes use of features available in the basic ShoreTel iPBX and as many “survey applications” are part of a Call Center, like the ShoreTel ECC, this application does not require any special equipment or additional servers.     In addition to to asking customized, recorded questions that support the survey or order entry application,  an automated attendant like menu can be attached to the voice questioner that offer additional options to the caller when the questioner is complete.  The caller can start-over, transfer to the Operator, transfer to another application or append to the existing question stream.   For example, the caller might want to place an order for additional products or services.

The application also captures the normal accounting information to support the recording including date, time and callerID.    As the answers are assembled as a single voice message, they can be emailed when the caller hangs up and a message waiting light or other notification alert set!

VoiceXML!

VoiceForm

Call Our Demo  Line!

The Applications enables XML tags that define actions, for example: Play a file; Record, GoTo and Menu.   These simple actions can be organized to enable robust applications.  The Menu file can be used to send the caller to yet another script or forward to an operator.

We created a live demo, if you would like to give it a try give us a call and we will transfer you to the demo!!

 

 

 

Quick Peek at ShoreTel Connect – What’s in ShoreTel V15!

Deploy in the Cloud, on premise or Both!

For those of us who have been working with ShoreTel since version 3.1, the introduction of a new ShoreTel release is always exciting!   The marketing folks are naming this release, ShoreTel Connect to underscore the full power of a deployment that integrates both the customer premise with the flexibility of a cloud solution.   It may be Version 1 of ShoreTel Connect, but it builds on all that ShoreTel has learned over the years and will always be ShoreTel Version 15 to the rest of us.    The product extends ShoreTel’s history of distributed switching to now include cloud  components like a new “Edge Server”.   As we were fortunate enough to be deploying for a new client, we though we would share our first impressions and show you the new Shoreware Connect  administration interface and the ShoreTel Connect client!

The product is now in controlled release and shipping to new client deployments.  There is a direct upgrade and  migration path if you are on at least ShoreTel 13 of the iPBX,  Version 8 of the ECC and Mobility 7!   Reinstall or step upgrades will be required if you are on an earlier version of ShoreTel.  You will need to shed the 32 bit operating systems as the new release runs only on supported 64 bit 2008 and 2012 Servers.    The Virtual appliance OVA images introduced in Verson 14 are still available and though you can virtualize with VMware ESXi 5/5.1 or Hyper-v 6,  we believe that the appliances still only run on ESXi hosts only.

New high density Switches!

Going forward ShoreTel is focused on its 400 family of SIP phones.   They have also introduced some new high density ShoreGear Switches including a 500 port switch, a 48 port analog switch and dual T1/E1 switches!   No longer will you need to trade DSP resources to enable analog or media termination points and they have even enhanced the paging port with a contact closure!  We are very pleased to see the addition of an ova file that enables you to field a distributed voice mail server as a Linux appliance!  Hopefully ShoreTel can continue to migrate away from Microsoft servers, further reducing cost and increasing up time!  The fat desktop client has been replaced with a browser like client thus eliminating the need for a Microsoft desktop.  In fact, the administrative interface no longer demands an IE browser as Safari, FireFox and Chrome are now supported!   Clearly, this means that the ECC client has changed as well!

 New ShoreTel Connect administration Portal and desktop client!

ShoreTel Connect can be deployed as a cloud solution, as a completely CPE solution or as a “hybrid” solution that blends both componet options.        We have not had time yet to study the firewall traversal options, but I am sure this has all been thought out!   The accompanying video will give you a quick overview of the administrator interface and the new client.     We will continue the video development as we complete the deployment, sharing what we have learned along the way and updating our video training library.     Hit us up with questions and challenges!  We are long time Cloud Architects!

 

 

 

UCCX Instant Contact Center “Killer Script” $295?!

The Vision!

It has long been our vision to create a UCCX script that can be used to rapidly deploy a new Customer Service Queue.   We appreciate that each Contact Center is different, but there is a set of expectations most folks have for the basic call flow and feature sets.  Between the vision and the reality is a leap of faith, but we have emerged a Generic Customer Service Queue consisting of a small library of scripts, professionally recorded audio prompts, XML document files and supporting sub flows that, taken together,  provide a very rich call center solution.  If you are building out your Contact Center with CISCO UCCX as your call processing engine, this script will get you operational in a fraction of the time it would normally take to design and develop a script form scratch!   If you are running at least Version 8 or higher on an Enhanced license, the resulting contact center script provides a rich set of features.

 

Included Feature Options:

  • Auto configuration based on the Number Called;
  • Holiday List checking for programmed closures;
  • Supervisors are enabled to open and close a CSQ on demand;
  • Supervisors can record a custom closed message (meetings, emergencies etc.);
  • Call flow can provide for Language selection (Press 1 for English);
  • Each CSQ can be optioned to play estimated wait time and position in queue;
  • Each CSQ can be optioned to enable a “call back without losing your place in queue”;
  • Each CSQ can be optioned to allow caller to leave a message, bailout to operator, or arrange call back;
  • Each CSQ is checked to assure there are agents logged in;
  • Music or Message while in Queue can be optioned on a per CSQ basis;
  • Extend Call Holding Options can be offered based on max time in queue;
  • Each CSQ can be optioned to enable the processing of a list of off site agents that can accept a remote call;
  • Custom layouts can be created to push information to the Agent Desktop Display based on CSQ;

QueueOptions.XML

The heart of the script is the “Queue Options” file that is read with each new phone call received by the system.  The script then configures itself to identified CSQ options based on the called number.  The called number is used to retrieve the options for the target CSQ from an XML file.  For example, callers to the Customer Service CSQ may be prompted with estimated wait time and position in queue, while the callers to the Technical Support Queue are not offered this information.   Perhaps arranging a “call back from queue without losing your position” is a feature that is offered to Platinum callers but not to the Silver clients.  Each CSQ can have different prompts and customer care messages for those waiting for the next available customer service representative.  The options offered callers can be different for each CSQ.

Call Center Administration

Emergency closure?   Authorized users, typically the call center supervisor, is issued a PIN and Queue number.   This enables them to call the included CCAdmin IVR Module, enter their PIN number and then select the CSQ number.  They are the offered the option to open the CSQ, or close the CSQ and record a new closed greeting.    No more calling down to the System administrator every time you want to close the CSQ for a team meeting!

The script is optimized to provide the richest set of functionality based on a wide cross section of call center applications and at the lowest possible cost both for acquisition and ongoing maintenance.   As the script is both extensible and reusable, it can be used for future CSQs and as such, it will save you money on into the future!   Give us a call and we can download the script to your UCCX Contact Center, configure the options and have you up and running with a professional call flow and sound with in few hours!  Clients who purchase this option will continue to get follow on updates as we continue to add new functionality!

We have updated the Script for 2019, so watch the new video which details the new feature set!

ShoreTel adds Siri features with SpeechBridge!

Anybody who has used Siri or Google to ask for directions while driving, understands the importance of being able to navigate through an automated attendant menu using voice commands! Natural language, speaker independent speech recognition has come very long way and can be economically integrated into every ShoreTel system deployment. One of the best kept secrets in the ShoreTel community is the availability of a low cost, high performance voice recognition solution that makes your digital automated attendant understand human speech! Folks driving along, even those stuck in a traffic jam, cannot be pressing extension numbers into their iPhone! Why not let them “speak” a name or extension number? Siri does it and so can your ShoreTel system.

SpeechBridge can hear!

Enter SpeechBridge by Incendonet of Encinitas, California! The company offers a speech recognition appliance, optimized for ShoreTel systems that can give your Automated Attendant ears! Using a SpeechBridge, callers can “Say or Press 1 for Sales;” or “Please say the name of the person you are trying to reach.” SpeechBridge easily eliminates that frustrating “spell by name” touch tone, key pad game that dumb automated attendants expect callers to play.   SpeechBridge can also integrate with your Calendar and Email systems!  The product is easy to install, and easily interfaces with back office systems like Exchange and Active Directory.

Easy to Configure!

As the name suggests SpeechBridge establishes a SIP trunk to your ShoreTel system.  Inbound calls are directed to off premise extensions, where 2-8 ports of powerful speech recognition, are available to play the normal role of an automated attendant.  Though the SpeechBridge can collect touch tone digits, it is optimized for Speech and the spoken word!  Callers can say an extension number, voice navigate a menu or speak an internal user’s name. Using SpeechBridge “sounds like” patented technology, the system will sort through names and phonetically match the sounds uttered by the most inarticulate callers!

The system has a unique Scripting and Menu editor which enables you to rapidly implement new call trees and custom IVR applications. Use the bundled system prompts or upload your own prompts! The system can be used to look up, confirm and reschedule or create calendar events like appointments. The SpeechBridge can even create transcriptions of your voice messages and send it to your email!  There are a variety of fully formed APIs that enable third party integrations for those who seek to use the appliance in custom applications.

Adoption Strategy!

When Voice Mail systems first came to market,  smart marketeers would install them free of charge with each new phone system, on a “try it, if you don’t like it we will take it out” basis.  Thirty days later, there is no way you could take away someone’s voice mail system!  We recommend you make the SpeechBridge a standard part of your ShoreTel deployments! Give them the Speech enabled Automated Attendant.Then grow recurring revenue adding the many other applications where TTS “text to speech” and SR speech recognition can be applied! Include SpeechBridge menu and directory maintenance as a “service” offering and differentiates your company’s ShoreTel implementation!

The technology is not difficult to understand, implement or maintain!  Incendonet has an excellent dealer education program, superior technical support and a growing product portfolio of speech enabled applications! If you like Siri on your iPhone, you will love SpeechBridge on your ShoreTel.  The product is certified by ShoreTel and fully supported by Incendonet!  Add Speech Recognition to your ShoreTel today, by calling Incendonet at 760-944-7698 and ask for Sales!  (Before you ask us, yes, SpeechBridge can be integrated with any VoIP PBX that supports SIP trunks!)

Contact Center Remote Agent Locator!

We recently had a request for an “emergency locator” application with a different twist.   Historically, we have written a number of “locator” type scripts, but this request had some unusual requirements.   The client wanted to have live agent support for a technical support queue, even after the agents went home at end of shift.  Basically, put the caller on hold and then go find an agent to assist!   Now if agents are logged in, that is more of a remote VPN phone type of solution.  This was different, the agents were not logged in and not on a VPN phone,  but reachable by cell phone.   The requirement was that the caller should have the same experience after hours that they might have during business hours.

The Challenge!

If that was not a sufficiently large challenge, they also had multiple CSQs and that would mean processing a list of agents that was CSQ specfic.  Additionally, all of this should be reportable in the normal historical reporting process.  If an agent could not be located, an email was to be sent to the CSQ team, and the client offered the opportunity to leave a VM or request a call back.   What was different about this request for script assistance, was not that we had to locate an agent, but that we had to keep the client in the queue and somehow pass the client to an available cell phone based agent.

Not entirely sure if we could do this in a ShoreTel ECC, the CISCO UCCX has the ability to create scripts that manage multiple contacts.  The “Triggering  Contact” being the caller that launched the script, and then we need an email contact and an outside phone contact.  There is no way, however to conference or transfer the caller to an active call.   Additionally, we needed positive assurance that we reached a human and not an answering machine!  This made for an interesting set of challenges!

The Solution

The caller handling front end was a typically call queue strategy, but the back end agent locator was tricky.   First we had to create a way of searching a list of available agents.  Not a single list, but a list for each CSQ as the agent skill set was product focused.   That requirement was initially handled with a SWITCH step and later improved by use of an XML file.    We place the caller on hold, then find the first agent and call them as the second outbound contact or new active phone call.   To confirm we actually reached a human, we ask them to press any key to continue and when they press a key, we know we reached a human and not a machine.

Next we ask them to press one to accept the assignment, or two to reject the assignment in which case we have to return to the list and find another agent.  If they accept the assignment, we tell them to keep the line free as the next phone call will be the caller on hold in the queue.  We terminate the call and then retrieve the caller from hold and transfer them to the agent.

This all worked very well and we are now enhancing the features and script strategy to make the code portable and more flexible.   If the agent had rejected the call, we would send an email to management and call the next agent on the list.    We are eager to find ways of leveraging the script for more applications and welcome your input!

 

HA server in “Split Brain” mode?

What is a High Availability Server Configuration?

HA availability server configuration often results from the sharing of a database between two servers.  One server is Primary or Active, and the other server is Secondary or Inactive.   Generally in the case of Voice Mail servers or Contact Center servers, there is a shared trunk group that interconnects the iPBX or Call Manager to the Active Server.   Should that server fail, the call searches through the trunk group ultimately connecting with the Secondary Server which has now taken on the Primary or Active Roll.   In the case of the Contact Center both ShoreTel and CISCO use this strategy with great results.

Is it “alive”?

A condition known as “Split Brain” can result, however, causing both servers to get “confused”.    This is generally the result of one of three conditions: a server loses power or becomes disconnected from the network during a database replication between the servers; or one of the servers actually restarts during the database replication process.    When this happens database updates to each server may not be replicated to the other server and we get a Split Brain.

The first step in remediation to to recognize the condition!   It  may not be readily identifiable.  In the case of CISCO you can log into the server through the CLI and run utils service database status which will show the present condition of both servers.  If you see the status “connection status unknown” or “Primary/Unknown” or “Secondary/Unknown” you are now in a schizophrenic mode!  Both servers are up and operational but neither server is processing calls as neither server knows that it is the Primary server!  Bad things are happening!

splitbrain

If this condition exists action is required to restore sanity as quickly as possible!

Split Brain surgery!

The remediation can be summarized as restoring each server to a role, Primary/Active and Secondary/Inactive.  Once that is established you will need to pick which database is most current,  and then copy it to the other server, restoring synchronization.  Again CISCO has tools to assist with this process and if followed, this surgery can go smoothly and quickly!  Basically log into the CLI of the server that has the data you want to keep and run the command utils service database status . Then log into the other server and run the command utils service database drbd discard-node which should restore database replication to normal.   Then run the command utils service database status and you should see something that looks like this:

SplitBrain2

You might then need to double check Distributed Replication Block Device or DRBD meta data for corruption if the servers do not sync up.  This DRBD is what synchronizes data between the two servers.  Check the status as described above and if you see the DRBD error, then run the command utils service database drbd force-keep-node which will reset the DRBD and set the server to Secondary/Inactive.

Ah life in the world of HA!

 

 

 

 

 

 

 

Upgrading CISCO with Prime Collaboration Provisioning

Don’t Procrastinate!

Sooner or later you will find you need to upgrade your VoIP deployment, regardless of the vendor.   Differing upgrades is just prolonging the inevitable and increasing the complexity and the pain level.   Let’s take the example of migrating a CISCO MCS based cluster that includes a CUCM at version 7.1.5, a UCCX at Version 8.0.2, and a Unity Voice Mail at version 5.0, and some of the components have HA options!  Having put off upgrades for some time, this client will have to migrate from MCS server hardware to vmware ESXi virtual machines and upgrade to the now current 10.X release across the cluster and applications.  In the case of Unity which has been replaced by Unity Connection, this is a completely new application addition.  The complexity of this upgrade is about as challenging as they come!   Additionally, the client expectations are that impact to the production environment will be non-existent!

Build out a “Mirror Lab” system

The decision was made to build out a completely separate “lab” system and to use the same ip topology as the production system.  This in itself is an interesting set of configurations as you will still need to maintain connectivity with all network services, particularly DNS and NTP.   This might best be accomplished with a set of temporary service providers on a completely isolated network.  In this instance we made use of Prime Collaboration Deployment  (PCD) tool to migrate and upgrade the CUCM cluster consisting of Publisher and two Subscribers.   As the “lab” network was to mirror the production network, we actually had three of four subnets to configure as the HA servers were to be located at a different site than the Publishers.   The PCD was relatively painless and very useful.  We did learn quite a lot about the capabilities of this tool, and in the end, consider it to be of great value and we will continue to use it in future migrations.   See our previous blog about lessons learned!

Plan 3 hours per server per Upgrade Step up!

Understanding the time required to complete this process should be established.  The actual time to do a backup and/or a restore of a specific server will be determined in large part by the size of your deployment.   A backup for a single cluster with 100 users will take considerably less time than a backup of a multiple cluster deployment with a 1000 users!   For planning purposes we used one hour per server for installation of software including ISO, COP files and any required Engineering releases.  Each backup added an hour as did each restore.   Keep in mind that you may be making multiple upgrades to achieve your end goal.  Each upgrade will take place in the “inactive” partition. Then you will be required to switch partitions. This process will take as long as a backup to progress!   In this example we were moving from 7.1.5 to 10.6 and that would normally be a multiple step upgrade.  In the case of the UCCX it most certainly was!  So we have, in this example three CUCM servers, 2 UCCX servers, and 2 Unity servers for a total of 7 servers.  At the base level that is a minimum of 21 hours of server operations for each upgrade step!  Plan accordingly and set expectations to all stakeholders!  There will be long periods of watching computer screens and the progress bars that hopefully give you some feel of where you are the process. CISCO upgrades list the number of tasks and also estimate the time per task.  This is very helpful!

UCCXupgradeScreen

Take time to learn COBRAS!

Once we had the CUCM cluster established, we turned our attention to the migration from Unity 5.0 to Unity Connection.  This was achieved by building out a new ESXi based Unity Connection Version 10.5.  CISCO has a great tool to assist with this migration in the form of COBRAS which, if you have not used before, will take some study.  Fortunately there are many training videos on the CiscoUnityTools.com website, where you will go to download the required software.  You will need the CISCO Unity Export tool and the Unity Connection Import tool.   The Export tool needs to be installed on the Unity Server as it will build connectors to the existing Unity configuration and User database.   The tools are not difficult to learn, but do require some orientation.   You can export the configuration including users, call handlers, mail boxes, prompts and even messages.  If you set customer expectations that they will not have historical messages, you can eliminate importing messages which will simplify the process.

The Unity Connector Import tool can be installed on a Windows laptop.  You will need to download and install IBM Informix drivers to connect to Unity Connection Server using a Microsoft OBDC connector.  In this example, we moved from a system that had many less features to a system that had many more features.  Our expectation was that this would be the most painful part of the migration journey, but it turned out to be comparatively easy.   The Unity Connection Server came up with most of the old call handlers matching definitions for new call handlers, and the user database imported with out error.  We choose not to import old messages and set an expectation with the client that there was a point in time in which they would need to clear out old messages as they would not be on the new system.

List and have available all COP files!

Now the upgrade and migration of the UCCX was in fact the most challenging part of the journey.   With the Call Manager now on Version 10.5 the current UCCX 8.0.2 system could not communicate with the call manager.  At first this was not thought to be an issue.  We backed up the UCCX 8.0.2  server and built out the same version machine on ESXi.   Then we did a restore and now had a virtualized UCCX 8.0.2.   You will not be able to log in to the UCCX administration page, however, as the user database is on the CUCM, and the two systems are currently incompatible.  There is a very long list of steps to get to UCCX 10.6 and each step required a backup and restore!  The clock is ticking!

We upgraded the 8.0.2 software to 9.0.2 and found that we need a license key to be able to log into the Administration portal.   Given that we were only temporarily stopping here, and ultimately would license under Prime License Manager, we did not plan for this.  However, we wanted to make sure that all data was successfully migrated to the new version.  So we obtained a demo license through TAC to take a look at our repositories and verify that all scripts, prompts and documents etc. were successfully migrated.   We noted that the Call Control Groups were not in place, but determined that was a result of a  Jtapi version incompatibility.   We next need to apply COP files and migrate to 9.0.2SUS2 in preparation for the journey onward.   At this point, we found a error in the database replication of UCCX servers and elected to remove the secondary server, which we would add back in at a later step.  This required TAC assistance to log in as root and run a script to strip the database of any reference to the second UCCX server.

There are hardware reconfigurations that change as you move through to 10.6 so be aware of them.  As you might have done on MCS upgrades to 9.0.2, you will add RAM and maybe disk drives depending on the size of your UCCX.    So moving from the ESXi virtual 8.0.2 clone we attempted to build out the ESXi machines using Version 10.6 OVA files, but ended up having to download and use an OVA for version 9.0.2.   The upgrade to 10.6 required yet another COP file before the upgrade could be started. Again, it is important to study the various upgrade paths as you may be moving through several upgrades, patches and COP files, so keep track and write it down!  After the COP file, yet another backup!   Finally, we were able to move to 10.6! Once on 10.6 we now needed to add the HA server back into the mix.   Actually, in the future for any multiple upgrade steps it may be best to remove the HA server before starting the upgrade.   Generally this is not a CISCO supported method, but you can see how much time it cuts out of the project as you do not have to upgrade two servers, backup and restore two servers at each step of the process!

Now that we have a complete system upgraded and virtualized, we can do some testing. Specifically working with firmware and CTL issues if any!   Though we did not have any gateways to connect with the outside world, we were able to bring up phones, assign users and make phone calls to the UCCX and the Unity Connection.   What remains is scheduling the maintenance window to facilitate the “go live”.   The plan was to take the old system offline and put the new system online.  Keep in mind we used the same machine names and IP topology in the “lab” as we did in the production environment!