Microsoft Graph APIをnode.jsから使う

会社でOutlookを使っている。毎回会議室を取るのは手間である。自動化したい。MS Graph APIが使えそう。 という事でGraph APIのチュートリアルをやってみた。

Application Registration Portalからアプリを登録する

MSアカウントがない場合、作成する。
アプリ名をNode.js Graph Tutorialにして登録する。
のちに必要になるため、Application Idを保存しておく。 Generate New Passwordでパスワードを作成する。
パスワードも保存しておく。このパスワードはこの時しか表示されないので注意。
下の方のAdd Platformからプラットフォームを追加する。webを選択。
Redirect URLsに以下を入れる。

http://localhost:3000/auth/callback

これで、OK。下の方のSAVEをクリックして保存する。

アプリの雛形を落とす

MSの公式チュートリアルを終わらせたレポジトリを落としてくる。

git clone git@github.com:ttlg/graph-api-tutorial.git
cd graph-api-tutorial
npm install

重要なライブラリは、 passport-azure-adsimple-oauth2@microsoft/microsoft-graph-client あたり 。

.envの以下のところに先ほど保存しておいたIDとパスワードを当て込む

OAUTH_APP_ID=
OAUTH_APP_PASSWORD=
npm start

これでhttp://localhost:3000にアクセスすれば、Outlookアカウントにログインし、カレンダーの情報をみるところまでみれるはず。ただタイムゾーンの関係か表示される時間帯はちょっとおかしい。 コードの説明は時間がないので、チュートリアルに譲ることとする。

ところで、hbsってなんだ…