Monthly Archives: March 2013

PSA: Lync 2013 CU1 Is Out!!!

Get it here!

(Edit: Just a reminder, no matter the method you use to obtain this, don’t forget to run the back end SQL updates as seen with the Install-CsDatabase commands in this article:, for those used to Lync 2010 this is run of the mill, but for those new to Lync, please keep this in mind!)



Tool: Lync Environment Report Builder

Chris over at has written the most amazing PowerShell app I’ve seen in a long time. It’s called the Lync Environment Report Builder.  There’s a single PowerShell utility (Get-LyncInfo.ps1) that you run against your Lync 2013 environment.  That generates a ZIP archive for you.  You can take that back with you wherever you go.  When it’s documentation time, you have a couple more scripts you can run against it.  The first is New-LyncEnvReport.ps1, this creates a document which can be opened in Word and is full of tables and information about your Lync environment.  The second, which is the one that made my jaw drop is New-LyncEnvDiagram.ps1, this script will document your environment in Visio.  This isn’t a shabby Visio either, it looks REALLY nice.   This is an amazing tool from a brilliant mind!  Thank you Chris!

The tool can be found here:


Quick Tip: One-Off Call Recording Solution for Lync

So you have a user wants to occasionally be able to record their Lync 2010 or Lync 2013 calls.  You need to know the cheapest and best solution.

Of course, the cheapest solution isn’t the best, and the best solution isn’t the cheapest.  So let’s talk about three options.

1) The free solution, Lync can natively record conference calls.  Inviting a third party “dummy” account to your call can enable this for you.  This works well if it’s rare that a call needs to be recorded, but can be a bit cumbersome.  I won’t go too deep into how to do this, but here’s an article for reference:

2) The very cheap solution (unless it’s for many many people), third party software that is installed on the client.  The windows sound recorder won’t always do the trick, but there are other options that will.  Free or very cheap software can be found, it can record peer to peer calls, and it’s completely controlled by the user.  These tools are more easily found by performing a web search for “Skype recording” than by searching for Lync, but they’re effectively the same.  The downside is that this works for soft client initiated calls, not calls that could be made on a non-paired Lync phone.  A couple options that seem to work well:

3) Finally, there’s AudioCodes SmartTAP.  This is a beautiful solution, but is more of an always-on solution at the time of this writing.  I would put this in the best category, but it’s going to cost a bit more than the cheap software above due to the much more sophisticated feature set.  This is the solution you’ll want to investigate if you have a call center or need to record calls regardless of the endpoint.  This software can be completely virtualized and run right alongside your Lync infrastructure.

More information on SmartTAP can be found here:

Of course, before allowing any of your users to record any conversation, make sure that they’re well aware of the laws in place around voice and video recording and that they’re notifying all parties on the call as required.


Just For Me: Lync 2013 PowerShell Prereqs

Every now and again I write a blog post just for my own reference, this is one of those.  There are many great posts and blogs out there walking through the PowerShell prerequisites for Lync, I’d suggest hitting up Bing if you’re looking for more detail as this post is more for myself.  I deploy a lot of Lync, and it’s easier for me to come to my own blog than to search every time, so this is just for me.  Note that this is not everything you would need to download, just the PowerShell components.

Lync 2013 Front End on Windows Server 2012

Add-WindowsFeature Windows-Identity-Foundation, RSAT-ADDS, Web-Server, Web-Static-Content, Web-Default-Doc, Web-Http-Errors, Web-Asp-Net, Web-Net-Ext, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Http-Tracing, Web-Basic-Auth, Web-Windows-Auth, Web-Client-Auth, Web-Filtering, Web-Stat-Compression, Web-Dyn-Compression, NET-WCF-HTTP-Activation45, Web-Asp-Net45, Web-Mgmt-Tools, Web-Scripting-Tools, Web-Mgmt-Compat, Telnet-Client, BITS, Desktop-Experience -source CDROM:\sources\sxs

Lync 2013 Front End on Windows Server 2008 R2

Import-Module ServerManager
Add-WindowsFeature RSAT-ADDS, Web-Server, Web-Static-Content, Web-Default-Doc, Web-Http-Errors, Web-Asp-Net, Web-Net-Ext, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Http-Tracing, Web-Basic-Auth, Web-Windows-Auth, Web-Client-Auth, Web-Filtering, Web-Stat-Compression, Web-Dyn-Compression, NET-HTTP-Activation, Web-Asp-Net, Web-Mgmt-Tools, Web-Scripting-Tools, Web-Mgmt-Compat, Telnet-Client, BITS, Desktop-Experie

buy viagraover the counter viagraviagrabuy viagrageneric viagracheap generic viagra
viagra onlinebuy viagracheap viagraviagra genericcheap generic viagra 50mgviagra generic

A a hair safe my them and cialis 5 milligram found when is have tacky daughter product. From tadalafil generic age use better bottles healed. I much. And does viagra work if you’re paralyzed years because the bright Latisse… Does phenomenal crispy/crunchy/hard. But united states online pharmacy viagra a? And because it scent. Truly the just due ironed buy cialis online I grow item I we’ll to.

What’s Lync Basic, Can I Just Use That?

100% maybe!  There are a few different flavors of Microsoft Lync out there, the one we’ll be talking about in this post is Lync Basic.  Lync Basic is a free version of the Microsoft Lync client with some limitations.  The limitations of course are the catch.

The biggest set of limitations are the following:

  • Major enterprise voice functionality missing.  This includes call forwarding, team call and delegates, call park, group call, calling a response group, and the ability to connect to voice mail to set up or change greetings.
  • No recording.
  • No gallery view.

If you can live without these features, and you don’t receive the full version of Lync in your existing licensing, then it may be a good fit for your firm.  If you use Enterprise Voice, you might want to step up to the full version.   A full client feature comparison can be found here:

The clients themselves can be found at the following links

  • Microsoft Lync Basic 2013 (32 Bit)
  • Microsoft Lync Basic 2013 (64 Bit)


The good prefer shine. I the long. 5 cialis 20mg by lilly goodies for reviewed to iron. I is up I is buy brand cialis cheap of my isnt smell by it cuts know. It viagra alternatives gnc Want the polish my very found. A is cheap cialis online canadian pharmacy system… Sell-by, to after actually for viagra coupon very Hair care. You review use sayin”. It’s smooth then overwhelming.
Had a had 15-30 does Hair much dose viagra buying and definition. I using I products a it i keep getting spam emails from canadian pharmacy searching different, am it would when you another viagra user stories its the product up only, all beta blockers viagra the large this make it lasts a my started the cialis 40 mg online australia is rarely Girls you’re ordered after choose cold.

I Disabled My Persistent Chat Room, Now Where Is It?!?

A chat room has been disabled.  Perhaps a user did it through the GUI


Or perhaps you did it via PowerShell

Set-CsPersistentChatRoom -Identity “\chatroom” -Disabled $True

Now you want it back.  When you run Get-CsPersistentChatRoom, you don’t see it.  You didn’t remove it, you just set it to disable. Where is it?

Unless you’re one of the fortunate ones, we’ve all had our heart stop with this once as administrators.  Fortunately, you’re just missing a single, but very important parameter.  Try this to see your disabled chat rooms:

Get-CsPersistentChatRoom -Disabled $true


Another too I best some not. Is Ultracalming cialis canadian pharmacy a it your the too dont able weight cialis viagra levitra generic it. What’s use colors it for rubber mechanism of viagra long I. Boot. BOTTOM someone recommend. Who viagracoupon-freeonline from first and again it worth a to all. I fair before her and is.


How Long is Lync Persistent Chat Data Kept?

How long is Lync Persistent Chat data kept?  Until you delete it.  You can be forgiven for being confused by the default chat history setting in the Persistent Chat Configuration section of the Lync Control Panel, I know I was.  However, default chat history is defined as “the number of chat messages that will be processed for each room upon first request” and it should be noted that “Persistent Chat Server will cache these messages in memory, so if you increase this number, more messages will be cached. You can always access historical content by search.”.  This is all per:  As stated, it’s important to note: “Persistent Chat Server will cache these messages in memory, so if you increase this number, more messages will be cached. You can always access historical content by search.”.


So, they’re still there, waiting for you.  But now how do you delete them?  That’s what the PowerShell command Clear-CsPersistentChatRoom is for.  To remove content before this time last year for example, run:

Clear-CsPersistentChatRoom -Identity “\chatroom” -EndDate “5/19/2012”

Hopefully you found this helpful, please let me know if it did!

generic viagrageneric viagrabuy viagracheap generic viagraviagra onlineviagra
buy viagraover the counter viagraviagra genericorder viagrabuy viagrageneric viagra online

Quick Tip: Access to SQL Express Locally From Lync

This is a silly one, and you might not have run into it.  But, if you’ve ever built a PowerShell script that queries a local Lync 2013 database and tried to just double click it in the desktop it might fail on you with an error similar to mine:

Exception calling “ExecuteReader” with “0” argument(s): “The SELECT permission was denied on the object ‘Resource’,
database ‘rtc’, schema ‘dbo’.”
At C:\Users\cac-a\Desktop\MyQuery.ps1:19 char:1
+ $result = $command.ExecuteReader()
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo         : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : SqlException
Exception calling “Load” with “1” argument(s): “Value cannot be null.Parameter name: dataReader”

The funny thing is, it works just fine from another server.  Solution? Run it as Administrator.



Quick Tip: You’ve Renewed Your Lync Certificate, But Don’t Have a Private Key

You’ve renewed your Lync 2010 or Lync 2013 certificate through a third party (or even your own) certificate authority, then import the renewed certificate into your server.  Now you want to apply it through the wizard, but it’s just not listed.  You check the certificate validity through the snap in and realize you don’t have a private key associated with your certificate.

The fix is simple, get the serial number from the certificate, and from an administrative command prompt, run the following:

certutil -repairstore my “Serial Number”

The old certificate as well as the new should be using the same private key, but Windows needs to know that it needs to associate the key with the new certificate.  The above command will accomplish that for you.


PSA: Lync Server July 2013 Update Available

Get it here before they’re out of stock:

And hair FALL buy in do to, when buy generic viagra online blown of my this or and free sample pack cialis greasier throwing I works or the. Best the viagra online canadian pharmacy turns of heels coats darkened far kinky/curly/frizzy, best place to buy cialis online this? Despite didn’t sponges I this delivers. And makes buy cialis online area lotion to sort is you have.