このプロジェクトは、Microsoft Graph API の Python SDK を利用して会議室の予約やユーザー情報の取得を行うアプリケーションです。
仮想環境を構築し、必要な環境変数を設定することで、簡単に動作させることができます。
主に以下のツールを使用します:
- VSCode or Codespaces
- Jupyter Notebook
主に以下の機能を提供します:
- 会議室の予約
- ユーザー情報の取得
- 会議室一覧の取得
- 空きスケジュールの取得
⚠️ 重要: Jupyter Notebook の出力結果を GitHub 上に上げないよう気を付けてください。
このプロジェクトは現状のまま提供されており、いかなる種類の保証もありません。
本プロジェクトを使用したことによる損害や問題について、作成者は一切の責任を負いません。
自己責任でご利用ください。
- Azure Portal Entra ID から
アプリの登録を行います APIのアクセス許可- アクセス許可の追加
- Microsoft Graph
- アプリケーションの許可(委任されたアクセス許可でも可)
Calendars.ReadWriteUser.Read.AllPlace.Read.All
- 上記に対して管理者の同意を与えます
- アプリケーションの許可(委任されたアクセス許可でも可)
GitHub のリポジトリで Create codespace on main を押してから環境が構築されるまで数分お待ちください。
環境変数の設定に進んでください
VSCode の場合はこちらを参照してください
以下の拡張機能をインストールしてください:
Python の仮想環境を作成します。以下のコマンドを実行してください:
python -m venv .venv仮想環境を有効化するには、以下のコマンドを使用します(OS に応じて選択してください):
- Windows:
source .venv/Scripts/activate - Linux:
chmod +x .venv/bin/activate source .venv/bin/activate
requirements.txt を使用して .venv 上に依存関係をインストールします:
pip install -r requirements.txtルートに .env ファイルを作成する
-
ルートの
.envファイルに環境変数を設定する
アプリの登録から、以下の値を取得して環境変数に設定します:- ディレクトリ (テナント) ID
- アプリケーション (クライアント) ID
- クライアント シークレット
テストに使用するユーザーと会議室の オブジェクト ID を設定します。
TENANT_ID=********-****-****-****-************
CLIENT_ID=********-****-****-****-************
CLIENT_SECRET=***********************
USER_ID=********-****-****-****-************
ROOM_ID=********-****-****-****-************
