Welcome to TechNet Blogs Sign in | Join | Help

OCS SIMPLE

Simplifying common OCS scenarios since... well since I started...
Early Media and Windows Server 2008 Firewall

After having seen this at a few customer sites and with a few partners it became clear that a blog post needed to be created to address this issue.

Basically this can present in two different ways,

1. Caller A calls a PSTN phone number, and the called party answer the phone. The called party cannot hear Caller A for a few seconds.

2. Caller A calls a PSTN phone number, and the called party answer the phone. Caller A cannot hear the called party for a few seconds.

Now you may ask yourself, isn't this why the early media option was built into the SIP/PSTN gateways? The answer is yes, what has been discovered is that when the mediation server is running on Windows Server 2008, the built in firewall fails to open the proper UDP port in a timely manner.

On installation of the Mediation Server role the appropriate TCP ports are opened see image1 below.

clip_image002

The firewall then waits for an outbound UDP packet before it opens the inbound UDP ports thus allowing RTP traffic to flow. Of course this is why the Early Media option was built into so many SIP/PSTN gateways and PBXs, waiting for the OK message can create delay.

Disable the firewall and the delay disappears, but what responsible admin would leave a firewall disabled?

Simply publish the appropriate UDP ports and the delay is gone for good.

I used the following command to open all UDP ports to the MediationServerSvc.exe application:

netsh advfirewall firewall add rule name="allow messenger" dir=in protocol=UDP program="c:\program files\Microsoft Office Communication Server 2007 R2\Mediation Server\MediationServerSvc.exe”  action=allow

When viewed in the MMC the relevant screenshots are below:

clip_image004

clip_image006clip_image008clip_image010

Thank you Stefan Plizga and the translation service on BING for helping me out with this post:

http://www.microsofttranslator.com/BVFrame.aspx?s=tgt&ref=SERP&from=fr&to=en&a=http%3A%2F%2Fblogs.technet.com%2Ffrmcsuc%2Farchive%2F2009%2F03%2F10%2Feviter-quelques-probl-mes-d-tablissement-de-la-voix-lors-d-appel-vers-l-ext-rieur-avec-office-communicator.aspx>

How to create/configure a Response Group

Office Communication Server 2007 R2 introduced the concept of Response Group Services, these are very simple call routing applications that can really help organizations cleanly route calls. While this is not a solution for Call Centers or Contact Centers it is a great solution when you have departmental or function oriented call routing needs. For example and IT Help Desk, or a HR Benefits help line, or perhaps just the ability to route all inbound calls to several receptionists. There are several types of workflows to choose from and several steps utilizing multiple tools that must be used in order to configure a working Response Group. I highly recommend the "Office Communication Server 2007 R2 Resource Kit" book to help understand this process in detail. However let's see what creating a simple response group that is design to ring 2 people simultaneously would look like.

First step is creating a contact object, this requires that you use the "RGSCOT.exe" application from the command line. This application exists in " C:\Program Files\Common Files\Microsoft Office Communications Server 2007 R2" assuming C is your system drive letter.

Gotcha Alert: One very important note is that RgsCot.exe requires Domain Administrator permissions where the rest of the tools require only Office Communications Server Administrator permissions.

Below is the command I used to create a sample contact object in Active Directory, note that only the /PoolFQDN, /PrimaryURI, and /DisplayName are mandatory. The other options are optional, but for our purposes necessary, you can create an object without /LINEURI and add it later by running this same command with the /edit switch.

Step 1: RgsCot.exe /create /PoolFQDN:OCSFE1.litwareinc.com /PrimaryURI:sip:HRSUPPORT@litwareinc.com /DisplayName:"Sample RGS for HR Support" /DisplayNumber:+18008201234 /LineUri:Tel:+18008201234

  • Output should look like this:
    • Starting to save the contact object...
    • A new contact object with SIP address sip: HRSUPPORT@litwareinc.com has been created.
  • Next we need to define the set of Agents, to do this we use the "Response Group Administration MMC snap-in" to configure these settings.
  • To access the MMC right click on the pool, mouse over properties, mouse over applications, and select Response Group Service Properties.

clip_image002

Step 2: Select the "Agents" folder and choose the "Add Agents" from the actions pane.

  • Then enter the alias for the user you wish to add or enter "*" to query all voice enabled users.
  • Then select the users and click "Add".

Step 3: Select the "Groups" folder and choose the "New Group" from the actions pane.

  • On the General tab enter a name for the Group , click on the "Agents" tab.
  • On the "Agents" tab select the "Define a Custom group of Agents" radio button
  • Move the appropriate users listed in the "Available Agents" column to the "Assigned Agents" column and click the policies tab.
  • Under "Routing Method" select Parallel and click OK to close the Dialog.

(NOTE: we are selecting parallel to ring all available agents simultaneously, select which ever routing method best meets your needs)

Step 4: Select the "Queues" folder and choose the "New Queue" from the actions pane.

  • On the General tab enter a name for the Queue, click on the "Groups" tab.
  • On the "Groups" tab Move the appropriate group(s) listed in the "Available Groups" column to the "Assigned Groups" column and click the policies tab.
  • On the "Time Out" tab ensure that the "Never Time out the call" check box is checked.
  • On the "Overflow" tab ensure that the "No Overflow" check box is checked.
  • Click OK to close the Dialog.

(NOTE: we For simplicity we are not configuring Time Out and Overflow but these can be changed in your environment as desired)

Step Five will utilize the Response Group Configuration tool (Web Interface), this is launched automatically when creating a new workflow.

Step 5: Select the "Workflows" folder and choose the "New Workflow" from the actions pane.

  • Under the "Create a New Workflow option locate the Enhanced Hunt Group option and Click the "Create" button.
  • Ensure that the "Activate the workflow" option is checked.
  • In the "Select the address of the group that will receive the calls" select the create contact group object from Step 1.
  • Optional: type a description in the description field.
  • Ensure that the language is set to "English(United States)(en-US)"

(NOTE: if you wish to add additional languages use the resource kits RgsLang.exe tool located in the \RGS folder.)

  • In the "Configure a Welcome Message" ensure that the option to play a message is checked.
  • Type the desired text-to-speech message or upload a custom WAV file with a recorded message.
  • Under the "Specify Your Availability" select the appropriate time zone and set the "Preset schedules" drop down to Always Open.
  • Under the "Configure a Queue or Time out Actions" select the Queue made in step 4
  • Ensure the "Never time out the call" option is checked.
  • Optionally: change the music on hold from default, add a delegated manager, play with availability and holiday settings.
  • Click the Save button at the bottom of the page.

Call the designated number from a PSTN or call the SIP URI of the contact object created, to test. Ensure that the two users designated are logged in and enjoy the testing.

Jeff Nye

Senior Consultant

Unified Communications Voice Global Practice

Page view tracker