Question
Mail de bienvenue
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
TOR écrit:
Le problème que je rencontre est que le choix du template utilisé par le welcomemail se fait au moment de l'appel de la fonction. Hors les paramètres qui définissent si c'est le template FR ou EN qui doit être envoyé ne sont connu que dans la fonction.
En effet, le test
if ($toto -Match \"OU=FR\"
Vérifie si la varible $newlyCreatedMailboxAlias.DistinguishedName contient FR.
Mon script ne fonctionne pas car le parametre template doit être définie au moment de l'appel de la fonction, et ne peut pas être modifié durant l'exécution de cette fonction.
Comment je peux résoudre ce problème ?
tu a tous dis !!!!
Bon, moi je rentre de vacance, c'est facile de voir quoi faire.
Et je crois que y en a qui devrait y partir !!
Le script de microsoft est un exemple donc tu doit l'adapter en fonction de tes besoins.
ici[code:1] #Get welcome mail template
if (-not (Test-Path -Path $Template -PathType Leaf)) {
#Cannot find welcome mail template
$errorMsg = $Messages.CannotFindWelcomeMailTemplate
$errorMsg = $errorMsg -f $Template
$customError = New-OSCPSCustomErrorRecord `
-ExceptionString $errorMsg `
-ErrorCategory NotSpecified -ErrorID 1 -TargetObject $pscmdlet
$pscmdlet.ThrowTerminatingError($customError)
} else {
#Get welcome mail body.
$welcomeMailBody = [string](Get-Content $Template)
}
#Replace any placeholders with real values
if ($ReplacePlaceholders -ne $null) {
foreach ($placeholders in $ReplacePlaceholders.GetEnumerator())
{
$welcomeMailBody = $welcomeMailBody -replace $($placeholders.Key),$($placeholders.Value)
}
}
[/code:1]la fonction recupere template fourni en parametre. mais toi tu en a deux (francais et anglais) donc probleme
deux solutions :
SOLUTION 1) fournir les deux templates en parametre -TemplateFR et -TemplateEN
- modifier le script(fonction) en rajoutent un parametre template, ex. $TemplateFR et $TemplateEN,
- modifier organisation du script pour charger le template pour chaque mail emis, soit apres le debut de cette boucle [code:1] foreach ($newlyCreatedMailbox in $newlyCreatedMailboxes) {
[/code:1]et plus precisement ici
[code:1]$newlyCreatedMailboxAlias = $newlyCreatedMailbox.Alias[/code:1]tu deplace le code de lecture du template indiquer plus haut
- evidemment tu rajoute le test de la langue sur cette ligne [code:1]$welcomeMailBody = [string](Get-Content $Template)[/code:1] soit :
[code:1]$toto = $newlyCreatedMailboxAlias.DistinguishedName
if ($toto -Match \"OU=FR\"«») {
$welcomeMailBody = [string](Get-Content $TemplateFR)
} else {
$welcomeMailBody = [string](Get-Content $TemplateEN)
}[/code:1]
SOLUTION 2) (plus simple mais moins propre et reutilisable)fournir les deux templates en dur dans le script
- meme manip mais tu remplace la partie de script de lecture du template par ton propre script
et pas besoin de parametre pour le template
si tu a besoin d'un complement d'aide n'esite pas.<br><br>Message édité par: 6ratgus, à: 27/05/13 18:37
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
bonjour Laurent, ta solution est bien plus sympas que la mienne !!
je la garde en memoire.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Salut 6ratgus !bonjour Laurent
6ratgus écrit:
Je ne sais pas, pas testé et surtout SANS connaitre le fonctionnel, j'utilise désormais le 'BCP'ta solution est bien plus sympas que la mienne !!
L'autre pb étant la pertinence de la recherche sur l'OU, nous ne connaissons pas la norme de nommage...
On pourrait également paramétrer ce test
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
BCP ?? connait pas ! t'a un ou deux lien sur le suject stp ? mercij'utilise désormais le 'BCP'
les methodes pour arrivé au resultat demander ne manque pas, seul le temps manque (et aussi exchange pour moi)Je ne sais pas, pas testé et surtout SANS connaitre le fonctionnel, ...
L'autre pb étant la pertinence de la recherche sur l'OU, nous ne connaissons pas la norme de nommage...
On pourrait également paramétrer ce test
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Une petite coquille : 'CBP' (Ceinture Bretelle Parachute).BCP ?? connait pas ! t'a un ou deux lien sur le suject stp ?
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Mail de bienvenue