I had to use SEFAUtil to get some tasks done the other day. As I prefer using PowerShell over just another command line tool, I decided to come up with a quick wrapper function that is intended to make my life a little easier.

If you don’t know what SEFAUtil is and how to configure it, check out this great post.Or this one if you prefer German ;) In a nutshell, it’s a command line tool to configure Lync Voice Features (like call forwarding, team call) on behalf of end-users.

Warning: I do not recommend using this in production without understanding what it does, although I did test it in my lab, it may break something!

Ok, having that said, how do I use thins thing? First of all you will need a copy of this script on the computer where you have been running SEFAUtil until now. As the computer is authenticated using a certificate, you will not be able to run this from anywhere. Once you downloaded the script, start a Lync Management Shell and use it like in the following examples.

What I did in this script, is basically wrap PowerShell around SEFAUtil.exe, I did add some parameter validation, it can only run against Lync users for example. It does write a logfile to the $temp directory and supports PowerShells common parameters like –Verbose and –WhatIf.

Examples

.\Invoke-SEFAUtil.ps1 -Server ly15.tomt.local -Username thomas@tomt.it

This example invokes SEFAUtil without additional parameters, call forwarding settings for the user thomas@tomt.it are shown.
---

.\Invoke-SEFAUtil.ps1 -Server ly15.tomt.local -Username thomas@tomt.it -EnableSimulRing +391231234567

This example enables Simul Ring for the user thomas@tomt.it. The destination number for Simul Ring is +391231234567.
---

.\Invoke-SEFAUtil.ps1 -Server ly15.tomt.local -Username thomas@tomt.it -AddTeamMember user10@tomt.it

This example adds user10@tomt.it to thomas@tomt.it. This will also enable Simul Ring for the user.
---

.\Invoke-SEFAUtil.ps1 -Server ly15.tomt.local -Username thomas@tomt.it -DelayRingTeam 10

This example set's the delay for Team Calls to 10 seconds for the user thomas@tomt.it
---

.\Invoke-SEFAUtil.ps1 -Server ly15.tomt.local -Username thomas@tomt.it -DisableTeamCall

This example disables Team Call for thomas@tomt.it

---

Download

The latest version of the script can be found here:

Note: The script requires the Lync Module to be available on the Computer where it will be run, it does also require PowerShell version 3.

Note: Changing the CallAnswerTime only does not work, a limitation of the SEFAUtil.exe does not allow this setting to be changed without also configuring CallForwarding

 

so long,
tom

This post has been migrated from our earlier blog based on BlogEngine.NET.