ローカライズ

ユーザーはさまざまな場所からさまざまな言語でコミュニケーションをとります。ユーザーのコミュニケーション設定に対応し、エクスペリエンスをローカライズするエージェントは、対応しないエージェントよりも多くのユーザーにリーチし、より充実したユーザー エクスペリエンスを生み出し、リピート率を高めます。ビジネス メッセージでは、ユーザーの言語 / 地域の設定をエージェントに渡すことで、エージェントと店舗がユーザーの言語 / 地域の設定に対応できるようになります。エージェントは、言語 / 地域ごとにデフォルトの言語 / 地域と固有の会話設定を指定し、ユーザーの言語 / 地域とエージェントまたは店舗のサポート対象の言語 / 地域との一致を解決できます。

ロケールを検出することで、ビジネス メッセージ エージェントは、自動エージェントとライブ エージェントのやり取りでユーザーの地域と言語の好みを認識し、エクスペリエンスをローカライズできます。

ユーザーの言語 / 地域

ユーザーがエージェントとの会話を開始したとき、およびユーザーがメッセージを送信するたびに、ビジネス メッセージはユーザーのデバイスの言語 / 地域設定を検出します。メッセージ エージェントが受信する各メッセージには、context.userInfo.userDeviceLocale フィールドにユーザーのロケールが含まれています。

ビジネス メッセージでは、ユーザーのデバイスのロケールを使用して、ユーザー インターフェースの言語を変更し、プラットフォームによって生成される文字列の言語を変更します。

ユーザーがデバイスの言語を変更した場合や、言語 / 地域の設定が異なるデバイスを切り替えた場合、会話中に userDeviceLocale が変更されることがあります。エージェントが userDeviceLocale を読み取る場合は、新しいメッセージごとに値が変更されているかどうかを確認し、変更されている場合はそれに応じて対応する必要があります。たとえば、エージェントが言語 / 地域が変更されたことを検出し、現在の言語でコミュニケーションを続けるか、新しい言語 / 地域に一致する言語に切り替えるかをユーザーに尋ねることがあります。

userDeviceLocale はユーザーのデバイスによって指定され、任意の IETF BCP 47 言語タグを指定できます。

エージェントと場所の言語 / 地域

エージェントと店舗は、サポートしている言語 / 地域に対して会話設定を指定できます。たとえば、エージェントが「en」ロケールに英語のウェルカム メッセージを指定し、「es」ロケールに同じメッセージをスペイン語で指定したり、ある拠点が「fr」ロケールの設定を指定し、別の拠点が指定しないことがあります。

エージェントまたは拠点でロケールに会話設定が設定されている場合、Business Messages は、エージェントまたは拠点がそのロケールをサポートしていると見なします。エージェントとロケーションは、通常使用するデフォルトの言語 / 地域(defaultLocale)を設定できます。

エージェントまたはロケーションのデフォルトの言語 / 地域を更新するには、デフォルトの言語 / 地域を更新するをご覧ください。ロケールの会話設定を行うには、会話を開始するをご覧ください。

解決済みのロケール

ユーザーのデバイスの言語 / 地域を特定し、その言語 / 地域をエージェントまたはユーザーがメッセージを送信した場所の言語 / 地域と比較することで、ユーザーとエージェントの言語 / 地域の一致を解決できます。Business Messages が一致を解決する際、エージェントまたは拠点の defaultLocale は、他のサポートされているロケールよりも優先されます。エージェントが受信する各メッセージには、この一致が context.resolvedLocale フィールドに含まれています。

ビジネス メッセージは、解決されたロケールを使用して、表示する会話設定(ウェルカム メッセージやオフライン メッセージなど)と文字列(ライブ エージェントのリクエスト候補などの文字列)を選択します。エージェントは、一貫したユーザー エクスペリエンスを維持するために、解決済みの言語 / 地域でコミュニケーションを取るのが効果的な手法です。

ユーザーがデバイスの言語を変更したり、ロケール設定が異なるデバイスを切り替えたりすると、会話中に解決されたロケールが変更されることがあります。エージェントは、新しいメッセージごとに値が変更されたかどうかを確認し、変更された場合はそれに応じて適応する必要があります。たとえば、エージェントがロケールの変更を検出し、現在の言語でコミュニケーションを続けるか、新しいロケールに一致する言語に切り替えるかをユーザーに尋ねることがあります。

デフォルトの言語 / 地域を更新する

デフォルトの言語 / 地域を指定するには、Business Communications API で PATCH リクエストを行い、エージェントまたはビジネス拠点の defaultLocale フィールドを更新します。

エージェントまたは店舗の会話設定(ウェルカム メッセージや会話の開始など)を言語 / 地域で更新するには、会話を開始するをご覧ください。

前提条件

デフォルトの言語 / 地域を更新する前に、次のものが必要です。

  • 開発マシンの GCP プロジェクトのサービス アカウント キーのパス
  • エージェントのデフォルトのロケールの場合、エージェント name(例: 「brands/12345/agents/67890」)

    エージェントの name がわからない場合は、ブランドのすべてのエージェントを一覧表示するをご覧ください。

  • ロケーションのデフォルトのロケールの場合、ロケーション name(例: 「brands/12345/locations/67890」)

    ロケーションの name がわからない場合は、ブランドのすべてのロケーションを一覧表示するをご覧ください。

  • デフォルトとして設定する言語 / 地域。2 文字の 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 をご覧ください。