Fenestrae FCS 2010 Prerequisites Powershell
Hi all,
This script installs all Fenestrae Prerequisites for FCS 2010. Download here
Cheers,
Karl
Hi all,
This script installs all Fenestrae Prerequisites for FCS 2010. Download here
Cheers,
Karl
Hi all,
I just finished creating a useful script to bulk import Fenestrae Users into Active Directory.
This script only activates the FAX part of fenestrae, I will add the ability to set SMS, MMS and all features on Active Directory soon.
Download here : fenestraeCSV
$ErrorActionPreference="SilentlyContinue" Stop-Transcript | out-null $ErrorActionPreference = "Continue" #Requires -Version 2.0 [string] $FilenameTranscript = $MyInvocation.MyCommand.Name + " " + (hostname)+ " {0:yyyy-MM-dd hh-mmtt}.log" -f (Get-Date) Start-Transcript -path .\$FilenameTranscript | Out-Null $error.clear() clear Write-Host "##########################################################################" Write-Host "# Fenestrae Bulk user activation #" Write-Host "# #" Write-Host "##########################################################################" Write-Host "# Author : Karl Bustamante #" Write-Host "# Date : 08.02.2013 #" Write-Host "# Version : 1.0 #" Write-Host "# Comment : This program is used to activate bulk users for #" Write-Host "# Fenestrae Faxination Server #" Write-Host "# Modified by : #" Write-Host "# Date : #" Write-Host "# Comment : #" Write-Host "# #" Write-Host "##########################################################################" Write-Host " " Write-Host "Press any key to continue ..." -ForegroundColor yellow $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") function criticalError{ Write-Host "Error" -ForegroundColor black -backgroundcolor red Stop-Transcript Write-Host "Press any key to continue ..." -ForegroundColor yellow $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") exit } #Variables #Strings $strCSVPath = ".\fenestraeusers.csv" # CSV File path # Detect correct OS here and exit if no match (we intentionally truncate the last character to account for service packs) Write-Host "System Version (OS) : " -NoNewLine Write-Host (Get-WMIObject win32_OperatingSystem).Version -NoNewLine if ((Get-WMIObject win32_OperatingSystem).Version -notmatch '6.1.760'){ Write-Host "..............................[ ERROR ]" -ForeGroundColor red Write-Host "`nThis script requires a version of Windows Server 2008 R2, which this is not. Exiting...`n" -ForegroundColor Red Stop-Transcript Write-Host "Press any key to continue ..." -ForegroundColor yellow $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") Exit } #end OS detection Write-Host "..............................[ OK! ]" -ForeGroundColor Green # checking if csv path is ok Write-Host " - Checking if CSV '$strCSVPath' is available " -NoNewLine if(Test-Path -PathType leaf -Path $strCSVPath) { Write-Host ".....[ OK! ]" -ForeGroundColor green Write-Host " - Reading data in $strCSVPath" -NoNewLine $csvUsers = Import-Csv -path '.\fenestraeusers.csv' -delimiter ';' Write-Host ".....................[ OK! ]" -ForeGroundColor green } else { Write-Host ".....[ ERROR ]" -ForeGroundColor red Write-Error "`nFile not found" criticalError } # Function to test if AD module is available Function Get-MyModule { Param([string]$name) if(-not(Get-Module -name $name)) { if(Get-Module -ListAvailable | Where-Object { $_.name -eq $name }) { Import-Module -Name $name Write-Host "`nThe" -NoNewLine Write-Host " <$name> " -ForegroundColor yellow -NoNewLine Write-Host "module has been loaded!" } else { Write-Host -BackgroundColor Red "`n<$name>" -NoNewLine Write-Host " module has not been loaded " -BackgroundColor Red -ForegroundColor yellow criticalError } } # end if not module else { Write-Host "`nThe" -NoNewLine Write-Host " <$name> " -ForegroundColor yellow -NoNewLine Write-Host "module is already loaded!" } } Get-Mymodule -name "ActiveDirectory" Write-Host "--------------------------------------------------------------------------" -ForegroundColor green Write-Host "Press any key to continue ..." -ForegroundColor yellow $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") Write-Host "--------------------------------------------------------------------------" -ForegroundColor green #Users creation foreach($User in $csvUsers) { $login = $user.samaccountname $facsimileTelephoneNumber = $user.facsimileTelephoneNumber $dir = $user.dir $fenUMOurCSID = $user.fenUMOurCSID $fenUMAllowChargecodeOverride = $user.fenUMAllowChargecodeOverride $fenUMAllowCoversheetOverride = $user.fenUMAllowCoversheetOverride $fenUMAllowedToSendFax = $user.fenUMAllowedToSendFax $fenUMAllowedToSendFaxInt = $user.fenUMAllowedToSendFaxInt $fenUMAllowedToSendSms = $user.fenUMAllowedToSendSms $fenUMAllowedToSendSmsInt = $user.fenUMAllowedToSendSmsInt $fenUMAllowOurCSIDOverride = $user.fenUMAllowOurCSIDOverride $fenUMAllowSMSTemplateOverride = $user.fenUMAllowSMSTemplateOverride $fenUMCoversheet = $user.fenUMCoversheet $fenUMFileformat = $user.fenUMFileformat $fenUMMailTemplate = $user.fenUMMailTemplate Write-Host "--------------------------------------------------------------------------" -ForegroundColor cyan Write-Host " samAccountName : $login" -ForegroundColor cyan Write-Host " FAX Number : $facsimileTelephoneNumber" -ForegroundColor cyan Write-Host " CSID : $fenUMOurCSID" -ForegroundColor cyan Write-Host " DIR Number proxyaddress: $dir" -ForegroundColor cyan Write-Host " Coversheet : $fenUMCoversheet" -ForegroundColor cyan Write-Host " File Format : $fenUMFileformat" -ForegroundColor cyan Write-Host " Mail Template : $fenUMMailTemplate" -ForegroundColor cyan Write-Host " ChargeCode Override : $fenUMAllowChargecodeOverride" -ForegroundColor cyan Write-Host " CoversheetOverride : $fenUMAllowCoversheetOverride" -ForegroundColor cyan Write-Host " Send FAX : $fenUMAllowedToSendFax" -ForegroundColor cyan Write-Host " Send FAX International : $fenUMAllowedToSendFaxInt" -ForegroundColor cyan Write-Host " Send SMS : $fenUMAllowedToSendSms" -ForegroundColor cyan Write-Host " Send SMS International : $fenUMAllowedToSendSmsInt" -ForegroundColor cyan Write-Host " CSID Override : $fenUMAllowOurCSIDOverride" -ForegroundColor cyan Write-Host " SMS Template Override : $fenUMAllowSMSTemplateOverride" -ForegroundColor cyan Write-Host "$login..................................................[" -NoNewLine Write-Host " Creating " -ForegroundColor yellow -NoNewLine Write-Host "]" -NoNewLine if ($facsimileTelephoneNumber -ne ""){ $a = "Set-ADUser " + $login + " -Replace @{facsimileTelephoneNumber='" + $facsimileTelephoneNumber + "'}" Invoke-Expression $a } if ($fenUMAllowChargecodeOverride -ne ""){ $b = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowChargecodeOverride'='" + $fenUMAllowChargecodeOverride + "'}" Invoke-Expression $b } if ($fenUMAllowCoversheetOverride -ne ""){ $c = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowCoversheetOverride'='" + $fenUMAllowCoversheetOverride + "'}" Invoke-Expression $c } if ($fenUMAllowedToSendFax -ne ""){ $d = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowedToSendFax'='" + $fenUMAllowedToSendFax + "'}" Invoke-Expression $d } if ($fenUMAllowedToSendFaxInt -ne ""){ $e = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowedToSendFaxInt'='" + $fenUMAllowedToSendFaxInt + "'}" Invoke-Expression $e } if ($fenUMAllowedToSendSms -ne ""){ $f = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowedToSendSms'='" + $fenUMAllowedToSendSms + "'}" Invoke-Expression $f } if ($fenUMAllowedToSendSmsInt -ne ""){ $g = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowedToSendSmsInt'='" + $fenUMAllowedToSendSmsInt + "'}" Invoke-Expression $g } if ($fenUMAllowOurCSIDOverride -ne ""){ $h = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowOurCSIDOverride'='" + $fenUMAllowOurCSIDOverride + "'}" Invoke-Expression $h } if ($fenUMAllowSMSTemplateOverride -ne ""){ $i = "Set-ADUser " + $login + " -Replace @{'fen-UM-AllowSMSTemplateOverride'='" + $fenUMAllowSMSTemplateOverride + "'}" Invoke-Expression $i } if ($fenUMCoversheet -ne ""){ $j = "Set-ADUser " + $login + " -Replace @{'fen-UM-Coversheet'='" + $fenUMCoversheet + "'}" Invoke-Expression $j } if ($fenUMFileformat -ne ""){ $k = "Set-ADUser " + $login + " -Replace @{'fen-UM-Fileformat'='" + $fenUMFileformat + "'}" Invoke-Expression $k } if ($fenUMMailTemplate -ne ""){ $l = "Set-ADUser " + $login + " -Replace @{'fen-UM-MailTemplate'='" + $fenUMMailTemplate + "'}" Invoke-Expression $l } if ($dir -ne ""){ $m = "Set-ADUser " + $login + " -Add @{proxyAddresses = '" + $dir + "'}" Invoke-Expression $m } if ($fenUMOurCSID -ne ""){ $n = "Set-ADUser " + $login + " -Replace @{'fen-UM-OurCSID'='" + $fenUMOurCSID + "'}" Invoke-Expression $n } Write-Host "`b`b`b`b`b`b`b`b`b`b`b`b`b`b OK!" -ForegroundColor green -NoNewLine Write-Host " ]" } Write-Host "--------------------------------------------------------------------------" -ForegroundColor green Stop-Transcript Write-Host "--------------------------------------------------------------------------" -ForegroundColor green Write-Host "Press any key to exit ..." -ForegroundColor yellow $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")