部屋予約システムを Exchange に統合するために、Exchange をいじってみました。
会議室メールボックスを作成し、予約リクエストを自動的に受け入れるように設定しました。
標準ユーザーとして予定を作成すると、部屋をリソースとして追加でき、その空室状況が表示されます。予約すると、正常に予約されます。
部屋をリソースとして Exchange Web サービス経由で予定を作成しました。リソースは正常に予約されましたが (会議室の代理人として開いたときに確認されたように)、出席者のいずれかが表示する会議には表示されません。
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("AnAttendee@myexchangeserver.co.uk");
appointment.Resources.Add("ARoom@myexchangeserver.co.uk");
appointment.Save(SendInvitationsMode.SendOnlyToAll);
手動で予約した場合と同じように表示されない理由について何か考えはありますか?
補足として、この部屋のカレンダーを代理人以外のユーザーとして実際に表示することはできません。フォルダが見つからないと表示されます。