The Microsoft Lync Server technical community is full of knowledgeable IT professionals that work tirelessly to share their wealth of experience and expertise with the world. They blog, tweet, deliver presentations and answer questions in the forums to help foster expert knowledge for administrators and IT Pros in every corner of the globe.
In mid-2011, I decided to use my own blog, Justin Morris on UC, to interview and learn from these noteworthy individuals who consistently go the extra mile to help all of us better understand Microsoft Lync Server. The series has now moved to the NextHop blog, and for my second post for NextHop, I interviewed Lync MVP and fellow consultant from Modality Systems, Tom Arbuthnot, to find out how he got into IT and why he loves Microsoft Lync.
Author: Justin Morris
Publication date: February 24, 2012
Product version: Lync Server 2010
What's your technical background? How did you end up where you are today?
I think my first computing experience was with a ZX Spectrum I got for a birthday. After that, various used computers were handed down to me from friends and family. I vividly remember messing with the basic code in Gorillas to super power the bananas. Since then, I have kept my hand in technology and computers, building PCs, fixing friends and family’s machines, and helping school admins.
However, rather than specializing in IT, I decided to earn a Management Degree at Loughborough University. After my degree, I went to work for a leading Cisco Unified Communications partner, where I was lucky to have a lot of flexibility and the opportunity to work with some great people. I started in sales and then gravitated to a more technical pre-sales and engineering role. I also looked after the internal systems, which meant I was thrown into the deep end. This was a fantastic way to learn a wide variety of technologies. In this role, I looked after various Microsoft products and was impressed with Office Communications Server.
Tom at the top of a viewing tower in Kuopio, Finland.
Can you tell us what your position at Modality Systems entails?
My role is Consultant. I spend most of my time working with customers to design and deploy Microsoft Lync Server, and integrate it with existing PBXs and business applications. Modality Systems has top-notch teams that focus on infrastructure/consultancy/support and development. This means there are always interesting projects on which to get involved.
What made you get into UC and specialize in Lync Server?
I’ve had exposure to a number of technology areas, but for me, UC was always the most interesting. It’s technology that has a positive impact on a business and that users actually appreciate. Having worked for a Cisco partner, I’ve been involved in UC for a number of years. When Office Communications Server and subsequent Lync Server were released, I honestly thought they were delivering the best experience and features, which led me to work with Microsoft UC full time.
What's your favorite thing about Lync?
That’s a tough one, as Lync Server offers so many features, each of which can be great, depending on the business. “It depends” because, hey, I’m a consultant. 🙂 But high on my favorites list is the ability to seamlessly sign in from anywhere without VPN and get the same features and experience as being in the office. Also, federation, being able to communicate with people in other companies in exactly the same way you communicate internally, is amazing. Instant messaging, presence, sharing and video are also amazing. It really does change the way you work.
Tom snowboarding in Finland with his girlfriend, Anna.
What was the most challenging Live Communications Server/Office Communications Server/Lync Server problem you ever solved?
I often work with companies that require onboarding lots of Lync users, in specific orders, with specific approvals and policies, and this process must fit into a larger workflow. When we initially rolled out Lync, I was really excited to leverage Windows PowerShell to streamline this process. A scenario that really pushed my skills to the limits was this one:
“Mangers must approve which users are Lync enabled and determine which Lync features each user is allowed (meeting policies, federation, and so forth). The user then receives an email inviting them to join Lync. This email contains a link to a web page, where users must agree to the terms of service. When users agree, they are enabled for Lync with the policies chosen by their manager. In addition, users may have been Office Communications Server users. If they were an Office Communications Server user, move their enterprise voice number to Lync, unless their manager requested they get a new DID/DDI for Lync. If they didn’t have an enterprise voice number, assign them a new number from an existing set. When the user is enabled, send them a welcome email that includes their specific login information, details of their enterprise voice number, and training sheet attachments. Any errors or issues should flag a ticket on the helpdesk.”
I think you will agree this is not a trivial workflow. Actually, if you break it down and leverage the power of PowerShell, it’s completely achievable. I won’t post the whole script here, but I’ll run through the steps.
1. Users must be approved by their line manager who chooses their policies.
A well-crafted Excel spreadsheet, preferably hosted in SharePoint, can handle this. We then load the information into a SQL database.
A scheduled PowerShell script collects this information from SQL. We collect records for users approved by their manager: $Connection = New-Object System.Data.SQLClient.SQLConnection.
2. The user then receives an email inviting them to join Lync: Send-MailMessage
After they agree to the terms of service on an internal web page, the site writes their acceptance to SQL.
Again, we pull the information from SQL. We can pull all the policies and options chosen by their manager. We now have our list of users to enable.
We check their current Pool setting, to see if they are OCS Enabled: $checkcurrentpool = Get-CsUser $upn -ea 'SilentlyContinue' | Select-Object registrarpool.
Using IF and Else and Switch we can take the appropriate steps to migrate the users depending on their current status and setup: Move-CSLegacyUser or Enable-CsUser.
For users who need a new number, we use another SQL lookup and write back to handle that: $Connection = New-Object System.Data.SQLClient.SQLConnection
3. Once the user is enabled, we send them an email welcoming them.
Ah, but wait, this email must be customized per user.
4. When the user is enabled, send them a welcome email that includes their specific login information, details of their enterprise voice number, and training sheet attachments.
Okay, we can import a html email body template as a string: $body = get-content "D:\powershell\htmlemail\WelcomeEmail.htm” | Out-String.
And using Replace can insert the various user details: $bodywithsignin = $body.Replace("@@@@@@@@@@",$CleanEmail).
5. Any errors or issues should flag a ticket on the helpdesk.
Finally, trap and continue allows us to grab the errors to a file that we can use Send-MailMessage to send to the helpdesk for further investigation.
I love the fact that you can break a complex scenario down and let PowerShell do the heavy lifting for you.
A quiet night out with friends in London (Rubik's Cube themed, Tom is not blind).
If you could think of one feature you'd like included in the next version of Lync, what would it be?
I’d really like to see Lync being used on the new Windows 8 ARM based tablets. Also a simple one, but I’d like to see a “consultative transfer” button on the Lync client UI.
What do you feel is your area of expertise, where you consider yourself a bit of a rock star?
Rock star is a big statement, but I honestly believe a key part of being great in the IT game is constant learning and logic in troubleshooting. I would say I learn pretty quickly, and when faced with new situations (which with UC integration to existing systems happens a lot), I can draw on my previous experience and troubleshooting skills to get the result needed.
Tom shopping for new shoes!
Your blog, Lync'd Up provides great news about Lync, real world cases encountered from the field, and valuable training material. When did you start it and what direction has it taken?
I’ve blogged a bit in the past, but when I started at Modality Systems, I thought it was a good time to put more weight behind it. I’ve learned so much from people who took the time to share their experiences across technologies with me, so I think it’s only fair to give back. Lyncdup.com is my blog; I like to mix interesting issues I come across with useful resources and news regarding UC and Lync. I’ve had really good feedback on posts such as Lync PowerShell Cmdlet Mind Maps and PowerShell Script to check domains for Lync Federation, which keeps me motivated. The blog is currently averaging over ten thousand unique hits a month, so clearly there is interest in this area.
I’m also pleased to say—with thanks to my community, including my blog, TechNet forums, and co-running<a href="http://blogs.technet.com/controlpanel/blogs/posteditor.aspx/Microsoft UC User Group London" target="_blank"> Microsoft UC User Group London (along with the great Adam Jacobs and Justin Morris)—that I was awarded Microsoft MVP for Microsoft Lync Server 2010. I love the UC community, it’s really active and helpful, and I’m proud to be a part of it.
Where are you from and what do you think makes your hometown/city great?
I’m originally from St. Albans, which is technically a city, but actually more of a town. It’s a nice place with a few decent pubs (most pubs per square mile of any city in Britain apparently), but being about 20 miles north of London, I’d say London is pretty hard to beat in terms of history, culture, and things to do.
When you're not dishing out quality technical know-how, what do you do for fun?
So how do you answer this question without sounding like an alcoholic? I think you say, I like music and socializing, right? In all seriousness, I’m traveling a fair bit for work these days and am busy as ever, so I’m quite happy to relax on the sofa with a glass of wine and a good film. But it’s rare that I’ll turn down an invite to the pub. J
Thanks a lot for taking time out of your schedule to answer our questions Tom!
Make sure you come back in March for another Interview with a Lync Pro.
- Tom's article: How to Capture and Decrypt Lync Server 2010 TLS Traffic Using Microsoft Tools
- Tom Arbuthnot’s blog: Lync’d Up
- Tom Arbuthnot on Twitter
- Justin Morris’s blog: Justin Morris on UC
- Justin Morris on Twitter
- Interview with a UC Pro Series
- Justin's article: Interview with a Lync Pro: Randy Wintle
Lync Server Resources
- Lync Server 2010 Documentation Library
- DrRez blog
- NextHop blog
- Lync Server and Communications Server resources
We Want to Hear from You
Keywords: Lync MVP, interview, Tom Arbuthnot, IT Pro, Lync Server