Lync kullanımının tüm kullanıcılar için standartlaştığı birçok organizasyonda kullanıcılar için Lync aktivasyonu sistem yöneticilerinin görevi haline gelebilmekte, Lync Control Panel ve Lync Power Shell üzerinde yapılabilen bu işlemi parametrik olarak otomatize etme yolu şimdilik bulunmamakta.
Basit bir power shell script ile bu işi otomatik hale getirmeyi aşağıdaki şekilde yapabilirsiniz.
Öncelikle kullanacağımız komutlara bakalım
Get-CsAdUser komutu Active Directory Domain Services üzerinden belirtilen kullanıcının hesap bilgilerini almamızı sağlar. Örnek olarak
Get-CsAdUser -Identity "Hakan Sen"
komutu “Hakan Sen” kullanıcısının tüm hesap bilgilerini ekranda görüntüleyecektir.
Get-Csaduser -Filter {Enabled -ne $True} -OU "ou=LyncUsers,dc=hakansen,dc=com,dc=tr
Komutu ile LyncUsers organization unit içerisindeki Lync aktif olmayan tüm kullancıların bilgilerini görüntüleyecektir. Aktif edilecek kullanıcılarımızın bilgilerine bu şekilde erişeceğiz.
Enable-CsUser komutu ise powershell üzerinden kullanıcılarımızı aktif etmemizi sağlayacak. Komut kullanımı ile ilgil detaylar linkten ulaşabilirisiniz.
Aşağıdaki iki komutun birleştirilmiş ve bizim script içerisinde temel olarak işimizi görecek olan komut bulunmakta, komutu Lync Power Shell üzerinden uyguladığınızda LyncUsers organization unit’i içerisinde Lync kullanıcı aktif olmayan kullancıların aktivasyonunu yapacaktır.
Get-Csaduser -Filter {Enabled -ne $True} -OU "ou=LyncUsers,dc=hakansen,dc=com,dc=tr" | Enable-CsUser -RegistrarPool lyncpool.hakansen.com.tr -SipAddressType EmailAddress
Bu komutu aşağıdaki şekilde bir Power Shell script haline getirip Task Scheduler ile bir otomatik çalıştırılacak bir görev olarak atadığımızda süreci otomatize etmiş olacağız.
PowerShell üzerinden Get-Csaduser ve Enable-CsUser komutların kullanabilmek için Lync Power Shell modülü import etmemiz gerekmekte. İlgili modül dosyası: “C:\Program Files\Common Files\Microsoft Lync Server 2010\Modules\Lync\Lync.psd1”
Import-Module 'C:\Program Files\Common Files\Microsoft Lync Server 2010\Modules\Lync\Lync.psd1'
Get-Csaduser -Filter {Enabled -ne $True} -OU "ou=LyncUsers,dc=hakansen,dc=com,dc=tr" | Enable-CsUser -RegistrarPool lyncpool.hakansen.com.tr -SipAddressType EmailAddress
Script dosyamı yukardaki satırları metin editöründe ps1 uzantılı olarak kaydediyoruz. Ben C:\LyncScripts klasörü altında EnableUsers.ps1 olarak kaydettim.
Windows Task Sheduler üzerinden yeni bir görev tanımlayarak powershell.exe’i “-File C:\LyncScripts\EnableUsers.ps1” parametresi ile istediğimiz sıklıkta çalışmasını sağlıyoruz. Oluşturduğumuz görev her çalıştığında kullanıcıların aktivasyonunu otomatik olarak yapacaktır.
Not: Sunucu üzerine logon olunmadığında da script’in çalışması için power shell üzerinden “Set-ExecutionPolicy RemoteSigned” komutu ile ExecutionPolicy’i RemoteSigned olarak birkez set etmeniz gerekecektir.