0

ユーザーが出席者と会議室が利用可能な会議の時間を選択できるように、カレンダーイベントを取得しようとしています。Office365カレンダーAPIを使用して会議室のビジー時間をすべて取得できない

我々は、Outlookの予定表のRESTのAPI V2を使用している - findMeetingTimes: https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations#FindMeetingTimes

要求は、ほぼすべてのイベントを返します。 何らかの理由で、要求を実行するユーザーによって作成されたイベントは、応答に含まれません。会議室または出席者は、カレンダーに予定があるにもかかわらず、無料であるように見えます。

ここには、出席者としての会議室のみのサンプルリクエストがあります。会議室とユーザーの両方にイベントを要求するときも同じ問題が発生します。

https://outlook.office.com/api/v2.0/users('[email protected]')/findmeetingtimes 

{ 
    "Attendees": [{ 
     "Type": "Required", 
     "EmailAddress": { 
      "Name": "Palo Alto meeting room", 
      "Address": "[email protected]" 
     } 
    }], 
    "TimeConstraint": { 
     "Timeslots": [{ 
      "Start": { 
       "DateTime": "2017-02-11T22:00:00", 
       "TimeZone": "GMT Standard Time" 
      }, 
      "End": { 
       "DateTime": "2017-04-29T20:59:59", 
       "TimeZone": "GMT Standard Time" 
      } 
     }] 
    }, 
    "LocationConstraint": { 
     "IsRequired": "false", 
     "SuggestLocation": "false", 
     "Locations": [{ 
      "ResolveAvailability": "false", 
      "DisplayName": "Palo Alto meeting room", 
      "LocationEmailAddress": "[email protected]" 
     }] 
    }, 
    "MinimumAttendeePercentage": "0", 
    "MaxCandidates": "1000", 
    "ReturnSuggestionReasons": "true" 
} 

ご協力いただければ幸いです。

+0

私は会議室でこの動作を再現できませんでしたので、ここに不足している詳細があると考えています。ユーザーは会議室のカレンダーでイベントをどのように作成しますか?分かりやすくするために、私は自分のユーザーとOWAにログインし、カレンダーにイベントを作成し(午前10時から午後11時まで)、場所としてconfルームを追加しました。私はconfの部屋のカレンダーから受諾を取り戻しました。その後同じ日に午前9時から午後12時の間の時間制限をかけて、同じユーザーとしてAPIリクエストを作成しました。私は午前10時から午前11時の間に利用可能なスロットを返さなかった。 –

+0

@JasonJohnstonこれをお探しいただきありがとうございます!私は明確にします。別のユーザがconfルームを場所としてイベントを作成すると、イベントの時刻がビジーとして返されます。しかし、イベントを作成した同じユーザーがミーティングルームの可用性を要求すると、空き時間もビジー時間も返されません。ただ欠落しています。部屋が混雑していて、この情報が欠落していることを示したいと思います。それは明らかです。 – user2899845

答えて

1

これはわかりやすく、私が最初に覚えていた重要なポイントです。あなたが持っている問題は、認証されたユーザーが会議室を場所として使用して予約した予定が、応答FindMeetingTimesに表示されます。 (最初は、Freeと表示されていたとお考えでした!)

これは正しい動作です。 FindMeetingTimesは、空き時間情報の網羅的なリストを返すことを意図していません。むしろ、潜在的な会議時間を見つけることです!リストは主催者(認証済みのユーザー)と指定された出席者の可用性に基づいています。オーガナイザーとルームの両方がビジー状態であるため(オーガナイザーが予約済みであるため)、タイムスロットは表示されません。要求を別のユーザーとして作成すると、それらは主催者であり、その時点で空き状態であるため、スロットは可能な時間として表示されます。

私はあなたがしようとしていることを誤解するかもしれませんが、これはあなたのために働くはずです。可能性として返された時代だけを提示している限り、紛争の可能性はありません。

+0

他の出席者を含むconfルームのイベントをユーザーが作成していても、その時間にユーザーが空いていても、confルームは空きまたは忙しいと表示されず、欠落して表示されます。この特定のケースでのみ発生するので、この動作は混乱し、このケースではビジー状態のイベントを返す場合、APIによってBUSY時間も表示され、より豊かな機能が可能になるため、やや残念です。いずれにせよ、私はAPIが無料の時間だけを提示することを意図していることを理解しています。あなたの助けをありがとう! – user2899845

関連する問題