このガイドでは、プロキシ サーバーの設定に必要な手順について説明します。プロキシ サーバーをアプリケーション サーバーと組み合わせて使用することで、Dialogflow API での認証を簡素化します。エージェント ワークスペースで UI モジュールをレンダリングする手順については、LivePerson のメイン チュートリアル ページをご覧ください。LivePerson でモジュールをレンダリングするには、同じディレクトリにあるアプリケーション サーバーとプロキシ サーバーの両方が必要です。
このインテグレーションのデプロイは任意のホスティング プラットフォームで設定できますが、ここでは Google の Cloud Run を使用します。
始める前に
このチュートリアルを開始する前に、アプリケーション サーバーをデプロイしていることを確認してください。
構成
サービスをデプロイするときに、次の環境変数を定義する必要があります。アプリケーション サーバーを最初に作成するときに、LP_CLIENT_ID
変数と LP_CLIENT_SECRET
変数は空白のままにしてください。これらの変数は、Conversational Cloud アプリケーションを作成するときに LivePerson から提供され、そのときに更新します。また、最初は APPLICATION_SERVER_URL
と DF_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