lab-resource-manager 1.1.0

GPU and room resource management system with Google Calendar and Slack integration
Documentation
# ユーザーガイド

このガイドは、導入された lab-resource-manager システムを使用するユーザー向けのドキュメントです。

## Slackコマンド

### 自分のメールアドレスを登録

```text
/register-calendar <your-email@example.com>
```

このコマンドは、デフォルト実装(Google Calendar)とSlackユーザーを連携し、Google Calendarへのアクセス権を付与します。
普段Google Calendarで使用しているGmailアドレスを登録することを推奨します。

**登録すると:**

- Google Calendarのリソース(GPUサーバー、会議室など)への編集権限が自動的に付与されます
- 予約通知時にSlackでメンションされるようになります

**例:**

```text
/register-calendar alice@example.com
```

## リソース予約の構文

### デバイス指定記法

GPUサーバーなどのリソースを予約する際、カレンダーのイベントタイトルで使用するデバイスを指定できます。

#### 基本的な指定方法

- **単一デバイス**: `0` → デバイス0
- **範囲指定**: `0-2` → デバイス0, 1, 2
- **複数指定**: `0,2,5` → デバイス0, 2, 5
- **混在指定**: `0-1,6-7` → デバイス0, 1, 6, 7

#### 予約例

Google Calendarイベントのタイトルにデバイス指定を記載します:

```text
0-2
```

この場合、デバイス0, 1, 2が使用されます。

```text
0,3,5
```

この場合、デバイス0, 3, 5が使用されます。

**注意**: タイトルにはデバイス指定のみを記載してください。説明文が必要な場合は、イベントの説明欄(description)に記載することを推奨します。

### 会議室の予約

会議室を予約する場合は、デバイス指定は不要です。通常通りGoogle Calendarにイベントを作成してください。

```text
研究室ミーティング
```

## 通知について

システムは定期的にGoogle Calendarのリソース使用状況を監視し、変更を検知すると設定されたSlackチャンネルに通知を送信します。

### 通知の内容

通知には以下の情報が含まれます:

- 使用者の名前(メールアドレスを登録している場合はSlackでメンション付き)
- リソース名(GPUサーバー名、会議室名など)
- 使用デバイス(GPUの場合)
- 使用期間

メールアドレスを `/register-calendar` コマンドで登録すると、自分の予約時に自動的にSlackでメンションされるため、
通知を見逃しにくくなります。