To make Automatic enable users from AD to Lync With Enterprise Voice. I have made a PowerShell script to do this.
This script can be used as a scheduled task. This can be used as you want it.
Here is the code:
#Script for automatic enable users for Lync 2013
#THere can be used list of OU,DC if users are in different OU's.
#Remember to change RegistrarPool
#SipAddresser is EQ Mailaddress
#Made by Kai Stenberg, Solution Architect Lync Skill AS
#$write shall be set to $true when running the script in production
$write = $false;
#Delete old files if the script has been run before
if (Test-Path c:\temp\disabledLyncUsers.txt) {
del c:\temp\disabledLyncUsers.txt;
}
if (Test-Path c:\Temp\enabledLyncUsers.txt) {
del c:\Temp\enabledLyncUsers.txt;
}
#set up your list of OU's and domain name
#See the example under, has to be changed to your settings
$adOus = ("OU=Employees,OU=Users,OU=HQ,DC=domain,DC=local",
"OU=Employees,OU=Users,OU=Bergen,DC=domain,DC=local")
#New users will be enabled and Enterprice voice ready
foreach ($ou in $adOus) {
$newLyncUser = get-csaduser -OU $ou -filter { Enabled -ne $true }
foreach ($user in $newLyncUser) {
if ($write) {
$user | Enable-csuser -RegistrarPool <poolname of Lync> -SipAddressType EmailAddress;
$user | Set-CsUser -EnterpriseVoiceEnabled $true;
#If using other Dialplan or voice policy then Global please remove the # on the next 2 rows
#$user | Set-CsUser -Dialplan "<name of dialplan>"
#$user | Set-CsUser -VoicePolicy "<name of Voicepolicy>"
}
else {
$user | Out-File -Append c:\Temp\disabledLyncUsers.txt;
}
}
}
# get-csaduser -filter {Enabled -ne $True -and OU -iin $adOus} | foreach {
# Enable-CsUser -RegistrarPool <poolnameFQDN> -SipAddressType EmailAddress}
# Set-CsUser -EnterpriseVoiceEnabled $true
#LineURI with +47 is to be set for Lync Telephony
$enabledUsers = Get-CsAdUser -Filter {Enabled -ne $Null}
foreach ($user in $enabledUsers) {
if ($write) {
$phoneNumber = "TEL:" + "+47" + ($user.$phone -replace "[^0-9]","")
# $phoneNumber = $phoneNumber -replace "[^0-9]"
# $phonenumber = "TEL:+" + $phoneNumber
$user | Set-CsUser -LineUri $phoneNumber
}
else {
$user | Out-File -Append c:\Temp\lyncEnabledUsers.txt
}
}
Can it be used to enable users in LYNC 2010 pool?
ReplyDeleteI can't see that this should not be any problem. Try it With $Write=false$ parameter and then you will see the result. :-) Good luck
ReplyDeleteis there anyway to get this to fully provision the account from AD user object ie tel : number and policy ect.
ReplyDeleteIdentity : CN=firstname lastname,OU=Users,OU=Thailand-Bangkok,DC=contoso,DC=com
VoicePolicy : VP_somthing
VoiceRoutingPolicy :
ConferencingPolicy : Policy Conf XXXX
PresencePolicy :
DialPlan :
LocationPolicy :
ClientPolicy :
ClientVersionPolicy :
ArchivingPolicy :
ExchangeArchivingPolicy : Uninitialized
PinPolicy :
ExternalAccessPolicy :
MobilityPolicy :
PersistentChatPolicy :
UserServicesPolicy :
HostedVoiceMail :
HostedVoicemailPolicy :
HostingProvider : SRV:
RegistrarPool : XX-XX-XX.contoso.com
Enabled : True
SipAddress : sip:firstname lastname@contoso.com
LineURI : tel:+0000000000
EnterpriseVoiceEnabled : True
ExUmEnabled : False
HomeServer : CN=Lc Services,CN=Microsoft,CN=1:1,CN=Pools,CN=RTC Service,CN=Services,CN=Configuration,DC=contoso,DC=com
DisplayName : firstname lastname
SamAccountName : firstname lastname
Any help with this would be soo apreciated!
Alex