プロキシ サーバーをデプロイする

このガイドでは、プロキシ サーバーの設定に必要な手順について説明します。プロキシ サーバーは、アプリケーション サーバーと組み合わせて使用し、Dialogflow API での認証を簡素化します。エージェント ワークスペースで UI モジュールをレンダリングする手順については、LivePerson のメイン チュートリアル ページをご覧ください。LivePerson でモジュールをレンダリングするには、同じディレクトリにアプリケーション サーバーとプロキシ サーバーの両方が必要です。

この統合デプロイは任意のホスティング プラットフォームで設定できますが、この手順では Google の Cloud Run を使用します。

始める前に

このチュートリアルを開始する前に、アプリケーション サーバーをデプロイしていることを確認してください。

構成

サービスをデプロイするときに、次の環境変数を定義する必要があります。アプリケーション サーバーを最初に作成するときは、LP_CLIENT_ID 変数と LP_CLIENT_SECRET 変数を空白のままにしてください。これらの変数は、Conversational Cloud アプリケーションを作成するときに LivePerson から提供され、そのときに更新します。また、最初は APPLICATION_SERVER_URLDF_PROXY_SERVER_URL をスキップし、アプリケーション サーバーとプロキシ サーバーがデプロイされ、必要な値を返した後に両方を設定します。

  • LP_ACCOUNT_ID: LivePerson アカウント ID。
  • LP_CLIENT_ID: LivePerson クライアント ID。これは、Conversational Cloud アプリケーションがインストールされると、LivePerson から提供されます。(この変数は今はスキップしてください。情報が提供されたら更新します)。
  • LP_CLIENT_SECRET: LivePerson クライアント シークレット。これは、Conversational Cloud アプリケーションがインストールされると、LivePerson から提供されます。(この変数は今はスキップしてください。情報が提供されたら更新します)。
  • LP_SENTINEL_DOMAIN: https://developers.liveperson.com/domain-api.html にアクセスします。アカウント番号を入力し、「sentinel」のドメインを検索します。
  • LP_ACCOUNT_CONFIG_READONLY_DOMAIN: https://developers.liveperson.com/domain-api.html にアクセスします。口座番号を入力して、「accountConfigReadOnly」のドメインを検索します。
  • APPLICATION_SERVER_URL: UI アプリケーション サーバーの URL。
  • JWT_SECRET: 認証トークンの署名に使用される「秘密」のフレーズ。任意のフレーズを使用できますが、長くランダムなシークレットが最も安全です。ベスト プラクティスについては、https://fusionauth.io/learn/expert-advice/tokens/building-a-secure-jwt/#keys をご覧ください。

サンプル .env ファイル

    LP_ACCOUNT_ID = 12345678
    LP_CLIENT_ID = abc-123-f0f0
    LP_CLIENT_SECRET = abc123abc123abc123abc123
    LP_SENTINEL_DOMAIN = va.sentinel.liveperson.net
    LP_ACCOUNT_CONFIG_READONLY_DOMAIN = z1.acr.liveperson.net
    APPLICATION_SERVER_URL = https://my-project.wm.r.appspot.com
    JWT_SECRET = an_example_JWT_secret_phrase_please_use_something_better

デプロイ

UI アプリケーション サーバーは、Google Cloud ホスティング サービスにデプロイする必要があります。Google App Engine または Cloud Run のいずれかを使用することをおすすめします。以下の手順では、例として Cloud Run を使用します。

CLI を使用してデプロイする

ローカル ターミナルで、アクティブ ディレクトリをリポジトリのルート ディレクトリに変更します。

次のコマンドを実行して、リポジトリの状態を Google Cloud Platform Container Registry に保存します。PROJECT-ID は、Google Cloud Platform プロジェクト ID に置き換えます。

    gcloud builds submit --tag gcr.io/PROJECT-ID/agent-assist-modules-proxy-server

次のコマンドを使用して、インテグレーションを本番環境にデプロイします。PROJECT-ID はエージェントの Google Cloud Platform プロジェクト ID に、SERVICE-ACCOUNT-EMAIL はサービス アカウントのクライアント メールアドレスに置き換えます。

    gcloud run deploy --image gcr.io/PROJECT-ID/agent-assist-modules-proxy-server --service-account=SERVICE-ACCOUNT-EMAIL --memory 1Gi --platform managed
  • リージョンの入力を求められたら、リージョン(us-central1 など)を選択します。
  • サービス名の入力を求められたら、Enter キーを押してデフォルトを受け入れます。
  • 未認証の呼び出しを許可するよう求められたら、y キーを押します。

詳細については、Cloud Run のドキュメントをご覧ください。アクティブな統合デプロイのリストは、Google Cloud Platform Console の [Cloud Run] で確認できます。

環境変数

Cloud Run の手順に沿って、必要な環境変数を設定します。

サービスがデプロイされると、CLI はアプリケーションがデプロイされた URL(target_url)を出力します。この値を使用して、アプリケーション サーバーDF_PROXY_SERVER_URL 環境変数を設定します。

プロキシ サーバーをシャットダウンする

アプリケーション サーバーをシャットダウンするには、Cloud Run サービスを削除する必要があります。

ローカル ターミナルで次のコマンドを実行し、以前に選択したターゲット プラットフォームを選択して、アクティブなデプロイを一覧表示します。

    gcloud beta run services list

次に、次のコマンドを実行します。

    gcloud beta run services delete agent-assist-modules-proxy-server