サンタのボイスエージェントをReactアプリに数分で追加
- 公開日
このホリデーシーズンは、アプリにサンタを追加しましょう。
ElevenLabsのAgents Platformと@elevenlabs/react SDKを使えば、サンタクロースの音声エージェントをわずか数分でReactアプリに追加できます。このガイドでは、次のことを行います。
- ElevenLabsダッシュボードでサンタエージェントを作成する
- WebRTCを使ってReactコンポーネントに接続する
- シンプルな「サンタに電話」ボタンを追加する
1. 登録してAgents Platformを開く
- 登録/ログインしてElevenLabsにアクセスします。
- 左側のサイドバー上部にあるプラットフォーム切り替えを開きます。
- 「Agents Platform」を選択します。
「Build」セクションの下に、サイドバーとAgents、Knowledge Base、Tools、Voicesが表示されます。
2. サンタエージェントを作成する
次に、サンタのように振る舞い、サンタの声で話すエージェントを作成します。
- サイドバーでAgentsをクリックします。
- 「+ New Agent」をクリックします。
- 「Blank Agent」を選び、ゼロから始めます。
名前をSantaに設定します。
システムプロンプト
「System Prompt」フィールドに、次の内容を貼り付けます。
最初のメッセージ
「First Message」を次のように設定します。
ホー、ホー、ホー!メリークリスマス、友よ。君の名前を教えてくれるかな?
通話が始まると、ユーザーにはこのメッセージが聞こえます。
音声
「Voice」セクションで、以下を設定します。
- 「「Jerry B. – Santa Claus」
- Voice ID:
MDLAMJ0jxkpYkjXbmG4t
これでサンタが本物のサンタのように聞こえるようになります。
セキュリティ
この例では、アクセスを開放したままにします。
- 「Security」で、「Enable authentication」がオフになっていることを確認します。
初回のデモでは、「Enable Authentication」をオフのままにして、誰でも制限なくエージェントに接続できるようにして問題ありません。これによりオンボーディングが速くなり、簡単なプロトタイプ、ハッカソンプロジェクト、社内デモに最適です。
ただし、本番環境または外部からアクセス可能なアプリケーションでは、エージェントを絶対に無防備な状態にしてはいけません。代わりに、ElevenLabsのToken Endpointを使用して、ユーザーセッションごとに有効期間が短く、権限範囲を限定したアクセストークンを生成してください。これにより、接続できるユーザー、アクセス可能な期間、ユーザーに許可する操作を完全に管理できます。認証を有効にすると、不正な通話、悪用、想定外の範囲での利用からエージェントを保護できます。本番公開前に強く推奨します。
3. エージェントIDを確認する
エージェントページの上部に、「Agent ID」フィールドがあります。
この値を控えておきましょう。後の手順でReactコンポーネントに貼り付けます。
4. React SDKをインストールする
React/Next.jsプロジェクトに、ElevenLabs React SDKをインストールします。
これで、useConversationフックを使って音声通話を開始・終了できます。
5. 「サンタに電話」ボタンを追加する
たとえばCallSantaButton.tsxという新しいコンポーネントを作成し、次のコードを貼り付けます。
次に、置き換え "<AGENT_ID>"を、ダッシュボードからコピーした実際のエージェントIDに置き換えます。
続いて、次のようにUI内の任意の場所にボタンをレンダリングします。
6. 試してみる
ブラウザで開き、「Start Call」をクリックします。
- ブラウザからマイクの使用許可を求められます。
- サンタエージェントとのWebRTCセッションが開始します。
- 次のメッセージが聞こえます。
「ホー、ホー、ホー!メリークリスマス、友よ。君の名前を教えてくれるかな?」
その後、サンタが名前、ほしい物リスト、そして今年「よい子リスト」に載るために何をしてきたかを尋ねます。
次のステップ
基本機能が動作したら、次のことができます。
- 認証の背後にサンタを配置する。エージェントのSecurity設定を使用します。
- 言語を切り替える。ユーザーロケールを渡し、プロンプトに処理させます。
- UIをカスタマイズする。カスタムボタン、アニメーション、または「サンタに電話」画面全体を追加できます。
ただし、コアとなるインテグレーションは以下だけです。
- Agents Platform内の1つのエージェント
- 1つの
agentId - 1つの
useConversationフックとボタン
これだけで、リアルタイムで会話できるサンタの魔法をReactアプリに取り入れられます。


