行動予定表(action_plan_legs)から XO 仕様の PUSH ペイロードを組み立てて表示するモックです。
初期表示は 2026-07-31 / JA77KC。日付・機番を変えて /api/plans/full の実データから再生成できます。
実際の送信は行いません(Vista へは 1 バイトも飛びません)。AUTH_TOKEN / OPERATOR_ID も未発行のためプレースホルダです。
仕様と論点は スケジュールPUSH配信 — 技術論点の壁打ち を参照。
PUSHしたもの(HTTPリクエスト全文)
body がそのまま XO 側の受信内容になります。
変換の内訳
行動予定表の値 → XO フィールドへの対応(時刻は JST(+9) → epoch ms(UTC))。
配信対象外の leg 黙って落とさない
仮登録・空港/時刻未確定・キャンセル等で今回のペイロードに含めなかったもの。
このモックが使っている変換ルール
実装前のたたき台。先方回答で変わる箇所は 暫定。
- id:
mcj-leg-<action_plan_legs.id>。leg は物理削除されるため、実装時は送信済みID台帳が別途必要(論点①)。
- departT / arriveT:
flight_date + HH:MM を JST(+9・DST無し)として epoch ms 化。到着 ≤ 出発なら到着日を +1日(日跨ぎ)。
- created / modified:
created_at / updated_at(JST文字列)を同様に epoch ms 化。
- 配信対象:
is_active=1 かつ visibility が visible / done、is_tentative=0、dep/arr が4文字ICAO、時刻が HH:MM のもののみ(論点④⑦)。
- deleted: 生成分は常に
false。キャンセル便(cnl_status='cancelled')を deleted:true で送るかは先方確認待ち(論点①)。
- disposition 暫定: 先方コード体系が未入手のため、
flight_purpose から下表で仮変換。
- passengers 暫定: 数値PAX列が無いため、空輸(PF系)/試験(PT)は 0、それ以外は 0 を仮置き(論点⑥)。
先方(Vista)確認待ち: disposition コード定義一覧 / passengers の必須可否 / キャンセル便の扱い / 配信頻度・対象期間 / tail 表記フォーマット。