再利用可能な packages のビルド

ガイドラインを見直して、再利用するために packages をビルドする方法を理解します。

受信データを知る
ユーザーから必要なアクション package のフィールドを設定する場合、属性タイプの設定に詳細を指定し、package が受信するデータの種類を制限します。
  • パッケージを受け取ったときに行う必要のあるチェックの負担を軽減するため、入力を制限します。
  • Javadoc には 34 の定義済み属性タイプが含まれています。そのため、package をビルドして適切なフィールド タイプを選択する際には、それらを確認してください。
  • 格納された値を取得するように package を設定します。たとえば、bot の代わりに package が API 呼び出しを行う場合は、API キーまたはトークンのアクション入力フィールドの AttributeTypecredential に設定されていることを確認します。こうすることで、ユーザーは package が要求する機密性の高い入力データに対して、Credential Vault に格納された値を使用するようになります。
ラベルを適切に使用する
CommandPkg 注釈で、異なるラベル、node_labels、および説明を適切に使用します。
  • これらのラベルは、アクションの簡単な説明として使用し、アクションの説明には数語のみを使用します。
  • デフォルトのアクション packages で指定されているのと同じ命名スタイルを複製します。
  • 各アクションは package の子要素で、[アクション] ウィンドウの package アイコンとともにアクション ラベルが表示されます。短い名前を使用して、各アクションを説明します。
  • 特定のフィールドに対して想定される入力形式を文書化します。@Pkg 注釈のパラメーターの説明を使用します。これにより、package 開発者は、特定の入力フィールドに使用する必要がある形式、要件、またはデータを確認できます。次に例を示します。
    @Pkg(label = "Start Date", description="Date Format as MM/DD/YYYY"
コンポーネントのユニット テスト
package 開発中に、各コンポーネントと package のアクションが期待どおりに機能していることを検証するためのユニット テストを作成します。
  • 個々のテスト ユニットの動作、単一のクラス、または単一のアクションを検証し、期待通りに機能することを確認します。
  • 開発プロセスの初期段階で、機能または性能の欠陥を確認し、文書化します。
エラー処理
bot ロジックにエラー処理を含め、すべてのエラーがきちんと処理されるようにします。エラーが処理されない場合、bot Runner が他のタスクを実行できなくなる可能性があります。
  • bot コンシューマーのエラー解決に役立つような意味のあるエラー メッセージを作成します。
  • package 開発者は、次の推奨事項に留意してください。
    • [試行/キャッチ] ブロックを使用して、エラーに対応してください。
    • マルチキャッチ ブロックを使用して特定のエラーを見つけ、[BotCommandException] を使用してカスタマイズされたエラー メッセージを返してください。次に例を示します。
      //create array of 3 items
      int[] myIntArray = new int[]{1, 0, 7};
      try {
          //print 4th item in array
          System.out.println(myIntArray[3]);
          //Perform operation on first and second items in array
          int result = myIntArray[0] / myIntArray[1];
      } catch (ArrayIndexOutOfBoundsException e) {
          //Throw custom message for IndexOutofBounds
          throw new BotCommandException("The array does have the number of expected items.");
      } catch (ArithmeticException e) {
          //Throw custom message on Atithmetic Exception
          throw new BotCommandException("Math Operation Error with " + Integer.toString(myIntArray[0]) + " and " + Integer.toString(myIntArray[1]));
      }
単一責務の原則に従う
package はアクションの集合です。package 内の各アクションには、単一の責務が課せられ、その責務は、そのアクションによって包含される必要があります。
  • 単一責務の原則に従うことで、package コンシューマーは簡単にアクションを実行でき、テストを簡素化し、不要な変更を回避できます。
  • 提供するアクションにより、package コンシューマーは bots 内で package を使用する方法をカスタマイズすることができ、bots の効率をできるだけ向上させることができます。
例を挙げる
packagesBot Store に送信する際は、package の使用法を示すデモ bot を含めます。
  • Automation 360 のアクションを使用して、package コンシューマーがこれらのアクションを使用して自分の bot 機能を使用できるようにします。
  • package コンシューマーが適切な使用について理解するために必要な知識を得られるように、常に説明付きのサンプル bots を提供します。