Experience Cloudサイトの多言語対応とMIAW(Messaging for In-App and Web)を組み合わせる際、サイト側で選択された言語コンテキストをAgentforceの応答に正確に反映させ、さらに自動化フローからのシステムメッセージを適切な言語で送信するアーキテクチャの構築は、実装が複雑になりがちです。
本記事では、サイトのコンテキストとして設定された言語情報をフローを通じてAgentforceへ引き渡すバックエンド処理と、自動送信アクションにおける翻訳仕様の回避策について解説します。
1. 言語情報の連携仕様
サイト側で選択された言語情報は、MIAWを通じてSalesforceのバックエンドに自動的に連携されます。
公式仕様
- Experience Cloudの標準機能(または外部サイトでの言語設定)によってMIAWに渡されたロケール情報は、チャットセッション開始時に紐づくメッセージングユーザーオブジェクトの「言語」項目
MessagingEndUser.Languageに保存されます。 - Agentforce Service Agentは、セッション開始時にメッセージングセッションオブジェクトの「メッセージングユーザーの言語」項目
.MessagingSessionEndUserLanguageを読み取って応答言語を決定します。 MessagingEndUserからMessagingSessionへの言語情報の自動コピーは行われません。
設定方法
Experience Cloudでは言語セレクターコンポーネントを配置するだけです。選択した言語に応じてサイト内の文字コンテンツだけでなくMIAWの言語が切り替わり、さらに選択した言語の情報が MessagingEndUser.Language に保存されます。

多言語化の詳細は以下の記事をご覧ください。

2. メッセージング設定の変更
フロントエンドから渡されたロケール情報をレコードとして保存するため、メッセージングチャネルの設定を変更します。
公式仕様
- 「設定」>「メッセージング設定」から対象のチャネルを開き、「メッセージングユーザーの希望言語を特定」チェックボックスを有効にします。
この設定により、フロントエンドから送信された言語情報が、チャット開始時に紐づくメッセージングユーザーオブジェクトの言語項目MessagingEndUser.Languageに自動で保存されます。

3. オムニチャネルフローによるコンテキスト転記
Agentforceへ言語情報を引き継ぐため、オムニチャネルフロー内でデータを転記する処理が必要です。
サンプル構築
Agentforceへ転送する「作業のルーティング」要素の前に、以下のデータ取得および更新ステップを配置してフローを構成します。
- レコードを取得(メッセージングセッション)
- 条件:
Idがフローの入力変数{!recordId}と一致 - 取得項目: 親レコードのIDである
MessagingEndUserIdを変数に保持します。
- レコードを取得(メッセージングユーザー)
- 条件:
Idが手順1で取得したMessagingEndUserIdと一致 - 取得項目:
Languageを変数に保持します。
- レコードを更新(メッセージングセッション)
- 条件:
Idが入力変数{!recordId}と一致 - 更新内容:
EndUserLanguage項目を、手順2で取得したLanguageの値で上書きします。
この処理により、Agentforceはユーザーが選択した言語をコンテキストとして認識可能になります。

4. 言語ごとのメッセージングコンポーネント出し分け設計
Agentforceの自律的な回答生成は前段の設定で多言語化されますが、フローから自動送信する通知メッセージは翻訳の対象外という仕様が存在します。
『Agentforce連携における安全なユーザー識別:Experience Cloudでの個人認証とコンテキスト継承』の記事をご覧になって設定した方は、Agentforceのウェルカムメッセージをバイパスして通知メッセージングコンポーネントをフローから送信していますね。そこで送信しているメッセージが自動翻訳されないので、ユーザーが選択した言語によって複数種類の通知メッセージングコンポーネントを使い分ける必要があります。
公式仕様
- オムニチャネルフロー内で「会話メッセージを送信(Send Conversation Message)」アクションを使用し、通知メッセージングコンポーネントを自動送信する場合、ユーザーの言語設定にかかわらず「コンポーネントの元の未翻訳バージョン」が送信されます。
- トランスレーションワークベンチで当該コンポーネントの翻訳ラベルを定義していても、フローによる自動送信アクションでは動的翻訳が機能しません。
サンプル構築
自動翻訳が機能しない仕様を回避し、ユーザーに適切な言語でシステムメッセージ(初回案内など)を届けるための実装手法です。
- コンポーネントの分割作成: 翻訳機能を使用せず、言語ごとに個別の通知メッセージングコンポーネント(例:
WelcomeMessage_JA,WelcomeMessage_EN)を作成します。 - フロー内での分岐: メッセージを送信するフロー内に「決定」要素を配置し、
MessagingEndUser.Languageの値(jaやen_US)を評価します。 - アクションの使い分け: 分岐した各ルートに個別の「会話メッセージを送信」アクションを配置し、それぞれ対応する言語のメッセージングコンポーネントを指定して送信を実行します。
このアーキテクチャにより、コンテキストが維持されたまま、Agentforceによる回答とフローによる定型メッセージの両方で確実な多言語対応を実現できます。
- 通知メッセージングコンポーネント
- フロー実装
- 日本語
- 英語
{!$Parameters.MessagingSession.MessagingEndUser.Contact.FirstName}さん、はじめまして。私は DXforce のサポートエージェントです。何かお困りですか?

Hello {!$Parameters.MessagingSession.MessagingEndUser.Contact.FirstName}, pleasure to meet you. I am a support agent for DXforce. How may I assist you today?


5. Agentforceと多言語ナレッジの準備
ひとつの言語だけで構成されたナレッジでもAgentforceやプロンプトテンプレートが適切に翻訳してくれるため、基本的には日本語のナレッジ記事だけを執筆すれば事足りる場合もあります。しかしながらエンタープライズのQA対応では、言語ごとに厳密に定義されたナレッジを用意しLLMによる自動翻訳の揺らぎを避けることが推奨されます。
公式仕様
- Salesforce Knowledgeの「複数言語のサポート」機能を有効化し、主言語(日本語)の記事に対して翻訳版(英語:
en_US)の記事を作成します。 - Data Cloudの検索インデックスには、日本語版と英語版がそれぞれ独立したレコードとして、言語情報(メタデータ)付きで取り込まれます。
多言語対応RAGの作り方は以下記事を参照ください。
これにより、外部サイトでの言語切り替え操作が、MIAWのUI表示、Agentforceのシステムメッセージ、そして生成回答の基盤となるナレッジ記事の選定まで、一貫して連動する状態が構築されます。
結果
日本語


英語


まとめ
本記事では、Experience CloudサイトにおけるMIAWとAgentforceの多言語対応について、コンテキスト継承の仕組みとフローを用いた自動送信メッセージの制御手法を解説しました。
公式仕様
- サイト側で選択された言語ロケールは
MessagingEndUserの項目に自動連携されますが、Agentforceが参照するMessagingSessionへは自動でコピーされません。 - フロー内での「会話メッセージを送信」アクションによる通知メッセージングコンポーネントの送信では、翻訳機能(トランスレーションワークベンチ)が適用されず、常に元の未翻訳バージョンが送信されます。
DXforceの見解
- Agentforceへ正確な言語コンテキストを伝えるためには、オムニチャネルフロー内で対象レコードを取得し、言語情報を転記するバックエンド処理が不可欠です。
- また、フローからの定型メッセージ自動送信においては、標準の翻訳機能に頼るのではなく、言語ごとに専用のメッセージングコンポーネントを作成し、フロー内の分岐(決定要素)で出し分ける設計が最も確実な解決策となります。
Experience CloudとAgentforceを組み合わせた多言語サポート環境を構築する際の、仕様上の制約を回避するためのリファレンスとして活用してください。
参考URL
Streamline User Interactions with Auto-Populated Language Data
Agentforce 言語のサポート
複数言語のナレッジ記事のサポート
Guide to Understanding Multi-Language Support in Agentforce
顧客の言語でのメッセージングコンポーネントの翻訳
【LWR × 多言語】世界へ発信!サイトを「多言語対応」にするための手順を徹底解説!【完全ガイド】







読者の声