Webhook イベントを構成する
プロバイダー構成テーブルで Webhook API イベントを構成し、バッジベンダーが Webhook イベントを使用してバッジテーブルから収集したバッジデータを共有できるようにします。
始める前に
必要なロール:sn_wsd_wc.admin
このタスクについて
バッジデータ (JSON) は、ServiceNow REST API エクスプローラーを使用して処理されます。単一または複数の生のバッジデータレコード (ペイロード) は、REST API エクスプローラーを使用して共有および処理できます。バッジデータの Webhook イベントは、単一または複数の JSON レコードでコネクタイベントテーブルにロードされます。複数のレコードがアレイとして送信されます。詳細については、「出席アナリティクス」を参照してください。
手順
- 次のように移動する。 All (すべて) > ワークプレイスコネクタ > プロバイダーコネクタ構成.
-
[新規作成] を選択します。
フォームのフィールドに入力します。
表 : 1. [プロバイダーコネクタ構成 (Provider Connector Configurations)] フォーム フィールド 説明 名前 プロバイダー構成の名前 コネクタ構成 [ルックアップリスト] アイコン ( ) を検索して選択し、[バッジ] を選択するオプション。
詳細については、「バッジデータのコネクタ構成の構成」を参照してください。
ソースタイプ バッジデータが収集され、ターゲットのバッジデータテーブルにロードされるソース。 [Webhook] を選択して Webhook イベントを構成します。
トークンパラメーター名 [トークンパラメーター名] と [トークン値] は秘密キーと値のペアで、ベンダーバッジシステムから ワークプレイスコネクタ アプリケーションへの API コールを認証するために使用されます。どちらのシステムにもトークン名の値があります。トークン名を使用して、アプリケーションは API 要求を認証します。
トークン値 トークン値は、サーバーに API 要求を認証させるために API イベントの呼び出し中にバッジベンダーが使用する秘密キーです。 アクティブ プロバイダー構成がアクティブであることを示すオプション。 コールバック URL コールバック URL アイコン ( ) を選択して、コールバック URL をロックまたは編集するオプション。
場所を自動更新 スペースが追加されたとき、または選択した場所から一部のスペースが削除されたときに、場所を自動更新するオプション。 スケジュール済みジョブ「プロバイダースペースマッピングレコードを更新」が毎日実行され、[プロバイダーコネクタ構成] テーブルの [場所を自動更新 (Auto Refresh Location)] フィールドを読み取ります。プロバイダーコネクタ設定レコードのすべてのレコードを読み取り、プロバイダースペースマッピングテーブルを最新のデータで更新します。たとえば、新しいフロアまたはスペースが場所に追加されると、選択した場所に自動的に追加されます。
メトリクス サポートされているメトリクスのターゲットレコードを選択するオプション。[イベントデータ] を選択します。 - [Update (更新)] を選択します。
-
新しく作成した Webhook イベントを選択します。
[コールバック URL を生成 (Generate Callback URL)] ボタンを使用して、REST API 要求のコールバック URL を生成できます。
- バッジベンダーは、次の場所に移動して、バッジデータを JSON 形式で共有します All (すべて) > システム Web サービス > REST > REST API Explorer.
-
[REST API エクスプローラー] ページで、次を選択します。
- 名前空間:ドロップダウンリストから [sn_wsd_wc] を選択します。
- API 名:Workplace Connector Webhook
- API バージョン:v1
-
[ワークプレイスコネクタ Webhook] イベントページで、次の値を指定します。
- token_name:ステップ 2 で使用するトークンパラメーター名。トークン名の値は、バッジベンダーがバッジデータ(JSON) を ワークプレイスコネクタ と共有するために使用されます。生データ (ペイロードまたはバッジデータ) が処理され、コネクタイベントテーブルにロードされます。
- ni.nolog.id:ステップ 2 で作成した Webhook のシステム ID をコピーして、貼り付けます。[他のアクション] メニューアイコン (
) をペインから選択します。
- token_value:ステップ 2 で提供されたトークン値。トークン値は、サーバーに API 要求を認証させるために API イベントの呼び出し中にバッジベンダーが使用する秘密キーです。
-
API 要求本文で [生] を選択し、バッジデータ (ペイロード) を JSON 形式でコピーします。
このバッジデータは、バッジセンサーから収集されます。
-
[送信] を選択します。
応答コードが [200 OK] で、応答結果が [成功] の場合、バッジデータはコネクタイベントテーブルにロードされます。
- コネクタイベントテーブル (sn_wsd_wc_connector_events) は、バッジベンダーによって共有されるバッジデータをロードします。REST API エクスプローラーによってロードされたときのバッジデータの [ステータス] は [新規] です。
- スケジュール済みジョブ [Webhook プロバイダーデータレコードを処理 (Process webhook provider data records)] は毎分実行され、コネクタイベントテーブルからバッジデータ (ステータスが [新規] のデータ) から従業員参加データテーブルにロードされます。
スケジュール済みジョブは、[Webhook] イベントからソースデータを取得し、そのデータを必要な形式に変換してから、ターゲットの [従業員参加データ] テーブルに入力します。注:ワークプレイスコネクタスケジュール済みジョブにアクセスするには、 All (すべて) > システム定義 > スケジュール済みジョブ. [アプリケーション] 列でワークプレイスコネクタを検索します。ワークプレイスコネクタ では 2 つのスケジュール済みジョブを使用できます。- プロセスプロバイダーデータレコード:ベンダーバッジデータ (ソーステーブル) からデータを読み取ります。バッジデータの処理後、レコードがこれを [従業員参加データ] テーブル (ターゲットテーブル) にロードします。詳細については、「バッジテーブルデータの構成」を参照してください。
- Webhook プロバイダーデータレコードを処理 (Process webhook provider data records):コネクタイベントテーブルからデータを読み取ります。Webhook イベントデータを処理し、[従業員出席データ] テーブル (ターゲットテーブル) にロードします。
- データは [従業員出席データ] テーブルにロードされます。[コネクタイベント] テーブルのバッジデータの [ステータス] が [処理済み] に変わります。
- [従業員出席データ] テーブルから、データが出席アナリティクステーブルにロードされます。注:ステータスが [処理済み] のコネクタイベントテーブル内のバッジデータレコードは、(作成日または現在の日付から) 2 日後に、コネクタイベントテーブル [sn_wsd_wc_connector_events] によって消去されます。[エラー] ステータスのデータは、作成日から 7 日後に消去されます。ステータスが [新規] のデータは消去されません。