本地化和語言代碼

使用者可透過許多不同語言進行溝通。這類代理程式會回應使用者的通訊偏好設定,並為他們提供本地化的體驗,比未回應的服務專員更能觸及更多使用者、建立更多滿足使用者需求的服務,以及吸引更多重複互動。Business Messages 可將使用者的語言代碼設定傳遞至代理程式,藉此讓代理程式和位置回應使用者的偏好設定、讓各個語言代碼指定預設語言代碼和獨特的對話設定,以及解析使用者語言代碼與服務專員或位置的支援語言代碼。

只要偵測語言代碼,Business Messages 服務專員就會自動得知使用者所在地區和語言偏好設定,進而自動進行互動,以提供本地化體驗。

使用者語言代碼

當使用者與服務專員開始對話後,每次使用者傳送訊息時,Business Messages 就會偵測使用者裝置的語言代碼設定。每個訊息代理程式都會在 context.userInfo.userDeviceLocale 欄位中納入使用者的語言代碼。

Business Messages 會根據使用者裝置的語言代碼來變更使用者介面中的語言,並變更平台產生的字串語言。

如果使用者變更裝置的語言,或切換不同語言代碼的裝置,userDeviceLocale 就會在對話中變更。如果服務專員讀取了 userDeviceLocale,應確認該訊息的值是否每次都有所變更,並據此調整。例如,代理程式可能會偵測語言代碼變更,並詢問使用者是否偏好以目前語言繼續通訊,或是改用與新語言代碼相符的語言。

userDeviceLocale 會由使用者的裝置指定,可以是任何 IETF BCP 47 語言標記。

服務專員和地點語言代碼

代理程式和位置可讓您為支援的語言代碼指定對話設定。例如,代理程式可能會將英文訊息指定「en」語言代碼,並以「es」語言代碼指定西班牙文的相同訊息,或者某個位置可能會指定「fr」語言代碼的設定,而另一個位置則沒有。

如果代理程式或位置設定了語言代碼的對話設定,Business Messages 會假設該服務專員或位置支援該語言代碼。代理程式和位置可設定通常用於通訊的預設語言代碼 (defaultLocale)。

如要更新代理程式或位置的預設語言代碼,請參閱更新預設語言代碼。如要進行語言代碼的對話設定,請參閱開始對話

已解析的語言代碼

商家訊息功能會辨識使用者裝置的語言代碼,然後將該語言代碼與服務專員指定的語言代碼或使用者訊息傳送的位置進行比對,藉此解決使用者和服務專員語言代碼之間的配對問題。在 Business Messages 解析相符項目時,服務專員或位置的 defaultLocale 的優先順序高於其他支援的語言代碼。每則訊息代理程式都會在 context.resolvedLocale 欄位中包含這個相符項目。

Business Messages 會使用已解析的語言代碼,選取要顯示哪些對話設定 (例如歡迎訊息和離線訊息) 和字串 (例如即時服務專員要求建議字串)。最佳做法是讓服務專員在解析的語言代碼中進行通訊,藉此維持一致的使用者體驗。

如果使用者變更裝置的語言,或切換不同語言代碼的裝置,解析的語言代碼可能會變更。代理程式應檢查每則新訊息的值是否變更,並視情況調整。例如,代理程式可能會偵測語言代碼變更,並詢問使用者是否要繼續以目前的語言進行通訊,或是改用與新語言代碼相符的語言。

更新預設語言代碼

如要指定預設語言代碼,請使用 Business Communications API 發出 PATCH 要求,以更新代理程式或位置的 defaultLocale 欄位。

如要更新特定語言代碼的服務專員或位置的對話設定 (例如歡迎訊息和對話開頭),請參閱「開始對話」。

必要條件

更新預設語言代碼之前,您需要:

  • 開發機器上 GCP 專案的服務帳戶金鑰
  • 服務專員的預設語言代碼:name (例如「brands/12345/agents/67890」)

    如果您不知道代理程式的 name,請參閱列出品牌的所有代理程式

  • 地點的預設語言代碼 name,例如「brands/12345/locations/67890」

    如果您不知道地點的 name,請參閱「列出品牌的所有地點」。

  • 設為預設的語言代碼,採用雙字元的 ISO 639-1 語言代碼

  • 針對服務專員或地點設定的語言代碼專屬對話設定。請參閱開始對話

傳送更新要求

如要更新代理程式或位置,請執行下列指令。將變數替換成您在「必要條件」識別的值。

服務專員預設語言代碼


# This code sets the default locale of a Business Messages agent.
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__, __AGENT_ID__ and __DEFAULT_LOCALE__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.defaultLocale" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "defaultLocale": "__DEFAULT_LOCALE__"
  }
}'

如要設定格式和值選項,請參閱 BusinessMessagesAgent

位置預設語言代碼


# This code updates the default locale of an agent.
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.locations/patch

# Replace the __BRAND_ID__ and __LOCATION_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/locations/__LOCATION_ID__?updateMask=defaultLocale" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "defaultLocale": "en"
}'

如要查看格式化和值的選項,請參閱 brands.locations