What a year 2014 was!

2014 was a really great year for me. I got to talk at 6 international conferences, start a new branch of Knowledge Factory in Norway and reach over 1 000 000 views on my blog. Thank you all for the opportunities and support. Some memorable moments are listed below with links to my talks. Hopefully something fun will happen in 2015 as well.

01Nicconf2014

02Lyncconf2014

03UCALiveLyncconf2014.3

04KnowledgeFactory2014

05MVPreawarded

06TechEdNA2014

07LyncDay14

08UCALiveLynDay2014

09TechEdEU2014

10TechDays2014

11YouTube2014

11msunified2014

 

Five years of blogging and 1,000,000 hits!

ThankYou!First off, thanks to all who have visited msunified.net and given feedback to the blogposts. I am stoked that my blog msunified.net now has more than 1,000,000 hits. Since I started blogging in 2009 it has been the place where I post my notes from the field, collections of links and Thoughts on UC.

Some of the most popular blogposts of all time

  1. Installing Exchange 2010 Prerequisites on Server 2008 R2
  2. Enabling Lync Server 2010 for Lync Mobile Clients
  3. Installing Lync Server 2010 Prerequisites on Windows Server 2008 R2
  4. Configure Exchange 2010 InternalUrl PowerShell script
  5. Lync Server 2010 features and how to configure them
  6. Lync Server Mobility Troubleshooting Tips
  7. Lync Server 2010 Troubleshooting Tips
  8. Installing OCS 2007 R2 Prerequisites on Windows Server 2008 R2
  9. Script for Configuring Exchange 2010 Internal and External URLs
  10. Lync Server Front End: Lost connection to the Web Conferencing Edge Server
  11. Lync client sign-in and DNS records recommendations

Some of the most popular blogposts the year of 2014

  1. Installing Exchange 2010 Prerequisites on Server 2008 R2
  2. Lync client sign-in and DNS records recommendations
  3. Enabling Lync Server 2010 for Lync Mobile Clients
  4. Lync 2013 Downloads
  5. Configure Exchange 2010 InternalUrl PowerShell script
  6. Lync Server Mobility Troubleshooting Tips
  7. Troubleshooting Office Web Apps Server for Lync
  8. You see only a white screen when viewing Lync 2013 desktop sharing
  9. Installing Lync Server 2010 Prerequisites on Windows Server 2008 R2
  10. TEL, SIP, mailto, and Lync meeting links association

Where do the all time visitors come from

  1. Search engines
  2. TechNet Forums
  3. Twitter

Some thoughts on the activity

  • People are still installing Exchange on Server 2008 R2 :)
  • The old blogposts from 2010 are still relevant
  • Twitter is a relevant platform to reach out to my audience as it is number three all time source for visitors
  • The type of article that drives recurring hits are
    • the ones that solves a specific problem
    • troubleshooting guides
    • link repositories
    • articles explaining how stuff works
  • I also use this blog as a landing page for all my content, but articles like this one will not drive much recurring users, but helps me communicate my thoughts in a better format than the 140 characters on Twitter :)
  • I always try to remember to blog solutions I find to strange problems, typically the solution was tips from multiple sources and by collecting them and describing how I solved the problem is a good blogpost, and will help others having the same problem.

Afterthought

The amount of hits really motivates me to continue share my experiences as an IT-PRO with solutions to problems, but also highlighting not so mainstream knowledge like I do in my LyncPro Tips series and Thoughts on UC YouTube series. Thank you for your continued support :)

OneMillHits1

On December 23 2014 msunified.net reached 1,000,000 views!

State of Unified Communications 2014

Is that time of the year again when Gartner releases their yearly analysis of the Unified Communications vendors and their offerings called Magic Quadrant for Unified Communications. The vendors evaluated must meet certain criteria which is a product portfolio that supports

  • Voice and telephony
  • Conferencing
  • Messaging
  • Presence and IM
  • Support for different client platforms
  • Support communications-enabled Applications

It is a tradition to comment on the Gartner UC MQ’s here at the msunified.net blog, and have done so since 2009. See the previous articles here:

Awarded Microsoft Most Valuable Professional (MVP) 2014

Today I received the Microsoft MVP Award for my contributions in the Lync Community. This is the fourth time I have received this award, the first time was in 2011. This is huge and it is really inspiring to get recognition for my contributions. Here’s an excerpt from the email I got:

MVP2013

Congratulations! We are pleased to present you with the 2014 Microsoft® MVP Award! This award is given to exceptional technical community leaders who actively share their high quality, real world expertise with others. We appreciate your outstanding contributions in Lync technical communities during the past year.

I feel very honored to be part of this outstanding community and I want to mention the MVP Summit as a highlight of the experience. With all the cool things happening around Lync, Office 365 and Windows 8 I look forward to contribute to the community the coming year as well.

Microsoft takes good care of their MVP’s and we where featured at the keynote at LyncConf :)

??????????????????????????????????????????????????????????????????????????????????????????

Resources

About the MVP Award Program
Lync MVP Awardees
MVPs.org community site
Microsoft MVP FAQ

Control your Lync presence during a Pomodoro Sprint using PowerShell

This article is for you Lync-PRO’s out there who want to differentiate yourself from the average Lync user and at the same time want to reach true flow state using the Pomodoro Technique

This article discusses

  • The Pomodoro Technique
  • Flow state by Jason Silva
  • My Lync controlling Pomodoro PowerShell Script
  • The Script

The Pomodoro Technique

PomodoroScott Hanselman explained the Pomodoro Technique in a great way on his PodCast. Pomodoro is about splitting your productive time into intervals of about 25 minutes. During that time you should ignore E-mail, Lync, Twitter, Facebook, Instagram, LinkedIn, news, colleagues and all other elements that could distract you from your trail of thought, your deep dive focus, your flow state.

I have a busy day and it comprise of presentations, meetings, workshops,  customer dialogue, support sessions and talking with colleagues. Sometimes I actually need to deep dive into a problem or produce good documentation, where I have to focus for at least 10 minutes before I reach my flowstate and I need to stay in that flow state as long as possible. My biggest problem is that I am easily distracted and that is why I need to really focus to get real work done :) When I first sit down, I try to do Pomodoro sprints where I try not to get interrupted. When the interval is finished I am available for all the Lync IM’s, mails and everything. This way I may get more quality work done in a short period of time. Read more about Pomodoro here: http://pomodorotechnique.com

Flow State

My goal is to reach a flow state. Jason Silva, my favourite futurist, did a talk on his YouTube channel Shots of Awe. Recommend to get inspired by his talk about the subject

My Lync controlling Pomodoro PowerShell Script

When in a Pomodoro focus session I set do-not-disturb in Lync, disable notifications in Windows 8, and close all web sites that can distract me so I can focus on the work at hand be it an e-mail, document, script or configuration task. I use PowerShell as my Pomodoro timer and with the Lync SDK I am able to start a session, set the correct custom status and know that even if I forget, I will reset my status when my focus session is over.

The function in the script does the following

  • Set the duration of the Pomodoro sprint, usually 25 minutes
  • Import the Lync SDK into PowerShell
  • Delay is where you set the interval the script will update time remaining
  • It plays a start wav file, this could be a 25 minute Pomodoro tick sound
    • I usually just find a cool start tune and then listen to my own music on Spotify or YouTube
  • Then I use custom presence state in my Lync client where I have one state called Pomodoro Focus with do-not-disturb
  • Outlook and other notifications will get suppressed using presentationsettings /start, so no notifications will popup during the sprint
  • After that you have the counter that will count down the remainder of the focus session
    • I publish that in the personal note field of the Lync client, updates every minute with the time for when I will be available again :)
    • The last thirty seconds will display how many seconds are left until full availability

Custat3

  • At the end of the function
    • I play an alarm to notify me that the session is over
    • Reset the Lync presence state
    • Set an appropriate note in the Lync client
    • To make sure I am available again

The Script

Prerequisites

  • Download the Lync SDK
  • In order to avoid having to install visual studio, extract the lyncsdk86.msi from the sdk exe file using winrar or other software
    • The SDK need to match the bitness of your Lync client
  • Go through the script and change the path to where you installed the SDK
    • The script checks to standard paths for Office 2013
  • Running the script from a desktop? Remember to enable PresentationSettings: http://msunified.net/2013/11/25/lock-down-your-lync-status-and-pc-notifications-using-powershell/
  • I use some default wav files to start and end the Pomodoro Sprint, you can change those at the start of the script
  • Now you only need some determination to get some things done using an awesome technique :)

Veiw the script below

#Start-PomodoroSprintV3.ps1
#Last updated: 02.12.2013 By MVP Ståle Hansen (http://msunified.net)
#Pomodoro function by Nathan.Run() http://nathanhoneycutt.net/blog/a-pomodoro-timer-in-powershell/
#Lync Custom states by Jan Egil Ring http://blog.powershell.no/2013/08/08/automating-microsoft-lync-using-windows-powershell/
#Note: for desktops you need to enable presentation settings in order to suppress email alerts, by MVP Robert Sparnaaij: http://msunified.net/2013/11/25/lock-down-your-lync-status-and-pc-notifications-using-powershell/

cls
#Add the path to your module and wave file here
$ModulePathISO=(Join-Path -Path ${env:ProgramFiles(x86)} -ChildPath “Microsoft Office\Office15\LyncSDK\Assemblies\Desktop\Microsoft.Lync.Model.dll”)
$ModulePathStream=(Join-Path -Path ${env:ProgramFiles(x86)} -ChildPath “Microsoft Office 2013\LyncSDK\Assemblies\Desktop\Microsoft.Lync.Model.dll”)
$StartWave="C:\Windows\Media\Windows Proximity Connection.wav"
$EndWave="C:\Windows\Media\Windows Proximity Notification.wav"
$stop=$False
$errorpref="Continue"

#Checking if the files are available
if (Test-Path $ModulePathISO){$ModulePath=$ModulePathISO}
elseif (Test-Path $ModulePathStream){$ModulePath=$ModulePathStream}
else{Write-host SDK dll file not found;Write-Host Exiting script;break}

if (!(Test-Path $StartWave)){Write-host Start Wave file not found;$stop="True"}
if (!(Test-Path $EndWave)){Write-host End Wave file not found;$stop="True"}
if ($Stop -eq $True){Read-host "Wav files could not be found, press enter to continue or crl+c to exit";$errorpref="SilentlyContinue"}

 Function Publish-LyncContactInformation {

    Param (
        # Availability state as int
        [int]$AvailabilityId,
        # ActivityId as int
        [int]$ActivityId,
        # Custom ActivityId as int
        [int]$CustomActivityId,
        # String value to be configured as personal note in the Lync client
        [string]$PersonalNote
    )
    #Importing Lync SDK and create object
    Import-Module -Name $ModulePath
    $Client = [Microsoft.Lync.Model.LyncClient]::GetClient()
    $Self = $Client.Self
    $ContactInfo = New-Object 'System.Collections.Generic.Dictionary[Microsoft.Lync.Model.PublishableContactInformationType, object]'

    if ($AvailabilityId) {
        $ContactInfo.Add([Microsoft.Lync.Model.PublishableContactInformationType]::Availability, $AvailabilityId)
    }

    if ($CustomActivityId) {
        $ContactInfo.Add([Microsoft.Lync.Model.PublishableContactInformationType]::CustomActivityId, $CustomActivityId)
    }

    if ($PersonalNote) {
        $ContactInfo.Add([Microsoft.Lync.Model.PublishableContactInformationType]::PersonalNote, $PersonalNote)
    }

    $Publish = $Self.BeginPublishContactInformation($ContactInfo, $null, $null)
    $self.EndPublishContactInformation($Publish)

}

Function Start-Pomodoro
{
    Param (
        #Duration of your Pomodoro Session
        [int]$Minutes = 25
    )

    $seconds = $Minutes*60
    $delay = 1 #seconds between ticks

    #Set do-not-disturb Pomodoro Foucs custom presence, where 1 is my pomodoro custom presence state
    Publish-LyncContactInformation -CustomActivityId "1"

    #Setting computer to presentation mode, will suppress most types of popups
    presentationsettings /start

    #Errorprefernce is set to silent when wav files not present
    $ErrorActionPreference = $errorpref
    #Starting music, remember to change filepath to your wav file
    $player = New-Object System.Media.SoundPlayer $StartWave
    1..6 | %{ $player.Play() ; sleep -m 3400 }
    $ErrorActionPreference = "Continue"

    #Counting down to end of Pomodoro
    for($i = $seconds; $i -gt 0; $i = $i - $delay)
    {
         $percentComplete = 100-(($i/$seconds)*100)
         Write-Progress -SecondsRemaining $i `
         -Activity "Pomodoro Focus sessions" `
         -Status "Time remaining:" `
         -PercentComplete $percentComplete
         Start-Sleep -Seconds $delay

         #Showing remainder of time in Lync client personal note
         $MinutesRemaining = $i/60
         $MinutesRemaining = [System.Math]::Round($MinutesRemaining, 0)

         if ($MinutesRemaining -gt 1){Publish-LyncContactInformation -PersonalNote "Will be available in $MinutesRemaining minutes"}
         elseif ($i -lt 31){Publish-LyncContactInformation -PersonalNote "Will be available in $i seconds"}
         else{Publish-LyncContactInformation -PersonalNote "Will be available in less than a minute"}

    }

     #Stopping presentation mode to re-enable outlook popups and other notifications
     presentationsettings /stop

     #Pomodoro session finished, resetting status and personal note, availabilit 1 will reset the Lync status
     Publish-LyncContactInformation -PersonalNote "Your personal note"
     Publish-LyncContactInformation -Availability "1"

     #Errorprefernce is set to silent when wav files not present
     $ErrorActionPreference = $errorpref
     #Playing end of focus session song\alarm, 6 times
     $player = New-Object System.Media.SoundPlayer $EndWave
     1..6 | %{ $player.Play() ; sleep -m 1400 }
     $ErrorActionPreference = "Continue"

 }

Start-Pomodoro -Minutes 25

Gartner Magic Quadrant for Unified Communications 2013

Is that time of the year again when Gartner releases their yearly analysis of the Unified Communications vendors and their offerings called Magic Quadrant for Unified Communications. The vendors evaluated must meet certain criteria which is a product portfolio that supports

  • Voice and telephony
  • Conferencing
  • Messaging
  • Presence and IM
  • Support for different client platforms
  • Support communications-enabled Applications

It is a tradition to comment on the Gartner UC MQ’s here at the msunified.net blog, and have done so since 2009. See the previous articles here:

Windows 8 will change the way you use a PC

For the past six months I have used a Samsung Series 7 slate with Windows 8 installed. I have to say, a Windows 8 slate like this Samsung or the Microsoft Surface will change how you use and relate to your PC. I will try in this article to share what I have experienced using this form factor actively in my daily life. Continue reading

Speaking at Atea Community this fall

Atea Community Norway is the premiere seminar that will visit 12 cities from Tromsø in the north to Kristiansand in the south. Here you can meet Atea employees, hear the biggest trends within IT and mingle with 49 of Atea’s biggest partners at their stands. This year I will speak about Lync 2013 in Hamar, Fredrikstad and Oslo together with Karin Løkke. In the other cities Joakim Erdal and Tom-Inge Larsen will do the Lync talks. I will also speak in Tromsø and Trondheim about Windows 8 and Office 2013. Atea has recorded teasers for a lot of the talks given and I was featured in two of them. See them below. I also recommend attending the talk about the future of telephony which is the third video. Hope to see you at Atea Community in a city near you! Continue reading

Gartner Magic Quadrant for Unified Communications 2012

Is that time of the year again when Gartner releases their yearly analysis of the Unified Communications vendors and their offerings called Magic Quadrant for Unified Communications. The vendors evaluated must meet certain criteria which is a product portfolio that supports

  • voice and telephony
  • conferencing
  • messaging
  • presence and IM
  • support for different client platforms
  • support communications-enabled Applications

It is a tradition to comment on the Gartner UC MQ’s here at the msunified.net, and I have done so since 2009. See the previous articles here:

Awarded Microsoft Most Valuable Professional (MVP)


On April 1st last year I was awarded the Microsoft MVP Award for my contributions in the Lync community. The MVP Award is valid for 1 year, and is based on the contributions for the past year. On April 1st this year I was re-awarded for my 2nd year as an MVP:

Dear Ståle Hansen, Congratulations! We are pleased to present you with the 2012 Microsoft® MVP Award! This award is given to exceptional technical community leaders who actively share their high quality, real world expertise with others. We appreciate your outstanding contributions in Lync technical communities during the past year.

I feel very honored to be part of this outstanding community and I want to mention the MVP Summit as a highlight of the experience. With all the cool things happening around Lync, Office and Windows 8 I look forward to contribute to the community the coming year as well.

Resources

About the MVP Award Program
Lync MVP Awardees
MVPs.org community site
Microsoft MVP FAQ