Integration Hub

Integration Hub は、外部システムやサービスとの統合を処理するための中心的な場所を提供します。 複数のスクリプトで使用できる標準化された RESTクローズ済 アプリケーションプログラミングインターフェイス。 組織で使用している他のソフトウェアとCXone Mpowerシステムを接続することにより、特定の機能を自動化できます。APIStudio 接続を作成できます。 これにより、API 経由で外部と通信するたびに同じリクエストを繰り返し作成する必要がなくなります。 代わりに、Integration Hubでリクエストを一度構築し、必要な場所でそれを再利用することができます。 これにより、スクリプトのプロセスが簡素化され、高速化されます。

Integration Hub により、統合のセキュリティも強化されます。 API 資格情報は暗号化されるため、使用するたびにスクリプト内で公開されることはありません。 Studio スクリプトはプレーンテキストとして保存されるため、API リクエストに使用されるトークンなどの重要な認証情報をスクリプト内の変数として直接安全に保存することはできません。 Integration Hub を使用すると、スクリプトに認証リクエストをすばやく追加し、取得した資格情報を後続の API 呼び出しで安全に使用できます。 API リクエストに mTLS 証明書を追加することもできます。

Integration Hub は Automation & AI アプリ の一部です。CXone Mpower Launch Automation & AI 権限をお持ちの場合は、アプリ から CXone Mpower を新しいウィンドウで開き、Integration Hubをクリックできます。

接続

接続は、API リクエスト、認証フロー、変数など、外部サービスとの統合の詳細を定義します。 たとえば、Salesforceの接続テンプレートを作成できます。 これにより、認証タイプやサポートされている方法など、Salesforceに接続するために必要な基本的な詳細が定義されます。 このテンプレートから接続を作成し、テンプレートの特定の詳細に加えて、Salesforceに対して実行する特定の API リクエストなどのより具体的な詳細を入力できるようになります。

接続テンプレート

Integration Hubに追加する各接続は、接続テンプレートに基づいて作成されます。 テンプレートは、テンプレートで作成されるすべての接続に適用される基本情報を定義します。 これは次を含んでいます:

  • 接続先のWebサービスの名前。
  • 統合方法。 現在、サポートされている方法はREST APIのみです。
  • 認証のタイプ(ある場合)。 現在、OAuth 2.0または認証なしを選択できます。
  • 認証用のカスタムヘッダー(必要な場合)。
  • テンプレートに基づいて行われたリクエストで利用可能な動詞。 動詞は、データの取得 (GET) やレコードの作成 (POST) など、接続された Web サービスで実行できるアクションです。

接続には、すべてのタイプの接続情報が含まれている必要はありません。 サポートされている情報のタイプを任意に組み合わせて保持できます。

すべての接続テンプレートは、Integration Hubの接続ライブラリで使用できます。 Studio スクリプトで使用できるテンプレートは、Integration Hubの [マイ接続] にリストされています。 最大 50 個の接続を作成できます ([マイ接続] リスト内)。 接続ライブラリ内のテンプレートの数に制限はありません。

すべてのテンプレートを変更することはできません。 ただし、カスタムテンプレートは削除できます。 後でカスタムテンプレートの何かを変更する必要がある場合は、テンプレートを削除して新しいテンプレートを作成することができます。 接続自体を変更することもできます。 カスタムテンプレートを削除しても、そのテンプレートで作成された接続には影響しません。

システムテンプレート

Integration HubNiCEが所有するシステムテンプレートと、自分で作成するテンプレートの2タイプのテンプレートがあります。 システムテンプレートにはIntegration Hubが付属し、削除することはできません。 現在、Integration Hubには1つのシステムテンプレートが含まれています。

  • CXone Mpower 開発 Portal: CXone Mpower Developer Portal に記載されているAPIエンドポイントと統合します。 これは、Studio フレームワークアクションへの依存を減らすためです。 OAuth 2.0認証を使用します。 認証を決定するために、それは検出URLを使用します。 クライアント証明書はサポートしていません。

リクエスト

リクエストはAPI呼び出しです。 「マイ接続」リスト内の各接続に対して、特定の外部サービスで使用するリクエストを追加できます。 これらのリクエストは、Web サービスに接続するために使用される次の情報を指定します。

  • URL:接続先のリソースの場所。
  • メソッド(動詞):データの取得や新しいレコードの作成など、リクエストで実行するアクション。 Integration Hubは以下の動詞をサポートしています:GET、PUT、POST、DELETE、TRACE、PATCH、HEAD、OPTIONS。 接続で使用できる動詞は、接続の作成に使用されるテンプレートで定義されます。
  • ヘッダー:リクエストに関する追加情報が含まれるリクエストの一部。 これには、言語、資格情報などが含まれます。
  • クエリパラメーター:エンドポイントURLでAPIリクエストで情報を渡す方法。 これらはキーと値のペアとして設定されます。 これらを使用して、レスポンスで返されるデータをフィルター処理、並べ替え、カスタマイズ、または制御できます。
  • 本文:リクエストのコンテンツ。 フォーマットは、接続する先のAPIの要件によって異なります。 本文のメディアタイプは、接続先のリソースが期待するものと一致させる必要があります。 これはMIMEタイプまたはコンテンツタイプとしても知られています。 以下は、サポートされているオプションとそれに関連するコンテンツヘッダーです:
    • ApplicationJson: application/json
    • ApplicationJsonPatch: application/json-patch+json
    • FormURLEncoded: application/x-www-form-urlencoded
    • TextHtml: text/html
    • TextPlain: text/plain
    • TextXml: text/xml
    • Sigv4: アプリケーション/x-amz-json-1.1

Integration Hub接続には最大50件のリクエストを含めることができます。 一度にアクティブにできるリクエスト数に制限はありません。

CXone Mpowerではレスポンスのサイズに32Kbの制限があります。 クエリーパラメーターを使用して、返されるデータをフィルター処理します。 これにより、その制限内に留まることができます。

手動とStudioリクエスト

Integration Hubは接続のリクエストに対して次の2つのオプションをサポートします。

  • 手動:手動リクエストは、リクエストの追加ページのオプションを使用してIntegration Hub構築されます。 オプションにシークレットを使用することができます。 手動リクエストは、データが変更されない場合に一般的に使用されます。 Studioスクリプトを必要とせず、Integration Hubから直接実行できますStudioスクリプト内で実行することもできます
  • Studio:場合によっては、APIリクエストをIntegration Hubで手動リクエストとして構築できないことがあります。 たとえば、パスパラメーター、変数の置換を必要とするリクエスト、またはSOAP Webサービスに接続するリクエストは、Studioスクリプトで構築する必要があります。 ただし、Integration Hub接続でこれらのリクエストを追跡する必要がある場合があります。 Studioリクエストオプションを使用するとそれが可能になります。 Studioリクエストは、接続のすべての手動リクエストとともに、接続のリクエストタブに表示されます。

変数

Integration Hubでは、値のペアを変数として格納することができます。 変数はデフォルトでは暗号化されていません。 ただし、変数をシークレットに変えて暗号化することはできます。 変数をシークレットとしてマークすることで、パスワードやキーのような機密情報のセキュリティを高めることができます。

変数は、それらを作成した接続内で使用することができます。 Studioスクリプトで接続または認証リクエストを実行した場合、スクリプト内でその接続から変数を使用できます

シークレットは、暗号化されたデータベースに保存されているときに暗号化されます。 Integration Hubはデータを暗号化するために、Advanced Encryption Standard (AES)を使用します。 データが復号化されるのは実行時のみです。

Integration HubStudioアクション

認証を使用したり、Studioスクリプトでリクエストを行ったりする場合は、次のStudioアクションを使用します:

  • CONNECTAUTH:このアクションにより、スクリプトに認証の詳細またはシークレットを含めることができます。 認証の詳細と変数は、Integration Hub接続で定義する必要があります。
  • CONNECTREQUEST:このアクションにより、Integration Hub接続で定義されたリクエストを使用できます。 手動リクエストStudioリクエストを使用するには、このアクションが必要です。

Integration HubStudioアクションに関する重要な事実

  • それにはIntegration Hubが必要です。 CXone MpowerシステムでIntegration Hubが有効になっていない場合、アクションは機能しません。
  • スクリプトには各アクションのインスタンスを複数含めることができます。
  • 変数置換を使用すると、異なるリクエストを実行したり、単一のスクリプトで複数の接続からの認証を使用したりすることができます。
  • CXone MpowerでAPI呼び出しを行う他の方法と同様に、接続済Webサービスからのレスポンスを受信して適切に処理するには、追加のスクリプトが必要です。
  • CONNECTAUTHのカスタマイズは一切できません。 Integration Hubの接続で定義されている認証リクエストを実行します。

サーキットブレーカー

Integration Hubにはサーキットブレーカーが内蔵されています。 これは、失敗したAPI呼び出しに対する予防的フェールセーフです。 サーキットブレーカーは、呼び出しが繰り返し失敗していることを検出すると、API呼び出しをアクティブ化して調整します。 API呼び出しが失敗する最も一般的な原因は、一時的なサーバーエラー(500エラー)です。 呼び出しを調整 (または一時停止) すると、サーバーが復旧して正しく機能する時間が与えられます。

サーキットブレーカーの主な機能は以下のとおりです。

  • 30秒以内にAPI呼び出しの50%以上が失敗するとサーキットブレーカーが作動します。

  • サーキットブレーカーが作動するには、Integration Hubが1つのAPIに対して30秒間に100回以上の呼び出しを行う必要があります。

  • ブレーカーは30秒間作動します。

  • 失敗の理由には、Studio_err変数でキャプチャされたトレースログでアクセスできます。

監査履歴

Integration Hubの各接続には変更ログがあります。 接続が作成または更新されると、以下の情報が記録されます。

  • Date (日時):変更が行われた日付

  • Modified By (変更者):変更を行ったユーザー

  • Profile Name (プロファイル名):接続の名称

  • Action (操作):発生した内容(接続の作成、更新など)

ユーザーは、接続の設定にある新しい 監査 ボタンからこのログにアクセスできるようになります。