部署應用程式伺服器

本指南將概述設定應用程式伺服器的必要步驟,以便在 LivePerson 中顯示 Agent Assist 建議。應用程式伺服器會與同一目錄中的 Proxy 伺服器搭配使用。如要瞭解如何在代理工作區中算繪 UI 模組,請參閱 LivePerson 主要教學課程頁面。您必須同時具備應用程式伺服器和 Proxy 伺服器,才能在 LivePerson 中算繪模組。

雖然您可以在任何託管平台上設定這項整合部署作業,但本操作說明使用的是 Google 的 Cloud Run。

設定

部署服務時,您必須定義下列環境變數。初次建立應用程式伺服器時,請務必將 LP_CLIENT_ID 和 LP_CLIENT_SECRET 變數留空。LivePerson 會在您建立 Conversational Cloud 應用程式時提供這些變數,您屆時再更新即可。您一開始也會略過 APPLICATION_SERVER_URL 和 DF_PROXY_SERVER_URL。部署應用程式和 Proxy 伺服器並傳回必要的網址值後,系統會設定這兩個變數。

  • 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 應用程式伺服器的網址。(請先略過,等應用程式伺服器部署完成並取得網址後再更新)。
  • DF_PROXY_SERVER_URL:Proxy 伺服器的網址。(請先略過,等 Proxy 伺服器部署完成並取得網址後再更新)。
  • PROJECT_ID:您的 Google Cloud 專案 ID。請勿加入 projects/ 前置字元。

.env 範例檔案:

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

部署

UI 應用程式伺服器必須部署至 Google Cloud 託管服務。建議您使用 Google App Engine 或 Cloud Run。以下步驟以 Cloud Run 為例。

設定 gcloud CLI

本教學課程概述的部署程序會使用 gcloud CLI 指令。請按照下列步驟,在本機設定 gcloud CLI,以便進行這項部署作業:

  1. 在 gcloud CLI 說明文件頁面,選取您的 OS,然後按照操作說明安裝。
  2. 執行 gcloud config get-value project,檢查 Google Cloud Platform 專案設定。
  3. 請前往 Dialogflow 代理程式的設定,查看與代理程式相關聯的專案 ID。在 gcloud CLI 中設定的 Google Cloud Platform 專案,應與代理程式的專案 ID 相符。
  4. 如果專案 ID 不相符,請執行 gcloud config set project PROJECT-ID,並將 PROJECT-ID 替換為步驟 3 的專案 ID。

設定服務帳戶

您必須在 Google Cloud Platform 專案中建立服務帳戶,整合功能才能正常運作。詳情請參閱 Dialogflow 說明文件。

請按照下列步驟建立服務帳戶並設定整合:

  1. 選取與 Agent Assist 資源相關聯的 Google Cloud Platform 專案。
  2. 按一下 Google Cloud Platform 控制台中的導覽選單,將滑鼠游標懸停在「IAM & admin」(IAM 與管理) 上,然後按一下「Service accounts」(服務帳戶)。
  3. 點選「+ 建立服務帳戶」,填寫詳細資料,並指派「Dialogflow Client API」角色。

啟用必要的 API

  1. 前往所需的 Google Cloud Platform 專案。
  2. 按一下 Google Cloud Platform 控制台中的導覽選單,然後選取「Billing」(帳單)。請確認您已為專案啟用計費功能。
  3. 為這項專案啟用 Cloud Build 和 Cloud Run API。
  4. 將下列 Git 存放區複製到本機電腦或開發環境:git clone [repository url]。
  5. 在本機電腦或開發環境中,開啟存放區的根目錄。

在 Artifact Registry 中建立 Docker 存放區

使用 gcloud artifacts repositories create 指令建立 Docker 存放區,用於儲存存放區狀態:

gcloud artifacts repositories create REPOSITORY-NAME --repository-format=docker --location=LOCATION

更改下列內容:

  • REPOSITORY-NAME:Docker 存放區的名稱。
  • LOCATION:要建立 Docker 存放區的 Google Cloud 位置。

使用 CLI 部署

在本機終端機中,將使用中的目錄變更為存放區的根目錄。

使用 gcloud builds submit 指令,將存放區狀態儲存至 Google Cloud Artifact Registry:

gcloud builds submit --tag=LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY-NAME/agent-assist-modules-application-server
 

更改下列內容:

  • LOCATION:您建立 Docker 存放區的 Google Cloud 位置。
  • PROJECT-ID:您建立 Docker 存放區的 Google Cloud 專案 ID。
  • REPOSITORY-NAME:Docker 存放區的名稱。

使用 gcloud run deploy 指令部署整合:

gcloud run deploy --image=LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY-NAME/agent-assist-modules-application-server --service-account=SERVICE-ACCOUNT-EMAIL --memory=1Gi

更改下列內容:

  • LOCATION:您建立 Docker 存放區的 Google Cloud 位置。
  • PROJECT-ID:您建立 Docker 存放區的 Google Cloud 專案 ID。
  • REPOSITORY-NAME:Docker 存放區的名稱。
  • SERVICE-ACCOUNT-EMAIL:服務帳戶用戶端電子郵件。

指令執行時,請按照下列步驟操作:

  1. 系統提示您選擇區域時,請選取區域 (例如 us-central1)。
  2. 系統提示您輸入服務名稱時,請按下 Enter 鍵接受預設值。
  3. 系統提示是否允許未經驗證的叫用時,請按下 y。

詳情請參閱 Cloud Run 說明文件。您可以在 Google Cloud Platform 控制台的「Cloud Run」下方,查看有效的整合部署項目清單。

環境變數

按照 Cloud Run 操作說明設定必要的環境變數。

部署服務後,CLI 會輸出應用程式部署到的網址 (target_url)。請返回並使用這個值設定 APPLICATION_SERVER_URL 環境變數。

關閉應用程式伺服器

如要關閉應用程式伺服器,您必須刪除 Cloud Run 服務。

在本機終端機中執行下列指令,並選取先前選擇的目標平台,列出有效的部署作業:

    gcloud beta run services list

接著,執行下列指令:

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