Tag Archives: Powershell

Lync Insights – Answering the burning questions – Part1!

This is a multi-part blog series. This is Part 1.For other blog posts in this series please click the relevant links – Part 2.

After completing the Lync deployment don’t you in the back of your mind think I  wish I knew how Lync is being used, who is having issues, who is not using it, etc ? In fact, the burning questions, perhaps questions like these:

  • To which PSTN number highest number of phone calls are made
  • Who is on the phone for the longest duration (and who the least!)
  • When was the last time someone logged on to Lync
  • Find all the calls which are over certain thresholds e.g. over 10% packet loss, over 3ms Jitter, etc
  • Generate alerts when your boss makes a call and the call is not good quality e.g. Over 10% packet loss, over 30ms Jitter, etc
  • Find who is doing the most number of file transfers in your organization?
  • Find who is transferring what file and to whom?

Standard Lync Monitoring reports provides you with great information on several elements of Lync usage and health.But Lync Monitoring reports only scratches the surface of what information is actually available in Lync Monitoring database. Lync Monitoring database is a goldmine of information – unfortunately in spite of Microsoft publishing the database schemas I have barely seen anyone querying database directly.

In order to attempt to make the Lync monitoring databases more accessible and answer the above burning questions and I have created a Lync Insights PowerShell module. My idea is to include in Lync Insights all kinds of different SQL queries I use on day to day basis for various customers and share with ever growing passionate Lync community!

Read More →

Run Microsoft Exchange cmdlets offline

Couple of months ago I wrote about running Lync cmdlets offline. Being a Consultant this helps a lot as I can document and find about the customers environment without connecting to the live Lync environment. Extending the same concept to other Microsoft products which use Power shell (which means pretty much every Microsoft product esp. when PowerShell is part of Microsoft Common Engineering Criteria) is fairly straightforward.

In this post I demonstrate how you can access Exchange cmdlets offline.

Purpose
The script allows you to execute Exchange cmdlets on your local machine (which may or may not have Exchange Management Shell). This is achieved by using XML files which are exported using export-clixml from Live Lync environment.

Script Pre-requisites
The script requires access to Exchange XML files generated using Exchange Management Shell. The files can be generated in couple of different ways. The generated filename should have the cmdlets name prefixed to it (eg: get-mailbox cmdlets filename should be get-mailbox.xml).

Below is a sample snippet you can use to export most of the Exchange configuration into XML Read More →