Monthly Archives: August 2009

Migrating the OCS Enterprise Edition Back-End Databases

There is a blog post here: http://blogs.technet.com/dodeitte/archive/2009/06/05/how-to-move-ocs-enterprise-sql-database-to-another-server.aspx

This post outlines the basic process of taking the databases offline, migrating them, mounting them in the new instance and running LCSCMD to update the pool backened.

I recently did this in a production deployment of R2 and actually found a missing step, there was also a post on the Technet forums with a user having the same issue so I figured I would post the updated process here. This may not always be the case, but a key thing to check, and what ended up being the fix in my situation was the actual pool setting in active directory.

I believe the attribute that the below command updates is msRTCSIP-BackEndServer

LCSCmd.exe /Forest /Action:UpdatePoolBackend /PoolName:<pool name> /poolbe:<SQL instance name (machine\instance name)>

When I ran through this process I found that when I opened ADSI Edit and browsed to this attribute it actually had not changed.

adsieditbackenddatabase

The DN For the pool object will be located at : CN=Poolname,CN=Pools,CN=RTC Service,CN=Microsoft,CN=System/Config Container,DC=Domain,DC=com

 

Again this may not always be the case but in my experience this was thef ix for the issue.

tweetmeme_source = ‘winxnetuc’;
tweetmeme_service = ‘bit.ly’;

R2 July Updates Break Dial In Conferencing Pin Services (If you miss an update)

 

One of the more confusing things about the QFE sets Microsoft releases is that the KB articles specifically say to only apply patches if you are experiencing the issues, however in an environment like OCS if you patch some components, others will not work.

After applying the July round of updates to our internal environment users were no longer able to authenticate to PSTN dial in conferences using their extensions and pin numbers. If the user signed into CWA to check this information they would see this message:

cwaerror

I poked around a bit and noticed one thing that was changed from before I applied the updates, this was not the root cause of the issue but may be something to look out for, my conferencing region was assigned to the wrong location profile, prior to these updates it was assigned to the correct location profile:

confattendant1

As you can guess that is a testing location profile with the number 2 on the end.

 

The root cause of the issue was actually related to the below error message which I was receiving on the EE Front End Server:

Error    8/22/2009 7:40:41 AM    OCS UserPin Service    47019    (1044)

ocsuserpinserviceerror 

This pointed to a database issue, I reviewed the July updates and noticed I had not applied the backend database hotfix, I promptly installed the SQL 2005 Client tools on my front end server and ran this Command to install the July backend database update.

dbupdatecli

Once I installed this update I was able to connect to my CWA server and view my correct dial in information, as well as authenticate with conferencing bridges via PSTN.

I guess it is just important to note that you should install all updates associated with a QFE release or it is possible to run into issues like this.

The secret to VGA and HD Video in OCS 2007 R2

One of the great features in OCS 2007 R2 is the support for HD video for peer to peer calls. This is still not supported in conferences, however you can utilize VGA and HD Cameras in video calls between users. There are a couple of important things to know about this to get it working.

 

You will notice in the Front End settings for the pool you can specify a maximum video quality:

image

This setting will specify the maximum video quality for the pool, however you will need to provide client side policies to enable higher quality video.

If you wish to utilize VGA or HD720p video between two endpoints you will need to ensure the below registry entry is present on both of the clients.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\RTC\Quality]
"MaxAllowedSendVideoSize"=dword:00000002
"MaxAllowedReceiveVideoSize"=dword:00000002

This will allow the two users to send and receive HD video, by default this is not enabled.

You will want to make sure you take bandwidth and PC capabilities into consideration when enabling this feature because video can be intense on the client desktop as well as a bandwidth killer as you can see in the first screenshot with the estimated amount of bandwidth required to send that video stream.

You can find more information about the client registry setting here: http://office.microsoft.com/en-us/help/HA102362191033.aspx

You can find more information about the OCS R2 HD Video enhancements here: http://technet.microsoft.com/en-us/magazine/2009.03.ocsr2.aspx?pr=blog

At this time there are no HD Video endpoints certified for OCS but by the end of this year Tandberg and Microsoft should have desktop USB devices capable of HD720p video with OCS.

Configuring OCS DVT Agent/Organizer Scenario

There is no documentation on configuring the OCS Deployment Validation Tool in the Agent/Organizer Scenario. Setting up the Auto-Answer Agent is pretty straight forward and is documented in detail at Byron Spurlock’s blog here: http://blogs.msdn.com/byrons/archive/2009/06/23/test-posting.aspx

The Agent/Organizer scenario however is a bit more interesting.

To start, you can find the Deployment Validation Tool installation files in the OCS 2007 R2 Resource Kit files which can be downloaded here: http://www.microsoft.com/downloads/details.aspx?familyid=9E79A236-C0DF-4A72-ABA6-9A9602A93ED0&displaylang=en

In the installation directory there is a sub folder for Deployment Validation Tool which has DVTAgent.MSI and DVTOrganizer.MSI.

First off both installs require you to install the UCMA Redistributable package which you can find in the OCS 2007 R2 setup files under Setup\AMD64\Setup\ucmaredist.msi

Once that package is installed you will also need to install SQL Express 2005 SP2 on the server you have picked as the organizer. This should not go on any heavy utilized OCS roles like the front end servers, in my environment I chose to put this on the Monitoring Server. Install SQL Express with all of the default options and continue with the Organizer install.

Before you run the organizer install be sure to create a SIP enabled account for the organizer. In my examples my account is DVT_Organizer@winxnet.com .

Once SQL Express 2005 SP2 is installed you can run the DVTOrganizer.MSI.

The organizer service installs are pretty straight forward, the defaults should work for the installation. However, there is one piece in the Organizer Configuration that will throw you off. By default using the guides for Auto Answering Agent configuration you are instructed to leave the box checked for Use Default Credentials when configuring the Agents. I was having issues where all of my agents were showing offline and the Organizer server would report this error in the event logs:

 

Warning    8/3/2009 9:15:19 PM    OCS Deployment Validation Tool    51019    (1050)

The service wasn’t able to register with focus. It will attempt to reregister automatically.

Service : Organizer, URI: dvt_organizer@winxnet.com
Cause: This might be due to a configuration error, or due to network or focus problems.
Resolution:
Please check the configuration of the service including the account credentials used to register with focus.

After adjusting the Organizer configuration to specify the actual user credentials I was able to get the organizer to register with the focus and recognize the agents as Online.

 

configorganizer1

Once you have the organizer installed you will want to install a couple of agents, try to put them across different subnets or different physical locations to make sure you get diverse scenarios for your call testing. Also try not to put the agent on any OCS roles if possible, I have mine located on terminal servers and desktops in the environment. You will need to create SIP enabled accounts for each agent in the environment. In my example I have DVT_SERVERAGENT@winxnet.com, DVT_DCAGENT@winxnet.com and DVT_DESKTOPAGENT@winxnet.com these represent three separate subnets in my environment. Install the UCMARedist.MSI package on the agent machine and use the default information for the installation.

agentinstall1

During the installation you may also see this error pop up which you can ignore:

agentinstallerror

At the end of the installation you will see the Agent Configuration tool pop up.

You will want to configure the agent as a Unified Communications agent with the SIP URI you have created for the agent and to be safe, manually configure the server information.

agentconfig1

If you receive an error while configuring this agent and you are using Server 2008 or Vista/Windows 7 you will want to make sure UAC is off, or you will want to re open the agent configuration by choosing Run As Administrator.

Once this configuration is complete you will need to setup the service in windows to use the sip account of the agent.

agentconfigservicelogon

Hit OK and start the service, jump back over to the organizer server and open the Organizer Admin Console to add your agents to the roster.

organizeraddagent1

Its important to note that you will need at least 2 agents and an organizer to perform any tests. The organizer will perform tests between the agents in your roster with peer to peer as well as conference calls.

Once in the Admin Console you can view your test suite status, the easiest thing to do is to hit restore to default and it will configure the default tests between all of the agents in your roster.

testsuite

The screenshot above shows the test suite tab with tests in progress and tests that have completed.

You can also view reports and alerts from all of your tests in their respective Tabs. The reports tab will show all tests that were done, if you choose a test and right click you can choose to see the complete details of the test which will look like this.

reportdetails

The report above shows the agents and details such as MOS Scores and Network connectivity and test length. This can be very useful when troubleshooting call quality issues.

If you have any additional questions about configuration please reach out to me, I am constantly testing new ways to use this tool and I will try to do another write up on the MOM Integration for alerting purposes as well.

Live meeting and Conferencing Add-In Client Updates

Microsoft released a few updates yesterday for their Live Meeting client, the conferencing addin(still no office 2010 support) and for group chat. Grab em while they’re hot!

Live Meeting Client Update:

http://support.microsoft.com/kb/969697

Conferencing Addin for Outlook:

http://support.microsoft.com/kb/969696

Group Chat Update Package:

http://www.microsoft.com/downloads/details.aspx?FamilyID=e5924bf9-b042-4c53-b4a6-79c7e5c9749b&displaylang=en

Live meeting and Conferencing Add-In Client Updates

Microsoft released a few updates yesterday for their Live Meeting client, the conferencing addin(still no office 2010 support) and for group chat. Grab em while they’re hot!

Live Meeting Client Update:

http://support.microsoft.com/kb/969697

Conferencing Addin for Outlook:

http://support.microsoft.com/kb/969696

Group Chat Update Package:

http://www.microsoft.com/downloads/details.aspx?FamilyID=e5924bf9-b042-4c53-b4a6-79c7e5c9749b&displaylang=en

Problem Viewing QOE and CDR Reports

In our internal environment randomly the Monitoring and CDR Reports randomly stopped working. After some troubleshooting and help from Google translator: http://blogs.technet.com/stefan/archive/2009/07/07/probl-me-de-visualisation-des-rapports-cdr-qoe.aspx

We were able to verify that the RTCReportPack account did not have “Allow Log on Locally” on the SQL Server.

After clicking to generate a report we would see this error:

 

  • An error has occurred during report processing. (rsProcessingAborted)
  • Cannot impersonate user for data source ‘CDRDB. (rsErrorImpersonatingUser)
  • Logon failed. (rsLogonFailed)
  • For more information about this error navigate to the report server on the local server machine, or enable remote errors.
  •  

    After adding the RTCReportPack account to the Allow Logon Locally group in the local security policy this went away.