Appearance
ADM-001-1 pworld_archive_run(手動取得の起動)
概要
P-WORLD メールの手動バッチ取得を起動する。日付範囲・取得上限を受け取り、非同期ジョブとして WP-Cron に委譲する。
POST パラメータ(主なもの)
| フィールド | 必須 | 型・制約 | 説明 |
|---|---|---|---|
action | ○ | 文字列 | pworld_archive_run |
nonce | ○ | 文字列 | 上記アクション名で発行した nonce |
date_from | 任意 | Y-m-d 形式または空 | 取得開始日。空は制約なし扱い |
date_to | 任意 | Y-m-d 形式または空 | 取得終了日。空は制約なし扱い |
limit | 任意 | 整数文字列 | 1〜500。未指定時は 5(DEFAULT_MANUAL_RUN_LIMIT)。整数でない文字列はエラー |
wp_optionsテーブルからデータ取得
ジョブ状態・クールダウン判定は WordPress の option / transient ストアを参照する。
| カラム名 | where | 検索値 |
|---|---|---|
option_name | ○ | job_id(状態参照時) |
option_value |
成功時 data(代表)
| 論理名 | 物理名 | 型 |
|---|---|---|
| 実行状態 | status | string(固定値 started) |
| ジョブ ID | job_id | string(wp_generate_uuid4 等の UUID) |
| メッセージ | message | string(PworldArchiveCopy::PWORLD_ARCHIVE_RUN_STARTED) |
失敗・ブロック(success: false の data に含み得るキー)
| 条件 | 備考 |
|---|---|
| クールダウン中 | cooldown_seconds が付く。メッセージに残時間の表示用文言 |
| MySQL ユーザー定義ロック取得失敗 / 別処理実行中 | PworldArchiveCopy::PWORLD_ARCHIVE_RUN_IN_PROGRESS 等 |
| ジョブが実行中(非 stale) | error_code: 'run_in_progress'、started_at 等が付く場合あり |
| 日付不正・順序不正 | PworldArchiveCopy::PWORLD_ARCHIVE_DATE_INVALID / PworldArchiveCopy::PWORLD_ARCHIVE_DATE_FROM_AFTER_UNTIL |
limit 範囲外 | PworldArchiveCopy::PWORLD_ARCHIVE_LIMIT_OUT_OF_RANGE |
wp_schedule_single_event 失敗 | ジョブ状態を error にしたうえで PworldArchiveCopy::PWORLD_ARCHIVE_RUN_ERROR |
補足: 実行中ジョブが stale と判定された場合は、新規実行前に自動 reset されうる(ログのみ)。