2017-03-06 3 views
0

약속, 작업과 응용 프로그램의 작업을 Exchange 및 뒤로 동기화합니다.EWS가 아웃 알림을 사용하여 과거에 약속을 작성합니다.

는 EWS은 SendInvitationsMode ENUM은 SendInvitationsMode.SendToAllAndSaveCopy 또는 SendInvitationsMode.SendOnlyToAll 중 하나로 전달 전용 자원에서 약속 (필수 참석자 선택적 참석자) 캘린더를 보이고있다.

SendInvitationsMode enum을 SendInvitationsMode. SendToNone으로 설정하면 Organizer 일정에서만 약속이 저장됩니다.

샘플 코드

 Appointment meeting1 = new Appointment(service); 

     ImpersonatedUserId impersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, "organizer email"); 
     service.ImpersonatedUserId = impersonatedUserId; 
     meeting1.Subject = "Checking responses"; 
     meeting1.Body = "The purpose of this meeting is to check status."; 
     meeting1.Start = new DateTime(2017, 4,14, 12, 0, 0); 
     meeting1.End = meeting1.Start.AddHours(2); 
     meeting1.Location = "Conf Room"; 

     Attendee attendee = new Attendee(); 
     attendee.Address = "attendee email address"; 
     attendee.Name = "name"; 
     meeting1.RequiredAttendees.Add(attendee); 
     meeting1.Save(SendInvitationsMode.SendToNone); 

모든 참석자가 밖으로 이메일 알림을 해당 달력에서 볼 수있는 약속을 삽입하는 방법이 있나요? 과거 약속에 대한 통보를 보내는 것은 의미가 없습니다.

답변

0

API를 사용하여 주최자의 사서함에만 액세스 할 수 있도록 클라이언트 API를 사용 중입니다. 참석자 사서함에서 일을하고 싶다면 (참석자가 내부 또는 외부에있을 수 있으므로 일반 논리가 여기에서 실패 할 수 있음을 이해해야 함) 보안 컨텍스트를 변경해야합니다. 예를 들어 이끌이를 가장하여 특정 참석자를 가장합니다. 해당 참석자 및 업데이트 할 모든 참석자에 대한 모임을 수락하십시오.

다른 논리가 실패하면 참석자가 처음에 모임 응답을 수락했는지 거부했는지 여부를 고려해야합니다. 참석자는 서버가 아닌 상태/업데이트를 유지 관리하기 위해 각 모임마다 클라이언트까지 자체 Exchange Store 항목을 유지 관리합니다. 유일한 예외는 자동 수락이 사용 가능하지만 초대/업데이트/취소 처리를 관리하는 사서함 도우미가있는 방 사서함입니다.

관련 문제