Ajout de délégué sur une BAL de ressource

Plus d'informations
il y a 5 ans 5 mois #18618 par max8313
Bonjour,

Je cherche à créer un script qui me permettrait d'ajouter automatiquement un délégué sur une BAL de type room.
J'ai pas de problème pour la partie droit sur le dossier calendrier mon problème c'est pour l'ajout dans la liste de délégués.
Quand on lance la commande
[code:1]get-calendarprocessing -Identity <nom_de_la_bal> | select-object ResourceDelegates[/code:1]

on obtient la liste des délégués en place.

Le problème c'est que je n'ai pas trouvé de commande Add-* uniquement Set-*
du coup si je lance la commande
[code:1]set-calendarprocessing -Identity <nom_de_la_bal> -ResourceDelegates <CN_de_mon_user> ResourceDelegates[/code:1]

Il remplace ce qui est en place par mon user.
Donc ça ce n'est pas top.
Du coup j'ai fais un script qui récupère la liste en place, ajoute le user que je veux et balance la commande avec toutes la liste.
Mais ça ne marche pas... Quand je tape dans un shell la commande avec la liste ça fonctionne mais quand ça vient d'une variable dans le script il ne split pas avec les ',' et cherche tout le bloque dans l'AD donc il ne le trouve pas...

Je vous post mon code ça sera peu être plus clair :

Write-Host \"Mailbox Alias : \"
$mbAlias = Read-Host
Write-Host \"User login : \"
$login = Read-Host
#récupération des informations sur le caldendrier
$calendarRules = Get-CalendarProcessing -Identity $mbAlias | Select-Object AutomateProcessing,ResourceDelegates,ForwardRequestsToDelegates,AllBookInPolicy,AllRequestInPolicy,AllRequestOutOfPolicy
$calendarRules
$delegates = $calendarRules.ResourceDelegates
$delegDN = $calendarRules.ResourceDelegates | Select-Object DistinguishedName
#récupération des onformation sur l'utilisateur
$userMailboxObject = get-mailbox -Identity $login
$userCn = $userMailboxObject.OrganizationalUnit + \"/\" + $userMailboxObject.Name
$userDn = $userMailboxObject.DistinguishedName
$ressourceMailboxObject = get-mailbox -Identity $mbAlias
$ressourceMailboxCn = $ressourceMailboxObject.OrganizationalUnit + \"/\" + $ressourceMailboxObject.Name
#on vérifie si le user est déjà dans la liste
$ressourceMailboxCn
$userDn
$exist = $false
foreach ($dn in $delegDN)
{
$dn.DistinguishedName
if ($dn.DistinguishedName -eq $userDn)
{$exist = $true; break}
}
echo $exist
if ($exist)
{Write-Host \" - \"$login\" déjà dans la liste des délégués\" -foregroundcolor \"blue\"}
else
{
$delegates2 = \"\" | select ResourceDelegates

foreach ($obj in $delegates)
{
$str = \"'\" + $obj.Parent + \"/\" + $obj.Name + \"',\"
$delegates2.ResourceDelegates = $str
}

$delegates2 = \"'\" + $userCn + \"'\"
$delegates2
#Ajout du user à la liste des délégués
Write-Host \" - Ajout de \"$login\" a la liste des délégués\" -foregroundcolor \"blue\"
Set-CalendarProcessing -Identity $ressourceMailboxCn -ResourceDelegates $delegates2
}


Si vous avez des idées parce que là je m'arrache les cheveux !!


Merci d'avance

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.190 secondes
Propulsé par Kunena