<!-- https://unlockos.io/ja/manual/key-display -->

# アクセスキー表示 ヘルプ

## 概要

アクセスキーモーダルでは、設定に応じて **QRコード**、**PINコード**、**リモート解錠ボタン** の3種類のうち、有効になっているものが表示されます。どの種類が表示されるかは、施設オーナーが行った設定によって制御されます。

- **ウォークイン（当日チェックイン）**: 「チェックイン設定」（`checkin_configurations`）の `enabled_key_types` で制御
- **事前予約チェックイン**: 「ルームプランマッピング」（`room_plan_mappings`）の `enabled_key_types` で制御

リモート解錠ボタンは、チェックイン完了モーダル・鍵情報モーダル・チェックアウト完了モーダルの3か所に表示されます。

---

## 詳細機能

## 機能1: QRコード表示

QRコードが有効な場合（`enabled_key_types` に `"qr"` が含まれている場合）、モーダル上部にQRコードが表示されます。

- 施設のQRリーダーにかざして入室します
- 有効期限が切れるとグレーアウト表示になります
- 時間制プランでは期限切れ後に自動または手動で更新できます

QRコードの有効期限については [QR鍵の期限切れについて](key-expiration.md) を参照してください。

## 機能2: PINコード表示

PINコードが有効な場合（`enabled_key_types` に `"pin"` が含まれている場合）、4〜10桁の数字がブロック形式で大きく表示されます。

| 桁数 | 表示形式 |
|------|---------|
| 4桁 | 2桁 + 2桁（スペース区切り） |
| 6桁 | 3桁 + 3桁 |
| 8桁 | 4桁 + 4桁 |
| 10桁 | 5桁 + 5桁 |

### PINコードのコピー

「コピー」ボタンをタップするとクリップボードにコピーされます。コピー後はボタンが緑のチェックマークに変わり、コピー完了を確認できます。有効期限が切れた場合はコピーできません。

### PINコードの使い方

1. モーダルに表示されているPINコードを確認する
2. ドアのキーパッドに数字を入力する
3. ドアが解錠される

### PINコードが表示されない場合

以下の理由でPINコードが表示されないことがあります。

- **施設設定でPINが無効**: 施設オーナーが `enabled_key_types` に `"pin"` を含めていない
- **ウォークイン時間制チェックイン（keyType=1）**: 時間課金プランのウォークインチェックインでは、KEYVOXはオフラインQRコード（keyType=1）を発行します。このタイプはPINを持ちません。PIN表示が必要な場合は、施設オーナーに設定を確認してください

## 機能3: リモート解錠ボタン

リモート解錠が有効な場合（`enabled_key_types` に `"remote_unlock"` が含まれている場合）、モーダル下部にリモート解錠ボタンが表示されます。

アプリから直接ドアを解錠できる機能です。ドアの前でスマートフォンをかざす必要なく、画面上のボタン一つで施錠されたドアを開けられます。

このボタンは以下の3つのモーダルに表示されます。

- チェックイン完了モーダル
- 鍵情報モーダル（チェックイン中に「鍵を見る」をタップした画面）
- チェックアウト完了モーダル

### ボタンの状態と動作

| 状態 | 表示 | アイコン |
|------|------|---------|
| 待機中 | 「解錠する」 | 錠前アイコン（青） |
| 解錠中 | 「解錠中...」 | 回転スピナー |
| 成功 | 「解錠リクエストを送信しました」 | 緑のチェックマーク |
| エラー | 「解錠に失敗しました」 | 錠前アイコン（赤） |
| クールダウン | 「解錠する (Xs)」 | 錠前アイコン（薄い） |

成功時に表示される「解錠リクエストを送信しました」は、リクエストがKEYVOXのクラウドへ到達したことを示します。ドアの物理的な解錠はKEYVOX側で処理されます。

### 操作手順

1. 「解錠する」ボタンをタップする
2. 「解錠中...」とスピナーが表示されるまで待つ（通常1〜3秒）
3. 「解錠リクエストを送信しました」と緑のチェックマークが表示されたらドアが開く
4. 3秒後に自動的にクールダウン状態へ移行する（10秒間は再操作不可）
5. カウントダウン終了後、ボタンが再び操作可能になる

### クールダウンについて

解錠成功またはエラー後は10秒間のクールダウンが発生します。これは誤操作や連続操作による不要な解錠を防ぐための設計です。カウントダウン中は「解錠する (9s)」のように残り秒数が表示されます。

---

## 施設オーナー向け設定

### ウォークイン用の設定（checkin_configurations）

ウォークインチェックインでゲストに表示するキーの種類は、「チェックイン設定」画面の `enabled_key_types` で設定します。

| 値 | 説明 |
|----|------|
| `"qr"` | QRコードを表示する |
| `"pin"` | PINコードを表示する |
| `"remote_unlock"` | リモート解錠ボタンを表示する |

#### 設定例

```json
["qr"]
```
従来の設定（QRコードのみ）。後方互換性のためデフォルト値。

```json
["qr", "pin"]
```
QRコードとPINコードの両方を表示。

```json
["qr", "remote_unlock"]
```
QRコードとリモート解錠ボタンを表示。

```json
["qr", "pin", "remote_unlock"]
```
3種類すべてを表示。

### 事前予約用の設定（room_plan_mappings）

事前予約のチェックインでゲストに表示するキーの種類は、「ルームプランマッピング」でプランごとに設定します。チェックイン設定と同じ `enabled_key_types` の値を使用します。

設定場所: ルーム管理 > 対象ルーム > 「プランとのマッピング」セクション > 各プランの `enabled_key_types`

### リモート解錠の前提条件

リモート解錠を利用するには、以下の設定が必要です。

1. **KEYVOXアカウント連携**: ロック接続ページでKEYVOXとの連携を完了する
2. **解錠ロックIDの設定**: ロック接続ページで、各KEYVOXユニットに対して「解錠ロック」を指定する

ロックIDの設定方法は [ロック接続](lock-connection.md) を参照してください。

`lock_id` が未設定の場合、リモート解錠は「Lock ID not found」エラーになります。

---

## よくある質問

### Q: PINコードが表示されません
以下を確認してください。

1. **施設設定を確認**: 施設オーナーに `enabled_key_types` に `"pin"` が含まれているか確認してもらう
2. **チェックインの種類を確認**: 時間課金プランのウォークインチェックインは keyType=1（オフラインQR）のため、PINが発行されません。宿泊プランまたは1日定額プランでは keyType=0 が使用されPINが発行されます
3. **QRコードを使用**: QRコードでの入室を試みてください

### Q: リモート解錠ボタンが表示されません
施設オーナーが `enabled_key_types` に `"remote_unlock"` を追加する必要があります。ウォークインの場合はチェックイン設定、事前予約の場合はルームプランマッピングを確認してください。

### Q: リモート解錠を押してもドアが開きません
以下を確認してください。

- インターネット接続が安定しているか確認する
- KEYVOXのロック設備が正常に動作しているか確認する（施設に問い合わせる）
- ロック接続ページで解錠ロックIDが正しく設定されているか確認する（施設オーナー向け）
- KEYVOXアカウント連携が有効かどうか確認する（施設オーナー向け）

### Q: 「取得できる鍵はありません」と表示されました
コネクターが `enabled_key_types` で指定されたキー種別を提供できなかった場合に表示されます。施設オーナーに連絡し、チェックイン設定またはルームプランマッピングの `enabled_key_types` とKEYVOXの設定が合っているか確認してもらってください。

### Q: リモート解錠でエラーが表示されました
エラー後もクールダウン（10秒）が発生します。10秒後に再度お試しください。繰り返しエラーが発生する場合は施設に連絡してください。

### Q: QRコードとPINコードの両方が表示されているのはなぜですか？
施設オーナーが両方を有効にしているためです。どちらか使いやすい方を選んで入室してください。

---

## 関連ページ

- [QR鍵の期限切れについて](key-expiration.md)
- [チェックイン ヘルプ](guest-checkin.md)
- [ロック接続](lock-connection.md)
- [チェックイン設定](checkin-config-form.md)
