<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Rui Silva - UCspotting</title><link>http://blogs.technet.com/ucspotting/default.aspx</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Tales from the Crypt..oAPI Vulnerability (KB974571)</title><link>http://blogs.technet.com/ucspotting/archive/2009/10/15/3287189.aspx</link><pubDate>Thu, 15 Oct 2009 22:19:12 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3287189</guid><dc:creator>ucspotting</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3287189.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3287189</wfw:commentRss><description>&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/Tales-From-The-Crypt-The-Complete-First-Season_2.jpg"&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 10px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Tales-From-The-Crypt-The-Complete-First-Season" border="0" alt="Tales-From-The-Crypt-The-Complete-First-Season" align="right" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/Tales-From-The-Crypt-The-Complete-First-Season_thumb.jpg" width="172" height="244" /&gt;&lt;/a&gt;   &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;As much as I would like to catalog the story so far around &lt;a href="http://support.microsoft.com/kb/974571" target="_blank"&gt;KB974571&lt;/a&gt; as fiction, the truth is that it resembles more to a horror movie.&lt;/p&gt;  &lt;p&gt;Before going any further, I would like to say that &lt;span style="background-color: #ffff99"&gt;Microsoft recommends thorough testing of any software patch/hotfix before applying them in a Production environment&lt;/span&gt;. Having said that, I would like to invite you all to read &lt;a href="http://technet.microsoft.com/en-us/library/cc750077.aspx" target="_blank"&gt;Best Practices for Applying Service Packs, Hotfixes and Security Patches&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;The above mentioned TechNet article states the following:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;The basic rules are:&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;&amp;quot;The risk of implementing the service pack, hotfix and security patch should ALWAYS be LESS than the risk of not implementing it.&amp;quot;&lt;/em&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;And,&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;&amp;quot;You should never be worse off by implementing a service pack, hotfix and security patch. If you are unsure, then take steps to ensure that there is no doubt when moving them to production systems.&amp;quot;&lt;/em&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Whether you’re superstitious, religious or a devoted fan of Murphy Laws, the naked truth is that sh*t happens! And that’s exactly what recently happened with OCS and the release of the security patch KB974571. For more information, please read the post from the OCS Team Blog: &lt;a href="http://communicationsserverteam.com/archive/2009/10/14/632.aspx#comments" target="_blank"&gt;Urgent: Known issue under investigation with KB974571 and LCS/OCS&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;But the KB974571 hotfix has another side effect that I recently experienced. Besides affecting the services of LCS/OCS, the very same patch can also prevent the installation of new OCS servers.&lt;/p&gt;  &lt;p&gt;Recently, I was building a new demo environment, when, nearly at the end of the installation of a standard edition server, during the activation phase of the server, I got the following error:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/failed_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="failed" border="0" alt="failed" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/failed_thumb_1.png" width="336" height="263" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The OCS installation logs revealed the following information:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;font color="#ff0000"&gt;Failure        &lt;br /&gt;[0xC3EC796C] One or more errors occurred during execution of the wizard; the wizard was unable to complete successfully. Please check the log file for more information.&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log1_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="log1" border="0" alt="log1" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log1_thumb.png" width="446" height="389" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After expanding the log, the error pointed out to the Activation Standard Edition Server Log.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log2_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="log2" border="0" alt="log2" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log2_thumb.png" width="446" height="389" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The error in the Activation Standard Edition Server Log was:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;font color="#ff0000"&gt;Failure        &lt;br /&gt;[0xC3EC78D8] Failed to read the Office Communications Server version information. This can happen if the computer clock is not set to correct date and time.&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log3_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="log3" border="0" alt="log3" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/log3_thumb.png" width="446" height="389" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;After spending some time troubleshooting the issue, with no solution in sight, I started to doubt the health of the virtual machines I was using (first) and then my sanity (last). But then, when I was on a dead end, a customer asked me to help him installing a new Edge Server. Guess what? Same error, same problem.&lt;/p&gt;  &lt;p&gt;Since I was getting lots of noise around KB974571 (I already knew it could affect installed LCS/OCS services), I decided to uninstall that specific hotfix from the list of installed patches. That solved the problem!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/uninst_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="uninst" border="0" alt="uninst" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TalesfromtheCr.oAPIVulnerabilityKB974571_14001/uninst_thumb.png" width="431" height="303" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;span style="background-color: #ffff99"&gt;&lt;span style="background-color: #ffff99"&gt;&lt;span style="background-color: #ffff99"&gt;Microsoft recommends to postpone installing KB974571 on any LCS 2005 / OCS 2007 /OCS 2007 R2 servers.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;“&lt;em&gt;Microsoft is investigating this issue, and will determine the most appropriate way to address it. Customers who are not running OCS or LCS server are not affected by this known issue, and can safely ignore this issue.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Customers who have deployed the OCS or LCS product on a server should assess the risk that is involved to decide whether to install the security update on that server. These customers should revisit this Knowledge Base article often, because this article will be updated as soon as more information and a resolution are available.&lt;/em&gt;”&lt;/p&gt;  &lt;h3&gt;[UPDATE]&lt;/h3&gt; &lt;span style="background-color: #ffff99"&gt;   &lt;p&gt;&lt;span style="background-color: #ffff99"&gt;There is now a fix for this issue, available through the &lt;a href="http://support.microsoft.com/kb/974571" target="_blank"&gt;KB974571&lt;/a&gt; article. Look under the section “&lt;strong&gt;Resolution for the known issue&lt;/strong&gt;”.&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt; &lt;/span&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3287189" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Notes+from+the+field/default.aspx">Notes from the field</category></item><item><title>Live Meeting: Best Before Date (See Below)</title><link>http://blogs.technet.com/ucspotting/archive/2009/08/14/3273568.aspx</link><pubDate>Fri, 14 Aug 2009 18:52:49 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3273568</guid><dc:creator>ucspotting</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3273568.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3273568</wfw:commentRss><description>&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/best-before-date_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="best-before-date" border="0" alt="best-before-date" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/best-before-date_thumb.png" width="500" height="512" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Although on-premises web conferencing meetings organized with Office Communications Server (OCS) are not perishable products (and thus they don’t require a “best-before date”), there is some configuration involved around meeting life-cycle that I would like to explore a little bit further.&lt;/p&gt;  &lt;p&gt;Suppose you organize a web conference using the &lt;a href="http://office.microsoft.com/search/redir.aspx?assetid=DC102549931033&amp;amp;url=http://office.microsoft.com/en-us/help/HA101733831033.aspx&amp;amp;hurl=22AD4AAB1E7C9068011E7459FACBCAAA" target="_blank"&gt;Live Meeting client&lt;/a&gt; or the &lt;a href="http://office.microsoft.com/search/redir.aspx?assetid=DC102549881033&amp;amp;url=http://office.microsoft.com/en-us/help/HA102368901033.aspx&amp;amp;hurl=D3B0798A3B458BA15D226BF67850A1AA" target="_blank"&gt;Conferencing Add-in for Microsoft Outlook&lt;/a&gt;. You invite some attendees and during the meeting some content is generated and uploaded (e.g. PowerPoint slides, polls, whiteboard, etc.).&lt;/p&gt;  &lt;p&gt;Three weeks after this specific meeting has occurred, you want to review some of the annotations that were made on the slides and some of the brainstorming carved on the whiteboard. “No problem”, you think. After locating the appointment on the Outlook Calendar, you click the “Join the meeting” hyperlink, but suddenly the following error pops-up:&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;     &lt;br /&gt;The meeting has ended or the information you entered was not recognized. Contact the meeting organizer for more information.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/lm-expired_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="lm-expired" border="0" alt="lm-expired" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/lm-expired_thumb.png" width="437" height="356" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Before going any further, let’s review some of the concepts associated with meeting life-cycle:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Deactivation –&lt;/strong&gt; The meeting is deactivated when the organizer terminates it and all the authenticated users leave. When you deactivate a meeting, you end the instance of the meeting, but the meeting continues to exist in the database and can be reactivated and rejoined. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Expiration –&lt;/strong&gt; After the meeting is deactivated, the expiration clock starts ticking. When you reach the expiration time, it’s no longer possible to rejoin the conference, unless it’s reactivated. The default expiration time for scheduled meetings is 14 days. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Reactivation&lt;/strong&gt; &lt;strong&gt;–&lt;/strong&gt; If the meeting still exists in the database, it can be reactivated simply by rescheduling it using Outlook. Since you can reschedule it to occur in the past (although I can’t think on a reason to do this), the meeting will only reactivate if it falls in the last 14 days, because this is the default expiration time. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Content Expiration Grace Period&lt;/strong&gt; – Grace period in addition to the expire time, after which the Web Conferencing Server should clean up content for a conference. When you reach the end of the grace period, the meeting and all associated meeting content are deleted from the database. The default grace period is 14 days after the expiration time. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;With the present release of OCS it’s not possible to control the duration of the meeting expiration period (although the content grace period can be extended). This is the default behavior for the meeting expiration time (txs Tarang Mittal):&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;For a single one time scheduled meeting, the conferences expires after 14 days. &lt;/li&gt;    &lt;li&gt;For a recurring meeting, the conference expires 14 days after the last instance of that meeting. &lt;/li&gt;    &lt;li&gt;For a recurring meeting with no end date, the conference never expires. &lt;/li&gt;    &lt;li&gt;For a Meet Now, the session expires in under 8 hours. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Hopefully, after this explanation we can now understand the error message we got when trying to rejoin a meeting that had ended 3 weeks before. Since the expiration time is 14 days, it’s no longer possible to rejoin it. The good news is that we have an additional 14 days for the content to expire, after the default meeting expiration period. So, by simply rescheduling the meeting using Outlook, we can now successfully reopen it and check the content we were looking for.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/LM_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="LM" border="0" alt="LM" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/LM_thumb.png" width="484" height="366" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Managing Meeting Life Cycles with WMI&lt;/h3&gt;  &lt;p&gt;There are some parameters in OCS that can only be controlled using WMI, such as the ones involved with meeting life-cycle.&lt;/p&gt;  &lt;p&gt;For conference deactivation, there are two pool-level WMI settings that are stored as properties in the &lt;strong&gt;MSFT_SIPMeetingScheduleSetting&lt;/strong&gt; WMI class in the root\CIMV2 namespace:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;UnAuthenticatedUserGracePeriod&lt;/strong&gt; [Integer (0~60) minutes] &lt;strong&gt;–&lt;/strong&gt; Grace period allowed for anonymous or federated users to stay in the meeting without any authenticated user in the meeting. The default value is 10 minutes. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;MaxMeetingLength&lt;/strong&gt; [Integer (0 ~ 8760) hours] &lt;strong&gt;–&lt;/strong&gt; Maximum length of any meeting without join activity. The default value is 24 hours. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For conference expiration, there is one pool-level WMI setting that is stored as a property in the &lt;strong&gt;MSFT_SIPDataMCUCapabilitySetting&lt;/strong&gt; WMI class in the root\CIMV2 namespace:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;ContentExpirationGracePeriod&lt;/strong&gt; [Integer (0~365) days] &lt;strong&gt;–&lt;/strong&gt; Grace period in addition to the expire time, after which the Web Conferencing Server should clean up content for a conference. The default value is 14 days. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;     &lt;br /&gt;To use VBScript to modify deactivation and expiration WMI settings&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The following 2 scripts will modify the WMI properties previously discussed. They must be run on the OCS Web Conferencing Server using the appropriate administrative permissions.&lt;/p&gt;  &lt;div&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;' &lt;/span&gt;
&lt;span style="color: #008000"&gt;' ContentExpirationGracePeriod&lt;/span&gt;
&lt;span style="color: #008000"&gt;'&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objLocator
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objService
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstances
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstance

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Connecting to local WMI store...&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objLocator = CreateObject(&lt;span style="color: #006080"&gt;&amp;quot;WbemScripting.SWbemLocator&amp;quot;&lt;/span&gt;)
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objService = objLocator.ConnectServer(&lt;span style="color: #006080"&gt;&amp;quot;.&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;&amp;quot;root\cimv2&amp;quot;&lt;/span&gt;)

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPDataMCUCapabilitySetting&amp;quot;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objInstances = objService.ExecQuery _
    (&lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPDataMCUCapabilitySetting where backend=&amp;quot;&lt;/span&gt;&lt;span style="color: #006080"&gt;&amp;quot;(local)\\rtc&amp;quot;&lt;/span&gt;&lt;span style="color: #006080"&gt;&amp;quot;&amp;quot;&lt;/span&gt;)
    &lt;span style="color: #008000"&gt;' For OCS Enterprise Edition: backend=&amp;quot;&amp;quot;server name\\sql instance&amp;quot;&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; IsNull(objInstances) &lt;span style="color: #0000ff"&gt;Or&lt;/span&gt; (objInstances.Count = 0) &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;
    Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Error: No instance&amp;quot;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;For&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Each&lt;/span&gt; objInstance &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; objInstances
      objInstance.Properties_.Item(&lt;span style="color: #006080"&gt;&amp;quot;ContentExpirationGracePeriod&amp;quot;&lt;/span&gt;).Value = 365
      objInstance.Put_
      wscript.Echo objInstance.Properties_.Item(&lt;span style="color: #006080"&gt;&amp;quot;ContentExpirationGracePeriod&amp;quot;&lt;/span&gt;).Value
      wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Done!&amp;quot;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Exit&lt;/span&gt; &lt;span style="color: #0000ff"&gt;For&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Next&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;' MaxMeetingLength&lt;/span&gt;
&lt;span style="color: #008000"&gt;'&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objLocator
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objService
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstances
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstance

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Connecting to local WMI store...&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objLocator = CreateObject(&lt;span style="color: #006080"&gt;&amp;quot;WbemScripting.SWbemLocator&amp;quot;&lt;/span&gt;)
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objService = objLocator.ConnectServer(&lt;span style="color: #006080"&gt;&amp;quot;.&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;&amp;quot;root\cimv2&amp;quot;&lt;/span&gt;)

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPMeetingScheduleSetting&amp;quot;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objInstances = objService.ExecQuery _
    (&lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPMeetingScheduleSetting where backend=&amp;quot;&lt;/span&gt;&lt;span style="color: #006080"&gt;&amp;quot;(local)\\rtc&amp;quot;&lt;/span&gt;&lt;span style="color: #006080"&gt;&amp;quot;&amp;quot;&lt;/span&gt;)
    &lt;span style="color: #008000"&gt;' For OCS Enterprise Edition: backend=&amp;quot;&amp;quot;server name\\sql instance&amp;quot;&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; IsNull(objInstances) &lt;span style="color: #0000ff"&gt;Or&lt;/span&gt; (objInstances.Count = 0) &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;
    Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Error: No instance&amp;quot;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;For&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Each&lt;/span&gt; objInstance &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; objInstances
      objInstance.Properties_.Item(&lt;span style="color: #006080"&gt;&amp;quot;MaxMeetingLength&amp;quot;&lt;/span&gt;).Value = 8760
      objInstance.Put_
      wscript.Echo objInstance.Properties_.Item(&lt;span style="color: #006080"&gt;&amp;quot;MaxMeetingLength&amp;quot;&lt;/span&gt;).Value
      wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Done!&amp;quot;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Exit&lt;/span&gt; &lt;span style="color: #0000ff"&gt;For&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Next&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;div&gt;&amp;#160;&lt;/div&gt;

&lt;div&gt;&lt;strong&gt;
    &lt;br /&gt;To use WBEMTest to modify deactivation and expiration WMI settings&lt;/strong&gt;&lt;/div&gt;

&lt;ol&gt;
  &lt;li&gt;Log on to a server with Office Communications Server 2007 R2 administrative tools installed, as a member of the RTCUniversalServerAdmins group or an account with equivalent user rights. &lt;/li&gt;

  &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt;, click &lt;strong&gt;Run&lt;/strong&gt;, type &lt;strong&gt;wbemtest&lt;/strong&gt;, and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Windows Management Instrumentation Tester&lt;/strong&gt; dialog box, click &lt;strong&gt;Connect&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Connect&lt;/strong&gt; dialog box, in &lt;strong&gt;Namespace&lt;/strong&gt;, type &lt;strong&gt;root\cimv2&lt;/strong&gt;, and then click &lt;strong&gt;Connect&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Windows Management Instrumentation Tester&lt;/strong&gt; dialog box, click &lt;strong&gt;Query&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Query&lt;/strong&gt; dialog box, type the following in the &lt;strong&gt;Enter Query&lt;/strong&gt; box according to the WMI class name to be modified and then click &lt;strong&gt;Apply&lt;/strong&gt;: 

    &lt;br /&gt;&lt;b&gt;&lt;strong&gt;MSFT_SIPMeetingScheduleSetting&lt;/strong&gt; &lt;/b&gt;

    &lt;br /&gt;Select * from MSFT_SIPMeetingScheduleSetting where backend=&amp;quot;(local)\\rtc&amp;quot; 

    &lt;br /&gt;&lt;b&gt;&lt;strong&gt;MSFT_SIPDataMCUCapabilitySetting&lt;/strong&gt;&lt;/b&gt; 

    &lt;br /&gt;Select * from MSFT_SIPDataMCUCapabilitySetting where backend=&amp;quot;(local)\\rtc&amp;quot; 

    &lt;br /&gt;

    &lt;br /&gt;For an OCS Enterprise pool&lt;em&gt; backend=&lt;/em&gt;&amp;quot;&lt;var&gt;server name&lt;/var&gt;\\&lt;var&gt;sql instance&lt;/var&gt;&amp;quot; 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/01-meeting-lifecycle_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="01-meeting-lifecycle" border="0" alt="01-meeting-lifecycle" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/01-meeting-lifecycle_thumb.png" width="363" height="139" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Query Result&lt;/strong&gt; dialog box, double-click the result. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/02-meeting-lifecycle_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="02-meeting-lifecycle" border="0" alt="02-meeting-lifecycle" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/02-meeting-lifecycle_thumb.png" width="365" height="233" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Object editor&lt;/strong&gt; dialog box for the WMI class, double-click the property you want to edit in &lt;strong&gt;Properties&lt;/strong&gt;: &lt;/li&gt;

  &lt;li&gt;If you specified the &lt;strong&gt;MSFT_SIPMeetingScheduleSetting&lt;/strong&gt; WMI class in step 6 of this procedure, double-click &lt;strong&gt;UnAuthenticatedUserGracePeriod or MaxMeetingLength&lt;/strong&gt;. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/03-meeting-lifecycle_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="03-meeting-lifecycle" border="0" alt="03-meeting-lifecycle" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/MeetingLifeCycle_11769/03-meeting-lifecycle_thumb.png" width="366" height="337" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;If you specified the &lt;strong&gt;MSFT_SIPDataMCUCapabilitySetting&lt;/strong&gt; WMI class in step 6 of this procedure, double-click &lt;strong&gt;ContentExpirationGracePeriod&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;In the &lt;strong&gt;Property Editor&lt;/strong&gt; dialog box, change the value to the new value in the &lt;strong&gt;Value&lt;/strong&gt; box, and then click &lt;strong&gt;Save Property&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;When you are finished with the editing, in the &lt;strong&gt;Object editor&lt;/strong&gt; dialog box, click &lt;strong&gt;Save Object&lt;/strong&gt;. &lt;/li&gt;

  &lt;li&gt;Close all dialog boxes, and then close Windows Management Instrumentation Tester. &lt;/li&gt;

  &lt;li&gt;To verify that the change was applied, open Event Viewer and look for event ID 56015. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For more information, please read &lt;a href="http://technet.microsoft.com/en-us/library/dd572561(office.13).aspx" target="_blank"&gt;Managing Meeting Life Cycles&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3273568" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Web+Conferencing/default.aspx">Web Conferencing</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/WMI/default.aspx">WMI</category></item><item><title>The Artist Formerly Known as… RingCam</title><link>http://blogs.technet.com/ucspotting/archive/2009/06/27/3259206.aspx</link><pubDate>Sat, 27 Jun 2009 14:04:48 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3259206</guid><dc:creator>ucspotting</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3259206.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3259206</wfw:commentRss><description>&lt;p&gt;A long time ago in a galaxy far, far away… there was a device called Microsoft RingCam:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;RingCam: an inexpensive omnidirectional camera and microphone array designed for capturing meetings.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Hummm, could this be the missing link in Microsoft RoundTable evolution?&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/microsoft-ringcam_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="microsoft-ringcam" border="0" alt="microsoft-ringcam" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/microsoft-ringcam_thumb.jpg" width="137" height="240" /&gt;&lt;/a&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/roundtable_2.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="roundtable" border="0" alt="roundtable" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/roundtable_thumb.jpg" width="168" height="240" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt; Can you notice the “subtle” differences on the video capturing head?&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/ringcam-head_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ringcam-head" border="0" alt="ringcam-head" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/ringcam-head_thumb.png" width="184" height="244" /&gt;&lt;/a&gt; &lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/20071004-roundtable2_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="20071004-roundtable2" border="0" alt="20071004-roundtable2" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/20071004-roundtable2_thumb.jpg" width="184" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Oh well, at least the computer screen display didn’t change a lot from those early days:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/live-meeting-rt_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="live-meeting-rt" border="0" alt="live-meeting-rt" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/live-meeting-rt_thumb.jpg" width="250" height="181" /&gt;&lt;/a&gt; &lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/distributed-meetings_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="distributed-meetings" border="0" alt="distributed-meetings" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheArtistFormerlyKnownasRingCam_F431/distributed-meetings_thumb.jpg" width="241" height="181" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After some thorough investigation, I realized that Microsoft RingCam was developed as part of the &lt;a href="http://research.microsoft.com/en-us/projects/distributedmeetings/" target="_blank"&gt;Distributed Meetings&lt;/a&gt; project from Microsoft Research:&lt;/p&gt;  &lt;p&gt;“&lt;em&gt;The project was initiated in 2001 in the Communication, Collaboration, and Multimedia Processing group in Microsoft Research with Anoop Gupta as group manager. Later Anoop Gupta toke the position of Bill Gates technical assistant and the research group was merged with Signal Processing Group in Microsoft Research with group manager Rico Malvar. The new name of the research group was Communication, Collaboration and Signal Processing. &lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Around 2003 a decision was made to convert the technologies, designed during this project, into Microsoft product. Ross Cutler left Microsoft Research to become architect of the new team. Microsoft researchers continued to help the product team. Three years later the product was named RoundTable and deployed for evaluation in most of the conference rooms in Microsoft. Now it is available for our customers and is the default client for Microsoft LiveMeeting and Microsoft Office Communicator. More information for this product can be found &lt;/em&gt;&lt;a href="http://www.microsoft.com/uc/products/roundtable.mspx"&gt;&lt;em&gt;here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. See Bill Gates and Jeff Rikes introducing the new product on CNN &lt;/em&gt;&lt;a href="http://research.microsoft.com/en-us/projects/distributedmeetings/cnn_roundtable.wmv"&gt;&lt;em&gt;here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;”&lt;/p&gt;  &lt;p&gt;Here’s a small collection of some of the technical papers produced, as well as an explanatory video about the use of the distributed meeting technology:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://research.microsoft.com/apps/pubs/default.aspx?id=76787" target="_blank"&gt;Distributed Meetings: A Meeting Capture and Broadcasting System&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://research.microsoft.com/apps/pubs/default.aspx?id=76779" target="_blank"&gt;PING: A Group-to-Individual Distributed Meeting System&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://research.microsoft.com/apps/pubs/default.aspx?id=70164" target="_blank"&gt;Automatic Head-Size Equalization in Panorama Images for Video Conferencing&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://research.microsoft.com/apps/pubs/default.aspx?id=81325" target="_blank"&gt;Boosting-Based Multimodal Speaker Detection for Distributed Meeting Videos&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://video.google.com/videoplay?docid=-3038509932770918382" target="_blank"&gt;&lt;a href="http://research.microsoft.com/en-us/projects/distributedmeetings/" target="_blank"&gt;Distributed Meetings&lt;/a&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://video.google.com/videoplay?docid=-3038509932770918382" target="_blank"&gt;VIDEO: Microsoft RingCam&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I also collected some news that were published around that time: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.guardian.co.uk/technology/blog/2006/jun/26/microsoftround" target="_blank"&gt;Microsoft RoundTable – like a webcam on steroids&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.pcmag.com/article2/0,2817,417141,00.asp" target="_blank"&gt;RingCam – Videoconferencing makes a comeback in 360 degrees&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.humanproductivitylab.com/archive_blogs/2006/06/27/microsoft_announces_roundtable.php" target="_blank"&gt;Microsoft announces RoundTable (Formerly RingCam) a 360 Degree &amp;quot;Super Webcam”&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.seattlepi.com/business/69229_msr06.shtml" target="_blank"&gt;Microsoft develops a different way to meet online&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;It’s really fascinating how the vision of some people turns into one of the most fantastic collaboration products available today. Microsoft RoundTable it’s just another example of &lt;a href="http://research.microsoft.com/" target="_blank"&gt;Microsoft Research&lt;/a&gt; motto: Turning Ideas into Reality!&lt;/p&gt;  &lt;h3&gt;Trivia&lt;/h3&gt;  &lt;p&gt;Did you know that Microsoft invested $8.2 billion in R&amp;amp;D in 2008? Are you aware that’s more than the combined R&amp;amp;D spending of IBM and either Oracle or Google?&lt;/p&gt;  &lt;p&gt;Here’s a small excerpt from the &lt;a href="http://www.microsoft.com/msft/reports/ar08/10k_sl_eng.html"&gt;&amp;quot;Shareholder Letter&amp;quot;&lt;/a&gt; in its 2008 Annual Report:&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&amp;quot;At the heart of our success lies our commitment to innovation. No company in our industry invests more in research and development or has the same depth and breadth of talented researchers, scientists, and engineers working across the globe to create new technology breakthroughs. In 2008, we invested $8.2 billion in research and development, an increase of almost 15 percent compared with fiscal 2007.&amp;quot;&lt;/i&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3259206" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/RoundTable/default.aspx">RoundTable</category></item><item><title>The Butterfly Effect applied to OCS Edge Server R2</title><link>http://blogs.technet.com/ucspotting/archive/2009/05/25/3245364.aspx</link><pubDate>Mon, 25 May 2009 18:42:11 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3245364</guid><dc:creator>ucspotting</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3245364.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3245364</wfw:commentRss><description>&lt;p&gt;Chances are that, if you live in one of the green countries from the picture below (courtesy of &lt;a href="http://en.wikipedia.org/wiki/File:DecimalSeparator.png" target="_blank"&gt;Wikipedia&lt;/a&gt;), and if you tried to setup the OCS 2007 R2 Edge server role, you probably felt the frustration, combined with a little bit of despair and asked yourself at some time: “Am I going nuts?”, “Did I suddenly lose my skills?” or “Did I fell into a wormhole and I am now living in a parallel Universe?”. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/DecimalSeparator_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DecimalSeparator" border="0" alt="DecimalSeparator" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/DecimalSeparator_thumb.png" width="510" height="235" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Why only the green countries? I will explain in detail shortly, but in order not to create too much suspense, let me just say that these countries use a comma &amp;quot;,&amp;quot; as the decimal separator and not a period &amp;quot;.&amp;quot;.&lt;/p&gt;  &lt;p&gt;I've been planning on blogging about this issue for some months now, but for one reason or another, I didn't manage to do it until now. Meanwhile, some other people decide to share their experiences about the very same issue, writing them in some blog posts that I would like to recommend:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.pro-exchange.eu/modules.php?name=News&amp;amp;file=article&amp;amp;sid=1122" target="_blank"&gt;A/V Authentication Service can't be reached...due to a comma&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://unified-communications.blogspot.com/2009/01/ocs-2007-r2-and-localization.html" target="_blank"&gt;OCS 2007 R2 and Localization&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I would also like to add that there is now a permanent fix for the problem I'm about to describe.&lt;/p&gt;  &lt;h3&gt;The Symptoms&lt;/h3&gt;  &lt;p&gt;Imagine the perfect installation of OCS 2007 R2, where all the requirements were met, where every single detail was taken care of, where every step of the official deployment guide was followed. But, at the very end, in the test phase, you taste the bitter taste of failure as some errors emerge:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Users see a “&lt;strong&gt;Limited External Calling&lt;/strong&gt;” error in Communicator. If they click details, they get the message: &amp;quot;&lt;font color="#ff0000"&gt;Some calls to and from people outside of your corporate network may not connect due to server connectivity problems. Try signing out and signing back in. If this problem continues, contact your system administrator with this information&lt;/font&gt;&amp;quot;.       &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-01_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="limited-external-calling-01" border="0" alt="limited-external-calling-01" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-01_thumb.png" width="413" height="410" /&gt;&lt;/a&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-02_2.png"&gt;        &lt;br /&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="limited-external-calling-02" border="0" alt="limited-external-calling-02" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-02_thumb.png" width="373" height="152" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;When an external user tries to call an internal user, the call is unsuccessful with the error: &amp;quot;&lt;font color="#ff0000"&gt;The call was disconnected because you stopped receiving audio from &amp;lt;user&amp;gt;. Please try the call again&lt;/font&gt;&amp;quot;.       &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-03_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="limited-external-calling-03" border="0" alt="limited-external-calling-03" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/limited-external-calling-03_thumb.png" width="365" height="287" /&gt;&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;When you validate the A/V Conferencing Server from the OCS Front-End, you get a &amp;quot;Validation Wizard completed with failures&amp;quot;.      &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/av-validation-failure_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="av-validation-failure" border="0" alt="av-validation-failure" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/av-validation-failure_thumb.png" width="381" height="337" /&gt;&lt;/a&gt;       &lt;br /&gt;The Office Communications Server 2007 R2 Deployment Log shows the following error:       &lt;br /&gt;&lt;b&gt;&lt;font color="#ff0000"&gt;Failure          &lt;br /&gt;[0xC3FC200D] One or more errors were detected&lt;/font&gt;&lt;/b&gt;       &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;b&gt;A/V Authentication Edge Server:&lt;/b&gt; Could not contact A/V Authentication Edge Server.           &lt;br /&gt;To resolve this error, check for the following           &lt;br /&gt;1. The outbound proxy is reachable.           &lt;br /&gt;2. The outbound proxy and A/V Authentication Edge Server are in trusted server list of each other.           &lt;br /&gt;3. The outbound proxy and A/V Authentication Edge Server have valid certificates.           &lt;br /&gt;4. Conference Server certificate is valid.           &lt;br /&gt;5. A/V Authentication Edge Server Gruu is correct.&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;At the Mediation server, the&lt;strong&gt; Event 25015 &lt;/strong&gt;is logged (this is actually the responsible for the &lt;strong&gt;Limited External Calling&lt;/strong&gt; issue previously described):&amp;#160; &lt;br /&gt;&amp;quot;The A/V Authentication Service returned invalid response. Connections that require Firewall traversal will not be successful.       &lt;br /&gt;Response Code: 400       &lt;br /&gt;Response Text: Bad Request       &lt;br /&gt;Cause: Either the A/V Authentication Service is not running or unreachable.&amp;quot;       &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/mediation-av-error_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="mediation-av-error" border="0" alt="mediation-av-error" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/mediation-av-error_thumb.png" width="474" height="385" /&gt;&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;The Cause&lt;/h3&gt;  &lt;p&gt;Although OCS has lots and lots of (good) troubleshooting tools, sometimes it's not easy to spot the error, even when it is right in front of your eyes.&lt;/p&gt;  &lt;p&gt;Analyzing the Communicator log from the external user, revealed the &amp;quot;Version Mismatch&amp;quot; error. The error has to do with localization (decimal separator), which caused a string comparison to fail: &amp;quot;2,0&amp;quot; with a comma it's different from &amp;quot;2.0&amp;quot; with a period! I must confess I would never get there without the help from a Microsoft colleague.&lt;/p&gt;  &lt;p&gt;Here's the relevant excerpt from the communicator log and a glance of the Snooper Tool:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; background-color: #f4f4f4; color: #006080; border-top: gray 1px solid; border-right: gray 1px solid"&gt;&lt;strong&gt;SIP/2.0 501 Not Implemented      &lt;br /&gt;Ms-diagnostics:&lt;/strong&gt; 9008;source=&amp;quot;ptstu-ocs10.demo.local&amp;quot;;reason=&amp;quot;VersionMismatch&amp;quot;;component=&amp;quot;Media Relay Authentication Service&amp;quot;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt; &amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;     &lt;br /&gt;&amp;lt;response xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; requestID=&amp;quot;37875240&amp;quot; &lt;span style="background-color: #ffff99"&gt;version=&amp;quot;&lt;strong&gt;2,0&lt;/strong&gt;&amp;quot; serverVersion=&amp;quot;&lt;strong&gt;2.0&lt;/strong&gt;&amp;quot;&lt;/span&gt; to=&amp;quot;sip:ptstu-ocs10.demo.local@demo.local;     &lt;br /&gt;gruu;opaque=srvr:MRAS:TIS6zHHx10mnGGNqE01JjwAA&amp;quot; from=&amp;quot;sip:rusilva@demo.local&amp;quot; reasonPhrase=&amp;quot;Version Mismatch&amp;quot; xmlns=&amp;quot;http://schemas.microsoft.com/2006/09/sip/mrasp&amp;quot; /&amp;gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/version-mismatch-snooper_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="version-mismatch-snooper" border="0" alt="version-mismatch-snooper" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/version-mismatch-snooper_thumb.png" width="484" height="336" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;A Workaround&lt;/h3&gt;  &lt;p&gt;To workaround this problem, change the locale setting to English/US for the local account that the A/V Edge service and the A/V Edge Authentication service use (RTCProxyService).&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Give the RTCProxyService account local login rights (it’s quicker to just add it to the local Administrators group). &lt;/li&gt;    &lt;li&gt;Logon to the OCS Edge server with the RTCProxyService credentials. &lt;/li&gt;    &lt;li&gt;Open &lt;strong&gt;Control Panel&lt;/strong&gt; &amp;gt; &lt;strong&gt;Regional and Language Options&lt;/strong&gt; and change the &lt;strong&gt;Current format&lt;/strong&gt; to &lt;strong&gt;English (United States)&lt;/strong&gt;.       &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/03-av-edge-validation_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="03-av-edge-validation" border="0" alt="03-av-edge-validation" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/03-av-edge-validation_thumb.gif" width="354" height="406" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Log off the RTCProxyService, log back in with the Administrator, remove the RTCProxyService from the Administrators group, restart all the OCS services and voilá! If everything else is well configured, you now have a fully functional OCS solution.&lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;The (Definitive) Solution&lt;/h3&gt;  &lt;p&gt;Fortunately, &lt;span style="background-color: #ffff99"&gt;the &lt;a href="http://support.microsoft.com/kb/968802" target="_blank"&gt;April updates for Communications Server 2007 R2&lt;/a&gt; include a patch for this specific problem&lt;/span&gt;. Read the following KB article for more information: &lt;a href="http://support.microsoft.com/kb/968938/" target="_blank"&gt;The Communications Server 2007 R2 - A/V Edge Authentication Server does not recognize a token request if the locale for RTCProxyService is not en-US/409&lt;/a&gt; (and then apply the &lt;a href="http://support.microsoft.com/kb/967831/" target="_blank"&gt;KB967831&lt;/a&gt; hotfix).&lt;/p&gt;  &lt;h3&gt;The Wrong Way!&lt;/h3&gt;  &lt;p&gt;When you apparently reached a dead-end and start doubting about yourself, you usually start trying some silly things. One of the approaches I took was to &lt;span style="background-color: #ffff99"&gt;add the OCS Edge server to the list of authorized hosts. &lt;strong&gt;Don’t do this!!!&lt;/strong&gt;&lt;/span&gt; The Edge server should never be placed in the Host Authorization tab, doing so will break the communication workflow.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/01-av-edge-validation_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="01-av-edge-validation" border="0" alt="01-av-edge-validation" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/01-av-edge-validation_thumb.gif" width="307" height="368" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;The (Wrong) Usual Suspect: NAT&lt;/h3&gt;  &lt;p&gt;At the beginning of the troubleshoot process, my prime suspect was NAT, since I was using for the first time one of the coolest features of OCS 2007 R2 (the A/V Edge interface can now be NAT'ed) and the symptoms were typical of NAT'ed A/V Edge interface. &lt;/p&gt;  &lt;p&gt;There are some requirements for this particular configuration to work, I strongly recommend the reading of the excellent post by Rick Varvel: &lt;a href="http://blogs.technet.com/rickva/archive/2009/04/03/Configuring-A_2F00_V-Edge-Service-for-NAT.aspx" target="_blank"&gt;Configuring R2 A/V Edge Service for NAT&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;At the end, NAT had nothing to do with the problem, I can assure you this features works perfectly.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/ocs-edge-nat02_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ocs-edge-nat02" border="0" alt="ocs-edge-nat02" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/ocs-edge-nat02_thumb.gif" width="311" height="128" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/av-nat_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="av-nat" border="0" alt="av-nat" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/pmrrak_FA41/av-nat_thumb.png" width="292" height="406" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;The Butterfly Effect&lt;/h3&gt;  &lt;p&gt;The Butterfly Effect has origin in &lt;a href="http://en.wikipedia.org/wiki/Chaos_theory"&gt;chaos theory&lt;/a&gt; and describes how small variations of the initial condition of a dynamical system may produce large variations in the long term behavior of the system. The phrase refers to the idea that a butterfly's wings might create tiny changes in the atmosphere that may ultimately create a tornado in a certain location.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;In other words, sometimes a comma makes all the difference!&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3245364" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Edge+Server/default.aspx">Edge Server</category></item><item><title>The OCPhone Update Wars: The Return of the LG-Nortel 1.0.199</title><link>http://blogs.technet.com/ucspotting/archive/2009/05/23/3244869.aspx</link><pubDate>Sat, 23 May 2009 13:51:01 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3244869</guid><dc:creator>ucspotting</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3244869.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3244869</wfw:commentRss><description>&lt;p&gt;In a previous post, &lt;a href="http://blogs.technet.com/ucspotting/archive/2009/04/16/how-to-upgrade-polycom-cx700-1-0-452-0-using-the-ocs-2007-r2-device-update-service.aspx" target="_blank"&gt;How to upgrade Polycom CX700 1.0.452.0 using the OCS 2007 R2 Device Update Service&lt;/a&gt;, I asked if someone could lend me an Office Communicator Phone Edition (OCPhone) with firmware version 1.0.199. Well, &lt;a href="http://www.linkedin.com/pub/minsoo-park/b/bb7/a44" target="_blank"&gt;Minsoo Park&lt;/a&gt; from LG-Nortel (kudos for him) was kind enough to lend me one IP Phone 8540 with this old firmware version, so that I could test the OCS 2007 R2 Device Update Service is capable of upgrading it.&lt;/p&gt;  &lt;p&gt;My first step was to provision the Device Updater with an appropriate firmware version (&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=565595be-6cf3-4a61-a1e4-12555749ca64&amp;amp;amp;displaylang=en&amp;amp;displaylang=en" target="_blank"&gt;3.5.6907.9&lt;/a&gt;) for the LG-Nortel IP Phone 8540, which I immediately approved.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheOCPhoneWarsTheReturnoftheLGNortel.199_9132/device-updater_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="device-updater" border="0" alt="device-updater" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TheOCPhoneWarsTheReturnoftheLGNortel.199_9132/device-updater_thumb.png" width="484" height="364" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;There was no need to modify the Client Version Filter, since I was already allowing OCPhone software version 1.0.199 and higher to connect to my OCS pool. &lt;/p&gt;  &lt;p&gt;As soon as I plugged the device in and signed in with valid credentials, I noticed it was requesting the Address Book files, but there was no sign of it willing to contact the update service.&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Software: Microsoft Internet Information Services 7.0
#Version: 1.0
#&lt;span style="color: #0000ff"&gt;Date&lt;/span&gt;: 2009-05-22 16:05:55
#Fields: &lt;span style="color: #0000ff"&gt;date&lt;/span&gt; time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-05-22 16:51:13 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 16:51:15 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 16:51:15 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 200 0 0 15
2009-05-22 17:05:50 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 15
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 15
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8a.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8a.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 15
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8a.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8a.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8a.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8a.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d89.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d89.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d89.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 15
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d89.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d89.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:05:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d89.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/D-0bf7-0d8b.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 - 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 1 2148074254 0
2009-05-22 17:06:53 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0d8b.dabs - 443 DEMO\ocphone 192.168.20.115 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 404 0 0 0&lt;/pre&gt;
&lt;/div&gt;

&lt;h3&gt;The solution &lt;/h3&gt;

&lt;p&gt;The solution to this particular problem is at the very end of the &lt;a href="http://download.microsoft.com/download/8/5/E/85E9537C-5F96-4B5B-9E8C-60099699D708/Office_Communicator_2007_R2_Phone_Edition_Relnotes.htm" target="_blank"&gt;Microsoft Office Communicator 2007 R2 Phone Edition Release Notes&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;If the &lt;b&gt;ExternalUpdatesDownloadURL&lt;/b&gt; and &lt;b&gt;ExternalUpdatesStoreURL&lt;/b&gt; properties of the Windows Management Instrumentation (WMI) class &lt;b&gt;MSFT_SIPUpdatesServerSetting&lt;/b&gt; are set to NULL, you need to use the following procedure to change the settings to update the device.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Click &lt;b&gt;Start&lt;/b&gt;, click &lt;b&gt;Run&lt;/b&gt;, and then type &lt;b&gt;wbemtest&lt;/b&gt; to open Window Management Instrumentation Tester. &lt;/li&gt;

  &lt;li&gt;Click &lt;b&gt;Connect&lt;/b&gt;. In &lt;b&gt;Namespace&lt;/b&gt;, type &lt;b&gt;root\cimv2&lt;/b&gt;, and then click &lt;b&gt;Enter&lt;/b&gt;. This enables all the buttons on the wbemtest user interface. &lt;/li&gt;

  &lt;li&gt;Click &lt;b&gt;Query&lt;/b&gt;, and type the following query, where&lt;strong&gt; $poolbackend$&lt;/strong&gt; is the back-end database for the pool (use '(local)\\rtc' for the OCS Standard Edition): 

    &lt;br /&gt;&lt;font face="Courier New"&gt;select * from MSFT_SIPUpdatesServerSetting where backend='$poolbackend$'&lt;/font&gt; &lt;/li&gt;

  &lt;li&gt;This query opens one instance of this class. Double-click the instance. &lt;/li&gt;

  &lt;li&gt;Double-click the &lt;b&gt;ExternalUpdatesDownloadURL&lt;/b&gt; and &lt;b&gt;ExternalUpdatesStoreURL&lt;/b&gt; properties to edit them, and type the values for each property as follows: 

    &lt;br /&gt;For &lt;b&gt;ExternalUpdatesDownloadURL&lt;/b&gt;, type: 

    &lt;br /&gt;https://**POOL_FQDN**/RequestHandlerExt/ucdevice.upx 

    &lt;br /&gt;For &lt;b&gt;ExternalUpdatesStoreURL&lt;/b&gt;, type: 

    &lt;br /&gt;https:// **POOL_FQDN**/DeviceUpdateFiles_Ext &lt;/li&gt;

  &lt;li&gt;Click &lt;b&gt;Save Property&lt;/b&gt; and &lt;b&gt;Save Object&lt;/b&gt; to save the instance. &lt;/li&gt;

  &lt;li&gt;Verify that the Windows Management Instrumentation (WMI) values are updated by querying the class as described in step 3. The &lt;b&gt;ExternalUpdatesDownloadURL&lt;/b&gt; and &lt;b&gt;ExternalUpdatesStoreURL&lt;/b&gt; properties&amp;#160; should be set to a non-NULL value. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Updating older firmware versions fails because the devices are expecting both the internal and external download URLs to be populated in the inband provisioning data received from the pool. With a clean R2 install, those fields are not populated, and as a result, the device rejects the inband provisioning data (thanks &lt;a href="http://blogs.microsoft.nl/members/Thijs-Janssen.aspx" target="_blank"&gt;Thijs&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;After making these changes and restarting the OCS Frontend Service, I rebooted once again the IP Phone 8540 and it was magic! &lt;span style="background-color: #ffff99"&gt;The device got the inband provisioning and the expected 2-step upgrade process (update first to the interim version 1.0.522.103 and afterwards to the R2 version 3.5.6907.9) ran really smoothly&lt;/span&gt;, as you can see from the IIS logs below…&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 233px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Software: Microsoft Internet Information Services 7.0
#Version: 1.0
#&lt;span style="color: #0000ff"&gt;Date&lt;/span&gt;: 2009-05-22 17:38:28
#Fields: &lt;span style="color: #0000ff"&gt;date&lt;/span&gt; time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-05-22 17:40:13 192.168.200.101 POST /RequestHandler/ucdevice.upx - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 6563
2009-05-22 17:42:27 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.nbt - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 134262
2009-05-22 17:42:27 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.cat - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 31
2009-05-22 18:10:09 192.168.200.101 POST /RequestHandler/ucdevice.upx - 443 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 171
2009-05-22 18:13:02 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.9/CPE/CPE.nbt - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 172705
2009-05-22 18:13:02 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.9/CPE/CPE.cat - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 31
2009-05-22 18:15:14 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 - 192.168.20.115 Microsoft+UCPhone+Device 401 2 5 15
2009-05-22 18:15:14 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 - 192.168.20.115 Microsoft+UCPhone+Device 401 1 2148074254 0
2009-05-22 18:15:14 192.168.200.101 &lt;span style="color: #0000ff"&gt;GET&lt;/span&gt; /Abs/Int/Handler/F-0bf7.dabs - 443 DEMO\ocphone 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 0
2009-05-22 18:19:17 192.168.200.101 POST /requestHandler/ucdevice.upx - 80 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 125
2009-05-22 18:21:48 192.168.200.101 POST /RequestHandler/ucdevice.upx - 443 - 192.168.20.115 Microsoft+UCPhone+Device 200 0 0 171&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;…and also from the Device Update Audit logs:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 110px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;Logging DateTime,User Name,User Host Address,Device Type,Request DateTime,Mac Address,Serial Number,Vendor,Model,Revision,Locale,Requested&amp;lt;FileName;Version;TimeStamp&amp;gt;[# Seperated &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; Multiple],Response&amp;lt;FileName;Version;TimeStamp&amp;gt;[# Seperated &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; Multiple]
05-22-2009 18:40:12,,192.168.20.115,UCPhone,22-05-2009 10:40:06,&lt;span style="color: #006080"&gt;&amp;quot;001B9E2CCD9A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;1108006386&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;0.0.0.0;01-01-1601 00:00:00,http://PTSTU-OCS01.demo.local/DeviceUpdateFiles_Int/OCInterim/ENU/CPE.nbt;1.0.522.103;05-04-2009 20:09:14
05-22-2009 19:10:09,ocphone@demo.local,192.168.20.115,UCPhone,22-05-2009 11:10:10,&lt;span style="color: #006080"&gt;&amp;quot;001B9E2CCD9A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;1108006386&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;1.0.522.103;05-04-2009 20:09:14,http://PTSTU-OCS01.demo.local/DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.9/CPE/CPE.nbt;3.5.6907.9;05-04-2009 20:09:14
05-22-2009 19:19:17,,192.168.20.115,UCPhone,22-05-2009 11:18:00,&lt;span style="color: #006080"&gt;&amp;quot;001B9E2CCD9A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;1108006386&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;3.5.6907.9;05-04-2009 20:09:14,
05-22-2009 19:21:48,ocphone@demo.local,192.168.20.115,UCPhone,22-05-2009 11:21:47,&lt;span style="color: #006080"&gt;&amp;quot;001B9E2CCD9A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;1108006386&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;3.5.6907.9;05-04-2009 20:09:14,&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;With this post I conclude the OCS 2007 R2 Device Update Service Troubleshooting trilogy:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;&lt;a href="http://blogs.technet.com/ucspotting/archive/2009/03/11/troubleshooting-ocs-2007-r2-device-update-service-for-communicator-phone-edition.aspx"&gt;Troubleshooting OCS 2007 R2 Device Update Service for Communicator Phone Edition&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://blogs.technet.com/ucspotting/archive/2009/04/16/how-to-upgrade-polycom-cx700-1-0-452-0-using-the-ocs-2007-r2-device-update-service.aspx"&gt;How to upgrade Polycom CX700 1.0.452.0 using the OCS 2007 R2 Device Update Service&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://blogs.technet.com/ucspotting/archive/2009/05/23/3244869.aspx" target="_blank"&gt;The OCPhone Update Wars: The Return of the LG-Nortel 1.0.199&lt;/a&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;span style="background-color: #ffff99"&gt;QED, quod erat demonstrandum, the Device Update Service from Office Communications Server 2007 R2 can successfully upgrade any Communicator Phone Device that has firmware version 1.0.199 or later&lt;/span&gt;.&lt;/p&gt;

&lt;p&gt;A final note, there are some very, very old pre-production devices that have firmware version 1.0.111.0, which cannot be updated neither by OCS 2007 R2 nor by OCS 2007 “R1”. The pre-production devices &lt;b&gt;can&lt;/b&gt; be updated to newer R1 firmware using the Beta3 Update Server of OCS 2007 (good luck trying to find the Beta 3 version!). However, you cannot use them against an RTM 2007 or 2007 R2 Update Server. The problem is that devices must report their brand, firmware, version, model, etc to the Update Server. The pre-production devices report an empty string for brand, model and revision, which the Update Server doesn’t understand or accept (thanks again &lt;a href="http://blogs.microsoft.nl/members/Thijs-Janssen.aspx" target="_blank"&gt;Thijs&lt;/a&gt;).&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3244869" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Communicator+Phone+Edition/default.aspx">Communicator Phone Edition</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/OCS+2007+R2/default.aspx">OCS 2007 R2</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/Device+Update+Service/default.aspx">Device Update Service</category></item><item><title>The case of the disappearing tabs</title><link>http://blogs.technet.com/ucspotting/archive/2009/05/14/3241224.aspx</link><pubDate>Thu, 14 May 2009 17:28:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3241224</guid><dc:creator>ucspotting</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3241224.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3241224</wfw:commentRss><description>&lt;p&gt;One of the coolest features of Office Communications Server (OCS) 2007 R2 is the &lt;a href="http://technet.microsoft.com/en-us/library/dd441254(office.13).aspx" target="_blank"&gt;Response Group Service&lt;/a&gt; (also known as Automatic Call Distribution – ACD – in telephony world), a technology that’s mostly used in Contact Centers, but that can be applied in many different scenarios…&lt;/p&gt;  &lt;p&gt;But the purpose of this post is not to describe the Response Group Service, instead is to discuss some problems I faced when configuring custom tabs in Communicator (custom tabs are the preferred method to &lt;a href="http://office.microsoft.com/en-us/communicator/HA102900391033.aspx" target="_blank"&gt;sign in to formal groups in Response Group Service&lt;/a&gt;).&lt;/p&gt;  &lt;h3&gt;The problem&lt;/h3&gt;  &lt;p&gt;I followed the detailed instruction to &lt;a href="http://technet.microsoft.com/en-us/library/dd425284(office.13).aspx" target="_blank"&gt;configure the Response Group Tab&lt;/a&gt;. Basically there are 2 steps involved:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Create the custom tab definition file; &lt;/li&gt;    &lt;li&gt;Configure Group Policy to apply that file to clients. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Regarding the first step, my XML file consists of the definition of 2 tabs: one for the Response Group, and other for displaying a Live Search box.&lt;/p&gt;  &lt;div&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color: #800000"&gt;xml&lt;/span&gt; &lt;span style="color: #ff0000"&gt;version&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;1.0&amp;quot;&lt;/span&gt;?&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tabdata&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tab&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;image&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;https://ptstu-ocs01.demo.local/Rgs/Clients/RgsOcTab.png&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;image&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Response Group Tab&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tooltip&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Response Group Tab&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tooltip&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;contenturl&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;https://ptstu-ocs01.demo.local/Rgs/clients/Tab.aspx&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;contenturl&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;siteid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;1&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;siteid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tab&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tab&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;image&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;https://ptstu-ocs01/images/windows-live.png&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;image&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Microsoft Mobile&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tooltip&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Microsoft Mobile Tab&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tooltip&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;contenturl&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;http://mobile.microsoft.com&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;contenturl&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;siteid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;2&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;siteid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tab&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tabdata&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;The second step is also very simple: importing the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=5D6F4B90-6980-430B-9F97-FFADBC07B7A9&amp;amp;displaylang=en" target="_blank"&gt;Communicator R2 Group Policy extension&lt;/a&gt; (communicator.adm), and then configuring the setting “Tab URL” (in my case, the value was &lt;em&gt;&lt;a href="https://ptstu-ocs01.demo.local/OCTabs.xml"&gt;https://ptstu-ocs01.demo.local/OCTabs.xml&lt;/a&gt;&lt;/em&gt;).&lt;/p&gt;

&lt;p&gt;The problem was that, although all the necessary configuration was in place, there was no sign at all of the 2 custom tabs I had defined previously!&lt;/p&gt;

&lt;h3&gt;The solution (and troubleshooting process)&lt;/h3&gt;

&lt;p&gt;In order to solve the problem, I had to change 4 settings.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;According to &lt;a href="http://technet.microsoft.com/en-us/library/dd425110(office.13).aspx" target="_blank"&gt;Configuring Custom Tabs in Communicator 2007 R2&lt;/a&gt;, &lt;span style="background-color: #ffff99"&gt;the site defined by &lt;em&gt;contenturl&lt;/em&gt; must “be located on the intranet, or on a secure or trusted site on the internet” &lt;/span&gt;.(particularly if you’re using integrated authentication). The first step to solve my problem was adding &lt;em&gt;http://*.demo.local&lt;/em&gt; to Internet Explorer Trusted Sites. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/trusted-sites_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="trusted-sites" border="0" alt="trusted-sites" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/trusted-sites_thumb.png" width="394" height="348" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;/li&gt;

  &lt;li&gt;After modifying the Trusted Sites setting there was still no sign of the custom tabs. After a little research on the Internet, I found out that the &amp;lt;contactid&amp;gt; behavior changed in OCS 2007 R2: 
    &lt;br /&gt;“&lt;em&gt;The Communicator R2 client tab functionality has changed from what it was in Communicator 2007. In OC 2007 you could pass the contactID parameter to tabs that were listed at the bottom of the Communicator contacts display. Microsoft has changed the use of tabs in OC 2007 R2 such that you can only display static tabs at the bottom of the Communicator contacts display area. The previous functionality has been moved to the tabs at the bottom of the contact card for each user.&lt;/em&gt;”&amp;#160; &lt;br /&gt;Since I had &lt;strong&gt;&amp;lt;contactid&amp;gt;true&amp;lt;/contactid&amp;gt;&lt;/strong&gt; in my XML file (I omitted the &amp;lt;contactid&amp;gt; element on purpose from my previous listing), this was preventing the Response Group tab from displaying correctly. So, where was the missing tab, you may ask… Again, according to &lt;a href="http://technet.microsoft.com/en-us/library/dd425110(office.13).aspx" target="_blank"&gt;Configuring Custom Tabs in Communicator 2007 R2&lt;/a&gt;:

    &lt;br /&gt;&lt;strong&gt;!ELEMENT contactid (“true” | “false”) - Determines whether the tab appears in the contact card. Tabs defined without contactid or with contactid=false will appear only in the Communicator window.&lt;span style="background-color: #ffff99"&gt;Tabs defined with contactid=true will appear in the contact card&lt;/span&gt;, and Communicator will pass the selected contact to the defined page. The default value is “false.”&lt;/strong&gt;

    &lt;br /&gt; And you know what? Opening the contact card from my user (see the picture below) revealed the link to the tab.&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-contactid_2.png"&gt;
      &lt;br /&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="tabs-contactid" border="0" alt="tabs-contactid" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-contactid_thumb.png" width="480" height="422" /&gt;&lt;/a&gt;

    &lt;br /&gt;&lt;/li&gt;

  &lt;li&gt;Once I modified the Trusted Sites setting and removed the &amp;lt;contactid&amp;gt; element, the tabs appeared in Communicator, but the content wasn’t being shown: 
    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-unavailable_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="tabs-unavailable" border="0" alt="tabs-unavailable" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-unavailable_thumb.png" width="247" height="370" /&gt;&lt;/a&gt; 

    &lt;br /&gt;This kind of error is most often related with proxy settings. Changing the list of exceptions in Internet Explorer advanced proxy settings usually solves the problem. 

    &lt;br /&gt;&lt;/li&gt;

  &lt;li&gt;The last configuration setting I had to change was only affecting a small subset of users that already were using Windows 7 and Internet Explorer 8.&amp;#160; This small group still didn’t have the tabs displayed in Communicator. After a long troubleshooting process I finally spotted the problem: in the Tab URL Group Policy I typed a backslash “\” instead of the usual “/” (picture below):&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/policy-tab_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="policy-tab" border="0" alt="policy-tab" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/policy-tab_thumb.gif" width="408" height="452" /&gt;&lt;/a&gt; 

    &lt;br /&gt;This was the very last issue preventing the tabs from displaying correctly. I guess this is somehow related with stronger security settings in Windows 7 and IE 8.

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-available_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="tabs-available" border="0" alt="tabs-available" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Thecaseofthedisappearingtabs_FBC8/tabs-available_thumb.png" width="369" height="554" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;/li&gt;
&lt;/ol&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3241224" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/OCS+2007+R2/default.aspx">OCS 2007 R2</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/Communicator+2007+R2/default.aspx">Communicator 2007 R2</category></item><item><title>How to upgrade Polycom CX700 1.0.452.0 using the OCS 2007 R2 Device Update Service</title><link>http://blogs.technet.com/ucspotting/archive/2009/04/16/how-to-upgrade-polycom-cx700-1-0-452-0-using-the-ocs-2007-r2-device-update-service.aspx</link><pubDate>Thu, 16 Apr 2009 11:55:55 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3227102</guid><dc:creator>ucspotting</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3227102.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3227102</wfw:commentRss><description>&lt;p&gt;Let me start by saying that, although the title of this post refers Polycom CX700 (because was this device I used), &lt;span style="background-color: #ffff99"&gt;the procedures described here will probably work with other devices (e.g. LG-Nortel or Microsoft)&lt;/span&gt;.&lt;/p&gt;  &lt;p&gt;If you read my previous post &lt;a href="http://blogs.technet.com/ucspotting/archive/2009/03/11/troubleshooting-ocs-2007-r2-device-update-service-for-communicator-phone-edition.aspx" target="_blank"&gt;Troubleshooting OCS 2007 R2 Device Update Service for Communicator Phone Edition&lt;/a&gt;, you probably noticed the comments about upgrading Office Communicator Phone Edition (OCPE) version 1.0.452.0.&lt;/p&gt;  &lt;p&gt;When I wrote that post, I hadn’t tested anything lower than 1.0.522.34, so, to tell you the truth, I was not sure it was possible to upgrade these early (Beta) versions. Until today!&lt;/p&gt;  &lt;p&gt;When I had the chance to put my hands on one of these early babies (thanks &lt;a href="http://techdays.canoas.com/Agenda/OradorBio.aspx/103" target="_blank"&gt;Paulo Silva&lt;/a&gt;), I didn’t think twice.&lt;/p&gt;  &lt;h3&gt;The upgrade process&lt;/h3&gt;  &lt;p&gt;As soon as I plugged the device into my test environment and tried to sign in, I got the following error:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;Cannot sign in to Communications Service. Current version        &lt;br /&gt;does not work with the available server. Contact your         &lt;br /&gt;system administrator.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I immediately understood what the problem was: the Client Version Filter. Lowering the allowed OCPhone version to 1.0.199 did the trick.&lt;/p&gt;  &lt;p&gt;After a quick reboot and still no signs of a successful upgrade, I noticed that I was getting an Update Status (0x0/404) on the phone. The IIS log confirmed the HTTP error 404 – File Not Found. The device was requesting the file &lt;strong&gt;/UCDeviceUpdates/ucdevice.upx&lt;/strong&gt;, which cannot be found because the virtual dir &lt;strong&gt;/UCDevicesUpdate&lt;/strong&gt; doesn’t exist.&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 52px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-04-15 17:47:37 192.168.200.101 POST /UCDeviceUpdates/ucdevice.upx - 80 - 192.168.20.103 Microsoft+UCPhone+Device 404 0 2 0&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;I’m not sure why the device requests that specific URL. In the &lt;a href="http://blogs.technet.com/ucspotting/archive/2008/11/18/upgrade-tanjay-1-0-199-yes-we-can.aspx" target="_blank"&gt;tests I made with an even lower version, 1.0.199&lt;/a&gt;, the requested URL was &lt;strong&gt;/RequestHandler/ucdevice.upx&lt;/strong&gt;, which is the correct one. Further investigation is needed to determine the cause of this issue.&lt;/p&gt;

&lt;p&gt;In order to try to overcome the situation, I decided to create the &lt;strong&gt;/UCDevicesUpdate&lt;/strong&gt; virtual dir, replicating all the settings of the &lt;strong&gt;/RequestHandler&lt;/strong&gt; folder. Here’s how to do it on IIS 7.0 (with IIS 6.0 would probably be easier, since there is an option to redirect a virtual dir):&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Open &lt;strong&gt;Internet Information Services (IIS) Manager&lt;/strong&gt;, right click the web site and select &lt;strong&gt;Add Application&lt;/strong&gt;. Name it &lt;em&gt;UCDeviceUpdates&lt;/em&gt;, select the &lt;em&gt;LSGroupExpAppPool&lt;/em&gt;, and point it to the same Physical path as &lt;strong&gt;/RequestHandler&lt;/strong&gt;. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/01-virtual-dir_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="01-virtual-dir" border="0" alt="01-virtual-dir" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/01-virtual-dir_thumb.gif" width="452" height="315" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;Select the newly created application (&lt;strong&gt;/UCDeviceUpdates&lt;/strong&gt;), on the &lt;strong&gt;Features View&lt;/strong&gt; select &lt;strong&gt;Authentication&lt;/strong&gt; and then disable Windows Authentication. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/02-disable-windows-authentication_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="02-disable-windows-authentication" border="0" alt="02-disable-windows-authentication" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/02-disable-windows-authentication_thumb.gif" width="484" height="342" /&gt;&lt;/a&gt; 

    &lt;br /&gt;If we stop now (as I first did), we would get the HTTP Error 405.0 - Method not allowed. 

    &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 51px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
      &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-04-15 18:07:35 192.168.200.101 POST /UCDeviceUpdates/ucdevice.upx - 80 - 192.168.20.103 Microsoft+UCPhone+Device 405 0 64 31&lt;/pre&gt;
    &lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;The &lt;strong&gt;Handler Mappings&lt;/strong&gt; for &lt;strong&gt;/UCDeviceUpdates &lt;/strong&gt;must be changed so that they match &lt;strong&gt;/RequestHandler&lt;/strong&gt;, particularly the *.upx Script Map. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/03-handler-mappings_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="03-handler-mappings" border="0" alt="03-handler-mappings" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/03-handler-mappings_thumb.gif" width="484" height="342" /&gt;&lt;/a&gt; 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/04-upx-script-mapping_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="04-upx-script-mapping" border="0" alt="04-upx-script-mapping" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/How.0usingtheOCS2007R2DeviceUpdateServic_12E4A/04-upx-script-mapping_thumb.gif" width="400" height="329" /&gt;&lt;/a&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;With these changes in place, the upgrade process went as expected: the device gets in-band provisioning about the update URL, downloads and installs the interim version (1.0.522.103), reboots, downloads and installs the approved version (&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=565595be-6cf3-4a61-a1e4-12555749ca64&amp;amp;displaylang=en&amp;amp;tm" target="_blank"&gt;3.5.6907.9&lt;/a&gt;), does a final reset and it’s ready to use with Office Communications Server 2007 R2.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 196px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-04-15 18:36:09 192.168.200.101 POST /UCDeviceUpdates/ucdevice.upx - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 6531
2009-04-15 18:38:28 192.168.200.101 GET /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.nbt - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 139006
2009-04-15 18:38:28 192.168.200.101 GET /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.cat - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 15
2009-04-15 18:46:05 192.168.200.101 POST /requestHandler/ucdevice.upx - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 2093
2009-04-15 18:49:09 192.168.200.101 GET /DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.9/CPE/CPE.nbt - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 183461
2009-04-15 18:49:09 192.168.200.101 GET /DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.9/CPE/CPE.cat - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 15
2009-04-15 18:50:29 192.168.200.101 POST /requestHandler/ucdevice.upx - 80 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 140
2009-04-15 18:51:51 192.168.200.101 POST /RequestHandler/ucdevice.upx - 443 - 192.168.20.103 Microsoft+UCPhone+Device 200 0 0 187
2009-04-15 18:56:47 192.168.200.101 GET /Abs/Int/Handler/F-0bd2.dabs - 443 - 192.168.20.103 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 401 2 5 0
2009-04-15 18:56:47 192.168.200.101 GET /Abs/Int/Handler/F-0bd2.dabs - 443 DEMO\OCPhone 192.168.20.103 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+CE) 200 0 0 125&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;A final note: &lt;span style="background-color: #ffff99"&gt;I didn’t use the &lt;strong&gt;Test Devices&lt;/strong&gt; option, instead I approved the update&lt;/span&gt; (this means that all qualified devices would get the update without first testing it).&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;h3&gt;Epilogue&lt;/h3&gt;

&lt;p&gt;So far, the OCS 2007 R2 Device Update Service revealed to be capable of successfully upgrading OCPE version 1.0.452.0 and later. The early beta versions can sometimes be tricky and require some tweaks, like creating a new virtual dir (as explained in this post). &lt;/p&gt;

&lt;p&gt;I’ve read some post regarding the 1.0.452.0 version stating that WINS is required. In the tests I made, I didn’t use WINS, only DNS (&lt;span style="background-color: #ffff99"&gt;I had the UCUPDATES and UCUPDATES-R2 defined as A records and pointing to the OCS pool IP address&lt;/span&gt;).&lt;/p&gt;

&lt;p&gt;I would love to test version 1.0.199. Can someone lend me one? :-)&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3227102" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Communicator+Phone+Edition/default.aspx">Communicator Phone Edition</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/Device+Update+Service/default.aspx">Device Update Service</category></item><item><title>Upgrading to OCS 2007 R2: trouble removing the legacy pool</title><link>http://blogs.technet.com/ucspotting/archive/2009/04/08/upgrading-to-ocs-2007-r2-trouble-removing-the-legacy-pool.aspx</link><pubDate>Wed, 08 Apr 2009 11:49:38 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3223880</guid><dc:creator>ucspotting</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3223880.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3223880</wfw:commentRss><description>&lt;p&gt;Let me start by saying that, so far, every migration I did from OCS 2007 to OCS 2007 R2 went like a charm. Kudos for the Microsoft OCS team, who came up with a really easy process and pretty well documented: &lt;a href="http://technet.microsoft.com/en-us/library/dd572505(office.13).aspx" target="_blank"&gt;Migration From Office Communications Server 2007&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;But every now and then, some minor problems occur. Recently, at the very end of the migration process, I got this error while trying to remove the legacy OCS pool:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;font color="#ff0000"&gt;Failure        &lt;br /&gt;[0xC3EC79F9] You need SQL Server, SQL Server 2000 Client Tools (for connecting to SQL Server 2000 SP4 or later) or SQL Server 2005 Backwards Compatibility Pack (for connecting to SQL Server 2005 SP1 or later) installed on this computer to be able to create an Enterprise pool.&lt;/font&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The error occurred on the legacy front-end (OCS 2007) when I tried to remove the pool, using the Office Communications Server 2007 Management Console.&lt;/p&gt;  &lt;p&gt;The solution is easy, the SQL Server 2005 Backwards Compatibility Pack must be installed on the front-end in which the remove operation is being performed, since a connection to the back-end database is required.&lt;/p&gt;  &lt;p&gt;The SQL Server Backwards Compatibility Pack is part of the Feature Pack for Microsoft SQL Server 2005 and can be downloaded through this &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=536fd7d5-013f-49bc-9fc7-77dede4bb075" target="_blank"&gt;link&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/UpgradingtoOCS2007R2troubleremovingthele_8A2E/sql-backward-compatibility_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="sql-backward-compatibility" border="0" alt="sql-backward-compatibility" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/UpgradingtoOCS2007R2troubleremovingthele_8A2E/sql-backward-compatibility_thumb.gif" width="484" height="352" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;And after that, well, the game was mine.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3223880" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Migration/default.aspx">Migration</category></item><item><title>Troubleshooting OCS 2007 R2 Device Update Service for Communicator Phone Edition</title><link>http://blogs.technet.com/ucspotting/archive/2009/03/11/troubleshooting-ocs-2007-r2-device-update-service-for-communicator-phone-edition.aspx</link><pubDate>Wed, 11 Mar 2009 14:24:55 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3211600</guid><dc:creator>ucspotting</dc:creator><slash:comments>16</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3211600.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3211600</wfw:commentRss><description>&lt;p&gt;One of the big improvements with the release of Office Communications Server (OCS) 2007 R2 was the new Device Update Service, much more simple than the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=889c542e-8b09-46c2-bd86-671c21668830&amp;amp;DisplayLang=en" target="_blank"&gt;previous version&lt;/a&gt;. Goodbye Windows SharePoint Services on a different server, no more additional complexity in order to update the UC devices deployed in an organization. Now, the Device Update Service is automatically installed on the Web Components Server, which is part of the Front-end server, on a consolidated topology (the only one supported in R2).&lt;/p&gt;  &lt;p&gt;Device Update Service supports two types of UC devices: OCS 2007 R2 Communicator Phone Edition (OCPE or Tanjay) and RoundTable (must be manually configured). &lt;/p&gt;  &lt;p&gt;Device Update Service is mostly used to upgrade OCPE phones (LG-Nortel IP8540, Polycom CX700 and older Microsoft branded), so one could expect this process to be the most common cause of troubles and frustration. And that is, in fact, the case! Now even more, since there is a &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=565595be-6cf3-4a61-a1e4-12555749ca64&amp;amp;displaylang=en&amp;amp;tm" target="_blank"&gt;new version of the firmware&lt;/a&gt; for OCS 2007 R2.&lt;/p&gt;  &lt;p&gt;Before we dive into the troubleshooting process, let us know better the &lt;a href="http://technet.microsoft.com/en-us/library/dd441236(office.13).aspx" target="_blank"&gt;Device Update Service Architecture&lt;/a&gt; and how it works:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/Dd441236.80ffe373-2814-4651-8b26-e03fcaf50762(en-us,office.13)%5B1%5D_2.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Dd441236.80ffe373-2814-4651-8b26-e03fcaf50762(en-us,office.13)[1]" border="0" alt="Dd441236.80ffe373-2814-4651-8b26-e03fcaf50762(en-us,office.13)[1]" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/Dd441236.80ffe373-2814-4651-8b26-e03fcaf50762(en-us,office.13)%5B1%5D_thumb.jpg" width="480" height="336" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In the default configuration, Communicator Phone Edition connects to Device Update Service in the following manner: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;The first time a user starts Communicator Phone Edition and signs in, the device gets in-band provisioning information from the server or Enterprise pool hosting the device user account. The information contains the internal and external URL of the server running Device Update Service.      &lt;br /&gt;&lt;span style="background-color: #ffff99"&gt;If the device is turned on, but no user signs on, and no user has ever previously signed on to the device, the device sends a DNS lookup request to ucupdates-r2.&amp;lt;DNS domain name that was provided by DHCP&amp;gt;&lt;/span&gt; and obtains the internal and external URL of the server running Device Update Service. &lt;/li&gt;    &lt;li&gt;Thereafter, when the device is turned on as well as every 24 hours by default, Communicator Phone Edition checks for updates by sending an HTTP request over port 443 to the Web Components Server hosting Device Update Service. The request includes the current version that Communicator Phone Edition is running. &lt;/li&gt;    &lt;li&gt;Device Update Service returns a response containing one of the following:      &lt;ul&gt;       &lt;li&gt;If no approved updates exist for the current version of the firmware, the response contains &lt;b&gt;downloads=0&lt;/b&gt;. For test devices, updates must be pending rather than approved for this to occur. &lt;/li&gt;        &lt;li&gt;If an approved update exists for the current version, the response contains an internal and external URL for Device Update Service. For test devices, updates must be pending rather than approved for this to occur. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;In the latter case, Communicator Phone Edition sends an HTTPS update request over port 443 to Device Update Service. &lt;/li&gt;    &lt;li&gt;The update image is downloaded to the device. &lt;/li&gt;    &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;The device waits for five minutes of idle activity&lt;/span&gt;, and then restarts to complete the update. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Obtaining and approving new OCPE updates&lt;/h3&gt;  &lt;p&gt;The latest firmware version, (&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=565595be-6cf3-4a61-a1e4-12555749ca64&amp;amp;displaylang=en&amp;amp;tm" target="_blank"&gt;3.5.6907.0&lt;/a&gt;, by the time this post was written), can be downloaded from the Microsoft site. The downloaded file is a self-extracting executable that contains a .cab archive with all the supported phones.&lt;/p&gt;  &lt;p&gt;In order to upload the update file, we must run the Device Update Service Management Console: open the OCS R2 Management Console, right click the pool and select&lt;strong&gt; Device Updater&lt;/strong&gt;. From the &lt;strong&gt;Tools&lt;/strong&gt; menu, click &lt;b&gt;Upload .cab File&lt;/b&gt;, navigate to the .cab file that you want to upload, and then click &lt;strong&gt;Open&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;Check the &lt;b&gt;Pending&lt;/b&gt; tab of the Device Update Service Management Console to verify that the new update is listed.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/01-device-updates_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="01-device-updates" border="0" alt="01-device-updates" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/01-device-updates_thumb.gif" width="484" height="364" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can also verify that the upload process went OK by checking the shared updates folder (if you’re using Enterprise edition). For the Standard edition, the default path is &lt;strong&gt;%ProgramFiles%\Microsoft Office Communicator 2007 R2\Web Components\DeviceUpdateFiles&lt;/strong&gt;. There should be a folder hierarchy like the one depicted in the following picture. Note that there are some Logs folders that I’ll cover a little bit ahead.&lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/03-device-updates_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="03-device-updates" border="0" alt="03-device-updates" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/03-device-updates_thumb.gif" width="484" height="390" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After the update file is uploaded, the corresponding firmware can be approved for all devices in the organization by selecting it and then clicking &lt;strong&gt;Approve&lt;/strong&gt;. The revision should be more recent than the revision for the last update the UC devices received. &lt;/p&gt;  &lt;p&gt;Prior to making the update widely available, it is recommended that you test it on some devices. To add a test device, go to the &lt;strong&gt;Test Devices&lt;/strong&gt; tab, click &lt;strong&gt;Add&lt;/strong&gt;, type a &lt;strong&gt;Friendly Name &lt;/strong&gt;and then fill up the MAC address or serial number of the device (there’s no need to approve the update).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/02-device-updates_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="02-device-updates" border="0" alt="02-device-updates" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/02-device-updates_thumb.gif" width="484" height="364" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Restart the device and that should trigger the update process, as described before.&lt;/p&gt;  &lt;p&gt;If the previous version of the device is less than 1.0.522.98, it will first get updated to an interim build (1.0.522.103) that comes with OCS 2007 R2. &lt;span style="background-color: #ffff99"&gt;This means that, in this case, 2 upgrade cycles are necessary before the device gets the approved/pending build&lt;/span&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Log Files&lt;/h3&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;You can use the logs in the &lt;strong&gt;Logs\Server\Audit\imageUpdates\&lt;/strong&gt; folder to audit software update requests from UC devices. There you can find some files named &lt;em&gt;RequestHandlerAuditLog_&amp;lt;server_name&amp;gt;_&amp;lt;date&amp;gt;.log&lt;/em&gt; with the information you need to troubleshoot the update service. You can view server log files in a text editor or Microsoft Excel.&lt;/p&gt;  &lt;p&gt;In the following example, an LG-Nortel device with version 1.0.522.34 is configured as a test device and will receive the most up-to-date firmware. Since 1.0.522.34 is lower than 1.0.522.98, the device must first be upgraded to the interim version (1.0.522.103), then reboot and finally it receives the most recent version available on the server. &lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 78px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; height: 41px; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;Logging DateTime,User Name,User Host Address,Device Type,Request DateTime,Mac Address,Serial Number,Vendor,Model,Revision,Locale,Requested&amp;lt;FileName;Version;TimeStamp&amp;gt;[# Seperated &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; Multiple],Response&amp;lt;FileName;Version;TimeStamp&amp;gt;[# Seperated &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; Multiple]
03-06-2009 17:07:20,ruisilva@demo.local,10.1.1.123,UCPhone,06-03-2009 09:07:20,&lt;span style="color: #006080"&gt;&amp;quot;0021630F207B&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;C185H001209&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;0.0.0.0;01-01-1601 00:00:00,
03-06-2009 17:10:39,ruisilva@demo.local,10.1.1.123,UCPhone,06-03-2009 17:10:39,&lt;span style="color: #006080"&gt;&amp;quot;0021630F207B&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;C185H001209&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;0.0.0.0;01-01-1601 00:00:00,http://ocs.demo.local/DeviceUpdateFiles_Int/OCInterim/ENU/CPE.nbt;1.0.522.103;16-12-2008 04:43:58
03-06-2009 17:18:54,ruisilva@demo.local,10.1.1.123,UCPhone,06-03-2009 17:18:53,&lt;span style="color: #006080"&gt;&amp;quot;0021630F207B&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;C185H001209&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;LG-Nortel&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;IP8540&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;A&amp;quot;&lt;/span&gt;,&lt;span style="color: #006080"&gt;&amp;quot;ENU&amp;quot;&lt;/span&gt;,cpe.nbt;1.0.522.103;16-12-2008 04:43:58,http://ocs.demo.local/DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.nbt;3.5.6907.0;16-12-2008 04:43:58&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;In the first line, the device gets in-band provisioning information from the server or Enterprise pool hosting the device user account. After a &lt;strong&gt;*manual reboot*&lt;/strong&gt;, on the second line, it gets the interim version. Finally, on the third line, and after an &lt;strong&gt;*automatic reboot*&lt;/strong&gt; (notice the 8 minute gap) the phone receives the 3.5.6907.0 version.&lt;/p&gt;

&lt;p&gt;But besides the logs from the update service,&lt;span style="background-color: #ffff99"&gt;the IIS logs can be extremely valuable to the troubleshooting process&lt;/span&gt;. This is the corresponding IIS log from the example above (I removed some unnecessary lines):&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 227px; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; height: 162px; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;#Software: Microsoft Internet Information Services 7.0
#Version: 1.0
#Date: 2009-03-06 16:00:51
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2009-03-06 17:07:20 10.1.1.90 POST /RequestHandler/ucdevice.upx - 443 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 124
2009-03-06 17:10:39 10.1.1.90 POST /RequestHandler/ucdevice.upx - 443 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 171
2009-03-06 17:12:57 10.1.1.90 GET /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.nbt - 80 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 137810
2009-03-06 17:12:57 10.1.1.90 GET /DeviceUpdateFiles_Int/OCInterim/ENU/CPE.cat - 80 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 15
2009-03-06 17:18:54 10.1.1.90 POST /RequestHandler/ucdevice.upx - 443 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 187
2009-03-06 17:21:45 10.1.1.90 GET /DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.nbt - 80 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 170679
2009-03-06 17:21:45 10.1.1.90 GET /DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.cat - 80 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 15&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Notice the line where the interim file CPE.nbt is downloaded to the phone. It takes some time (137.810 ms), because the file has a few megs.&lt;/p&gt;

&lt;pre&gt;2009-03-06 17:12:57 10.192.32.90 GET /DeviceUpdateFiles_Int/OCInterim/ENU/&lt;br /&gt;CPE.nbt - 80 - 10.1.1.123 Microsoft+UCPhone+Device 200 0 0 &lt;span style="background-color: #ffff99"&gt;137810&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;And then, notice&amp;#160; the line where the phone requests the most recent version available. It took 170.679 ms to download the file.&lt;/p&gt;

&lt;pre&gt;2009-03-06 17:21:45 10.192.32.90 GET /DeviceUpdateFiles_Int/UCPhone/&lt;br /&gt;LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.nbt - 80 - 10.1.1.123 Microsoft+&lt;br /&gt;UCPhone+Device 200 0 0 &lt;span style="background-color: #ffff99"&gt;170679&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h3&gt;Troubleshooting Process&lt;/h3&gt;

&lt;p&gt;Now that we have a pretty good understanding of the Device Update Service, what can we do if something doesn’t go as expected? Let’s look at the troubleshooting process:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;Reset the device and sign in with a user that is not signed in anywhere else &lt;/span&gt;(my advice is to create a special account for this purpose… And make sure it’s configured for Enterprise Voice!!!). &lt;/li&gt;

  &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;Make sure the Device Update Service is well configured and that the DHCP options required by OCPE are in place&lt;/span&gt;: 

    &lt;ul&gt;
      &lt;li&gt;&lt;a title="http://technet.microsoft.com/en-us/library/dd441344(office.13).aspx" href="http://technet.microsoft.com/en-us/library/dd441344(office.13).aspx" target="_blank"&gt;Device Update Service Required Components&lt;/a&gt; &lt;/li&gt;

      &lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=AE3E5B3A-1564-4DE5-8B29-A73275E52619&amp;amp;displaylang=en" target="_blank"&gt;Microsoft Office Communicator 2007 R2 Phone Edition Deployment Guide&lt;/a&gt; &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;

  &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;Read &lt;a href="http://download.microsoft.com/download/8/5/E/85E9537C-5F96-4B5B-9E8C-60099699D708/Office_Communicator_2007_R2_Phone_Edition_Relnotes.htm" target="_blank"&gt;&lt;strong&gt;Microsoft Office Communicator 2007 R2 Phone Edition Release Notes&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;a href="http://download.microsoft.com/download/8/5/E/85E9537C-5F96-4B5B-9E8C-60099699D708/Office_Communicator_2007_R2_Phone_Edition_Relnotes.htm" target="_blank"&gt;&lt;/a&gt;. Read this document all the way till the end, because there are important notes and suggested solutions for some common problems.&lt;/li&gt;

  &lt;li&gt;Confirm that a VDir named &lt;strong&gt;OCInterim&lt;/strong&gt; is created under the &lt;strong&gt;DeviceUpdateFiles_Int &lt;/strong&gt;and &lt;strong&gt;DeviceUpdateFiles_Ext&lt;/strong&gt; folders in IIS. This folder contains the interim version (1.0.522.103) necessary for devices that are currently with version 1.0.522.98 or lower. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/04-device-updates_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="04-device-updates" border="0" alt="04-device-updates" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/04-device-updates_thumb.gif" width="193" height="484" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;Open a browser and navigate to the URL that contains the update (for example &lt;a href="http://ocs.demo.local/DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.nbt"&gt;http://ocs.demo.local/DeviceUpdateFiles_Int/UCPhone/LG-Nortel/IP8540/A/ENU/ 
      &lt;br /&gt;3.5.6907.0/CPE/CPE.nbt&lt;/a&gt;). You should be able to download the CPE.nbt file. 

    &lt;br /&gt;A common cause of problems for the Enterprise version has to do with permissions in the shared updates folder. If that’s the case, you’ll get a 500 HTTP error in the IIS log: 

    &lt;br /&gt;

    &lt;pre&gt;2009-03-06 12:35:36 10.1.1.90 GET /DeviceUpdateFiles_Int/UCPhone/&lt;br /&gt;LG-Nortel/IP8540/A/ENU/3.5.6907.0/CPE/CPE.nbt - 80 - 10.1.1.1 Microsoft+&lt;br /&gt;UCPhone+Device &lt;span style="background-color: #ffff99"&gt;500&lt;/span&gt; 19 5 62&lt;/pre&gt;
One solution is to modify the ACL: add the &lt;strong&gt;Everyone&lt;/strong&gt; group with Read permissions to the shared folder. Or you can also try this method, as explained by Jens: &lt;a href="http://blogs.technet.com/jenstr/archive/2009/01/08/http-error-500-19-when-accessing-ocpe-firmware-urls-on-windows-2008.aspx" target="_blank"&gt;HTTP Error 500 19 when accessing OCPE firmware URLs on Windows 2008&lt;/a&gt;. &lt;/li&gt;

  &lt;li&gt;Make sure you’re using a supported device. &lt;span style="background-color: #ffff99"&gt;Microsoft DV1 is no longer supported &lt;/span&gt;and even the interim update will not work. &lt;/li&gt;

  &lt;li&gt;If you’re trying to update a really old version of the software, make sure that’s not blocked by the Client Version Filter. Using the OCS Management Console, right click the pool name, select &lt;strong&gt;Filtering Tools&lt;/strong&gt; and then &lt;strong&gt;Client Version Filter&lt;/strong&gt;. Edit the &lt;strong&gt;OCPhone&lt;/strong&gt; field accordingly. 

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/06-device-updates_2.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="06-device-updates" border="0" alt="06-device-updates" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/TroubleshootingOCS2007R2DeviceUpdateServ_113F4/06-device-updates_thumb.gif" width="484" height="408" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;Use the available audit update server logs and IIS logs. I’ve never used the client logs, because they require further processing, but I admit they can be useful if everything else fails. &lt;/li&gt;

  &lt;li&gt;On the phone &lt;strong&gt;About&lt;/strong&gt; screen, validate when the device last checked for updates. On the &lt;strong&gt;About&lt;/strong&gt; screen you’ll see:&lt;strong&gt; Last Update Status&lt;/strong&gt;: (0x####/0x#####). The normal state should be &lt;strong&gt;0×00/0&lt;/strong&gt; or &lt;strong&gt;0x0/200&lt;/strong&gt;. The first field is a WinInet error code. An error here would indicate a problem contacting the server. The list of possible values can be found in this KB article: &lt;a href="http://support.microsoft.com/kb/193625" target="_blank"&gt;WinInet Error Codes&lt;/a&gt;. For further explanation of these codes,please read this post: &lt;a href="http://communicationsserverteam.com/archive/2008/07/22/228.aspx" target="_blank"&gt;Microsoft Office Communicator 2007 Phone Edition Status Codes&lt;/a&gt;. &lt;/li&gt;

  &lt;li&gt;If you’re upgrading version 1.0.452.0, you may need to create a virtual dir called &lt;em&gt;UCDeviceUpdates&lt;/em&gt; on the OCS server running the update service. Check the IIS logs to confirm the device is requesting that specific URL. Read this post with detailed instructions: &lt;a href="http://blogs.technet.com/ucspotting/archive/2009/04/16/how-to-upgrade-polycom-cx700-1-0-452-0-using-the-ocs-2007-r2-device-update-service.aspx" target="_blank"&gt;How to upgrade Polycom CX700 1.0.452.0 using the OCS 2007 R2 Device Update Service&lt;/a&gt;. &lt;/li&gt;

  &lt;li&gt;If you’re brave enough, try to approve the update, instead of using &lt;strong&gt;Test Devices&lt;/strong&gt;. Please be aware that this means that all qualified devices will be upgraded, before you properly test the update. &lt;/li&gt;

  &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;Wait 5 minutes!&lt;/span&gt; Remember the device will automatically update itself and reboot after 5 minutes of idle activity. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;And this pretty much covers the troubleshooting process for the OCPE devices. I would like to hear from you if you have ever encountered a distinct situation that you managed to solve in a different way.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3211600" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Communicator+Phone+Edition/default.aspx">Communicator Phone Edition</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/Device+Update+Service/default.aspx">Device Update Service</category></item><item><title>RemovePlusFromRequestURI (or how to make OCS non-RFC 3966-compliant)</title><link>http://blogs.technet.com/ucspotting/archive/2009/02/28/removeplusfromrequesturi-or-how-to-make-ocs-non-rfc-3966-compliant.aspx</link><pubDate>Sat, 28 Feb 2009 21:16:40 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3207721</guid><dc:creator>ucspotting</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3207721.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3207721</wfw:commentRss><description>&lt;p&gt;As you know, Office Communications Server 2007 Mediation Server uses a plus sign (+) to prefix E.164 numbers in the Request Uniform Resource Identifier (URI) for outgoing calls. However, certain private branch exchanges (PBXs) do not comply with &lt;a href="http://www.ietf.org/rfc/rfc3966.txt" target="_blank"&gt;RFC 3966&lt;/a&gt; and do not accept numbers that are prefixed with a plus sign (+).&lt;/p&gt;  &lt;p&gt;To make sure that OCS 2007 operates correctly with non-RFC 3966-compliant PBXs, Microsoft released an update for Mediation Server (R1), which is described in KB articles &lt;a href="http://support.microsoft.com/kb/952780" target="_blank"&gt;952780&lt;/a&gt; and &lt;a href="http://support.microsoft.com/kb/952785/"&gt;952785&lt;/a&gt;. &lt;span style="background-color: #ffff99"&gt;After installing the update, it’s necessary to create a configuration file – &lt;em&gt;MediationServerSvc.exe.config&lt;/em&gt;&amp;#160;&lt;/span&gt;– with the following content:&lt;/p&gt;  &lt;div&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;lt;?xml version=&lt;span style="color: #006080"&gt;&amp;quot;1.0&amp;quot;&lt;/span&gt; encoding=&lt;span style="color: #006080"&gt;&amp;quot;utf-8&amp;quot;&lt;/span&gt; ?&amp;gt;
&amp;lt;configuration&amp;gt;
                 &amp;lt;appSettings&amp;gt;
                                &amp;lt;add key=&lt;span style="color: #006080"&gt;&amp;quot;RemovePlusFromRequestURI&amp;quot;&lt;/span&gt; value=&lt;span style="color: #006080"&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt; /&amp;gt;
                 &amp;lt;/appSettings&amp;gt;
&amp;lt;/configuration&amp;gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;h3&gt;What about R2?&lt;/h3&gt;

&lt;p&gt;For OCS 2007 R2, the behavior changed a little bit. Microsoft incorporated the previous described workaround in the R2 binaries, but the configuration file is no longer needed. Instead, there’s a new WMI setting, &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt; , which is described on this page: &lt;a href="http://technet.microsoft.com/en-us/library/dd441273(office.13).aspx" target="_blank"&gt;Enterprise Voice Server-Side Components&lt;/a&gt;:&lt;/p&gt;

&lt;h5&gt;&lt;em&gt;&lt;font color="#6a6a6a"&gt;&lt;em&gt;Compatibility with PBXs That Do Not Support the Plus Sign&lt;/em&gt;&lt;/font&gt;&lt;/em&gt;&lt;/h5&gt;
&lt;font color="#6a6a6a"&gt;
  &lt;p&gt;&lt;em&gt;By default, E.164 numbers in the Request URI of outgoing calls from Office Communications Server 2007 R2 are prefixed with a plus sign. Most PBXs process such numbers without problem. Some PBXs, however, do not accept numbers that are prefixed with a plus sign and do not route those calls correctly.&lt;/em&gt;&lt;/p&gt;

  &lt;p&gt;&lt;em&gt;To assure interoperability with these PBXs, Office Communications Server 2007 R2 has a new Mediation Server setting for WMI called &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt;. This setting can be set to YES or NO. The default value is NO.&lt;/em&gt;&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;em&gt;If a PBX downstream from the Office Communications Server 2007 R2 Mediation server does not accept numbers prefixed with a plus sign, set the value of &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt; to YES. This causes Mediation Server to remove the plus signs from the Request URIs of outgoing calls. It also causes the plus signs to be removed from the To and From URIs. &lt;/em&gt;&lt;/li&gt;

    &lt;li&gt;&lt;em&gt;If the downstream PBX accepts numbers prefixed with plus signs, leave the value of &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt; set to its default value of NO. This causes Office Communications Server 2007 Mediation Server to pass Request URIs, To URIs, and From URIs unchanged (that is, with plus signs).&lt;/em&gt; &lt;/li&gt;
  &lt;/ul&gt;
&lt;/font&gt;

&lt;p&gt;Actually the &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt; is a boolean property that can be set to TRUE or FALSE. The easiest way of changing its value, is by means of a VBScript:&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;' RemovePlusFromRequestURI&lt;/span&gt;
&lt;span style="color: #008000"&gt;'&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objLocator
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objService
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstances
  &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objInstance

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Connecting to local WMI store...&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objLocator = CreateObject(&lt;span style="color: #006080"&gt;&amp;quot;WbemScripting.SWbemLocator&amp;quot;&lt;/span&gt;)
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objService = objLocator.ConnectServer(&lt;span style="color: #006080"&gt;&amp;quot;.&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;&amp;quot;root\cimv2&amp;quot;&lt;/span&gt;)

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPMediationServerConfigSetting&amp;quot;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; objInstances = _
    objService.ExecQuery(&lt;span style="color: #006080"&gt;&amp;quot;select * from MSFT_SIPMediationServerConfigSetting&amp;quot;&lt;/span&gt;)

  &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; IsNull(objInstances) &lt;span style="color: #0000ff"&gt;Or&lt;/span&gt; (objInstances.Count = 0) &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;
    Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Error: No instance&amp;quot;&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;

    &lt;span style="color: #0000ff"&gt;For&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Each&lt;/span&gt; objInstance &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; objInstances

      objInstance.Properties_.Item(&lt;span style="color: #006080"&gt;&amp;quot;RemovePlusFromRequestURI&amp;quot;&lt;/span&gt;).Value = &lt;span style="color: #006080"&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
      objInstance.Put_
      wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;Done&amp;quot;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Exit&lt;/span&gt; &lt;span style="color: #0000ff"&gt;For&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;Next&lt;/span&gt;

  &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;

  Wscript.Echo &lt;span style="color: #006080"&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Run this script on the Mediation Server (don’t forget to run it using Administrator credentials) and you’re done. &lt;/p&gt;

&lt;p&gt;To check the current value of this property (or to verify that the script worked), you can use the &lt;a href="http://technet.microsoft.com/en-us/library/cc785775.aspx" target="_blank"&gt;WBEMTest&lt;/a&gt; tool (also check this nice article: &lt;a href="http://www.microsoft.com/technet/scriptcenter/resources/guiguy/wbemtest.mspx" target="_blank"&gt;WBEM What?&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WMI Settings:&lt;/strong&gt; 

  &lt;br /&gt;&lt;strong&gt;Namespace:&lt;/strong&gt; root\cimv2 

  &lt;br /&gt;&lt;strong&gt;Class:&lt;/strong&gt; MSFT_SIPMediationServerConfigSetting (Open Class) 

  &lt;br /&gt;&lt;strong&gt;Property:&lt;/strong&gt; RemovePlusFromRequestURI 

  &lt;br /&gt;&lt;strong&gt;Possible Values:&lt;/strong&gt; TRUE/FALSE&lt;/p&gt;

&lt;h3&gt;To use WBEMTest to verify WMI settings:&lt;/h3&gt;

&lt;ol&gt;
  &lt;li&gt;Log on to the Mediation Server as a member of the &lt;b&gt;RTCUniversalServerAdmins&lt;/b&gt; group or an account with equivalent user rights.&lt;/li&gt;

  &lt;li&gt;Click &lt;b&gt;Start&lt;/b&gt;, click &lt;b&gt;Run&lt;/b&gt; and type &lt;b&gt;wbemtest&lt;/b&gt;.&lt;/li&gt;

  &lt;li&gt;In the &lt;b&gt;Windows Management Instrumentation Tester&lt;/b&gt; dialog box, click &lt;b&gt;Connect&lt;/b&gt;.

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/01-RemovePlusFromRequestURI_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="01-RemovePlusFromRequestURI" border="0" alt="01-RemovePlusFromRequestURI" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/01-RemovePlusFromRequestURI_thumb.gif" width="244" height="203" /&gt;&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;In the &lt;b&gt;Connect&lt;/b&gt; dialog box, type &lt;b&gt;root\cimv2&lt;/b&gt; in the &lt;b&gt;Namespace &lt;/b&gt;box. Click &lt;strong&gt;Connect&lt;/strong&gt;.&lt;/li&gt;

  &lt;li&gt;Click &lt;strong&gt;Open Class&lt;/strong&gt;. In the Get Object Path box, type &lt;em&gt;MSFT_SIPMediationServerConfigSetting&lt;/em&gt;, and then click &lt;strong&gt;OK&lt;/strong&gt;.&lt;/li&gt;

  &lt;li&gt;In the Object Editor for &lt;em&gt;MSFT_SIPMediationServerConfigSetting &lt;/em&gt;dialog box, click&lt;strong&gt; Instances&lt;/strong&gt;.

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/02-RemovePlusFromRequestURI_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="02-RemovePlusFromRequestURI" border="0" alt="02-RemovePlusFromRequestURI" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/02-RemovePlusFromRequestURI_thumb.gif" width="244" height="225" /&gt;&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Double-click &lt;em&gt;MSFT_SIPMediationServerConfigSetting=”{…}”&lt;/em&gt;.

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/03-RemovePlusFromRequestURI_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="03-RemovePlusFromRequestURI" border="0" alt="03-RemovePlusFromRequestURI" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/03-RemovePlusFromRequestURI_thumb.gif" width="244" height="156" /&gt;&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Scroll down to the property &lt;strong&gt;RemovePlusFromRequestURI&lt;/strong&gt; and verify its value.

    &lt;br /&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/04-RemovePlusFromRequestURI_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="04-RemovePlusFromRequestURI" border="0" alt="04-RemovePlusFromRequestURI" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/RemovePlusFromRequestURIorhowtoturnOCSin_BA6F/04-RemovePlusFromRequestURI_thumb.gif" width="244" height="225" /&gt;&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Close the &lt;b&gt;Windows Management Instrumentation Tester&lt;/b&gt; dialog box.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Don’t forget to restart the Mediation Server service, after modifying this setting!&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3207721" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Mediation+Server/default.aspx">Mediation Server</category></item><item><title>What are those pesky files in my root folder?</title><link>http://blogs.technet.com/ucspotting/archive/2009/02/21/what-are-those-pesky-files-in-my-root-folder.aspx</link><pubDate>Sat, 21 Feb 2009 20:47:35 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3205332</guid><dc:creator>ucspotting</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3205332.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3205332</wfw:commentRss><description>&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:8747F07C-CDE8-481f-B0DF-C6CFD074BF67:3d87df99-7c68-41e8-ac8d-9b43e96e3578" class="wlWriterEditableSmartContent"&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Whatarethosepeskyfilesonmyrootfolder_B588/vc-garbage-8x6.gif" title="" rel="thumbnail"&gt;&lt;img border="0" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/Whatarethosepeskyfilesonmyrootfolder_B588/vc-garbage_30.png" /&gt;&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;Have you noticed that after you install an OCS server, there are some additional files dropped in the root folder (C:\)? These are the temporary files of the VC++ 2008 Redistributable package, which extracts them to the root of the drive where the installation was run from.&lt;/p&gt;  &lt;p&gt;This is the complete list of those pesky files:&lt;/p&gt;  &lt;pre&gt;11/07/2007  08:00 AM            17,734 eula.1028.txt
11/07/2007  08:00 AM            17,734 eula.1031.txt
11/07/2007  08:00 AM            10,134 eula.1033.txt
11/07/2007  08:00 AM            17,734 eula.1036.txt
11/07/2007  08:00 AM            17,734 eula.1040.txt
11/07/2007  08:00 AM               118 eula.1041.txt
11/07/2007  08:00 AM            17,734 eula.1042.txt
11/07/2007  08:00 AM            17,734 eula.2052.txt
11/07/2007  08:00 AM            17,734 eula.3082.txt
11/07/2007  08:00 AM             1,110 globdata.ini
11/07/2007  08:44 AM           855,040 install.exe
11/07/2007  08:00 AM               843 install.ini
11/07/2007  08:44 AM            75,280 install.res.1028.dll
11/07/2007  08:44 AM            95,248 install.res.1031.dll
11/07/2007  08:44 AM            90,128 install.res.1033.dll
11/07/2007  08:44 AM            96,272 install.res.1036.dll
11/07/2007  08:44 AM            94,224 install.res.1040.dll
11/07/2007  08:44 AM            80,400 install.res.1041.dll
11/07/2007  08:44 AM            78,864 install.res.1042.dll
11/07/2007  08:44 AM            74,768 install.res.2052.dll
11/07/2007  08:44 AM            95,248 install.res.3082.dll
11/07/2007  08:00 AM             5,686 vcredist.bmp
11/07/2007  08:50 AM         1,927,956 VC_RED.cab
11/07/2007  08:53 AM           242,176 VC_RED.MSI&lt;/pre&gt;

&lt;p&gt;The good news is that you can safely delete those files if they are really bothering you. But be careful! Be sure you don’t delete any other file necessary to the smooth operation of the server.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3205332" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/OCS+2007+R2/default.aspx">OCS 2007 R2</category></item><item><title>Hey dude, where’s my OCS 2007 R2 Management Console?</title><link>http://blogs.technet.com/ucspotting/archive/2009/02/21/hey-dude-where-s-my-ocs-2007-r2-management-console.aspx</link><pubDate>Sat, 21 Feb 2009 15:51:13 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3205252</guid><dc:creator>ucspotting</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3205252.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3205252</wfw:commentRss><description>&lt;p&gt;As you probably know by now, the setup process for Office Communications Server 2007 R2 has changed a little bit. One of the changes is that now you must manually install the Administrative Tools in a separate step (before, they were automatically installed with the product).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/00-ocs-r2-admin-tools_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="00-ocs-r2-admin-tools" border="0" alt="00-ocs-r2-admin-tools" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/00-ocs-r2-admin-tools_thumb.gif" width="499" height="367" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Whether you’re installing them on an OCS server or on any other x64 server you use for administration purposes, just kick the Setup Deployment Wizard and select Administrative Tools.&lt;/p&gt;  &lt;h3&gt;What about the Edge?&lt;/h3&gt;  &lt;p&gt;By now, you are wondering if the process for the OCS Edge server role is the same. The answer is YES! As you know, the administration of the Edge server is made through the Computer Management snap-in, rather than through the OCS R2 Management Console available in the Administrative Tools folder.&lt;/p&gt;  &lt;p&gt;You only get the extended Computer Management snap-in *after* you manually install the OCS Administrative Tools.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/ocs-r2-edge-admin-tools-small_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ocs-r2-edge-admin-tools-small" border="0" alt="ocs-r2-edge-admin-tools-small" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/ocs-r2-edge-admin-tools-small_thumb.gif" width="488" height="255" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Can I install the OCS R2 Admin Tools on a 32-bit machine?&lt;/h3&gt;  &lt;p&gt;Yes, you can. &lt;span style="background-color: #ffff99"&gt;The supported platforms to deploy the OCS R2 Administrative Tools are: Windows Server 2003 with SP2 (x86, x64), Windows Server 2008 (x86, x64) and Windows Vista Business or Enterprise with SP1 (x86, x64)&lt;/span&gt;.&lt;/p&gt;  &lt;p&gt;Although OCS 2007 R2 is only supported on a 64-bit platform, the 32-bit Administrative Tools are available as part of the 64-bit installation media. You can find them under \SUPPORT\I386. In this folder there are a couple of files that are required as pre-requisites. Install them in the following order:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;sqlncli.msi – SQL Server Native Client&lt;/li&gt;    &lt;li&gt;vcredist_x86.exe – VC++ 2008 Redistributable &lt;/li&gt;    &lt;li&gt;.NET Framework 3.5 SP1 – Download from web or use \Setup\amd64\dotnetfx35.exe&lt;/li&gt;    &lt;li&gt;OCSCore.msi – Office Communications Server 2007 R2 Core Components&lt;/li&gt;    &lt;li&gt;AdminTools.msi – Office Communications Server 2007 R2 Administrative Tools &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;The 64-bit experience is much better, because the Setup Wizard will install all the pre-requisites automatically. Just for fun, if you didn’t know the correct order for the x86 installation process, this is the pop-up you’d get when running the AdminTools.msi file:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="01-ocs-r2-admin-tools-x86" border="0" alt="01-ocs-r2-admin-tools-x86" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/01-ocs-r2-admin-tools-x86_3.gif" width="366" height="198" /&gt; &lt;/p&gt;  &lt;p&gt;OK, i see there’s a file OCSCore.msi, so let’s double click it. Damn! Another pop-up:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="02-ocs-r2-admin-tools-x86" border="0" alt="02-ocs-r2-admin-tools-x86" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/02-ocs-r2-admin-tools-x86_3.gif" width="366" height="198" /&gt; &lt;/p&gt;  &lt;p&gt;Hummm, the SQL Server Native Client must be this file: sqlncli.msi. Success, it’s installing! So, let’s try again the OCSCore.msi… Another pop-up, what else is new???!!&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="04-ocs-r2-admin-tools-x86" border="0" alt="04-ocs-r2-admin-tools-x86" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/04-ocs-r2-admin-tools-x86_3.gif" width="366" height="198" /&gt; &lt;/p&gt;  &lt;p&gt;Running vcredist_x86.exe… Success! I’m pretty sure this was the last pre-requisite, let’s try again the OCSCore.msi. Ah, the .NET Framework 3.5 SP1, of course!!!&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="05-ocs-r2-admin-tools-x86" border="0" alt="05-ocs-r2-admin-tools-x86" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HeydudewheresmyOCS2007R2EdgeManagementCo_A8FE/05-ocs-r2-admin-tools-x86_3.gif" width="366" height="198" /&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Did you have fun? I sure did :-)&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3205252" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/OCS+2007+R2/default.aspx">OCS 2007 R2</category></item><item><title>Useful commands when deploying OCS 2007 R2</title><link>http://blogs.technet.com/ucspotting/archive/2009/01/20/useful-commands-when-deploying-ocs-2007-r2.aspx</link><pubDate>Tue, 20 Jan 2009 22:11:31 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3187344</guid><dc:creator>ucspotting</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3187344.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3187344</wfw:commentRss><description>&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/UsefulcommandswhendeployingOCS2007R2_FD49/command-prompt_4.gif"&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="command-prompt" border="0" alt="command-prompt" align="right" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/UsefulcommandswhendeployingOCS2007R2_FD49/command-prompt_thumb_1.gif" width="144" height="144" /&gt;&lt;/a&gt; First of all, don’t panic! Office Communications Server (OCS) 2007 R2 still has a nice graphical setup wizard that guides you through the installation process. But sometimes, for very specific tasks, the command line is your best friend. &lt;/p&gt;  &lt;p&gt;This post is more a “note to self”, since I use this commands a lot, but I hope you find it useful too.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;OCS 2007 R2&lt;/h3&gt;  &lt;p&gt;For OCS, the command-line utilities LCSCMD and RGSCOT are installed with the Office Communications Server 2007 R2 Administrative Tools. By default, they are located in the following location &lt;strong&gt;%ProgramFiles%\Common Files\Microsoft Office Communications Server 2007 R2&lt;/strong&gt;.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;To request a Web Server certificate from an online CA for Communicator Web Access:&lt;/strong&gt;&lt;/p&gt;  &lt;div&gt;   &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;LcsCmd.exe /Cert /Action:Request /sn:im.contoso.com /san:im.contoso.com,&lt;br /&gt;download.im.contoso.com,as.im.contoso.com,cwa.contoso.com,cwa-server.contoso.com &lt;br /&gt;/ca:&amp;quot;ca-server.contoso.com\Contoso Root CA&amp;quot; /OU:IT /org:Contoso /country:PT &lt;br /&gt;/city:Lisbon /state:Lisbon /friendlyName:CWACertificate /exportable:TRUE &lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;
    &lt;br /&gt;To generate the Web Server certificate request file for Communicator Web Access:&lt;/strong&gt;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;LcsCmd.exe /Cert /Action:Request /sn:im.contoso.com /san:im.contoso.com,&lt;br /&gt;download.im.contoso.com,as.im.contoso.com,cwa.contoso.com,cwa-server.contoso.com &lt;br /&gt;/filename:c:\certrequest.txt /OU:IT /org:Contoso /country:PT /city:Lisbon &lt;br /&gt;/state:Lisbon /friendlyName:CWACertificate /Online:FALSE /exportable:TRUE &lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;
    &lt;br /&gt;To create contact objects for Response Group Service:&lt;/strong&gt;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;RGSCOT /Create /PoolFQDN:ocspool.contoso.com /DisplayName:&amp;quot;Information Desk&amp;quot; &lt;br /&gt;/DisplayNumber:+3515555555 /PrimaryUri:sip:InformationDesk@contoso.com &lt;br /&gt;/LineUri:tel:+3515555555&lt;br /&gt; 
RGSCOT /Create /PoolFQDN:ocspool.contoso.com /DisplayName:&amp;quot;Help Desk&amp;quot; &lt;br /&gt;/DisplayNumber:+3519999999 /PrimaryUri:sip:HelpDesk@contoso.com &lt;br /&gt;/LineUri:tel:+3519999999&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h3&gt;Exchange Server 2007&lt;/h3&gt;

&lt;p&gt;When integrating Exchange Unified Messaging with OCS, there might be necessary to generate a new certificate, in order to replace the self-signed generated automatically by Exchange. This time, instead of using command-line utilities, I’ll use some Exchange Management Shell cmdlets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;
    &lt;br /&gt;To generate the request for the UM certificate:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;New-ExchangeCertificate -generaterequest -subjectname &amp;quot;dc=com,dc=contoso,o=Contoso,&lt;br /&gt;cn=um-server.contoso.com&amp;quot; -domainname UM-SERVER,um-server.contoso.com,&lt;br /&gt;autodiscover.contoso.com -PrivateKeyExportable $true -path c:\certrequest.txt&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;
    &lt;br /&gt;To import the issued certificate:&lt;/strong&gt;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;Import-ExchangeCertificate -Path c:\certnew.cer&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;
    &lt;br /&gt;To enable the certificate:&lt;/strong&gt;&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;Enable-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e &lt;br /&gt;-Services &amp;quot;POP, IMAP, UM, IIS&amp;quot;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;This is just a sample of some commands that I generally use when installing and configuring OCS 2007 R2. There are many, many more actions that can be performed using the command line, such as preparing Active Directory, installing server roles, creating pools, moving the backend database and so on, and so on.&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;BTW, before you ask, there are still no specific PowerShell cmdlets for OCS 2007 R2. Let’s wait for OCS Wave “14”!&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3187344" width="1" height="1"&gt;</description></item><item><title>How many public certificates do I *really* need?</title><link>http://blogs.technet.com/ucspotting/archive/2008/12/29/how-many-public-certificates-do-i-really-need.aspx</link><pubDate>Mon, 29 Dec 2008 20:44:11 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3174452</guid><dc:creator>ucspotting</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3174452.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3174452</wfw:commentRss><description>&lt;p&gt;&amp;#8211; How many public certificates do I need, in order to configure external access to my OCS 2007 pool?    &lt;br /&gt;&amp;#8211; 3. One for the HTTP Reverse Proxy, one for the OCS Access Edge and one for the OCS Web Conferencing Edge.    &lt;br /&gt;&amp;#8211; Even if I'm using a consolidated Edge topology?     &lt;br /&gt;&amp;#8211; Yes!     &lt;br /&gt;&amp;#8211; But can't I just use a super-mega-jumbo SAN certificate with all the required alternative names?     &lt;br /&gt;&amp;#8211; No!     &lt;br /&gt;&amp;#8211; Why not?     &lt;br /&gt;&amp;#8211; Because!&lt;/p&gt;  &lt;p&gt;Well, to tell you the truth it's not &amp;quot;because&amp;quot;, it is the official support policy written in the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=f8cc9b59-225f-425d-bd3a-e506396c6207&amp;amp;displaylang=en" target="_blank"&gt;OCS 2007 Supportability Guide&lt;/a&gt;, the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=723347C6-FA1F-44D8-A7FA-8974C3B596F4&amp;amp;displaylang=en"&gt;OCS 2007 Planning Guide&lt;/a&gt; and the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=ED45B74E-00C4-40D2-ABEE-216CE50F5AD2&amp;amp;displaylang=en"&gt;OCS 2007 Edge Server Deployment Guide&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;   &lt;div class="wlWriterSmartContent" id="scid:8747F07C-CDE8-481f-B0DF-C6CFD074BF67:75ca27ff-e63c-4b30-ac7a-5df71a6ec475" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;a href="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HowmanypubliccertificatesdoIreallyneed_9779/uc-pilot-firewall-8x6.gif" title="" rel="thumbnail"&gt;&lt;img border="0" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/HowmanypubliccertificatesdoIreallyneed_9779/uc-pilot-firewall_18.png" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;/p&gt;  &lt;p&gt;Here's a summary of the external certificate requirements: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;For each unique IP address on the external interface that you use for the Access Edge Server and Web Conferencing Edge Server, you will need a separate certificate&lt;/span&gt;. We recommend that you use a separate external IP addresses for each server role, even if all servers are collocated. An external certificate is not required on the A/V Edge Server.&lt;/li&gt;    &lt;li&gt;Office Communications Server 2007 will support certificates with a length of up to 1024 bits. &lt;/li&gt;    &lt;li&gt;Office Communications Server 2007 server certificates must be configured with an enhanced key usage (EKU) extension for server authentication.&lt;/li&gt;    &lt;li&gt;For a list of public certificate authorities who have partnered with Microsoft to ensure that their certificates comply with specific requirements for Office Communications Server, see &lt;a href="http://r.office.microsoft.com/r/rlidOCS?clid=1033&amp;amp;p1=SupportedCAs"&gt;http://r.office.microsoft.com/r/rlidOCS?clid=1033&amp;amp;p1=SupportedCAs&lt;/a&gt;.&lt;/li&gt;    &lt;li&gt;For both internal and remote clients, the CA certificate chain for the Office Communications Server 2007 deployment must be downloaded and installed to the certificate store of the client computer in the Trusted Root Certification Authorities folder. &lt;/li&gt;    &lt;li&gt;All server certificates must support server authorization (Server EKU 1.3.6.1.5.5.7.3.1).&lt;/li&gt;    &lt;li&gt;All server certificates must contain a CRL Distribution Point (CDP).&lt;/li&gt;    &lt;li&gt;Auto-enrollment is supported for internal Office Communications Server servers, including an array of Standard Edition Servers configured as Director.&lt;/li&gt;    &lt;li&gt;Auto-enrollment is not supported for Office Communications Server edge servers.&lt;/li&gt;    &lt;li&gt;For the A/V Edge Server, an additional certificate is required for audio/video authentication. The private key of the A/V authentication certificate is used to generate authentication credentials. &lt;span style="background-color: #ffff99"&gt;As a security precaution, you should not use the same certificate for A/V authentication that you use for the internal interface of the A/V Edge Server&lt;/span&gt;. We recommend that you issue this certificate from an internal CA, but you can also use a certificate from a public CA&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#8211; But why can't I just use my internal CA?   &lt;br /&gt;&amp;#8211; Well, to tell you the truth, it's technically possible, as long as you remember these guidelines:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Public certificates are required if you enable Web conferencing and enable your users to invite anonymous participants (individuals from outside your organization that do not have Active Directory credentials).&lt;/li&gt;    &lt;li&gt;Public certificates are required for public IM connectivity, and they are highly recommended for enhanced federation. The public certificate must be from a public CA that is on the default list of trusted root CAs installed on the server.&lt;/li&gt;    &lt;li&gt;It is possible to use your Enterprise subordinate CA for direct federation, as well as for testing or trial purposes if all partners agree to trust the CA or cross-sign the certificate.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It is very unlikely that these requirements will change with the release of Office Communications Server 2007 R2.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3174452" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Certificates/default.aspx">Certificates</category></item><item><title>Connecting Communicator R2 to Exchange UM</title><link>http://blogs.technet.com/ucspotting/archive/2008/12/24/connecting-communicator-r2-to-exchange-um.aspx</link><pubDate>Wed, 24 Dec 2008 19:45:19 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3172988</guid><dc:creator>ucspotting</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ucspotting/comments/3172988.aspx</comments><wfw:commentRss>http://blogs.technet.com/ucspotting/commentrss.aspx?PostID=3172988</wfw:commentRss><description>&lt;p&gt;Recently, I was doing some tests with Exchange Unified Messaging, but when I tried to connect to Exchange Voice Mail using Communicator R2, I got the following error:&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;em&gt;&lt;span style="background-color: #ffff99"&gt;&lt;em&gt;Incompatible security setting.&amp;#160; &lt;br /&gt;The call could not be completed because security levels do not match&lt;/em&gt;&lt;/span&gt;&lt;/em&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="328" alt="incompatible-security-settings" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/ConnectingCommunicatorR2toExchangeUM_F15D/incompatible-security-settings_3.gif" width="368" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;An Exchange UM dial-plan supports three different security levels: Unsecured, SIP Secured, and Secured. The following table shows the differences in terms of Mutual TLS and SRTP for the various security levels. &lt;/p&gt;  &lt;table cellspacing="2" cellpadding="2" width="400" border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="133"&gt;         &lt;p align="center"&gt;&lt;strong&gt;VoIP Security&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="133"&gt;         &lt;p align="center"&gt;&lt;strong&gt;Mutual TLS&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="133"&gt;         &lt;p align="center"&gt;&lt;strong&gt;SRTP&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="133"&gt;Unsecured&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Disabled&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Disabled&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="133"&gt;SIP Secured&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Enabled (required)&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Disabled&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="133"&gt;Secured&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Enabled (required)&lt;/td&gt;        &lt;td valign="top" width="133"&gt;Enabled (required)&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="507" alt="exchange-um-secured" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/ConnectingCommunicatorR2toExchangeUM_F15D/exchange-um-secured_3.gif" width="443" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;When integrating Exchange UM with Office Communications Server 2007, consider the following when selecting the dial plan security level: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Mutual TLS is required between Exchange UM and OCS, therefore the Unsecured level is not an option.&lt;/li&gt;    &lt;li&gt;Office Communicator 2007 clients support SRTP (Secure Real-Time Transport Protocol), therefore both Secured as well as SIP Secured security levels can be used. The encryption level that Communicator uses can be set by means of Group Policy or by changing the &lt;i&gt;PC2PCAVEncryption&lt;/i&gt; registry key.&lt;/li&gt;    &lt;li&gt;&lt;span style="background-color: #ffff99"&gt;If Communicator Phone Edition (aka Tanjay) is deployed, the security level should be set to Secured&lt;/span&gt;.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The registry key &lt;em&gt;PC2PCAVEncryption&lt;/em&gt; (REG_DWORD) can be used to specify whether encryption is supported, required, or not supported when making and receiving audio and video calls. The supported values are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;0 = Support encryption, but do not require it. Should only be used with the TLS network protocol. (default) &lt;/li&gt;    &lt;li&gt;1 = Require encryption. Unencrypted calls are not accepted. Should only be used with the TLS network protocol. &lt;/li&gt;    &lt;li&gt;2 = Do not support encryption. Encrypted calls are not accepted.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="203" alt="PC2PCAVEncryption" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/ConnectingCommunicatorR2toExchangeUM_F15D/PC2PCAVEncryption_3.gif" width="345" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;BTW, if you're playing around with this registry key (or any other), you may find useful to know that Communicator uses the following precedence, when applying settings:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;b&gt;HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Communicator&lt;/b&gt;&lt;/li&gt;    &lt;li&gt;&lt;b&gt;HKEY_CURRENT_USER\Software\Policies\Microsoft\Communicator&lt;/b&gt;&lt;/li&gt;    &lt;li&gt;Office Communications Server 2007 in-band provisioning&lt;/li&gt;    &lt;li&gt;Communicator 2007 Options dialog box&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Further investigation revealed the following error on Communicator logs:&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;em&gt;&lt;span style="background-color: #ffff99"&gt;&lt;em&gt;SIP/2.0 415 Unsupported Media Type&lt;/em&gt;&lt;/span&gt;&lt;/em&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/photos/ucspotting/images/3172986/original.aspx" target="_blank"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="372" alt="tracing-small" src="http://blogs.technet.com/blogfiles/ucspotting/WindowsLiveWriter/ConnectingCommunicatorR2toExchangeUM_F15D/tracing-small_3.gif" width="428" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After this, it seemed quite obvious that the problem had to do with encryption, more specifically to the SRTP setting. The solution? There are 2 possible ones:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Change the Exchange UM VoIP Security level to &amp;quot;Secured&amp;quot; (it was SIP Secured before).&lt;/li&gt;    &lt;li&gt;Create the registry key &lt;i&gt;PC2PCAVEncryption&lt;/i&gt; and change its value to 0&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;One final note: &lt;span style="background-color: #ffff99"&gt;the problem didn't affect Office Communicator 2007, only the R2 client&lt;/span&gt;, so we can assume the R2 clients will be more secure than its predecessors.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3172988" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ucspotting/archive/tags/Communicator+2007+R2/default.aspx">Communicator 2007 R2</category><category domain="http://blogs.technet.com/ucspotting/archive/tags/Exchange+UM/default.aspx">Exchange UM</category></item></channel></rss>