Slide 1

Slide 1 text

Microroft Graph の変更通知を Microsoft Flow で受け取ってみる 篠原敬志 (@karamem0)

Slide 2

Slide 2 text

自己紹介 2 Name 篠原敬志 (Takashi Shinohara) Company アバナード株式会社 シニアコンサルタント Award Microsoft MVP for Office Development (2018-) Twitter @karamem0 Blog からめもぶろぐ。 (http://blog.karamem0.jp) Bio 俺たちは雰囲気で OAuth をやっている

Slide 3

Slide 3 text

アバナードについて 3 アバナードは、2000 年にアクセンチュアとマイクロソフトの合弁企 業として誕生しました。アクセンチュアが持つあらゆる業界に精通し た知識とマイクロソフトのソリューションを卓越したスキルで融合し、 創業以来 1,200 社以上の企業のデジタル化を支援してきました。

Slide 4

Slide 4 text

本日は (以下、言い訳) 4 本来であれば「労働時間トラッキング ソリューション開発テンプレー トについて」というテーマで LT をする予定でした。 ところが GitHub で提供されているコードがどうしても動かすことが できませんでした (ローカルでは何とか動いたのですが Azure Web Apps に上げるとエラーが出まくる) 。肝心のデモができなさそうだっ たので、LT のテーマとしては諦めざるを得ませんでした。 内容はとても面白そうなので是非触ってみてください。そして Azure で動かすことができたら教えてください。

Slide 5

Slide 5 text

ということで 今日はまったく別の話をします

Slide 6

Slide 6 text

Microroft Graph の変更通知

Slide 7

Slide 7 text

Microsoft Graph における変更通知 7 Pull 型: デルタ クエリ ある一定期間からの変更を取得するリクエストを投げる 非リアルタイム (スケジュール実行) Push 型: サブスクリプション (Webhook) 事前に登録した URL に対して Graph からリクエストが投げられる リアルタイム 今日はこちらの話をします!

Slide 8

Slide 8 text

サブスクリプション リソースの種類 Outlook メッセージ Outlook イベント Outlook 個人用連絡先 ユーザー グループ Office 365 グループ会話 ユーザーの個人用 OneDrive 上のコンテンツ OneDrive for Business 上のコンテンツ セキュリティの警告 8 今日はこちらの話をします!

Slide 9

Slide 9 text

作成する Microsoft Flow の種類 GraphSubscribeWebhook Graph からのリクエストを受け取る Flow 変更されたユーザーの情報をメール通知する GraphCreateWebhook Graph にサブスクリプションを登録するための Flow 通常 1 回だけ実行 GraphUpdateWebhook Graph に登録したサブスクリプションの有効期間を延長する Flow タイマーで毎日 1 回実行 9

Slide 10

Slide 10 text

DEMO

Slide 11

Slide 11 text

注意点 ユーザーの「何」が変更されたかはわからない Webhook で渡されるのは ID のみ 何も変更されていなくても通知が来ることがある (ログイン?) ユーザーの「削除」は変更として扱われる 削除されたユーザーとしてマークされるだけなので変更になる 完全に削除されたときに「削除」となる 11

Slide 12

Slide 12 text

ありがとうございました