パラメーターと動的値

パラメーターと動的値を効果的に使用することで、ITチームは柔軟かつ動的に動作する自動化を構築できます。 このセクションでは、Nexthink Workflowsでの定義、設定、および使用について説明します。

ワークフローは入力パラメーター、ワークフロー実行中に取得した値、またはNexthinkのデータ値に依存して、動的で柔軟、かつ文脈を理解した自動化を可能にします。 これらの要素は、ワークフローが入力を処理し、異なるシナリオに適応し、ワークフローステップ間で情報を渡すことを可能にします。

ワークフローは次のタイプの動的値を使用します:

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

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

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

それらはワークフローのトリガーで動的に設定されることも、ワークフローの設計時に定義された静的値として維持されることもあり、ワークフロー全体で参照することができます

パラメーターを定義する

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

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

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

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

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

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

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

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

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

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

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

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

スケジュールまたはリアルタイムイベントを作成する際に、次のオプションからパラメーターの値を選択します:

  • Designerに設定されているデフォルトのパラメーター値

  • NQLクエリの出力の1つ

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

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

ワークフローAPI

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

手動トリガー

Nexthink製品(Amplifyも含む)から手動アクションとしてワークフローをトリガーする際、ユーザーはパラメーターの値を入力するよう求められます;

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

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

{{global.parameter_id}}

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

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

  2. ワークフローDesignerNEAL タブで内部パラメータ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}}

システム値:

システム値は、現在のワークフロー実行に対するリファレンスを提供するために使用できます。 これは、ワークフローが3rdパーティシステムのアクションを待機し、それが完了した後にワークフローにコールバックを行い、継続させる必要がある場合に便利です。

システム値は常に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?