2

ビジネスを Kerio Connect から MS Exchange 2010 に移行しています (理由は聞かないでください)。そこで、CalDAV によって Kerio からイベントとタスクを取得し、EWS (Exchange Web Services) を使用して Exchange でそれらを再作成するコードをいくつか書きました。

オーガナイザーと参加者の間のリンクが壊れているという 1 つのことを除いて、すべて正常に機能します。これは、参加者が会議を編集できることを意味しますが、これは彼が行うべきではなく、主催者が会議時間を変更した場合、参加者は更新を取得しません。

イベントを作成するときに Outlook 2011 と iCal が何をするかを確認しました。同じ手順を実行しますが、1 つの重要な点を除いて、Exchange で再作成するイベントは、参加者が既に招待を受け入れたイベントであり、招待を送信したくないということです。移行を開始するとき。

これは、EWS でイベントを作成するためのリクエストです。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Header>
    <ns2:MailboxCulture xmlns:ns2="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ns3="http://schemas.microsoft.com/exchange/services/2006/messages">en-US</ns2:MailboxCulture>
    <ns2:RequestServerVersion xmlns:ns2="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ns3="http://schemas.microsoft.com/exchange/services/2006/messages" Version="Exchange2010_SP1" />
    <ns2:TimeZoneContext xmlns:ns2="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ns3="http://schemas.microsoft.com/exchange/services/2006/messages">
      <ns2:TimeZoneDefinition Id="Eastern Standard Time" />
    </ns2:TimeZoneContext>
  </S:Header>
  <S:Body>
    <ns3:CreateItem xmlns:ns2="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ns3="http://schemas.microsoft.com/exchange/services/2006/messages" SendMeetingInvitations="SendToAllAndSaveCopy">
      <ns3:SavedItemFolderId>
        <ns2:FolderId Id="AAMkADZkZDFkMjcwLTM5YWItNGRiYy05YzA0LWZhZmM3MjBkNDM1ZgAuAAAAAAAQdcJHRof+QosJDrhZyY00AQCw+XICdccgRJNrvNFaYvpgAAAAevvIAAA=" />
      </ns3:SavedItemFolderId>
      <ns3:Items>
        <ns2:CalendarItem>
          <ns2:Subject>Test prob -&gt; probert</ns2:Subject>
          <ns2:Body BodyType="Text"> 
          </ns2:Body>
          <ns2:Importance>Normal</ns2:Importance>
          <ns2:UID>3CB0FF7D-63F0-47A0-80B6-3B3131E7BCF4</ns2:UID>
          <ns2:Start>2012-12-21T17:00:00</ns2:Start>
          <ns2:End>2012-12-21T18:30:00</ns2:End>
          <ns2:IsAllDayEvent>false</ns2:IsAllDayEvent>
          <ns2:Location>salle3219_6</ns2:Location>
          <ns2:RequiredAttendees>
            <ns2:Attendee>
              <ns2:Mailbox>
                <ns2:Name>Pascal Robert</ns2:Name>
                <ns2:EmailAddress>probert@mydomain.com</ns2:EmailAddress>
              </ns2:Mailbox>
              <ns2:ResponseType>Accept</ns2:ResponseType>
            </ns2:Attendee>
          </ns2:RequiredAttendees>
          <ns2:OptionalAttendees>
            <ns2:Attendee>
              <ns2:Mailbox>
                <ns2:Name>salle3219_6</ns2:Name>
                <ns2:EmailAddress>salle3219_6@mydomain.com</ns2:EmailAddress>
              </ns2:Mailbox>
              <ns2:ResponseType>Accept</ns2:ResponseType>
            </ns2:Attendee>
          </ns2:OptionalAttendees>
        </ns2:CalendarItem>
      </ns3:Items>
    </ns3:CreateItem>
  </S:Body>

4

0 に答える 0