本文へ移動
Developers

ウェブチャットウィジェット

数分でサイトに多言語サポートチャットを埋め込めます。訪問者は自分の言語で入力し、チームはサポート受信箱で返信、すべてのメッセージは自動翻訳されます。

クイックスタート

  1. 1 ワークスペースで「設定 → ウェブチャット」を開き、ウィジェットを有効化します。
  2. 2 ウィジェットを読み込む各サイトのオリジンを「許可するオリジン」に追加します。
  3. 3 埋め込みスニペットをコピーし、</body> 終了タグの直前に貼り付けます。
<script src="https://widget.rosettachat.app/widget.js" data-site="wgt_..." async></script>

署名付き訪問者ID(任意)

訪問者が既にログインしている場合、身元を証明するとエージェントに「認証済み」バッジが表示され、会話に安定した external_user_id が付与されます。「設定 → ウェブチャット」で署名シークレットを生成し、バックエンドでトークンに署名して data-identity で渡します。シークレットをブラウザに公開しないでください。

import crypto from 'node:crypto';

function signIdentity(secret, payload) {
  const b64 = Buffer.from(JSON.stringify(payload)).toString('base64url');
  const sig = crypto.createHmac('sha256', secret).update(b64).digest('hex');
  return `${b64}.${sig}`;
}

const token = signIdentity(process.env.ROSETTA_IDENTITY_SECRET, {
  external_user_id: user.id,
  name: user.name,
  email: user.email,
});

Webhook

conversation.created、conversation.closed、(任意で)message.created を購読できます。各配信は X-Rosetta-Signature: t=<unix>,v1=<hmac_sha256("t.body", secret)> で署名されます。Webhook 作成時に一度だけ表示されるシークレットで検証してください。

テストモード

開発中はサンドボックス用の埋め込みスニペット(別のテストキー)を使います。その会話はテストとして扱われ、サポート使用量に含まれず、既定の受信箱に表示されず、自動的に削除されます。

API リファレンス

サポートウィジェットのエンドポイントの完全な REST リファレンスは API ドキュメントにあります。

API リファレンスを開く

すべての言語で会話を始める

無料 workspace を作成し、チームを招待して、言語の壁が消えるのを体験してください。クレジットカードは不要です。