Most Valued User SvenS Posted May 2, 2016 Most Valued User #1 Share Posted May 2, 2016 Hallo, kann mir jemand einen Tip geben, wie man bei ca 170 Usern auf möglichst einfache Weise die Mailadresse von .de auf .com ändern kann ? Kann man das mit Powershell machen und falls ja wie ? Danke und Gruß Sven Link to comment Share on other sites More sharing options...
Most Valued User ogoettlich Posted May 6, 2016 Most Valued User #2 Share Posted May 6, 2016 Hallo Sven, ja das ist möglich und per Powershell relativ einfach gelöst. Folgendes Script kannst du verwenden.. Getestet unter Swyx 2015. Du musst nur den Schalter setzen, welches eMail-Feld du updaten möchtest. Für Voicemail $bSetVoicemail = $true Für Benutzerinfo $bSetVoicemail = $false Komplettes Script (muss im Swyx-Admincontext ausgeführt werden, ansonsten Credentials mitgeben) # welches eMail Feld soll gesetzt werden Benutzerinformationsfeld oder Voicemail? $bSetVoicemail = $true #$bSetVoicemail = $true Import-Module IpPbx # Modul laden Connect-IpPbx # Swyx Connection $allUsers = Get-IpPbxUser -UserName "%" # Benutzer suchen >> % = alle # Schleife foreach($user in $allUsers){ write-host "#################################" write-host "Benutzer: " $user.Name if($bSetVoicemail){ $emailOld = $user.EMailAddr #Voicemail }else{ $emailOld = $user.UserEmailAddressesEntryCollection.Address #Benutzerinfo (muss unique sein) } if($emailOld -ne $null){ $emailOld = $emailOld.Trim() write-host "eMail: "$emailOld $bFoundDe = $emailOld -match ".de" #Not Case Sensitive #$bFoundDeL = $emailOld -cmatch ".de" #Case Sensitive Lower #$bFoundDeU = $emailOld -cmatch ".DE" #Case Sensitive Upper if($bFoundDe){ write-host "eMail beinhaltet .de" $emailNew = $emailOld.Substring(0, $emailOld.Length - 3) $emailNew = $emailNew+".com" if($bSetVoicemail){ $user.EMailAddr = $emailNew }else{ Set-IpPbxUserEmailAddress -UserEntry $user -EmailAddress $emailNew # in Swyx speichern } $user.Update($true) write-host "neue eMail Adresse lautet: $emailNew" -ForegroundColor Green } #elseif($bFoundDeU){ #Upper Case # write-host "eMail beinhaltet .DE" # $emailNew = $emailOld.Substring(0, $emailOld.Length - 3) # $emailNew = $emailNew+".COM" # if($bSetVoicemail){ # $user.EMailAddr = $emailNew # }else{ # Set-IpPbxUserEmailAddress -UserEntry $user -EmailAddress $emailNew # in Swyx speichern # } # $user.Update($true) # write-host "neue eMail Adresse lautet: $emailNew" -ForegroundColor Green #} else{ write-host "Benutzer hat keine eMail mit .de oder .DE" -ForegroundColor Red } }else{ # Skip write-host "keine eMail vergeben" -ForegroundColor Red } } Viel Erfolg! Link to comment Share on other sites More sharing options...
Most Valued User SvenS Posted May 9, 2016 Author Most Valued User #3 Share Posted May 9, 2016 Super ! Vielen Dank. Das hat mir ne Menge Zeit/Arbeit erspart. Link to comment Share on other sites More sharing options...
Most Valued User SvenS Posted July 14, 2016 Author Most Valued User #4 Share Posted July 14, 2016 Hallo, gibts das Script auch für die Faxweiterleitung Emailadresse ? Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.