Question Créer un rendez vous Outlook

Plus d'informations
il y a 16 ans 2 mois #5878 par Laurent Dardenne
Salut,
as-tu trouvé une solution ?

Tutoriels PowerShell

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

Plus d'informations
il y a 16 ans 2 mois #5879 par TimCruz
Réponse de TimCruz sur le sujet Re:Créer un rendez vous Outlook
Bonjour,

Désolé de ne pas avoir apporté de retour jusque là mais la neige m'a empêché d'aller au boulot et donc m'a mis plutôt en retard.

Je pense être en bonne voie de solution mais en utilisant les Exchange Web Services et en codant en C#.

Dans la mesure ou je m'écarte de PS, désirez vous malgré tout mes script au terme de mon travail?

\\"Il n\'y a pas de problème, il n\'y a que des solutions\\"

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

Plus d'informations
il y a 16 ans 2 mois #5880 par Laurent Dardenne
TimCruz écrit:

Désolé de ne pas avoir apporté de retour

Il n'y a pas de mal :)
TimCruz écrit:

Dans la mesure ou je m'écarte de PS,

PS v2 sais gérer les web services, mais de coupler le C# ou des API Win32, facilite certaines opérations là où PowerShell est démuni. Une fois ton code C# validé, tu peux peut être l'intégrer dans un cmdlet.
Si c'est une opération récurrente cela peut valoir le coup, en dehors du coût ;)
TimCruz écrit:

désirez vous malgré tout mes script au terme de mon travail?

Oui je veux bien par curiosité, et puis cela servira à d'autres.

Tutoriels PowerShell

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

Plus d'informations
il y a 16 ans 1 mois #6027 par TimCruz
Réponse de TimCruz sur le sujet Re:Créer un rendez vous Outlook
Je reviens à la charge avec ce problème. Je tente de comprendre et manipuler les éléments Exchange grace aux web services (EWS). J'en suis revenu au powershell dans la mesure ou mes capacités de dev' sont actuellement plutôt pauvres ; je me sers du PS pour me faire la main dans un premiers temps, je passerai plus tard au c#. Je tente de consulter pour une BAL le calendrier ou les mail.

Voici mon script actuel :
[code:1]
$uri = \"https://MONSERVEUREXCHANGE/EWS/Exchange.asmx\"

$exchangeservicebinding = new-webserviceproxy -NameSpace \"EWS\" -URI $uri -UseDefaultCredential
$exchangeservicebinding.RequestServerVersionValue = new-object EWS.RequestServerVersion
$exchangeservicebinding.RequestServerVersionValue.Version = [EWS.ExchangeVersionType]::Exchange2007
$exchangeservicebinding.Url = $uri

## Détermination du Parent Folder ID
[EWS.DistinguishedFolderIdType]$parentfolderid = new-object EWS.DistinguishedFolderIdType
$parentfolderid.Id = [EWS.DistinguishedFolderIdNameType]::inbox #Pour la recup des mails
#$parentfolderid.Id = [EWS.DistinguishedFolderIdNameType]::Calendar #Pour la recup des rendez vous
[EWS.BaseFolderIdType[]]$parentfolderids = $parentfolderid

## Détermination du ItemShape et de ses propriétés
[EWS.ItemResponseShapeType]$itemshape = new-object EWS.ItemResponseShapeType
$itemshape.BaseShape = [EWS.DefaultShapeNamesType]::AllProperties

## Création du FindItemType object selon le Parent Folder Ids et du ItemShape
[EWS.FindItemType]$finditemtype = new-object EWS.FindItemType
$finditemtype.ParentFolderIds = $parentfolderids
$finditemtype.ItemShape = $itemshape

## Interrogation des EWS
[EWS.FindItemResponseType]$finditemresponses = $exchangeservicebinding.FindItem($finditemtype)

## Récupération des éléments renvoyé par EWS dans une boucle
[EWS.MessageType]$messagetype #Pour la récup des mails

$compteur=0

#[EWS.CalendarItemType]$messagetype #Pour la récup des rendez vous
foreach($messagetype in $finditemresponses.ResponseMessages.Items[0].RootFolder.Item.Items)
{
$1=$messagetype.From.Item.Name
$2=$messagetype.Subject
$3=$messagetype.DateTimeReceived.Date
$4=\"=======================================================\"
$compteur++

Write-Host \"Message de: \" $messagetype.From.Item.Name
Write-Host \"Sujet: \" $messagetype.Subject
Write-Host \"Recu le: \" $messagetype.DateTimeReceived.Date
Write-Host \"=======================================================\"
Write-Host

$texte = \"Message de : $1
Sujet : $2
Recu le : $3
$4
\" | Out-File -append -noclobber c:\rdv.txt
}

#\"
#Il y $compteur rendez-vous\" | Out-File -Append -NoClobber c:\rdv.txt #Pour les rendez vous

\"
Il y $compteur mail\" | Out-File -Append -NoClobber c:\rdv.txt
[/code:1]

La consultation de mon calendrier ou de ma inbox est OK. MAIS (oui encore un mais) je ne parviens pas à consulter les dossiers fils de ma inbox.

Et je voudrais réussir également à consulter les éléments d'une autre BAL que la mienne (sinon ca me sert à rien). Je n'y parvients pas. J'ai tenté de travailler avec -Credential dans cette ligne [code:1]$exchangeservicebinding = new-webserviceproxy -NameSpace \"EWS\" -URI $uri -UseDefaultCredential
[/code:1] mais sans résultats...

Pourriez vous m'aider s'il vous plait.<br><br>Message édité par: TimCruz, à: 26/01/10 12:10

\\&quot;Il n\'y a pas de probl&egrave;me, il n\'y a que des solutions\\&quot;

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

Plus d'informations
il y a 16 ans 1 mois #6030 par Laurent Dardenne
TimCruz écrit:

mais sans résultats...

En consultant le SDK, je suis tombé sur Working with Delegate Access : \&quot;...
Users who have owner rights on a shared mailbox can open the mailbox and act as the owner.
...\&quot;
Ce qui laisse supposer qu'il faille procéder à une configuration.
TimCruz écrit:

Pourriez vous m'aider s'il vous plait.

Tu as fait la moitié du chemin, là il n'y a qu'un expert Exchange, ou un développeur Exchange, qui pourra de donner les dernières infos, par exemple ici ou .
En recherchant Exchange Web Services create calendar, tu peux aussi ajouter C# en début de requête.

Essaie déjà de te connecter sur le compte d'un autre user. Pour l'autre pb c'est peut être une question d'URI...

[edit]
Voir ce forum social.technet.microsoft.com/forums/en-U...changesvrdevelopment

Message édité par: Laurent Dardenne, à: 26/01/10 15:42

Tutoriels PowerShell

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

Plus d'informations
il y a 16 ans 1 mois #6043 par TimCruz
Réponse de TimCruz sur le sujet Re:Créer un rendez vous Outlook
Je pense avoir trouvé un début de réponse. Lors de la détermination du parent folder, je rajoute les 2 lignes de code suivante :

[code:1]$parentfolderid.Mailbox = New-Object EWS.EmailAddressType
$parentfolderid.Mailbox.EmailAddress = 'BALQUEJEVEUXANALYSER'
[/code:1]

Toutefois, il faut avoir une délégation sur la BAL concernée. Peut-être existe-t-il un moyen de consulter toutes les bal avec un compte spécifique de Exchange?


Je me suis aidé de ce lien : msdn.microsoft.com/fr-fr/library/bb856541%28en-us%29.aspx

\\&quot;Il n\'y a pas de probl&egrave;me, il n\'y a que des solutions\\&quot;

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

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