Stupid phone trick #7 – How to make iPhone calls from my ShoreTel handset!

Yeah, I am sure you were just dying to know how to call your iPhone and have your ShoreTel phone ring?  Better yet, pick up your ShoreTel handset and make a call out your iPhone?    Actually, it is a useful integration and one that I recently had the opportunity to implement.   Many carriers have plans in which you can  call any of your “family members” without racking up minutes.   This is useful when calling from cell phone to cell phone, but how useful is it for the office?   If you have a field sales force running around the market with cell phones, and you as manager need to call them frequently, you might not always be on your cell phone!  This means that each time you call them, using your office phone system, you are paying full fare for the call whatever that might be.

It is very possible to Integrate your cell phone with your ShoreTel phone system in a way that enables you to enjoy the benefits of both systems.    You can link your iPhone to ShoreTel such that when someone calls your cell phone, your ShoreTel desktop phone will ring.  Answering the ShoreTel handset, cuts you through to your cellular caller. (Yes, your ShoreTel Communicator does a screen pop with the Caller ID of the Cellular caller).  Likewise you can you can initiate a call on your ShoreTel handset and direct it out your cellular network.  There have been a number of solutions in the market for putting cellular gateways on your PBX.  Generally they have the advantage of making the cellular access available to everyone on the phone system. They also have the disadvantage of being fairly pricy!

The solution we implemented can be described as a black box that uses blue tooth technology to couple your office handset to your favorite cell phone.   Drop me line and I will send you the solution and you to can do stupid phone tricks!  Drvoip@drvoip.com

Virtualize your ShoreTel Contact Center or ECC on ESXi?

Running the ECC on a virtual server is “not a supported configuration”, but will it work?  Often we encounter installed base solutions that are pushing the support envelop with market driven customer requirements.  Windows 7 may not be a supported desktop OS for a ShoreTel Communicator, but try telling an end user client that is it “not a supported configuration” after they just did an enterprise wide PC refresh.   We quickly learn the difference between “not supported” and “does not work”, and find a way to get Communicator running under Windows 7.   Similarly, we are beginning to see more Virtualization requirements surface in the installed base as well as written as requirements in new deployments.    Prior to Version 11, virtualization was “not a supported configuration” for a ShoreTel HQ or DVM server.    Now, not only are we being asked to virtualize ShoreTel,  we are being asked to consider running a ShoreTel ECC in a virtual environment.   We already know it is “not a supported configuration”, but will it work?  We determined to find out for ourselves if this solution could be configured and we created a an environment in which we could configure, test and experience a Virtualized ShoreTel Contact Center.

There are any number of issues you need to resolve when considering a Virtual Server environment.  Is this going to be a customer premise based implementation or are we moving all of these servers  to the “cloud”.   How many servers will we need to host on our Virtual Machine? RAM? Network Interfaces? Storage requirements?   These are all on the list of questions that should be answered before attempting a Virtual server implementation.   In the case of the ShoreTel ECC, we also had one other (excuse the pun) key issue to worry about.  Each ShoreTel ECC has a “dongle” or USB lock that must be installed on the server prior to deploying the ECC application.   We had already learned how to bring up a ShoreTel HQ server and a ShoreTel DVM server in a virtual environment, but to bring up a ShoreTel ECC we had to solve the “dongle” issue.    Fortunately after considerable research, trial and error,  we were able to configure a USB driver for our Virtual server that enabled the installation of the ShoreTel ECC application!

In our test configuration we built out a host platform using vSphere  ESXi running on an HP DL360 with 2 Intel; Quad Processors and 32G of RAM with a Network Attached Storage.   The ShoreTel HQ and DVM servers came up with little or no problem.  They need to be configured before ShoreTel software load of Version 12.0 with a hardware configuration that meets ShoreTel minimum server specifications.  In fact, it is hard to show it to you as you would not be able to see any difference between a Virtual ShoreTel and a ShoreTel server running directly on a hardware platform. T he ECC had some real challenges and we are still uncovering characteristics of the deployment that need special handling like the USB driver as previously mentioned.  The results are very promising and we can only find one issue that we can not resolve.  The application runs flawlessly however, and we are encouraged by what we have experienced with the deployment.  Send a request to drvoip@drvoip.com and we will share the recipe with you!   The attached video clip walks you through the configuration of the vShpere host and the ShoreTel servers, including the hosted ECC application.

Have you set your Holiday Phone Message Schedule yet?

It was the night before Christmas and all through the house not a create was stirring, except the technical support team!  It does not matter what holiday it is, the result is always the same.  At 4:45PM the day before the Holiday our Call Center breaks new records for inbound calls from the client base.   The question is always the same: “we are closing for a ½ day and how do we set the Holiday Greeting”.  Ugh!   Not like we did not have any warning about this holiday!  Christmas seems to fall on the same date every year!  Still it happens, a last minute rush to get the schedules modified and the recordings made!

ShoreTel does a great job of allowing you to plan your entire Holiday greeting schedule well in advance!   You can create a “2011 Holidays” list and in one short session set up your schedule for the entire year. The only task level event that needs to be undertaken at the appointed time, is to record the actual greeting callers will hear on that scheduled day.  For this reason, I recommend a “Generic” holiday greeting.  I don’t want to sound like a Grinch here, but I have all but given up on Custom Holiday Greetings!    The old generic  “ You have reached our Office during a time in which we are closed for the Holiday” is very workable.   If you cant use the generic greeting, even though your schedules are already programmed for a year in advance, you will need change out the recoding for each Holiday!

Remember, if you are closing early on any day, you need to create a “CUSTOM” schedule list like “2011 Half-days”!  In the Shoreware Director under the Automated  Attendant, Workgroup, Hunt group or Route Point assign the Schedule with the CUSTOM button down.  Likewise, assign the Holiday Schedule with the Holiday button down.  Remember, the company might be closed and the AA might play the Holiday message, but how about those Workgroups?  Are they on the same schedule or does that group work different hours during the holiday?

Whatever you do, do it now!

Virtualizing your ShoreTel or CISCO VoIP Deployment!

 

Virtualization is an emerging area that is making a significant change in enterprise infrastructure planning, implementation and operation.  The pressure comes from several areas.  First, the operating costs of even a small business can be dramatically impacted with Virtualization.  Secondly, even a small enterprise is planning for “disaster recovery” and “business continuity” in the event of an emergency that renders existing systems unavailable.  Virtualization offers clear solutions to each of these issues.   Voice is now regularly deployed as an application, running over existing data networks and usually requiring one or more dedicated servers.

Lets tackle the issue of operating costs first.  Assume that you have a typical server deployment that includes an  Active Directory server, an Exchange Server, a File server and a Call Manager Voice server  for your VoIP over IP system.   Each of these servers requires at least one AC outlet. Each server has a Network Interface Card that will eat up at least one switch port on your Ethernet switch.  How much heat does a server throw off?   Air conditioning a server room is not cheap.  If you could reduce this server configuration  down to a single AC outlet and one Ethernet switch port, would that be an example of “green”?

We wanted to experiment with ShoreTel as a virtualized solution.   Version 11 of ShoreTel now supports virtualization.  We wanted to kill several birds with one lab study.   The birds we were interested in learning about were CISCO/ShoreTel competitive analysis;  ShoreTel as a Virtualized solution and VSphere Converter for a Physical to Virtual  (P2V) clone!.   Currently we are running VMware Sphere as a  VMXi solution for our virtualization platform.    We have successfully brought up an complete CISCO Unified communications solution, including the CISCO UCCX Contact Center, CUPS the CISCO presence server and CISCO Unity Connector for Voice Mail.     It is interesting to note that as of version 7 of CUCM, CISCO does not yet support virtualization.  It runs, but you will not be able to get CISCO support on the product.

We then compared a similar ShoreTel configuration.   We set up a ShoreTel HQ server, with a ShoreTel DVM and an ECC running on the DVM.  To deal with presence we implemented Microsoft OCS as a virtualized server as well.   In future blogs, given your feed back and expression of interest, we plan to show CISCO and ShoreTel implementations of similar enterprise requirements.  In this way you can see how the ShoreTel and CISCO configurations would be implemented to achieve the desired implementation.

Lastly, we wanted to experience the process of cloning a physical machine.  Arthur C Clarke, developed three laws of prediction.  Law number three is applicable here: “Any sufficiently advanced technology is indistinguishable from magic”.   The process of converting a real, physical, still running server into a virtual “clone” is absolutely magic!    We download a copy of VMware ‘s VCenter converter.  This software is astonishing.  Once installed you basically say through command line instructions: “go to my ShoreTel HQ server and copy it to my VMXi server”.   It took approximately 1 hour and 45 minutes, but the process completed flawlessly.   The VMXi server had a complete clone of the ShoreTel HQ server and with modest modification it ran immediately.  Clearly, you don’t want two HQ servers running on your network, so be careful to deal with this issue and the issue of conflicting IP addresses.

Ethics, Digital Rights, licensing  and Copy write law issues aside, it is very possible to clone your ShoreTel server and run it in a virtualized environment.  In fact we have taken to backing up our ShoreTel system as a Snapshot on a DVD.   As a virtual machine, you can either Snapshot the machine, or suspend your running machine.  Thanks to the magic of VMWi you can actually “move” your running machine to a new site while it is still in operation!   Basically, we can bring up an entire ShoreTel server in approximately 3 minutes, the time it takes to load the Virtual machine image.    There is a video that accompanies this blog and in it we show you the process of bringing up ShoreTel as a Virtual Machine and how to clone an existing machine using P2V software.  As always, send your comments to DrVoIP@DrVoIP.com and we will do what we can to respond to your questions and comments!

 

 

Implementing Active Directory Integration with ShoreTel 11

Historically I have recommended that the ShoreTel server not be a computer in your domain.   To many times, an Active Directory administrator will create a new Group Policy and forget about the ShoreTel user account.  The end result is a down ShoreTel server and a call to TAC support!  I still feel strongly about this, but you can still integrate Active Directory authentication for your ShoreTel users.

Generally, ShoreTel users do not actually log in and log out of their Call Managers, or their Communicators as ShoreTel has renamed them in Version 11.   Most implementations have the ShoreTel desktop application launched automatically when the user starts up their desktop computers.  Most users do not even know that they are in fact logging into ShoreTel.  Active Directory administrators however, most certainly know that a login has occurred. With ShoreTel 11 Active Directory integration has matured and the reasons for implementing active directory user authentication are increasingly more obvious.  For example, now that ShoreTel has a complete Call Manager application running within your favorite internet browser, users will become aware that they are logging in as they will need to provide credentials each time they access the web application (see previous video this subject).

ShoreTel Active Directory integration is relatively straight forward, stress-free integration. Once implemented, ShoreTel system administrators have the opportunity to determine which users will require AD authentication as it is possible, using this integration that they can remain authenticated by the ShoreTel directory system.  The Version 11 web based Call Manager, for example, provides two links: one for the ShoreTel authentication and one for AD authentication.  It is important that you first create a user in ShoreTel that has both ShoreTel administration privileges and an AD user account in your domain.   You will also need to have the LDAP directory URL for your domain.

For those of us that are not Microsoft wizards, you might need some help locating the LDAP directory URL.  We were able to locate a tool from Softerra that can be of great help in searching your AD for user information.   You can locate this very useful tool at http://www.softerra.com/portfolio_ldap-browser.htm and you can download a free versions.  Once in ShoreTel Director you will navigate to System Parameters and to the Option page.  Check the enable box and enter your AD LDAP URL and your are done.  The next time you login to ShoreTel you will use your Active Directory credentials.   You will notice that the Shoreware Directory login screen has changed, and each of your user accounts has a new field for Active Directory login credentials that can be synchronized with your domain based LDAP directory.  The video clip shows you how this process is executed.   As always we welcome your feedback!

ShoreTel QOS on CISCO Switches?

Quality of Service or QOS remains an interesting and challenging configuration for most engineers deploying VoIP solutions.   Generally you are concerned about QOS on both your Local Area network (LAN) and your Wide Area Network (WAN).     Though the principles and configuration for COS and DSCP markings are easily discoverable by anyone who takes the time to research these concepts, their application on various network components can be bit more challenging.    Generally, QOS on a LAN makes use of COS bits in the VLAN tag and DSCP in the TOS byte of an IP packets for WAN router access.   How these markings  interoperate with different manufactures however, is really interesting.  Take for example, the installation of ShoreTel equipment on Ethernet switches provided by CISCO.

Generally a CISCO QOS configuration is enabled with the command “mls qos” which is a global configuration command.  What you need to understand is that this command calls into action a wide variety of switch characteristics that may or may not be applicable to your deployment.  You need to know exactly what happens when this command is activated.  You can not  just “cut and paste” this configuration!  For Example:

Mls qos trust device cisco-phone

Mls qos trust cos

These commands make use of CISCO’s proprietary discover protocol to know that an IP phone is connected to the switch port.  Great if you are deploying CISCO phones, but what happens if you are deploying ShoreTel phones?  This command tells the switch that QOS markings are to be trusted if they ORIGINATE by the phone.  If they originate by the computer plugged into the phone, ignore it unless additional trust parameters enable it,  Now,  if a device other than a CISCO phone is connected to this switch port, guess what happens?   The COS marketing are ignored and overwritten with a default COS of 0.   This means that your ShoreTel phones will never get a TOS marking through to the Level 3 routers and you will wonder why your excellent QOS configuration is not working.

ShoreTel can mark the RTP media stream for QOS,  assuming you set them up in Call Control Options.  Generally, you will set this to a value of 0X2e or 46 in Decimal, the equivalent of CISCO Express Forwarding.  However, when these packets hit the CISCO switch interface configured with the normally excellent CISCO QOS configurations it will trash your QOS down to best efforts.  Take away: when using CISCO switches, TURN OFF AUTO QOS or; enter the following interface level command for each switch port:  (config-if-range)#mls qos trust dscp !

ShoreTel “Twinning” ring your desk and cell at the same time!

So there I am, on the my desk phone, talking to some very important client and I now have 45 minutes to make an appoint that is 1 hour away by car! The client is important and we have been trying to link up for days! I also have to be at this next appointment on time! This is where a new ShoreTel 11 feature called “twinning” comes in. While talking to my very important client, I hit a button on my phone labeled MOVE and my cell phone starts ringing! I answer the cell phone, hang up the desk phone and continue my conversation as I make a mad dash for the parking lot! How kool is that?

With the release of ShoreTel 11 you will find a new option under the ShoreTel Logo in the upper left hand corner of your call manager. Select “Additional phones” on the drop down list. This will provide another drop down list and you will select “configure additional phones”. This next screen will let you define two other phones that can ring when your main extension is called. Assume you put your cell phone in the “first phone” section. Set the number of Rings to 5 and check “Accept call by answering”.

Two actions will result: First, when someone calls your main extension, your cell phone will also ring. Secondly you will note a new toggle button appears in the display of your phone and it is labeled “AddOff/AddOn”. The new button allows you to enable and disable the “twin” ring at the push of a button! Now assume you have an active call on your office desk phone. You will note that the “addOff/AddOn” button has now changed to “MOVE”. During your active call you can depress “move” and the call will ring on to your Cell phone! Likewise, while you are on your cell phone, from a call that was “twinned”, you can press *23 and send the call back to your desk.

Now I know this is not what they had in mind when they were talking about “fixed mobile convergence”, but it works and it is a wonderful tool. The attached video illustrates the text description of how a user configures these options in their ShoreTel Communicator. Enjoy!

ShoreTel Browser Based Call Management Options!

If you have ever installed a ShoreTel solution in an environment with other than Windows desktops, you know you lose some of the Sizzle! The Personal Call Manager could not be installed on Mac computers for example! Well known to those who know it well, however, was the fact that there was a functional web interface to the ShoreTel system. This web interface made it possible for Users who did not have a Windows desktop, to make use of many of the configuration options available to Users with a full blown “fat” Personal Call Manager. Just point your browser at your ShoreTel server with a slash “ShorewareWebClient” and you would be presented with a Log in screen. Enter your User credentials and you would be able to manipulate your Call Handling mode, Voice Mail and Find Me options.

With the introduction of Version 11, ShoreTel has eliminated this barrier to non Windows base Users! Using nothing more than an Internet Browser you could now have full access to all the real time call management functionality of a full blow Personal Call Manager, now renamed Communicator. This means that hosted Users and Mac Users could now enjoy all the beneifts that ShoreTel real time call management has to offer! Just browse to your ShoreTel server with the slash Communicator option, provide your log in credentials and a full blown Personal Communicator populates your Exporer! If you prefer you can use Safari or Firefox as you are no longer limited to IE! The broswer based Communicator enables the User to manipulate a real time phone call, access Voice Messages and configure call handling modes. You can even record your call handling mode Greetings, something you could not do using the ealier Browser implementations!

ShoreTel 11 marks a significant step into the future of Unified Communications and sets the stage for a variety of cloud based solutions. Mobility, virtualization and browser based applications are becoming the minimum daily adult requirement for communications funtionality! IMHO the business landscape will be littered with the bleaching bones of those companies who fail to incoporate this key requirements into their business communications model. The film clip shows both the pre-release 11 browser options and the real time call management options of ShoreTel 11. Comments welcome!

Extension Number, Phone Device, or User?

Is a phone, an Extension Number (e.g. DN) and a User the same entity?   Does the User define the Extension number?  Does the User define the Phone?   What is the difference and why would you care?   You care when you have to separate the concept of a “function” from the concept of a “Person”.    Is there a function named “Receptionist”?    Or do we have a  User who is the Receptionist?   Does the Person who is the Receptionist get a personal Voice Mailbox?  Or is that User also the General Delivery mailbox for the Receptionist function?     The answers to these questions are not necessarily complex, but they will define the implementation strategy.  The implementation strategy, in turn will be dictated to by the manner in which  the system architecture handles the phone, extension number and user entity definitions.   

 Lets assume you are deploying a solution for a Theme Park.   The Theme park will have many employees, some of which are part of the office staff and management team and others that are part of the campus Park staff.     The Office staff has a more formal structure with specific Users and assigned workspaces.  The Park staff, however,  consists of employees who work at different hours and on different days.   For example, there is a phone at the “Snack Bar” but who knows who will answer that phone?   That phone is a “function” not a person.  

 CISCO will allow phones to register with the “Mother Ship” (e.g. Call Manager) without requiring either an Extension Number  or an assigned User.  ShoreTel will also allow a phone to register with the Mother Ship without an Extension number or User.  Both solutions require that the device be assigned a “line number” or “extension number” before the device can be called, though the phone might have some limited out dialing capabilities without an Extension number.     T he ShoreTel model, however, assumes that every device has both a Unique Extension number and a Unique User.  In  the ShoreTel model, a  User can not exist without an Extension number.  In the CISCO model, Users are optional?  I get to work with both systems and  the difference are both subtle and  interesting.  Not that one strategy is any better than the other, it  is just a matter of how you have to organize the entities to achieve a particular application solution.

 Lets assume the “Snack Bar” is very long and has 10 phone devices distributed up and down the counter.    In the ShoreTel model, each phone would be required to have a unique Extension number.  License issues aside,  what number do you dial to call the Snack Bar?    Remember, we are calling a “function” not a “person”.    In the  ShoreTel model,  each phone must have a unique extension number.    Additionally,  each extension number must have a unique User defined in the system administration portal.   In the ShoreTel model we end up with something like SnackBar  Phone1,  SnackBar Phone2……….ShackBarPhone9  etc.      Given that all the ShoreTel devices at the Snack Bar have different Extension numbers we have to organize either a “hunt group” or create a “bridged line appearance” if we want to call the “Snack Bar” with a single extension number.

In the traditional TDM world, you would have taken the 9 phones in the Snack Bar  an punched them down on the same Extension!   That seems to be the way CISCO deals with this situation.  You can create the phones, give them all the same Extension number and publish that number  as the “Snack Bar” in the Directory.    This scenario is not unique to a Theme Park.   Separating  a  “function” from a “person” or User is often a requirement in a phone system deployment.   The scenario could  have easily been a  “Sales Counter” at an Auto dealership; or the Admissions desk at a hospital  rather than a Snack Bar. 

Another subtle ramification of being able to separate Users from the Devices they use is the subject of calling permissions.    Do we restrict or grant calling permissions to phones, Extension numbers or to  Users?   In the ShoreTel model, we generally grant calling permissions based on the User.  A User is placed into a particular Group that defines privileges.    In the CISCO world we generally grant calling permission based on the Extension numbers and the Partitions that contain them.    Again, it is not a matter of one strategy being better than another.  They are just different strategies and as a result your deployment will have to be planned accordingly.    At the Snack Bar, we have lots of different employees using the phone, so we are more likely to want to restrict the Extension number assigned to the “function” rather than restrict the Users assigned to work at the Snack Bar!

Skills Based Routing in the ShoreTel Enterprise Contact Center!

Assuming there is more than one Agent available to service an inbound contact center call, a “skill” level can be applied to route the call to the most suitable agent.   It is important to note that the system will only use this criteria if there is more than one Agent to choose from.  If there is only one Agent available to service the call, the call is routed to that Agent regardless of Skill Set.   Skills are defined in the system to have a value and a preference.   Skills can be assigned to IRN’s for example, in which we want to set a minimum skill level for calls that arrive through this portal.  Skills are also assigned to Agent along with a preference value.

For example you may have a contact center in which you want calls routed to Agents with different technical skills in desktop computers.  You have two skills defined in the system: Mac and Windows and you want calls routed to the most suitable agent based on a minimum skill level or proficiency for each type of desktop computer.  An Agent might have a very high value for MAC and  a lower Value for Windows.   You would want a call from a Windows to prefer and Agent with a high value Window skill, over an Agent with a high value for a MAC skills.

For each skill defined in the system, the system subtracts the product of the Skill value and the preference of the Agent for this skill from the Skill Value required by the Call.   For example assume that a call requires a call requires a skill named WINDOWS with a value of 75%.  Agent A has a 50% skill value and 1–% skill preference.  Agent B has a 75% skill value and a 75% skill preference.  The system calculates it as follows:

Agent A = 75 – 50*100/100 = 25

Agent B = 75-75*75/100 = 18.75

So the call will be routed to the Agent B!  Remember that you assign a skill level requirement to a call and a skill value and preference to an Agent!  The following film clip walks you  through setting up these parameters.   The Contact Center provides for Call Select and Agent Select.  As an Agent and a member of two or more groups, if a call comes in to all groups you are a member of, Call Slection Strategy defines which call you will get first!   The last step in Skill based routing is to set a Primary Call Selection Strategy based on “the best skill fit”.

This is a silent film clip to help you understand how to set this up in the ShoreTel Enterprise Contact Center!