<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JBs Just Sayin</title>
	<atom:link href="http://blog.kiwibees.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.kiwibees.net</link>
	<description></description>
	<lastBuildDate>Sun, 24 Mar 2013 19:33:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Wellington IUG &#124; Lync 2013 Migration Pro-Tips &#124; April 9th @ 5pm</title>
		<link>http://blog.kiwibees.net/2013/03/25/wellington-iug-lync-2013-migration-pro-tips-april-9th-5pm/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wellington-iug-lync-2013-migration-pro-tips-april-9th-5pm</link>
		<comments>http://blog.kiwibees.net/2013/03/25/wellington-iug-lync-2013-migration-pro-tips-april-9th-5pm/#comments</comments>
		<pubDate>Sun, 24 Mar 2013 19:33:18 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=347</guid>
		<description><![CDATA[I&#8217;ll be presenting a usergroup session on Lync 2013 in early April down in Wellington at Microsoft&#8217;s recently refurbished office (Level 12, 157 Lambton Quay) &#8211; you should come &#8211; it&#8217;ll be great. Lync 2013 is here – planned your upgrade yet? Lync 2013 is here, and it&#8217;s action-packed full of fantastic new features that [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ll be presenting a usergroup session on Lync 2013 in early April down in Wellington at Microsoft&#8217;s recently refurbished office (Level 12, 157 Lambton Quay) &#8211; you should come &#8211; it&#8217;ll be great.</p>
<blockquote><p><i><strong>Lync 2013 is here – planned your upgrade yet?</strong></p>
<p>Lync 2013 is here, and it&#8217;s action-packed full of fantastic new features that will quite honestly change your life. If, like many organisations, you drank the kool-aid a while back and deployed OCS or Lync 2010, you’ll be asking yourself whether you should be upgrading, and how you go about it.</i></p>
<p><i>We’ll do a whistle-stop tour through the pick of the new features &#8211; hopefully helping you build your business case to upgrade – and run step-by-step through a Lync 2010-2013 upgrade, including a few lessons from the field to save you some pain.<br />
</i></p></blockquote>
<p>Registration is required for this event &#8211; please do so <a href="http://www.mscommunities.co.nz/Events/Lync-2013.aspx" target="_blank">here</a> if you&#8217;d like to attend. (did I mention there&#8217;s free beer and pizza?)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2013/03/25/wellington-iug-lync-2013-migration-pro-tips-april-9th-5pm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hyper-V USB Storage Limitation and Workaround</title>
		<link>http://blog.kiwibees.net/2013/02/05/hyper-v-usb-storage-limitation-workaround/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hyper-v-usb-storage-limitation-workaround</link>
		<comments>http://blog.kiwibees.net/2013/02/05/hyper-v-usb-storage-limitation-workaround/#comments</comments>
		<pubDate>Tue, 05 Feb 2013 01:22:40 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Windows 8]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=325</guid>
		<description><![CDATA[As many before me have experienced, I struck an error recently when creating or starting a Hyper-V VM on Windows 8 (with USB 3.0 external storage) where I encountered the following error message: Failed to create external configuration stare at &#60;path&#62;: General access denied error (Virtual machine ID 0x80070005) User "domain\user" failed to create external [...]]]></description>
				<content:encoded><![CDATA[<p>As many before me have experienced, I struck an error recently when creating or starting a Hyper-V VM on Windows 8 (with USB 3.0 external storage) where I encountered the following error message:</p>
<pre>Failed to create external configuration stare at &lt;path&gt;: General access denied error (Virtual machine ID 0x80070005)</pre>
<pre><span style="color: #222222; font-family: 'Courier 10 Pitch', Courier, monospace; line-height: 21px;">User "domain\user" failed to create external configuration store at &lt;path&gt;: General access denied error (virtual machine ID 0x80070005)"</span></pre>
<p>There&#8217;s no shortage of suggested workarounds on the web, but most relate to permissions or disk format (NTFS/FAT32), and none worked for me. After exploring a bunch of the suggested fixes, I stumbled on <a href="http://social.technet.microsoft.com/Forums/en-US/w8itprovirt/thread/6b95a8d0-af10-433d-9b12-3b271a3d9ac1">this superbly technical post</a> that raised the excellent point that not all USB devices mount in the same way, and therefore don&#8217;t all present to Hyper-V in a way that is compatible.</p>
<p>So on a hunch, I tried an alternative mounting method in Disk Management. Rather than the normal approach of creating a volume and assigning it a drive letter, I mounted it as an NTFS volume under an existing drive &#8211; my existing HDD was partitioned with C:\ and D:\ partitions, so I mounted the SSD volume as D:\SSD\.</p>
<p>And just like that, everything worked perfectly. I had no further issues using this storage media with Hyper-V. Problem solved.</p>
<p>Now, there&#8217;s a distinct likelihood this has a performance impact (I&#8217;m genuinely unsure if there is a tradeoff involved in using the NTFS mount method) &#8211; though in my ad-hoc testing I saw no discernible difference in performance of the SSD-based data. If anything, the only performance hit seemed to be when accessing other data on the rest of the D:\ partition &#8211; but I haven&#8217;t managed to quantify that (and may well be imagining it).</p>
<p>Bare in mind also that because the drive is mounted under your local file system, your drive is no longer strictly portable, in as much as there is no file system reference data on the USB drive itself, so if you plug the drive into a different computer, that computer wont be able to see whats on the external disk (and will report it as empty).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2013/02/05/hyper-v-usb-storage-limitation-workaround/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lync Hold Issue</title>
		<link>http://blog.kiwibees.net/2012/05/30/lync-hold-issue/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=lync-hold-issue</link>
		<comments>http://blog.kiwibees.net/2012/05/30/lync-hold-issue/#comments</comments>
		<pubDate>Wed, 30 May 2012 08:00:18 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=263</guid>
		<description><![CDATA[In a recent Enterprise Voice deployment I struck an issue where a small number of users couldn&#8217;t place a call on hold. When they tried, the Lync client errored with &#8220;Failed to place call on hold&#8221; and instead put the client&#8217;s mic and speakers on mute. Removing this mute sometimes worked and sometimes resulted in [...]]]></description>
				<content:encoded><![CDATA[<p><span style="color: #333333;">In a recent Enterprise Voice deployment I struck an issue where a small number of users couldn&#8217;t place a call on hold. When they tried, the Lync client errored with &#8220;Failed to place call on hold&#8221; and instead put the client&#8217;s mic and speakers on mute. Removing this mute sometimes worked and sometimes resulted in a dropped call.</span></p>
<p><span style="color: #333333;">All users in this particular deployment were subject to the same client policy, same client version, same voice routing.. generally, everything was the same from one user to the next.</span></p>
<p><span style="color: #333333;">After running some S4/SIPStack trace logs on the gateway, and analysing the SIP Options packet that was being sent to the SIP gateway, I could see that in a working request, the SIP Invite that got sent included <em><strong>a=inactive</strong></em> (which is normal), whereas in a failing request, the Invite sent <strong><em>a=sendonly</em></strong> instead. What I couldn&#8217;t figure out was why two clients with the same settings/policy/routes would send two different hold methods. What made this particularly odd was that the user that was having the issue could log on to a different computer, and placing a call on hold would work fine.</span></p>
<p><span style="color: #333333;">So, issue had to be client-side.</span></p>
<p><span style="color: #333333;">One of the things I looked at during the debug process was the Lync registry entries. After painstakingly comparing registry keys line by line, I found that only one of the clients had the MusicOnHold registry keys listed &#8211; and it was the one that wasn&#8217;t working. Looking at the client options (Tools &gt; Options &gt; Alerts) showed that both had the same options selected (<em>in this case, ‘Enable Music on Hold’ was ticked and greyed out (managed by policy), and the hold music file was populated with the default wma file)</em>, yet on the client that was working fine, the two MusicOnHold registry keys (below) were completely missing.</span></p>
<blockquote><p><span style="color: #333333;">[HKEY_CURRENT_USER\Software\Microsoft\Communicator]</span></p>
<p><span style="color: #333333;">&#8220;MusicOnHoldDisabled&#8221;=dword:00000000</span></p>
<p><span style="color: #333333;">&#8220;MusicOnHoldAudioFile&#8221; =&#8221;C:\Program Files (x86)\Microsoft Lync\Media\DefaultHold.wma&#8221;</span></p></blockquote>
<p><span style="color: #333333;">After backing up the keys, I deleted the <em>MusicOnHoldAudioFile </em>key, and rebooted. Bingo. Problem solved.</span></p>
<p><span style="color: #333333;">Tried reinstating the key again, and sure enough, problem returned immediately.</span></p>
<p>I have come across one other customer having the same issue, and they apparently found the problem disappeared when they apply CU5, however I haven&#8217;t been able to verify that completely with them, and when I tried the CU5 update, the issue persisted.</p>
<p><span style="color: #333333;">Why exactly this happens is soon to be the subject of a support ticket with Microsoft. When I get an outcome from that, I&#8217;ll be sure to update this post.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2012/05/30/lync-hold-issue/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Gotcha &#8211; Integrating Lync On-Prem with Exchange Online UM</title>
		<link>http://blog.kiwibees.net/2012/01/26/gotcha-integrating-lync-on-prem-exchange-online-um/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gotcha-integrating-lync-on-prem-exchange-online-um</link>
		<comments>http://blog.kiwibees.net/2012/01/26/gotcha-integrating-lync-on-prem-exchange-online-um/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 09:01:28 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange Online]]></category>
		<category><![CDATA[Lync]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[Unified Comms]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=243</guid>
		<description><![CDATA[As part of our (Provoke&#8217;s) recent migration of our corporate email to Office 365 and Exchange Online, we wanted to include migration of the Exchange Unified Messaging role to Exchange Online as well. Simple enough, and the UCGuys have a superb post that breaks down the process in real simple terms. However.. We struck an [...]]]></description>
				<content:encoded><![CDATA[<p>As part of our (Provoke&#8217;s) recent migration of our corporate email to Office 365 and Exchange Online, we wanted to include migration of the Exchange Unified Messaging role to Exchange Online as well. Simple enough, and the <em>UCGuys </em>have a <a href="http://www.ucguys.com/2011/11/moving-to-office-365-part-2-moving-voicemail-into-the-cloud.html" target="_blank">superb post that breaks down the process in real simple terms</a>.</p>
<p>However..</p>
<p>We struck an issue after completing the process whereby calling voicemail, or trying to dial the UM dial-in numbers failed. Checking the logs revealed an error along the following lines:</p>
<blockquote><p>ms-diagnostics: 1036; reason=&#8221;Previous hop shared address space peer did not report diagnostic information&#8221;; source=&#8221;&lt;fe-server&gt;&#8221;; dialplan=&#8221;Hosted__exap.um.outlook.com__&lt;multipleSMTPdomains&gt;&#8221;; umserver=&#8221;exap.um.outlook.com&#8221;;responsecode=&#8221;503&#8243;; msexchDomain=&#8221;&lt;primarySMTPdomain&gt;&#8221;; msexchPeerServer=&#8221;exap.um.outlook.com&#8221;; msexchsource=&#8221;&lt;edgeaccessfqdn&gt;&#8221;; appName=&#8221;ExumRouting&#8221;</p></blockquote>
<p>Followed by:</p>
<blockquote><p>ms-diagnostics: 15030; reason=&#8221;Failed to route to Exchange Server&#8221;; source=&#8221;<em>&lt;fe-server&gt;</em>&#8220;;dialplan=&#8221;Hosted__exap.um.outlook.com__<em>&lt;multipleSMTPdomains&gt;</em>&#8220;; appName=&#8221;ExumRouting&#8221;</p></blockquote>
<p>Turns out we (and by that I mean me) had made an error when running the command:</p>
<p><em>New-CsHostedVoicemailPolicy -Identity Office365UM -Destination exap.um.outlook.com -Description &#8220;Hosted voice mail policy for O365 users.&#8221; -Organization &#8220;domain.com&#8221; </em></p>
<p>In my desire to validate blog posts before blindly following them (crazy right!), I&#8217;d checked the UCGuys&#8217; NewCsHostedVoicemailPolicy  syntax against the Technet cmdlet library for <a href="http://technet.microsoft.com/en-us/library/gg398653.aspx" target="_blank">New-CsHostedVoicemailPolicy</a>, which states for the <em>Organisation</em> field.. <em></em></p>
<blockquote><p><em>This parameter contains a comma-separated list of the Exchange tenants that contain Lync Server 2010 users. Each tenant must be specified as an FQDN of the tenant on the hosted Exchange Service.</em></p></blockquote>
<p>Which I duly interpreted as meaning all SMTP domains associated with the Exchange Online tenant &#8211; of which we had three. Especially as the example syntax at the bottom of the article does exactly that.</p>
<p>Turns out, that aint gonna fly.</p>
<p>For Exchange Online UM, you must specify one domain only in the Organisation field. And that domain must be one that Exchange Online is authorative for. If you&#8217;ve done a cutover migration, that will mean you can probably use your primary SMTP domain, as by dint of the cutover, Exchange Online will be authorative for that domain. However if you&#8217;ve done a hybrid migration, chances are good that your on-premise Exchange platform is still authorative for your primary SMTP domain. So best option here is to use your <strong>&lt;customer&gt;.onmicrosoft.com</strong> domain, as Exchange Online will always be authorative for that one.</p>
<p>This is briefly outlined at the end of the <a href="http://help.outlook.com/en-us/140/gg702674.aspx" target="_blank">Connect Lync Server 2010 to Exchange Online UM Checklist</a> from Microsoft.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2012/01/26/gotcha-integrating-lync-on-prem-exchange-online-um/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Lync &#8216;How To&#8217; Guide</title>
		<link>http://blog.kiwibees.net/2011/11/02/lync-training-resource-how-to-guide/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=lync-training-resource-how-to-guide</link>
		<comments>http://blog.kiwibees.net/2011/11/02/lync-training-resource-how-to-guide/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 23:41:16 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=241</guid>
		<description><![CDATA[If you&#8217;re implementing Lync, or already have it, chances are user training is/was part of the implementation. Great. But what about those &#8220;remind me how I..&#8221; and &#8220;what does this do again?&#8221; that you know will come up? Microsoft have done you a huge favour here. I personally think Lync is hands-down the most superbly [...]]]></description>
				<content:encoded><![CDATA[<p>If you&#8217;re implementing Lync, or already have it, chances are user training is/was part of the implementation. Great. But what about those &#8220;remind me how I..&#8221; and &#8220;what does this do again?&#8221; that you know will come up?</p>
<p>Microsoft have done you a huge favour here.</p>
<p>I personally think Lync is hands-down the most superbly well documented product ever to roll out the doors of Redmond. Sure there&#8217;s stuff that could be better documented, but the planning, implementation, support, and (yup) training material available is beyond compare.</p>
<p>There is a huge list of pre-canned resources available at <a href="http://lync.microsoft.com/Adoption-and-Training-Kit/rollout-and-adoption/Pages/Resources/Intro-to-Resources.aspx">http://lync.microsoft.com/Adoption-and-Training-Kit/rollout-and-adoption/Pages/Resources/Intro-to-Resources.aspx</a> that includes the likes of reference sheets, training decks, and videos, but what I really want to flag for attention is the &#8216;How To Guide&#8217;. Quite simply &#8211; it&#8217;s brilliant.</p>
<p>The guide is a Silverlight and/or HTML web application that contains a huge range of common (and not so common) Lync user tasks, presented in a sensibly structured manner that any user should have no issue following. It even comes with a handy set of instructions that outlines how to easily add your own items to the list &#8211; useful if you perhaps have a custom app integrated with your Lync platform.</p>
<p style="text-align: center;"><a href="http://blog.kiwibees.net/wp-content/uploads/2011/11/lynchowto.png"><img class="aligncenter  wp-image-249" title="Lync How-To" src="http://blog.kiwibees.net/wp-content/uploads/2012/06/lynchowto.png" alt="" /></a>The package can be downloaded from <a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=5735">http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=5735</a></p>
<p>Setup is a peice of cake, and should take less than five minutes. Here&#8217;s the basics for IIS7/7.5</p>
<ul>
<li>Create a folder on your webserver</li>
<li>Extract contents of the zip file</li>
<li>Create an IIS site and point it at the folder you created</li>
<li>Define your default document as either rolodex.html (for Silverlight version) or jQueryRolodex.html (for the HTML version).</li>
<li>Configure your host headers and DNS entries</li>
<li>Done</li>
</ul>
<p>The only difference if you&#8217;re doing this on older versions of IIS is you need to manually create a MIME type for <strong>.xap</strong> extensions, defined as <strong>application/x-silverlight-app</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/11/02/lync-training-resource-how-to-guide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lync On-Premises vs Lync Online</title>
		<link>http://blog.kiwibees.net/2011/10/20/lync-on-premise-lync-online/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=lync-on-premise-lync-online</link>
		<comments>http://blog.kiwibees.net/2011/10/20/lync-on-premise-lync-online/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 05:43:31 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Cloud Services]]></category>
		<category><![CDATA[Lync]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[Lync Online]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=236</guid>
		<description><![CDATA[A common question about Lync Online (and the other Office 365 products too, but this post is Lync-centric) is &#8220;how is this different from the on-premises solution?&#8221; And there is a comprehensive feature comparison available at the Office 365 Community site, but usually the next question I get is &#8220;yeah yeah, but what does that [...]]]></description>
				<content:encoded><![CDATA[<p>A common question about Lync Online (and the other Office 365 products too, but this post is Lync-centric) is<em> &#8220;how is this different from the on-premises solution?&#8221;</em> And there is a comprehensive <a href="http://community.office365.com/en-us/w/lync/480.aspx" target="_blank">feature comparison available at the Office 365 Community site</a>, but usually the next question I get is <em>&#8220;yeah yeah, but what does that really mean for me?&#8221;</em></p>
<p>So here&#8217;s a shortlist of the more pertinant features that you <strong>don&#8217;t</strong> get with Lync Online.</p>
<ul>
<li>PSTN calling (incoming or outgoing)</li>
<li>PBX integration</li>
<li>Advanced call handling (hold, redirection, park)</li>
<li>IP Phone support (USB only)</li>
<li>Analog line support (eg. fax)</li>
<li>Response groups (ie. Direct inbound call to a recipient group)</li>
<li>Persistent group chat</li>
<li>Skill search from SharePoint (either on-premise or online)</li>
<li>Client-side recording</li>
<li>Dial-in conferencing</li>
<li>Interop with on-premise video conferencing systems (eg. Polycom suites)</li>
<li>QoS</li>
<li>Quality of Experience Reporting</li>
</ul>
<p>This usually leads to a question like, <em>&#8220;ok, so what <strong>do </strong>they have in common then?&#8221;</em></p>
<p>So for completeness, here&#8217;s some of the more popular things you can do with <strong>both </strong>versions of the product.</p>
<ul>
<li>PC-to-PC audio/video</li>
<li>Address book search</li>
<li>IMPresence</li>
<li>Office application integration (click-to-chat)</li>
<li>Federation with Lync Online, Lync On-Premise, and OCS On-Premise</li>
<li>Application/Desktop/Whiteboard/Presentation sharing</li>
<li>Online Meetings</li>
<li>Guest attendees (via rich client and web client)</li>
<li>Roundtable support</li>
<li>Meeting lobby</li>
</ul>
<p>Hope that&#8217;s helpful.  Might add SharePoint Online and Exchange Online comparisons too.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/10/20/lync-on-premise-lync-online/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Who&#8217;s Federating in NZ?</title>
		<link>http://blog.kiwibees.net/2011/08/31/federating-nz/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=federating-nz</link>
		<comments>http://blog.kiwibees.net/2011/08/31/federating-nz/#comments</comments>
		<pubDate>Tue, 30 Aug 2011 22:59:17 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>
		<category><![CDATA[OCS]]></category>
		<category><![CDATA[Federation]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=176</guid>
		<description><![CDATA[Chances are, if you&#8217;ve implemented federation, or are planning on it, the first thing you want to know is &#8220;who can I talk to with it&#8221;.  That was certainly towards the top of my list anyway. NOTE: This post has been superceded by a more comprehensive global federation list, available here. The following is a [...]]]></description>
				<content:encoded><![CDATA[<p>Chances are, if you&#8217;ve implemented federation, or are planning on it, the first thing you want to know is &#8220;who can I talk to with it&#8221;.  That was certainly towards the top of my list anyway.</p>
<p><span style="color: #000000;"><strong>NOTE: This post has been superceded by a more comprehensive global federation list, <a title="Who’s Federating?" href="http://lyncdirectory.com">available here</a>.</strong></span></p>
<p><span style="color: #000000;"><strong><span id="more-176"></span></strong></span></p>
<p><span style="color: #c0c0c0;">The following is a list of companies and organisations in New Zealand (or at least with a presence in NZ) that are using Lync/OCS federation&#8230;<br />
</span></p>
<p><span style="color: #c0c0c0;">[table id=1 /]</span></p>
<p><em>Edit: Matt Landis at <a href="http://windowspbx.blogspot.com/2011/09/usa-microsoft-lync-federation-directory_02.html">windowspbx.blogspot.com</a> has started compiling a similar list for US-based organisations. Check it out.</em></p>
<p><span style="color: #c0c0c0;">I would like to make this as comprehensive a list as possible, so if you are aware of other organisations that are federating, please drop the details in a comment and I&#8217;ll add them to the list.</span></p>
<p><span style="color: #c0c0c0;">If you&#8217;d like to connect with me via federation, you&#8217;ll find my contact details </span><a href="http://blog.kiwibees.net/?page_id=149"><span style="color: #c0c0c0;">here</span></a><span style="color: #c0c0c0;">.</span></p>
<p><span style="color: #c0c0c0;"><em><strong>Disclaimer</strong></em></span></p>
<p><span style="color: #c0c0c0;"><em>This list is not intended to breach privacy or publish sensitive information. All of this information is publicly available via DNS lookups, however if you or your company object to your details being listed here, please contact me and I will be more than happy to remove it.</em></span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/08/31/federating-nz/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Lync Federation &#8211; Cleaning up discovered SIP domains</title>
		<link>http://blog.kiwibees.net/2011/08/25/lync-federation-cleaning-discovered-sip-domains/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=lync-federation-cleaning-discovered-sip-domains</link>
		<comments>http://blog.kiwibees.net/2011/08/25/lync-federation-cleaning-discovered-sip-domains/#comments</comments>
		<pubDate>Wed, 24 Aug 2011 21:12:48 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>
		<category><![CDATA[Edge]]></category>
		<category><![CDATA[Federation]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=171</guid>
		<description><![CDATA[If you have enabled Discovery for your Lync Federation services, you may want from time to time to add discovered domains to Federated Domains list to allow you to control their allow/block status. Rather handily, Microsoft made this really simple to do. Open the Event Viewer on one of your Edge servers and filter for [...]]]></description>
				<content:encoded><![CDATA[<p>If you have enabled Discovery for your Lync Federation services, you may want from time to time to add discovered domains to Federated Domains list to allow you to control their allow/block status.</p>
<p>Rather handily, Microsoft made this really simple to do.</p>
<p>Open the Event Viewer on one of your Edge servers and filter for Event ID 14601. You should find one of these logged every hour. This will contain the following:</p>
<blockquote><p>Report of discovered partners that the Access Edge Server is currently monitoring.<br />
There are 1 discovered partners, identified by the common name of their certificate.Name: <em>accessurl.domain.com</em>; Domains: <em>domain.com</em></p></blockquote>
<p>You can use these details to populate the Domain and AccessEdge fields in the Federation Domains section of your Lync Control Panel.</p>
<p>Easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/08/25/lync-federation-cleaning-discovered-sip-domains/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What happens if you jump the gun installing SP2010 SP1</title>
		<link>http://blog.kiwibees.net/2011/06/30/upgrading-sp2010-sp1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=upgrading-sp2010-sp1</link>
		<comments>http://blog.kiwibees.net/2011/06/30/upgrading-sp2010-sp1/#comments</comments>
		<pubDate>Wed, 29 Jun 2011 21:27:23 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[2010]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Service Pack]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Upgrade]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=140</guid>
		<description><![CDATA[Quick post on what seems a common issue. You apply SP1, reboot the server, and open Central Admin to see all the bright shiny bits in SP1. But alas, Central Admin returns a 503 error. In services.msc you find most of the SharePoint services are not started &#8211; admin, timer, user code host, search. Oh [...]]]></description>
				<content:encoded><![CDATA[<p>Quick post on what seems a common issue.</p>
<p>You apply SP1, reboot the server, and open Central Admin to see all the bright shiny bits in SP1.</p>
<p>But alas,  Central Admin returns a 503 error.  In services.msc you find most of the SharePoint services are not started &#8211; admin, timer, user code host, search. Oh no!</p>
<p>Fear not, it&#8217;s just a case of being too keen for the shiny. The last step of the upgrade is to run the SharePoint Config Wizard. This completes the upgrade process, starts your services, and brings you all that is shiny and new.</p>
<p>Enjoy</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/06/30/upgrading-sp2010-sp1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Removing server roles from OCS 2007 R2 servers</title>
		<link>http://blog.kiwibees.net/2011/06/12/removing-server-roles-from-ocs-2007-r2-servers/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=removing-server-roles-from-ocs-2007-r2-servers</link>
		<comments>http://blog.kiwibees.net/2011/06/12/removing-server-roles-from-ocs-2007-r2-servers/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 23:20:47 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>
		<category><![CDATA[OCS]]></category>
		<category><![CDATA[Migration]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=131</guid>
		<description><![CDATA[Unfortunately, if you follow the instructions here (http://technet.microsoft.com/en-us/library/dd572507(office.13).aspx) to the letter, you&#8217;ll get an error when you try to remove the Core Components. The OCS Admin Tools are not listed in the removal order, and unfortunately will prevent you removing the Core role. So, where it says this&#8230;. If you are removing an Edge Server, [...]]]></description>
				<content:encoded><![CDATA[<p>Unfortunately, if you follow the instructions here (<a title="http://technet.microsoft.com/en-us/library/dd572507(office.13).aspx" href="http://technet.microsoft.com/en-us/library/dd572507(office.13).aspx" target="_blank">http://technet.microsoft.com/en-us/library/dd572507(office.13).aspx</a>) to the letter, you&#8217;ll get an error when you try to remove the Core Components.</p>
<p>The OCS Admin Tools are not listed in the removal order, and unfortunately will prevent you removing the Core role. So, where it says this&#8230;.</p>
<p><em>If you are removing an Edge Server, a Mediation Server, an Archiving Server,  or a Monitoring Server, remove the Office Communications Server 2007 R2  components in the following sequence:</em></p>
<ul>
<li><em>Microsoft Office Communications Server 2007 R2, Edge Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Mediation Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Archiving Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Monitoring Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Core Components</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Unified Communications  Managed API 2.0 Core Redistribution package</em></li>
</ul>
<p>..it should actually read&#8230;</p>
<p><em>If you are removing an Edge Server, a Mediation Server, an Archiving Server,  or a Monitoring Server, remove the Office Communications Server 2007 R2  components in the following sequence:</em></p>
<ul>
<li><em>Microsoft Office Communications Server 2007 R2, Edge Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Mediation Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Archiving Server</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Monitoring Server</em></li>
<li><em><strong>Microsoft Office Communications Server 2007 R2, Administrative Tools</strong></em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Core Components</em></li>
<li><em>Microsoft Office Communications Server 2007 R2, Unified Communications  Managed API 2.0 Core Redistribution package</em></li>
</ul>
<p>Just sayin.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/06/12/removing-server-roles-from-ocs-2007-r2-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migrating Dialogic Media Gateway from OCS R2 to Lync Mediation Servers</title>
		<link>http://blog.kiwibees.net/2011/06/11/migrating-dialogic-media-gateway-from-ocs-r2-to-lync-mediation-servers/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=migrating-dialogic-media-gateway-from-ocs-r2-to-lync-mediation-servers</link>
		<comments>http://blog.kiwibees.net/2011/06/11/migrating-dialogic-media-gateway-from-ocs-r2-to-lync-mediation-servers/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 02:29:04 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Dialogic]]></category>
		<category><![CDATA[Lync]]></category>
		<category><![CDATA[Unified Comms]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=114</guid>
		<description><![CDATA[Having deployed a Lync pool alongside our OCS 2007 R2 pool, merged the topologies, and migrated the users all without much issue, I then wanted to migrate calling away from the OCS mediation servers to the Lync mediation servers. Sounded easy. Unfortunately it wasn&#8217;t. Outbound calling worked ok, but inbound calling failed. As you see [...]]]></description>
				<content:encoded><![CDATA[<p>Having deployed a Lync pool alongside our OCS 2007 R2 pool, merged the topologies, and migrated the users all without much issue, I then wanted to migrate calling away from the OCS mediation servers to the Lync mediation servers. Sounded easy. Unfortunately it wasn&#8217;t. Outbound calling worked ok, but inbound calling failed.</p>
<p style="text-align: center;"><a href="http://blog.kiwibees.net/wp-content/uploads/2011/06/MediationSvrs1.png"><img class="aligncenter  wp-image-125" title="MediationSvrs" src="http://blog.kiwibees.net/wp-content/uploads/2012/06/MediationSvrs1.png" alt="" /></a></p>
<p>As you see in the diagram, the topology is fairly straight foward. Two PSTN gateways on 10.10.10.1 and 10.10.20.1, listening on TCP:5066 and 5060 respectively &#8211; one talking (hopefully) to a Lync mediation server (10.10.10.4) on TCP:5066 and the other still talking to an old OCS 2007 R2 mediation server (10.10.20.4) on TCP:5060. For now, forget the 10.10.20.x devices.</p>
<p>Steps I followed to get to this point were essentially as outlined in this Technet library (and the equivalent downloadable word version) <a href="http://technet.microsoft.com/en-us/library/gg398092.aspx">http://technet.microsoft.com/en-us/library/gg398092.aspx</a>. In short, define a PSTN gateway in the Lync topology, set listening ports on PSTN and Mediation objects, define and commit a voice route, publish topology, done.</p>
<p><em>What isn&#8217;t well documented here is that if for any reason you change the listening ports for the mediation server after initial publish (which I did, mostly just to bring the port allocations in line with the new Lync default ports as the old OCS deployment was using weird ports), you have to<strong> restart the Lync Mediation service</strong>, otherwise it wont pick up your port changes, even if you re-run the deployment tool. </em></p>
<p>So at this point, outbound calls were working. No issue. Happy admin.</p>
<p>But incoming calls from the PSTN would fail with &#8220;VoIP Transport Failure&#8221; on the Dialogic.</p>
<p>What I had already done on the Dialogic was change the routing table properties, specifically the VoIP Host Group settings, to use the new gateway (as the old OCS R2 mediation server was on 10.10.10.3). This is done in the Dialogic UI under Configuration &gt; Routing Table &gt; VoIP Host Groups (radio button at the top). My config here is pretty straightfoward &#8211; a single host group, with a single host entry of the old mediation server. Removed the old host entry, added a new one for 10.10.10.4, and expected everything to just work. It didn&#8217;t.</p>
<p>When calling in, the line would never ring, you&#8217;d see the call appear in the Dialogic Call Log, but after about 15sec it would fail giving the caller a &#8216;number not connected&#8217; tone, and the Call Log would display &#8220;VoIP: Transport Failure&#8221;.</p>
<p>Spun up two sets of logging &#8211; first I started the Trace Logger on the Dialogic, and second started a set of Lync logs on the mediation server (S4, SIPStack, MediationServer) &#8211; then tried another inbound call. Logging on the mediation server showed zero entries, so clearly nothing was getting past the Dialogic. Looking at the trace logs on the Dialogic, I found the following:</p>
<blockquote><p>[RouteTable] Code outbound device: VOIP (user@host:port) @10.10.10.4:0</p></blockquote>
<p>So my incoming call was being routed to the mediation server IP ok, but no port was being passed, so logically I would expect the mediation server to reject it at the network layer, as it didn&#8217;t match a listening port.</p>
<p>So, on a hunch, I went back to the VoIP Host Groups setting, and changed the host value from 10.10.10.4 to 10.10.10.4:5066. Instant success. Just for consistency, checked another trace log, and sure enough it looks like this:</p>
<blockquote><p>[RouteTable] Code outbound device: VOIP (user@host:port) @10.10.10.4:5066</p></blockquote>
<p>What made this unexpected was that the old host value didn&#8217;t include the port, just the IP, but for some reason it worked fine.</p>
<p>Usefully, at this point I&#8217;d only migrated one of our two Dialogics/Mediation Servers, so ran the same trace log on the un-modified Dialogic (10.10.20.1). Sure enough, the same thing happens &#8211; no port is passed in that RouteTable call. Yet it works. Keen to see more, I ran a &#8220;<strong><em>netstat -an 1 | findstr 10.10.20.1</em></strong>&#8221; on the OCS mediation server to start an endless netstat search for open connections to the Dialogic (refreshing every second). As soon as the call comes in, a connection opens between the two devices on 10.10.20.1:5060 and the call connects. So somewhere in between that routing call to 10.10.20.1:0 becomes a call to 10.10.20.1:5060. I confess, I don&#8217;t know how this manages to happen.</p>
<p>Hopefully this helps someone else avoid the frustration this has caused me. And if anyone has any ideas how OCS manages this port wizardry where Lync fails, I&#8217;d love to hear your thoughts.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/06/11/migrating-dialogic-media-gateway-from-ocs-r2-to-lync-mediation-servers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SharePoint column lookup and calculation limitations</title>
		<link>http://blog.kiwibees.net/2011/06/05/sharepoint-column-lookup-and-calculation-limitations/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sharepoint-column-lookup-and-calculation-limitations</link>
		<comments>http://blog.kiwibees.net/2011/06/05/sharepoint-column-lookup-and-calculation-limitations/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 03:22:21 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[2010]]></category>
		<category><![CDATA[BPOS]]></category>
		<category><![CDATA[Cloud Services]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint Online]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Workarounds]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=85</guid>
		<description><![CDATA[List lookup columns in SharePoint are great. Easy to setup, simple to use, and powerful. But they have some limitations that can be frustrating. Let me paint you a picture.. You have a SharePoint list that contains information about a customer entity (yes it should probably be in CRM, but lets assume you don&#8217;t have [...]]]></description>
				<content:encoded><![CDATA[<p>List lookup columns in SharePoint are great. Easy to setup, simple to use, and powerful. But they have some limitations that can be frustrating.</p>
<p>Let me paint you a picture..</p>
<p style="padding-left: 30px;"><em>You have a SharePoint list that contains information about a customer entity (yes it should probably be in CRM, but lets assume you don&#8217;t have one) &#8211; fields like contact names/numbers, addresses, unique systems, notes, etc. Some of these fields are single lines of text, pull-down menus, yes/no radio buttons, multiple lines of text, you name it.</em></p>
<p style="padding-left: 30px;"><em>You have another list that relates to sales of products to customers. Unsurprisingly, you want to link a sale to a customer, and you want to leverage the power of lookup columns to make that a simple and seamless process.</em></p>
<p>Not an unrealistic scenario. Sure there are better ways of doing it with the likes of webservices into CRM or BCS connections into LOB databases, but they all involve additional systems, coding skills, and generally more effort. All things that aren&#8217;t always readily available.</p>
<p>By adding a lookup column type to the sales list you can allow a customer entity to be selected from your customer list. Where this gets handier is you can have the sales list pull other values from the customer list without adding extra columns. Awesome.</p>
<p>But&#8230; not all the columns from your customer list are available. Why not?</p>
<p>SharePoint can only perform a lookup of values from columns that contain a &#8216;text&#8217; value, and then only if it contains a single line of normal text (ie. &#8220;Single line of text&#8221;, a &#8220;number&#8221;, or &#8220;date&#8221;). Any field that contains multiple lines of text, other lookups, or multi-select items won&#8217;t be available to you, as SharePoint will automatically hide any columns that it knows it can&#8217;t return.</p>
<p>This same restriction applies to using these column types in calculated columns, and there is a great post by Dessie Lunsford on getting around this limitation in terms of calculated columns which you&#8217;ll find here &#8211; <a title="http://www.endusersharepoint.com/2009/06/17/taming-the-elusive-%E2%80%9Ccalculated-column%E2%80%9D-referencing-multiple-lines-of-text-column/" href="http://www.endusersharepoint.com/2009/06/17/taming-the-elusive-%E2%80%9Ccalculated-column%E2%80%9D-referencing-multiple-lines-of-text-column/" target="_blank">http://www.endusersharepoint.com/2009/06/17/taming-the-elusive-%E2%80%9Ccalculated-column%E2%80%9D-referencing-multiple-lines-of-text-column/</a></p>
<p>The workaround involves creating your problem field as a &#8220;single line of text&#8221; column, then creating a second calculated column that references the first column name &#8211; eg. [=ColumnName]. You then delete the first column and recreate it with the exact same name but this time selecting your column type of choice.</p>
<p>While Dessie&#8217;s post deals specifically with referencing these columns via  calculated fields, by dint of good fortune and SharePoint consistency, the same workaround fixes the lookup problem as well. Thanks Dessie!</p>
<p>This issue applies to all versions of SharePoint since 2007, including SharePoint Online (BPOS/Office365)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/06/05/sharepoint-column-lookup-and-calculation-limitations/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>External Response Group Call Routing with Lync Server</title>
		<link>http://blog.kiwibees.net/2011/06/02/external-call-routing-with-lync-server/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=external-call-routing-with-lync-server</link>
		<comments>http://blog.kiwibees.net/2011/06/02/external-call-routing-with-lync-server/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 05:18:19 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>
		<category><![CDATA[Response Groups]]></category>
		<category><![CDATA[Routing]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=98</guid>
		<description><![CDATA[Once you start playing with Response Groups in Lync (or OCS) it probably wont be long before you want one to dial out to your PBX. In my case recently it was to get a support line to call an on-call mobile. Out of the box, Lync wont. Any outbound call needs a voice route [...]]]></description>
				<content:encoded><![CDATA[<p>Once you start playing with Response Groups in Lync (or OCS) it probably wont be long before you want one to dial out to your PBX. In my case recently it was to get a support line to call an on-call mobile.</p>
<p>Out of the box, Lync wont.</p>
<p>Any outbound call needs a voice route to determine its routing path and permissions &#8211; without one it simply cant go anywhere. In short when the RGS tries to dial out it will default to your global voice policy which (unless you&#8217;ve changed it &#8211; and you shouldn&#8217;t) wont route.</p>
<p>Your first task is to therefore create a voice policy that includes the number (or number pattern) you want to call and define a gateway device.</p>
<ul>
<li>You can do this via the Lync Control Panel or Powershell.</li>
<li>Make sure the voice policy is of type &#8221;User&#8221; otherwise you wont be able to apply it to your RGS object</li>
<li>Make sure you commit the new policy otherwise it wont be available for use (you&#8217;ll get a <em>policy is not a user policy</em> error).</li>
</ul>
<p>Then you need to bind that policy to your RGS object. You definitely need Powershell for this bit.</p>
<blockquote><p><strong>Grant-CSVoicePolicy -identity &#8220;</strong>RGSWorkflowObject&#8221; -<strong>PolicyName </strong>VoicePolicyYouCreated</p></blockquote>
<p>For identity, use the display name of your RGS Workflow object.</p>
<p>And you&#8217;re done. Your RGS can now dial out.</p>
<p><em>Last tip &#8211; make sure the number you&#8217;re trying to dial out to is entered fully normalised in the format <strong>+&lt;countrycode&gt;&lt;areacode&gt;&lt;number&gt;@&lt;sipdomain&gt;</strong>. </em></p>
<p><em> eg. +6491234567@sipdomain.com</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/06/02/external-call-routing-with-lync-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lync 2010 April 2011 Cumulative Updates Available</title>
		<link>http://blog.kiwibees.net/2011/04/13/lync-2010-april-2011-cumulative-updates-available/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=lync-2010-april-2011-cumulative-updates-available</link>
		<comments>http://blog.kiwibees.net/2011/04/13/lync-2010-april-2011-cumulative-updates-available/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 02:14:43 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Lync]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=77</guid>
		<description><![CDATA[Full Details http://support.microsoft.com/kb/2496325 Download Links 32b Package &#8211; http://go.microsoft.com/fwlink/?LinkId=208565 (16Mb) 64b Package &#8211; http://go.microsoft.com/fwlink/?LinkId=208566 (16Mb) &#160;]]></description>
				<content:encoded><![CDATA[<p><strong>Full Details</strong></p>
<p><a title="http://support.microsoft.com/kb/2496325" href="http://support.microsoft.com/kb/2496325" target="_blank">http://support.microsoft.com/kb/2496325</a></p>
<p><strong><span id="more-77"></span>Download Links</strong></p>
<p>32b Package &#8211; <a title="http://go.microsoft.com/fwlink/?LinkId=208565" href="http://go.microsoft.com/fwlink/?LinkId=208565" target="_blank">http://go.microsoft.com/fwlink/?LinkId=208565</a> (16Mb)</p>
<p>64b Package &#8211; <a title="http://go.microsoft.com/fwlink/?LinkId=208566" href="http://go.microsoft.com/fwlink/?LinkId=208566" target="_blank">http://go.microsoft.com/fwlink/?LinkId=208566</a> (16Mb)</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/04/13/lync-2010-april-2011-cumulative-updates-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working with Correlation IDs in SP2010</title>
		<link>http://blog.kiwibees.net/2011/04/06/working-with-correlation-ids-in-sp2010/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=working-with-correlation-ids-in-sp2010</link>
		<comments>http://blog.kiwibees.net/2011/04/06/working-with-correlation-ids-in-sp2010/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 02:14:54 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[2010]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=70</guid>
		<description><![CDATA[One of the most useful (from an Admin&#8217;s perspective) improvements in SharePoint 2010 was the introduction of Correlation ID&#8217;s to assist with diagnosis of errors. Unfortunately a lot of people I&#8217;ve talked to don&#8217;t use them because they don&#8217;t understand how. I recently came across this post from Tobias Zimmergren that does a superb job [...]]]></description>
				<content:encoded><![CDATA[<p>One of the most useful (from an Admin&#8217;s perspective) improvements in SharePoint 2010 was the introduction of Correlation ID&#8217;s to assist with diagnosis of errors. Unfortunately a lot of people I&#8217;ve talked to don&#8217;t use them because they don&#8217;t understand how.</p>
<p>I recently came across <a title="http://www.zimmergren.net/archive/2010/09/03/sp-2010-find-error-messages-with-a-correlation-id-token-in-sharepoint-2010.aspx" href="http://www.zimmergren.net/archive/2010/09/03/sp-2010-find-error-messages-with-a-correlation-id-token-in-sharepoint-2010.aspx" target="_blank">this post from Tobias Zimmergren </a>that does a superb job of showing you several quick and easy ways to make these little GUID&#8217;s work for you.</p>
<p>In short&#8230;</p>
<pre class="brush:csharp">get-splogevent | ?{$_.Correlation -eq "&lt;GUID&gt;"} | select Area, Category, Level, EventID, Message | Format-List</pre>
<p>&#8230;will return the detailed log chain relating to that ID, in a human readable format. Handy.</p>
<p>And this..</p>
<pre class="brush:sql">SELECT	
  [RowCreatedTime],
  [ProcessName],
  [Area],   		
  [Category],  
   EventID,  
  [Message]  
FROM [WSS_UsageApplication].[dbo].[ULSTraceLog]
WHERE CorrelationId='&lt;GUID&gt;'</pre>
<p>&#8230;in a SQL query will return much the same detail. I particularly like the suggestion of inserting this in a data-query web-part in Central Admin web-part. Super handy.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/04/06/working-with-correlation-ids-in-sp2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PDF Security in SharePoint 2010</title>
		<link>http://blog.kiwibees.net/2011/04/06/pdf-security-in-sharepoint-2010/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=pdf-security-in-sharepoint-2010</link>
		<comments>http://blog.kiwibees.net/2011/04/06/pdf-security-in-sharepoint-2010/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 20:31:50 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[2010]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=55</guid>
		<description><![CDATA[Here&#8217;s a handy nugget of information I picked up at NZSPC2011. Out of the box, SP2010 will force you to save PDFs from SharePoint, not open them. This is to prevent XSS which is pretty easy to do in PDFs. Good solid security principal that one &#8211; I like it. For most users however, this [...]]]></description>
				<content:encoded><![CDATA[<p>Here&#8217;s a handy nugget of information I picked up at NZSPC2011.</p>
<p>Out of the box, SP2010 will force you to save PDFs from SharePoint, not open them. This is to prevent XSS which is pretty easy to do in PDFs. Good solid security principal that one &#8211; I like it.</p>
<p>For most users however, this comes as a jarring change to what they&#8217;re <a href="http://blog.kiwibees.net/wp-content/uploads/2011/04/browserhandling.png"><img class="size-medium wp-image-66 alignright" title="SP2010-BrowserFlieHandling" src="http://blog.kiwibees.net/wp-content/uploads/2011/04/browserhandling-219x300.png" alt="" width="219" height="300" /></a>used to, so queue complaints from users, and an SP Admin looking for a quick fix. Google will quickly point you at hundreds of suggestions to change the Browser File Handling setting from Strict to Permissive (set per web-application, under General Settings).</p>
<p>This is a purely evil approach, as it immediately relaxes file handling security for ALL file types, not just PDF.</p>
<p>The better way of doing this, is setting an &#8216;Inline Download&#8217; exclusion just for PDF files. There&#8217;s a good post at <a title="http://www.pdfsharepoint.com/sharepoint-2010-and-pdf-integration-series-part-1/" href="http://www.pdfsharepoint.com/sharepoint-2010-and-pdf-integration-series-part-1/" target="_blank">pdfsharepoint.com</a> by Dmitry that covers this in detail, but here&#8217;s the important bit..</p>
<p>Via PowerShell, run the following script to create a MIME type exclusion for PDF files in your web application. The only value you need to change here is the http://webapp.domain bit &#8211; set it to your web application hostname.</p>
<pre class="brush:vb">$webApp = Get-SPWebApplication http://webapp.domain
 If ($webApp.AllowedInlineDownloadedMimeTypes -notcontains "application/pdf")
 {
   Write-Host -ForegroundColor White "Adding Pdf MIME Type..."
   $webApp.AllowedInlineDownloadedMimeTypes.Add("application/pdf")
   $webApp.Update()
   Write-Host -ForegroundColor White "Added and saved."
 } Else {
   Write-Host -ForegroundColor White "Pdf MIME type is already added."
 }</pre>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/04/06/pdf-security-in-sharepoint-2010/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>&#8216;Best Practice&#8217; &#124; Enough with the nonsense</title>
		<link>http://blog.kiwibees.net/2011/03/30/best-practice-enough-with-the-nonsense/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=best-practice-enough-with-the-nonsense</link>
		<comments>http://blog.kiwibees.net/2011/03/30/best-practice-enough-with-the-nonsense/#comments</comments>
		<pubDate>Wed, 30 Mar 2011 09:16:16 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=4</guid>
		<description><![CDATA[I&#8217;m not sure about you, but I hear these types of things a lot in my work with clients and vendors.. &#8220;Vendor design must follow best practice&#8221; or.. &#8220;Is this solution best practice?&#8221; And it drive me nuts. Because if we were being really brutally honest, the answer is usually no. Best practice is not [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m not sure about you, but I hear these types of things a lot in my work with clients and vendors..</p>
<p style="padding-left: 30px;"><em>&#8220;Vendor design must follow best practice&#8221; </em></p>
<p style="padding-left: 30px;">or..</p>
<p style="padding-left: 30px;"><em>&#8220;Is this solution best practice?&#8221;</em></p>
<p>And it drive me nuts. Because if we were being really brutally honest, the answer is usually no. Best practice is not a boolean value. Its a moving target based on a combination of the things that are important to the business. Cost. Process. Performance. Manageability. Skillsets. I could go on. I tend to summarise them as &#8216;the real world&#8217;.<span id="more-5"></span></p>
<p>For the sake of argument (and there should be plenty of it), let&#8217;s define best practise as the set of configuration, management, and operational &#8216;rules&#8217; that the vendor suggests should always be followed for a given piece of technology. With me so far?</p>
<p>More often than not, any given solution or platform has dependencies on dozens of other products, applications, systems and business processes. Every single one of these has its own set of &#8216;best practice&#8217; parameters. In many cases, they will share similar or identical parameters, but in potentially just as many cases, they wont.</p>
<p>And they&#8217;ll conflict with the real world that they live in.</p>
<p>Lets take a real basic SharePoint example&#8230;</p>
<p style="padding-left: 30px;">SharePoint runs on top of IIS.</p>
<p style="padding-left: 30px;">IIS best practice is to have a separate application pool and identity for every web application on the server to ensure dedicated memory space for each application and keep a layer of isolation between sites. Simple stuff.</p>
<p style="padding-left: 30px;">SharePoint 2010 involves a number of service applications that support a given web application (the website you actually set the thing up to host in the first place)</p>
<p style="padding-left: 30px;">Even in a reasonably small deployment, there may well be dozens of these, each of which is its own web application, and each has an application pool.</p>
<p style="padding-left: 30px;">If you were to put each of these in its own pool, you&#8217;d need a massive amount of memory for even the most simple webserver hosting a single published website.</p>
<p style="padding-left: 30px;">While this isn&#8217;t impossible &#8211; you can put tonnes of memory in servers these days &#8211; in the real world its just not realistic.</p>
<p style="padding-left: 30px;">So you end up grouping similar applications into common pools in a sensible manner.</p>
<p>So is it best practice? No. But is it what the client actually wants, can afford, and will therefore sign-off? Yes.</p>
<p>Now in this particular example, the core issue is the cost of memory &#8211; which while not super expensive, does start adding up when you have multiple webservers, and look to replicate this in test, dev, and DR environments. Tomorrow memory will be cheaper. It will be even cheaper the day after tomorrow. So the precise point at which you hit the &#8216;too much&#8217; point will change over time, and your proximity to the mythical &#8216;best practice&#8217; point will change too. The actual best practice hasn&#8217;t changed &#8211; just how acheivable it is relative to your budget.</p>
<p>What I would really love to start hearing from people is things like this..</p>
<p style="padding-left: 30px;"><em>&#8220;Vendor design must incorporate best practices where they align with business drivers&#8221;</em></p>
<p style="padding-left: 30px;">or..</p>
<p style="padding-left: 30px;"><em>&#8220;How aligned are our business goals with best practice requirements?&#8221;</em></p>
<p>The point I&#8217;m trying to make is that while its great to use the general concept of best practice as a goal, it doesn&#8217;t work to simply expect everything to comply at all levels. Simply saying &#8216;it should follow best practice&#8217; isn&#8217;t a silver bullet - and chances are you can&#8217;t afford best practice. Instead, know that its something you can aim for, but don&#8217;t get uppity if you can&#8217;t justify the expense or effort of achieving it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/03/30/best-practice-enough-with-the-nonsense/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Removing server from SharePoint farm</title>
		<link>http://blog.kiwibees.net/2011/03/23/removing-server-from-sharepoint-farm/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=removing-server-from-sharepoint-farm</link>
		<comments>http://blog.kiwibees.net/2011/03/23/removing-server-from-sharepoint-farm/#comments</comments>
		<pubDate>Tue, 22 Mar 2011 18:55:03 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Traps For Young Players]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=20</guid>
		<description><![CDATA[It might sound obvious, but it is often the little things that catch out even the best of us at times. If you&#8217;re in a situation where you need to remove a server from a SharePoint farm, then re-join it to the farm again (perhaps to resolve some sort of local corruption of the site [...]]]></description>
				<content:encoded><![CDATA[<p>It might sound obvious, but it is often the little things that catch out even the best of us at times.</p>
<p>If you&#8217;re in a situation where you need to remove a server from a SharePoint farm, then re-join it to the farm again (perhaps to resolve some sort of local corruption of the site config), make sure you manually check that all remnants of SharePoint farm membership are removed before you try adding it again. Normally SharePoint keeps a fairly tidy house and cleans up after itself well &#8211; but occassionally it leaves something behind, and this can wreak havoc on your environment if not picked up. Depending on which server role you&#8217;re dealing with in the farm, this could mean websites and/or application pools in IIS, databases, web application folders on the filesystem, or a bunch of other things.</p>
<p>This tripped up a colleague of mine recently &#8211; in this particular case the Security Token Service was for some reason not removed when the server was removed from the farm. When the server was re-joined to the farm, there were no errors, or issues that suggested there was a problem, but things started falling apart shortly afterwards.</p>
<p>How we located the issue was that the search functionality within a SharePoint site on the farm started returning those lovely generic SharePoint errors, and digging through the logs we found that old chestnut &#8220;Object reference not set to an instance of an object&#8221;.</p>
<p>Removing the server from the farm again, manually removing STS from IIS (including its application pool), then re-adding the server to the farm solved the problem immediately. Presumably there was some GUID under the hood that binds the STS to the farm, and as a result of the remove/join this GUID got out of sync with reality.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/03/23/removing-server-from-sharepoint-farm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OCS 2007 Error 515 &#8211; “failed to execute registration stored procedure on the back-end”</title>
		<link>http://blog.kiwibees.net/2011/03/22/ocs-2007-error-515-failed-to-execute-registration-stored-procedure-on-the-back-end/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ocs-2007-error-515-failed-to-execute-registration-stored-procedure-on-the-back-end</link>
		<comments>http://blog.kiwibees.net/2011/03/22/ocs-2007-error-515-failed-to-execute-registration-stored-procedure-on-the-back-end/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 18:57:52 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[OCS]]></category>
		<category><![CDATA[OCS 2007]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=23</guid>
		<description><![CDATA[Recently, after applying SQL Server 2008 SP1 to the SQL server hosting our OCS databases, the following error was observed on the main OCS server when a user tried to login via the OCS client (the user received a ‘server unavailble’ error). Event Type: Error Event Source: OCS User Services Event Category: (1006) Event ID: [...]]]></description>
				<content:encoded><![CDATA[<p>Recently, after applying SQL Server 2008 SP1 to the SQL server hosting our OCS databases, the following error was observed on the main OCS server when a user tried to login via the OCS client (the user received a ‘server unavailble’ error).</p>
<address style="padding-left: 30px;">Event Type: Error</address>
<address style="padding-left: 30px;">Event Source: OCS User Services</address>
<address style="padding-left: 30px;">Event Category: (1006)</address>
<address style="padding-left: 30px;">Event ID: 30962</address>
<address style="padding-left: 30px;">Date: 2/19/2008</address>
<address style="padding-left: 30px;">Time: 3:56:19 PM User: N/A</address>
<address style="padding-left: 30px;">Computer: Computer_name</address>
<address style="padding-left: 30px;">Description: Connection to back-end database succeeded, but failed to execute registration stored procedure on the back-end.</address>
<address style="padding-left: 30px;">This error should not occur under normal operating conditions. Contact support services.</address>
<address style="padding-left: 30px;">Back-end Server: Server_name Database: rtc Sql native error: 515 Connection string of: driver={SQL Server};Trusted_Connection=yes;AutoTranslate=no;server=wn4219;database=rtc;</address>
<address style="padding-left: 30px;">Cause: Possible issues with back-end database. Resolution:</address>
<address style="padding-left: 30px;">Ensure the back-end is functioning correctly.</address>
<p>With nothing in the SQL logs to suggest a SQL error, and nothing additional in the client trace logs, I poked the haystack a couple of times to see if any needles fell out, but alas nothing did.</p>
<p>Came across a single post that suggested a solution &#8211; that being the following hotfix -<a title="http://support.microsoft.com/kb/949935/en-us" href="http://support.microsoft.com/kb/949935/en-us" target="_blank">http://support.microsoft.com/kb/949935/en-us</a>. However while the error was identical, the symptom wasn’t. All OCS services were starting perfectly fine &#8211; to the point there were no errors logged on the OCS box at all when the services started. That said, tried the hotfix &#8211; didn’t help (no surprises there).</p>
<p>At this point a closer look was taken at the OCS databases for anything amiss. The only thing out of the ordinary was that within the rtcdyn database, both the RTCHSUniversalAdmins and RTCUniversalService logins were listed within the security section as being disabled (down-arrow icon on their user icon). A little more digging found that these accounts were not disabled at the server level within SSMS, and infact for the two other databases in which they have permissions, they were showing as enabled there as normal.</p>
<p>Immediate thought was to simply overwrite the permissions to resolve the issue, however trying to make any changes to these users against the rtcdyn database resulted in a SQL error along the lines of “User does not exist or you do not have sufficient permissions”. Given I was a sysadmin on the box, the latter seemed unlikely, so clearly there were some issues with the accounts.</p>
<p>In the end, the resolution here was to delete the logins from within the rtcdyn database (not from SQL entirely), then re-add the users to the rtcdyn database &#8211; making sure all database permissions were replicated on re-addd.</p>
<p><strong>Note | </strong>Before being able to delete the users from the database, you need to change the ownership of a couple of schema objects (SQL will quickly tell you which ones by way of a handy error message). Make sure you change them back afterwards!</p>
<p>Quick OCS service restart once done and all systems back to normal.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/03/22/ocs-2007-error-515-failed-to-execute-registration-stored-procedure-on-the-back-end/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migrating SmarterMail 5.5 to 8.0 and IIS7</title>
		<link>http://blog.kiwibees.net/2011/03/20/migrating-smartermail-5-5-to-8-0-and-iis7/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=migrating-smartermail-5-5-to-8-0-and-iis7</link>
		<comments>http://blog.kiwibees.net/2011/03/20/migrating-smartermail-5-5-to-8-0-and-iis7/#comments</comments>
		<pubDate>Sat, 19 Mar 2011 18:59:48 +0000</pubDate>
		<dc:creator>JB</dc:creator>
				<category><![CDATA[SmarterMail]]></category>
		<category><![CDATA[Migration]]></category>

		<guid isPermaLink="false">http://blog.kiwibees.net/?p=25</guid>
		<description><![CDATA[Like any good SysAdmin, I have a private hosted server on which I run my own mailsever and websites, and generally use as a bit of a sandbox for testing stuff out. Judge me if you will. My particular server is a VPS hosted by the awesome folks at KickAssVPS (they seriously do btw), and [...]]]></description>
				<content:encoded><![CDATA[<p>Like any good SysAdmin, I have a private hosted server on which I run my own mailsever and websites, and generally use as a bit of a sandbox for testing stuff out. Judge me if you will.</p>
<p>My particular server is a VPS hosted by the awesome folks at <a title="http://www.kickassvps.com" href="http://www.kickassvps.com" target="_blank">KickAssVPS</a> (they seriously do btw), and I recently decided it was overdue for an upgrade from Server 2003 to Server 2008. No worries &#8211; just a case of migrating some websites from IIS6 to IIS7 (sadly not IIS7.5 &#8211; R2 not available at KickAss yet). What I hadn’t planned on was finding out my mailserver software was 3 major versions old &#8211; SmarterMail 5.5 to be precise &#8211; and version 8 had just dropped that week. Too good to pass that up. Shiny!! Must have!</p>
<p>So, now I’m migrating from Server 2003 to Server 2008, IIS6 to IIS7, .NET2 to .NET4, and SmarterMail itself from 5.5 to 8.0. I’ll admit I started to wonder if I’d just made a foolish mistake.</p>
<p>Migration attempts 1 and 2 were a nightmare. Mail service refused to start, webmail couldn’t connect to services, and general hair-pulling ensued. Google unfortunately didn’t have the answers &#8211; seemed nobody had tried this particular array of upgrades in one go before. I was in no-mans land. It’s lonely there.</p>
<p>But eventually, I figured it out. If you’re curious, here’s how…</p>
<ul>
<li>Make sure there is beer in the fridge.</li>
<li>Install SmarterMail 8.0 on new server</li>
<li>Follow the steps here &#8211; <a title="http://portal.smartertools.com/KB/a1485/set-up-smartermail-as-a-site-in-iis-70.aspx" href="http://portal.smartertools.com/KB/a1485/set-up-smartermail-as-a-site-in-iis-70.aspx" target="_blank">http://portal.smartertools.com/KB/a1485/set-up-smartermail-as-a-site-in-iis-70.aspx</a> &#8211; to convert the webmail interface to IIS7.</li>
<li>Stop the SmarterMail service on both servers</li>
</ul>
<address style="padding-left: 60px;"><em>There is a minor but crucial step missing in these instructions (or was when I wrote this &#8211; SmarterMail tell me they’re updating them soon). By default, your application pool will be set to run under .NET2. Change this to .NET4 or you’ll get an error popup in IIS about “configuration section ‘system.web.extensions’ cannot be read because it is missing a section declaration” (because the ‘.extensions’ bit is new in .NET4). Like I said, minor but oh so crucial.</em></address>
<ul>
<li>Stop the SmarterMail service on both servers</li>
<li>Copy the following XML files from the SmarterMail program folder on the old server to the same place on the new server: (assumes x64 OS)</li>
</ul>
<address style="padding-left: 60px;">C:Program Files (x86)SmarterToolsSmarterMailServicemailconfig.xml</address>
<address style="padding-left: 60px;">C:Program Files (x86)SmarterToolsSmarterMailServicedomainlist.xml</address>
<address style="padding-left: 60px;">C:Program Files (x86)SmarterToolsSmarterMailServicegreylistbypass.xml</address>
<address style="padding-left: 60px;">C:Program Files (x86)SmarterToolsSmarterMailServicegreylist.dat</address>
<address style="padding-left: 60px;"> </address>
<ul>
<li>Copy the contents of the entire mailbox folder located (by default) at <strong>C:SmarterMailDomains </strong>to the same place on the new server.</li>
<li>Recursively delete all copies of <strong>mailbox.cfg</strong> from the <strong>C:SmarterMailDomains</strong> folder (“<span style="color: #ff6600;">del /S mailbox.cfg</span>” will do the trick). Restart the SmarterMail service on the new server.</li>
<li>This resolves a problem whereby large numbers of emails show in webmail as ‘email no longer exists on server’. The mailbox.cfg file gets rebuilt automatically when you login to webmail, so don’t panic about deleting it.</li>
<li>Restart the SmarterMail service on the new server.</li>
<li>Retrieve beer from fridge</li>
<li>Open beer and enjoy.</li>
</ul>
<p>Bare in mind this doesn’t take into account your need to plan your MX record cutover process. If you’re managing a mail server, I’d expect you to understand how that bit works without having to explain it.</p>
<p>SmarterMail 8 is a massive improvement by the way. Faster, much sexier to look at, and just generally betterer.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kiwibees.net/2011/03/20/migrating-smartermail-5-5-to-8-0-and-iis7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
