メインコンテンツへ

プロトコルバージョン変更履歴

このページは Tensor Cloud 蓄電池最適化プロトコルの変更を記録します。ここに記載されたバージョンは AsyncAPI 仕様info.version および EMS が各メッセージに含める schema_version フィールドに反映されます。

バージョニングは semver 形式(MAJOR.MINOR.PATCH)に従います。

  • MAJOR - トピック構造、ペイロード形状、必須フィールドへの後方非互換変更。既存のインテグレーションがコード変更なしに対応できないもの。
  • MINOR - 追加的な変更(新規フィールド、新規条件付きバリデーション、新規挙動)で、保証は強化されるが旧バージョンのクライアントでも読み取り可能。Tensor Cloud は旧マイナーリビジョンで送信されたメッセージとの後方互換性を維持します。
  • PATCH - ドキュメントの明確化、例の修正、ペイロードに影響しない変更。

2.3.0 - 2026-06-16

アセスメントⅡ用テレメトリ:

  • 瞬時電力トピック(dt/{siteId}/{gatewayId}/{metric}/power)が、オフラインの一次調整力アセスメントⅡデータの送信チャネルとして文書化されました。一次調整力を提供するリソースは、すべての一次調整力約定コマについて、meter_export_ac/meter_import_ac(受電点参入)または battery_discharge_ac/battery_charge_ac(機器点参入)で1秒解像度の供出電力を公開する必要があります。Tensor CloudはこのデータからTSOのアセスメントⅡ様式(様式35)を作成し、アグリゲーターに代わって提出します。詳細は連携ガイドの「アセスメントⅡ用テレメトリ」を参照してください。
  • AsyncAPI仕様の powerTelemetry チャネルの説明を、このアセスメントⅡ用途を示すように更新しました。
  • PowerInstant.measurement_value に2つの任意フィールドを追加しました: aggregation(デフォルト instant、または average)と aggregation_window(ISO-8601期間、例: PT1S)。aggregationaverage のとき aggregation_window が条件付き必須になります(JSON Schema の if/then で強制)。これにより電力サンプルが瞬時点の値か区間平均かを宣言できます。一次調整力アセスメントⅡでは averagePT1S で使用します。追加的かつ後方互換: 両フィールドを省略すると従来の瞬時値の意味のままであり、旧バージョンのメッセージも引き続き受け入れられます。

2.2.0 - 2026-05-28

アラート、確認応答、コマンドの強化:

  • AlertEventAlertState のペイロードで schema_version が必須になりました。以前はフィールドは定義されていましたが、どちらのアラートメッセージの required リストにも含まれていませんでした。Tensor Cloud は schema_version を省略する旧バージョンで送信されたアラートペイロードも引き続き受け入れます。EMS 実装は今後アラートペイロードにこのフィールドを追加してください。
  • CommandResponse.errors がスキーマで条件付き必須になりました: status: "error" のとき存在(≥ 1 件)、status: "ok" のとき不在。JSON Schema の if/then/else で強制されます。以前は散文のみで規定されていました。既に散文ルールに従っていた EMS 実装には送信側の変更は不要です。
  • TelemetryFeedback.codeTelemetryFeedback.detail がスキーマで条件付き必須になりました: status: "error" のとき両方存在、status: "ok" のとき両方不在。JSON Schema の if/then/else で強制されます。テスト専用のテレメトリフィードバックチャネルに影響します。Tensor Cloud が送信側であり、EMS 実装は受信のみを行います。
  • BatteryFcrCommand.control.schedule[*].capacity_kw がスキーマで条件付きになりました: control.actionexecute(デフォルト)のとき必須、cancel のとき禁止。JSON Schema の if/then/else で強制されます。
  • BatteryPowerCommand.control.scheduleBatteryFcrCommand.control.scheduleminItems: 1 を宣言しました。空のスケジュールはスキーマ層で拒否されます。
  • 埋め込みスキーマ例を修正: CommandResponse の例に必須の schema_version を追加。一次調整力 キャンセル例の message_id 値を文書化された ^msg_[0-9a-f]{8}-…$ パターンに合致する値に修正。
  • すべてのメッセージファミリーのトップレベル additionalPropertiestrue に統一しました(BatteryPowerCommandBatteryFcrCommand を含む)。以前はコマンドが厳密で他のファミリーが寛容という非対称性がありましたが、これを解消してプロトコル全体で前方互換性を統一しました。

2.1.0 - 以前のベースライン

変更履歴ページ以前のベースライン。インテグレーションガイドおよび AsyncAPI 仕様に記載されたテレメトリ、コマンド、アラート、レスポンスの全チャネル一式を含みます。