← トップページに戻る English

Gravio Action App Package開発ガイド (現在Gravio StudioでのGUIでの開発はサポートされていません。)

目次

1. Action App Packageとは (現在このPackage形式はGravio Studioからは作成できません。)

Action App Package(以下、Appパッケージ)は、Gravioのアクション、トリガー、関連リソースを一つのパッケージにまとめて管理・配布するための仕組みです。アクションフローを効率的に開発し、他のHubシステムへ簡単に展開できることを目的としています。

1.1 従来の仕組み(機能パッケージ)からの進化

Appパッケージの開発に至るまでには、いくつかの段階がありました:

1.2 Appパッケージの利点

Appパッケージには以下のような利点があります:

2. Action App Packageの構造

2.1 基本ディレクトリ構成

Appパッケージは以下のディレクトリ構成で実装されています:

actmgr/actions/
+- [アプリ名].app/
   +- actions/      # アクションファイル
   |  +- a.acs
   |  +- b.acs
   +- data/         # リソースファイル
   |  +- sounds/
   |     +- a.mp3
   +- triggers/     # トリガー設定
   |  +- events/
   |  |  +- xxx.json
   |  +- timers/
   |  +- calendars/
   +- bases/        # ベースプロパティ
   |  +- xxx.basp
   +- layers/       # レイヤー情報(開発中)

2.2 各ディレクトリの役割

3. Action App Packageの作成手順

3.1 作成の基本フロー

Appパッケージを新規作成する基本的な手順は以下の通りです:

  1. actmgr/actions ディレクトリに拡張子 .app でディレクトリを作成します
  2. 必要なサブディレクトリ構造を作成します:
  3. 既存のアクションやリソースファイルを適切なディレクトリに配置します
  4. Trigger Managerでリロードを実行し、パッケージを有効化します

3.2 ファイルの配置ルール

ファイルの配置には以下のルールがあります:

  1. アクションファイル.acs ファイルは actions/ ディレクトリに配置します
  2. トリガーファイル:各種トリガーファイルを triggers/ の適切なサブディレクトリに配置します
  3. ベースプロパティ:使用するベースプロパティを bases/ ディレクトリに配置します
  4. リソースファイル:コンポーネントから参照するファイルを data/ 以下の適切なディレクトリに配置します

重要なのは、ファイルの内容を変更せずにそのままコピーするだけで動作することです。IDはグローバル環境と分離されるため、ID重複の問題は発生しません。

4. パッケージ間の参照制御

4.1 App内のアクション参照

Appパッケージ内のトリガーやアクションは、原則として同一パッケージ内のリソースのみを参照します:

4.2 グローバルアクションとの関係

グローバル環境とAppパッケージの間には以下の関係があります:

5. 他のHubへの配布方法

5.1 パッケージのエクスポート

Appパッケージを他のHubに配布する手順は以下の通りです:

  1. .app ディレクトリ全体をアーカイブします
  2. アーカイブファイルを配布先のHubに転送します
  3. 配布先のHubで actmgr/actions/ ディレクトリに展開します
  4. Trigger Managerのリロード機能を実行してパッケージを有効化します

5.2 配布時の注意点

6. 既知の制限と非互換ポイント

Appパッケージには以下の制限や非互換ポイントがあります:

7. 将来の改善の方向性

7.1 ベースプロパティの取り扱い改善

ベースプロパティについては以下の改善が検討されています:

これにより、配布先の環境に合わせた設定で動作させる柔軟性が向上します。