コマンド・ボタン仕様
ボタン(🔓鍵取り/🔐鍵返却)
/send-button エンドポイントを叩くと、鍵管理チャンネル(KEY_BUTTON_CHANNEL_ID)に以下のメッセージが投稿されます。
- 🔓 鍵取り (現在時刻)(
custom_id: take_key) — 現在時刻で鍵取りを記録 - 🔐 鍵返却 (現在時刻)(
custom_id: return_key) — 現在時刻で鍵返却を記録。貸出記録がない状態で押すとエラーメッセージを返す
続けて、常設の「現在の貸し出しステータス」メッセージが投稿(以後は編集)されます。
/key
現在の貸出状況を見て、借りていれば返却、借りていなければ貸出を自動判定して現在時刻で記録します。ボタンの「今どちらを押せばいいか迷う」を解消する1コマンド版です。
引数はありません。
/backdate
過去の打刻を遡って記録します。打刻を忘れた場合のリカバリ用です。
| オプション | 型 | 必須 | 説明 |
|---|---|---|---|
action | 選択式 | ✅ | 🔓 鍵取り または 🔐 鍵返却 |
time | 文字列 | ✅ | 13:00 または 1300 のような時刻 |
day | 文字列 | - | 0809 のような日付(月日のみ、年は自動解決)。省略時は本日 |
- 指定日時は 本日から過去1週間以内 でなければエラーになります(未来日時も不可)。
鍵返却を選ぶ場合、直近に有効な貸出記録が存在しないとエラーになります。- 記録すると、鍵取りの場合は返却期限アラートもその時刻を起点にスケジュールされます(すでに期限を過ぎていれば即座にアラートが送られます)。
/backdate-fix
直近の鍵取り・鍵返却の 打刻時刻のみ を修正します。日付は変更されません。
| オプション | 型 | 必須 | 説明 |
|---|---|---|---|
action | 選択式 | ✅ | 🔓 鍵取り または 🔐 鍵返却(どちらの直近記録を修正するか) |
time | 文字列 | ✅ | 修正後の時刻。13:00 または 1300 |
年別ログシートの該当行と、対応する月別シートのセルの両方が更新されます。対象が見つからない場合(過去1年以内に記録がない等)はエラーになります。
共通の入力形式
- 時刻は数字4桁(コロンの有無は問わない)。
13:00/1300いずれもOK、930のような3桁は不可 - 日付は
MMDDの数字4桁(例:0809= 8月9日)。年は「今日または過去1年以内で最も新しい候補」に自動解決される
エンドポイント(管理用)
これらはDiscordからではなく、デプロイ後の初期設定やメンテナンス用に直接HTTPで叩くエンドポイントです。
| エンドポイント | メソッド | 用途 |
|---|---|---|
/register-command | POST | /key /backdate /backdate-fix をDiscordのグローバルコマンドとして登録(PUTによる完全上書きのため、削除したコマンドも自動的に反映される) |
/send-button | POST | ボタンメッセージとステータスメッセージを投稿 |
TIP
グローバルコマンドの反映には最大1時間ほどかかることがあります。