パラメーターと動的値

ワークフローは、動的で柔軟かつコンテキストに応じた自動化を可能にするために、パラメータとしてワークフローの実行中に取得された値や、Nexthinkデータの値に依存しています。

ワークフローでは、以下のセクションで説明される動的値の種類を使用します。

ワークフローパラメーター

ワークフローパラメーターは、ワークフローに期待される入力値を定義し、それを異なるシナリオでカスタマイズして再利用できることを保証します。 それらはワークフローのトリガー時に設定され、ワークフロー実行の終了まで一定です。  

ワークフローの中でそれらを渡してパラメーター化されたアクションを実行したり、条件の一部として評価したりするためにワークフローパラメーターを使用します;

これらはワークフローのトリガー時に動的に設定されることもあれば、ワークフロー設計時に静的な値として定義されることもあり、ワークフロー全体を通して参照されます。

パラメーターを定義する

パラメータはワークフロー設計の一部として定義されます。

ワークフローパラメーター

パラメーターを追加するとき:

  • ワークフローパラメーターの名前を入力します。

  • ワークフローパラメーターの必須のデフォルトを入力します。

    • カスタム値を許可を選択して、パラメーターをワークフロートリガーで設定できるようにします。

ワークフロー開始時に動的にワークフローパラメーターを設定する

トリガーの種類に応じて、動的にパラメーターを設定する以下の方法を使用してください:

NQL スケジュールまたはリアルタイムイベント

トリガーがNQLリアルタイムイベントまたはスケジュールに基づいている場合、NQLクエリで返された値をパラメーターとして渡すことができます;

スケジュールでパラメーターを設定するには、まずデザイナーで作成する必要があります。 詳細はデザイナーのドキュメントを参照してください。

実行クラッシュのリアルタイムクラッシュイベントでセットされたパラメーターバイナリ名

スケジュールまたはリアルタイムイベントを作成する場合は、以下のオプションからパラメータの値を選択してください。

  • デザイナーで設定されたデフォルトのパラメータ値

  • NQLクエリの出力のいずれか

  • スケジュールレベルで定義されたカスタム値

パラメーターの値を設定します。 "Outlook.exe"はDesignerに設定されたデフォルト値です。

ワークフローAPI

外部システムからAPIを呼び出す際、ワークフローのパラメーターを設定します。 詳細はAPIドキュメントを参照してください。

手動トリガー

Nexthink製品(Amplifyも同様)から手動でワークフローをトリガーする場合、パラメータの値を入力するようにユーザーに促されます。

ワークフローパラメータの参照

Nexthink ワークフロー内でグローバルパラメータを参照することができます。例えば、API thinklet の JSON ペイロード内で値を渡すためです。 次の構文を使用します:

{{global.parameter_id}}

ワークフローパラメータを参照するには:

  1. 対象のワークフローにグローバルパラメータを追加します。

  2. ワークフローデザイナーのNEALタブの下で、パラメータの内部idを確認してください。

以下の例では、ワークフローパラメータ p22 のパラメータ id は NEAL ビューでは p_22 です。 以下の画像をご覧ください。

<globalVariable id="p_22" name="p22" ...>
    <value>p22</value>
</globalVariable>

Thinkletの出力

出力変数は、実行されるThinkletの一部として作成され設定された値です。 例えば、リモートアクションで情報を収集し、その出力を使用して、ワークフロー実行のライフサイクル中のパラメータとして用いたり、ITSMチケットへのペイロードとして渡したりすることができます。

ワークフロー内の他のThinkletからの出力を参照する際は、次の形式を使用します:

{{thinkletID.result.outputs.outputid}}

各シンクレットの出力パラメーターを設定する方法については、シンクレットの設定のドキュメントを参照してください。

データベースの値

データベースの値はNexthinkプラットフォームdatabaseから得られます。 システムがアクセスできるオブジェクトは2つあります:

  • device

  • user

deviceuserは常に実行時にワークフローにパラメータとして渡されます。 デバイスがターゲットとなる場合、これらのパラメーターはワークフロー実行時の最新情報を使用して更新されます。

サポートされている属性のリストについては、デバイスおよびユーザーセクションを参照し、NQLデータモデル のフィールド列にある値をフィールド名として使用してください。

ワークフロー内でNexthinkフィールドを参照する際には、以下の形式を使用してください:

{{nx.object.fieldname}}

デバイス属性を参照する例:

{{nx.device.ad_site}}

ユーザー属性を参照する例:

{{nx.user.ad.email_address}}

システム値

システム値は、現在のワークフロー実行に対するリファレンスを提供するために使用できます。 これは、ワークフローがサードパーティシステムの操作を待機する必要がある場合に有用です。その後、ワークフローにコールバックをして続行を可能にします。

システム値は常にsys.workflowで始まります。

これらの値のリストは以下に示されています。

  • sys.workflow.executionId:現在実行中のワークフロー実行のIDを参照します。

  • sys.workflow.workflowId: 実行中の特定のワークフロー設計を参照します。

これらの値の使用例は、後にワークフローを進めるためにMoveworksチャットボット統合の文脈で使用される場面で示されています。

{
    "message": " こんにちは、{{nx.user.ad.fullname}} さん、お使いのコンピュータには重要なドライバーのアップデートがいくつか不足しており、パフォーマンスに影響を与えている可能性があります",
    "recipients": [
        {{nx.user.ad.email_address}}
    ],
    "context": {
        "slots": {
            "executionid": "{{sys.workflow.executionId}}",
            "workflowid": "{{sys.workflow.workflowId}}"
        }
    }
}

ペイロードフィールドでのパラメータと動的値の使用方法

動的値とパラメータは、リソースおよびペイロードメッセージ/テキストシンクレットフィールドで参照できます。 データへの参照を二重中括弧内で含めてください:

{{}}

Nexthinkデータベース属性を使用したServiceNowへのペイロード例:

"cmdb_ci": "{{nx.device.name}}"

以前のサービス/APIシンクレットからのデータを含むServiceNowインシデント更新リソースの例:

api/now/table/incident/{{log_service_now_ticket.result.outputs.sys_id}}

Last updated

Was this helpful?