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!

Creating a “Personal Workgroup” to help answer your phone!

One of the great attributes of a Personal Call Manager, is the multiple call appearance functionality.   When you have an active phone call  you  can actually see a new call ring in, on your screen.  I like to think of this as “priority call management”.  Given that I know the value of the call I am on, when I see the Caller ID of the new call, I can make a real time decision about putting my current call on hold to take the new call.   Sometimes, however, this is just not possible without offending someone!  What I really want to do, is let the person ringing in, know that I am aware they are there and I will be right with them as soon as I finish the call I am on.  What combination of ShoreTel features will let me do that?

I created a new Personal Workgroup and put myself in the Workgroup as the only “agent”.   I also used the administrative interface to declare myself “always logged in”.  In this way I do not need an Agent Call Manager, nor do I have  to “log in” and Log out” of the Workgroup and I save the cost of a Workgroup Agent License!   I then recorded a Workgroup Queue Message: “Hi! I see you ringing into my desktop and I just wanted you to know I will be with you in just a minute as I am wrapping up this current call”.     To fully appreciate how this works, you have to understand one of the underlying principles of a ShoreTel Workgroup!   If you are a member of Workgroup, that Workgroup will only present one call at a time.   If you are on a Workgroup call, the Workgroup will queue the caller until an Agent becomes available.

Now when I am on the phone and I see a new phone call ring in that I really want  but can not just put my current call on hold,  I can still answer the new call!   First, as the new call rings in, I right click the new call appearance with my mouse and, while still stalking to the original caller, I  Transfer the call to the extension number of my Personal WorkGroup.  The ShoreTel Workgroup, sees that I am already on the phone and queues the caller.   The caller then hears my Queue message “ please wait and I will be right with you”, followed by music on hold.  When I wrap up my current call, the ShoreTel Workgroup sees me available and takes the caller off hold and routes them directly to my extension.  This is very effective tool for managing a busy desktop and it is also easy to implement!

ShoreTel Version 10+ “Find Me/ Follow Me” Enhancements!

Mobility and Office Extensibility continue to be “must have” feature sets for success in todays hyper competitve market place.   Nobody seems to care if it is after business hours in your time zone.  When a client wants you, they want you now and if you can’t be found, they will find someone else!  ShoreTel has had a range of features to address this requirement since the early on releases.  Features like “Office Anywhere” and “External Assignment” have been the minimum daily adult requirement for ShoreTel mobility from the very early releases and they continue today and they continue with Version 10.   ShoreTel has refined the “find me” functionality in this latest release to include a number of new capabilities including “call screening” and the ability to route a call before the caller hears your Voice Mail greeting!
There is an ever increasing group of knowedge workers and professional staff that spend very little time sitting at a specific desk location.    Sales and IT professionals, for example,  are always on the move and away from their desk.   With ShoreTel 10 we can now route the caller to your “find me” locations before the caller hears a greeting.  Depending on your selected call handling mode, you can route an incoming call directly to your cell phone, with full call screening.  This is not a simple call fowarding feature, it is an intelligent process of routing calls and enabling the recipent to determine the priority of the call and then accept or reject the caller.  If the caller is rejected, they then hear your Voice Mail greeting.  (Make sure you don’t invite them to press 1 to activate “find me” as they have already gone down that path)!
Generally, you would set up your “find me follow me” locations as part of your basic Call Manager setup.    You then associate that process with one of your calling handling modes.  I for one, do not want people hitting “find me” when I am in the office and in my Standard call handlign mode.  When I am out of the office, I might want to offer the caller this option, so I associte this process with that call handling mode.   What about the professional who is never at their desk?  Version 10 has a key new option in the “find me” setup: “enable Find me for incoming calls before playing my greeting”.   Additonally you can elect to send the caller CID and even “Enable Callers Name for find me”.
This last option cause the system to prompt ” the person you are calling requests your name”.   The system records what the caller mutters and then follows the “find me” instructions to locate you at one or two locations.   When your cell phone rings you will hear “this is the ShoreTel Voice Messaging system with a call from”, at which time we will insert the recorded mutterings of the caller for your edification.   Press 1 to accept, 2 to reject or 3 to repeat the caller ID.  If you did not elect this option which many might consider obnoxious and rude, the system will speak the numeric caller ID phoen number unless it is another ShoreTel user from within your system.  In this last case, you would hear the ShoreTel play the record name of that users mailbox.
This is only one of the mobility solutions that ShoreTel offers.   Other features including Mobile Call Manager and External Assignment also prove to be powerful options to keep you intouch and availalbe, regardless of your geographic location.    The following film clip walks you through the process of setting up “find me follow me”.   Enjoy!
Mobility and Office Extensibility continue to be “must have” feature sets for success in todays hyper competitve market place.   Nobody seems to care if it is after business hours in your time zone.  When a client wants you, they want you now and if you can’t be found, they will find someone else!  ShoreTel has had a range of features to address this requirement since the early on releases.  Features like “Office Anywhere” and “External Assignment” have been the minimum daily adult requirement for ShoreTel mobility from the very early releases and they continue today and they continue with Version 10.   ShoreTel has refined the “find me” functionality in this latest release to include a number of new capabilities including “call screening” and the ability to route a call before the caller hears your Voice Mail greeting!
There is an ever increasing group of knowedge workers and professional staff that spend very little time sitting at a specific desk location.    Sales and IT professionals, for example,  are always on the move and away from their desk.   With ShoreTel 10 we can now route the caller to your “find me” locations before the caller hears a greeting.  Depending on your selected call handling mode, you can route an incoming call directly to your cell phone, with full call screening.  This is not a simple call fowarding feature, it is an intelligent process of routing calls and enabling the recipent to determine the priority of the call and then accept or reject the caller.  If the caller is rejected, they then hear your Voice Mail greeting.  (Make sure you don’t invite them to press 1 to activate “find me” as they have already gone down that path)!
Generally, you would set up your “find me follow me” locations as part of your basic Call Manager setup.    You then associate that process with one of your calling handling modes.  I for one, do not want people hitting “find me” when I am in the office and in my Standard call handlign mode.  When I am out of the office, I might want to offer the caller this option, so I associte this process with that call handling mode.   What about the professional who is never at their desk?  Version 10 has a key new option in the “find me” setup: “enable Find me for incoming calls before playing my greeting”.   Additonally you can elect to send the caller CID and even “Enable Callers Name for find me”.
This last option cause the system to prompt ” the person you are calling requests your name”.   The system records what the caller mutters and then follows the “find me” instructions to locate you at one or two locations.   When your cell phone rings you will hear “this is the ShoreTel Voice Messaging system with a call from”, at which time we will insert the recorded mutterings of the caller for your edification.   Press 1 to accept, 2 to reject or 3 to repeat the caller ID.  If you did not elect this option which many might consider obnoxious and rude, the system will speak the numeric caller ID phoen number unless it is another ShoreTel user from within your system.  In this last case, you would hear the ShoreTel play the record name of that users mailbox.
This is only one of the mobility solutions that ShoreTel offers.   Other features including Mobile Call Manager and External Assignment also prove to be powerful options to keep you intouch and availalbe, regardless of your geographic location.    The following film clip walks you through the process of setting up “find me follow me”.  It is part of a four part series on setting up Call Handling Modes.    Enjoy and email your comments and questions to DrVoIP!

ShoreTel Compatible Audio Conference Bridge on a Plug Server?

The Sheevaplug computer is an amazing appliance!  Think of the applications you could create on this 3 watt PC often confused as a wall transformer  by the uninitiated.   In fact I have a bunch of “wall warts” under foot  for a variety of electronic devices on my desk that need stepped down AC power and the Sheevaplug server is smaller than any of them!    A  Plug Computer is designed to draw so little power that it can be left on all the time.  Unlike other embedded devices, it contains a gigahertz- class processor designed to offer PC- class performance, Ethernet interface, USB port and a SD Flash Card.  OMG! Geek Heaven!

As a technical support organization,  we needed a network monitoring tool to help us diagnose WAN QOS issues for our ShoreTel and CISCO VoIP clients.  How do you get an appliance on a clients network that can connect to the mother ship, capture network performance statistics and be left on all the time with no large power consumption?  We also needed something that was “plug and play” and dirt cheap as we give them to our ShoreTel multi-site clients who are under contract as part of our normal support service!   With this little plug computer  we can put a full network monitoring appliance on the network and try to stay ahead of the QOS issues that result from bandwidth, latency and jitter fluctuations.

With the network monitoring solution solved,  we started looking for other useful VoIP applications we might stuff into this plug computer.     Sometime back we created a fully featured audio conference server in software.  The goal was to make it possible for clients to create multi  party fully managed, audio conferences without having to spend tens of thousands of dollars.   Thanks to SIP we were able to do just that and the results were exceptional.  (Click here for full specifications  http://www.siplistic.com/tutorials/setup-users-and-standing-conferences .   The marketing challenge was  the fact that the server hardware and OS cost more than the application software!

So that became the next project to take over in our wonderful world of VoIP!   We have now achieved what would have been unthinkable only a year ago!  We can now provide the same audio conference solution including the hardware at the same price we charged for the application software!  Thanks to the wonderful engineers at Marvel  we have been able to realize a fully feature, SIP based audio conference server on an appliance that draws less than 3 watts of power!  How green can you get?  Now the problem is how to keep people from stepping on it!

marvell_sheevaplug_computer2

I know it is crazy to get excited about a hunk of hardware, but next to my iPad this is a must have and I have a long list of applications that would make the world of VoIP more exciting!  How about a turn key telephone system for a remote office that cost less than an SG30 and interfaces to ShoreTel and CISCO as a SIP tie line?  Let me know your thoughts!

NOTE – March 2012-  We have had so much demand for this product that we now offer it as a SKU through our product company, http://www.Siplistic.com !  We can ship you a turn-key Audio Conference Appliance for $1995 including the Server Hardware.  Answer a few configuration questions, and you will have a 24-94 port appliance with web interface administration as fast as Fedex!  Price includes remote configuration and installation on ShoreTel, CISCO, Microsoft or Asterisk!  – DrVoIP!

Log Blog – Debugging ShoreTel Voice Mail with vmail.log

We should probably do several blogs on logs!   Logs to an engineer are like finger prints to a cop!   Both professionals need to play “detective” and gather all the hints they can in an exhaustive effort to figure out what went wrong!   Logs always have interesting information, written cryptic ally but useful none the less.  Recently we had to solve the case of the “missing message notification” and that sent us deep into Vmlogs.   The problem statement was that a message left in a voice mailbox was suppose to notify a cell phone when the message was marked urgent.  The client reported that this was not happening .  So how do you go about debugging this issue?

 ShoreTel gathers log information and stores them in a specific data folder.  The logs folder is contained in the X:\Shoreline Data folder on both your ShoreTel HQ server and your Distributed Voice Mail Servers.  This folder is a critical component in any disaster recovery plan as it contains all the information you need to recreate your system.  For example, you system automated attendant prompts are located here, so make sure you back this folder up along with the configuration database.   The Log folder contains a number of logs that can be used to trouble shoot ShoreTel system issues and you should become familiar with them.  For purposes of this blog, we are going to focus on the vmail logs.  These logs are created for a 24 hour period and are time date stamped accordingly.  You will find this folder and its parent folders, exist on each ShoreTel server.

 Poking around in the Shoreline Data folder is instructive.   These is a sub folder named VMS.  This folder contains several other folders that effectively define the Voice Mail structure of the system, or at least of the Voice Mail boxes that live on that server.  In the folder marked ShoreTel, you will find a folder for each voice mailbox on that server, named for the extension number.  Inside that folder will be the data pointer and the wav files for the mailbox name and the various call handling mode greetings.   The actual voice mail messages, however, are contained in one massive folder named Messages, also in the VMS folder.   The Message folder contains all of the voice mail messages saved as wav files with cryptic file names.   Moving through the vmail logs, not only can you associate the messages with a specific mailbox,  you can generally get the password to that mailbox as it is saved in clear text.

The vmail log is verbose and very English like in is format.   It does not take much time to get comfortable with the interpretation of this log.   Generally, when reviewing any log, you have some basic information about what you are looking for.  Often you will have a GUID or an extension number that when coupled with time can help you search the log for a specific call.   In this log we can see the incoming call answered by the voice mailbox and the caller Id captured for call back and email notification.   We can see the various key strokes that the caller entered and we can also capture the name of the WAV file that ShoreTel will write out to the Message folder.

 If any of the out dial features are activated, you can see the perform in the mail log, including  the number dialed and any digits captured by the system when the caller answers.   Generally, all of the activities associated with this phone call are recorded to this log.  Working between the log and the VMS Folder you can locate messages for a particular user.  In this example we were able to trace the incoming caller ID through to a mailbox, watch the caller interact with the mailbox by generating DTMF digits and then mark the message urgent.  The logs continue to demonstrate that the system then set up an external call to a remote phone, played the ShoreTel voice mail notification greeting, collected the acceptance of the voice mail and the user password.  The system then marks the message heard and moves it to the delete message queue.  

 All in a days work for a log file!  If you have to debug ShoreTel, Logs are your new best friend!