2010-11-19 22 views
6

J'essaie de jouer avec Exchange afin d'intégrer un système de réservation de chambre avec elle.Exchange Web Services - Créer un rendez-vous avec la ressource, mais les participants ne peuvent pas voir la ressource

J'ai créé une boîte aux lettres de salle et l'ai configurée pour qu'elle accepte automatiquement les demandes de rendez-vous.

Lors de la création d'un rendez-vous en tant qu'utilisateur standard, je peux ajouter la pièce en tant que ressource et sa disponibilité s'affichera. Si je le livre alors il livre avec succès.

J'ai créé un rendez-vous via Exchange Web Services avec room comme ressource. La ressource a été réservée avec succès (comme confirmé lors de son ouverture en tant que délégué de la salle) mais elle n'apparaît pas sur la réunion comme vue par l'un des participants.

 var service = new ExchangeService(ExchangeVersion.Exchange2007_SP1) { 
      Credentials = 
       new NetworkCredential("username", "password", "domain"), 
      Url = new Uri("https://myexchangeserver.co.uk/EWS/Exchange.asmx") 
     }; 

     var appointment = new Appointment(service) 
           { 
            Subject = "Created by ExchangeTest app", 
            Body = "Some body text....", 
            Start = startTime, 
            End = endTime 
           }; 
     appointment.RequiredAttendees.Add("[email protected]"); 
     appointment.Resources.Add("[email protected]"); 
     appointment.Save(SendInvitationsMode.SendOnlyToAll); 

Vous ne savez pas pourquoi il ne s'affiche pas comme si je l'avais réservé manuellement? En guise de remarque, je ne suis pas en mesure d'afficher le calendrier de cette salle en tant qu'utilisateur autre qu'un délégué; il dit que le dossier ne peut pas être trouvé.

Répondre

0

Peut-être que vous pourriez essayer de créer manuellement la réunion, puis vous lier à elle. Ce faisant, vous devriez être capable de parcourir l'objet et de vérifier quelles sont les différences avec les vôtres?

var appointment = Appointment.Bind(service, new ItemId("yourmeetingid")); 
1

Je ne suis pas totalement sûr de votre problème principal.

A propos de la remarque cependant:

Avez-vous essayé de chercher vos rendez-vous?

FolderId folder = new FolderId(WellknownFolderName.Calendar,"[email protected]"); 
CalendarView calendarView = new CalendarView(startDate, endDate); 

foreach (Appointment exchangeAppointment in service.FindAppointments(folder, calendarView)) 
{ 
    // Here you should be able to get access on the appointments at the specified folder & address 
}