Office365カレンダーフォルダーへのプルサブスクリプションを操作しているときErrorReadEventsFailed
に、SendNotification
リクエストに多くのメッセージが表示されます。このエラーは基本的に、サブスクリプションが見つからなくなり、サーバーが新しい通知を予期しないことを意味します。
Microsoftが推奨するエラー処理を確認すると、解決策はAutodiscoverを使用してExternalEwsUrlまたはEwsPartnerUrlを再検出し、新しいサブスクリプションを作成することです。
Office365では、OAuth2サービスアカウントの組み合わせではAutoDiscoveryサービスがほぼ不可能に見えるためhttps://outlook.office365.com/EWS/Exchange.asmx
、メインのEWSエンドポイントとして使用しています。
ただし、特定のカレンダーフォルダーの新しいサブスクリプションを作成しようとすると、一般的な500 ErrorNoRespondingCASInDestinationSite
エラーが発生し続けます。
宛先サイトのどのクライアントアクセスサーバーも要求を処理できなかったため、ExchangeWebサービスは現在この要求に使用できません。
奇妙な部分は、これが初期ErrorReadEventsFailed
エラーを受け取った直後にのみ発生することです。たとえば30秒以内に再試行すると、リクエストは問題なく通過します。
調査を行った結果、ほとんどX-AnchorMailbox
のユーザーは、サービスアカウントが偽装したいユーザーに対してヘッダーが適切に設定されていることを確認することが役立つように思われました。このヘッダーを再確認しましたが、実際に再サブスクライブのリクエストに沿って送信されています。
この問題は、指数バックオフソリューションによって、または要求が完了するまでX回再試行することで解決できる場合があります。サブスクリプションが「失われる」と、O365サービスはExchangeサーバーのDNSを変更するのに時間がかかるように思われます(私が考えることができるのはそれだけです)。
どんな助けでも大歓迎です!