Cal.com

ElevenLabsエージェントをCal.comのスケジューリングに接続します。

概要

ElevenLabs AIエージェントをCal.comに接続して、スケジュール管理やカレンダー予約を行います。このインテグレーションにより、エージェントは自然な会話を通じて空き状況の確認、予定の予約、会議のキャンセルや再スケジュール、既存予約の検索を行えます。

機能

機能サポート
ゼロ保持モード(ZRM)非対応
ツール内の添付ファイル非対応 — ツールはテキストのみを扱います

セットアップ

このインテグレーションでは、認証にCal.com APIキー(OAuthアプリではありません)を使用します。

1

Cal.comでAPIキーを生成する

Cal.comアカウントでSettings > Developer > API Keysに移動し、Newをクリックします。生成されたキーはすぐにコピーしてください。再表示されることはありません。

2

ライブキーを使用する

Cal.comでは、テストキー(cal_で始まる)とライブキー(cal_live_で始まる)の2種類のキーが生成されます。エージェントが実際のカレンダーデータにアクセスできるよう、ライブキーを使用してください。

3

ElevenLabsで接続する

ElevenLabsのインテグレーション設定で、Cal.com APIキーをAPI Keyフィールドに貼り付けます。

デモ

このデモでは従来のWebhookツールを使用しています。ネイティブのCal.comインテグレーションを使用している場合、ツールは 自動的に設定されるため、Webhookを手動で設定する必要はありません。

Cal.comインテグレーションのデモ

仕組み

エージェントはツール呼び出しを使用して、予約プロセスを段階的に進めながら会議をスケジュールします。以下のタブでは、概要と詳細なシステムプロンプトを確認できます。

1

最初の問い合わせと会議の詳細

エージェントは、スケジュールに必要な情報を収集するため、会議の目的、希望日時、所要時間を尋ねます。

2

カレンダーの空き状況を確認

エージェントは次の方法でカレンダーの空き状況を確認します:

  • get_available_slotsツールを使用して、空いている時間枠を取得します。
  • 希望する時間が空いているかを確認します。
  • 希望時間が空いていない場合は、代替案を提案します。
  • 選択した時間を発信者に確認します。
3

連絡先情報の収集

時間が決まったら、エージェントは次を行います:

  • 出席者のフルネームを収集して検証します。
  • メールアドレスが正確か確認します。
  • タイムゾーン情報を確認します。
  • Cal.comのイベントタイプに必要な追加フィールドを収集します。
4

会議の作成

エージェントは次を行います:

  • すべての情報を確認した後、book_meetingツールを呼び出します。
  • 予約テンプレートの構造に従います。
  • 会議が作成されたことを出席者に確認します。
  • カレンダー招待が送信されることを伝えます。

Webhookの手動設定

ネイティブのCal.comインテグレーションを使用する場合、ツールは自動的に設定されます。以下の手順は Webhookを手動で設定する場合にのみ適用されます。

1

Cal.comシークレットを保存する

認証が必要なリクエストを行う前に、APIキーを安全に保存してください。まだ作成していない場合は、新しいCal.com APIキーを生成します。

Cal.com APIでは、次の認証ヘッダーが必要です:

Cal request header structure
'Authorization': 'Bearer YOUR_API_KEY'

リクエスト時に安全にアクセスできるよう、キーはエージェントのシークレットストレージに保存してください。

Cal.comで求められる認証構造に合わせるため、シークレットを作成する際はAPIキーの先頭にBearer を付けてください。

ツールのシークレット

2

エージェントにツールを追加する

カレンダー予約を有効にするには、次の2つのツールを作成します:

  1. get_available_slots:ユーザーが_「ルイは火曜日の午前10時30分に空いていますか?」_と尋ねると、エージェントはCal.comの「空き時間枠を取得」エンドポイントを使用して、空いている時間枠を確認します。

  2. book_meeting:適切な時間を特定した後、エージェントはCal.comの「予約を作成」エンドポイントを使用して会議を予約します。

ダッシュボードのToolsセクションに移動し、Add Toolを選択します。ツールタイプとしてWebhookを選び、以下のセクションを入力します:

ツールをいつ呼び出すべきかをエージェントが判断するために使用するメタデータ:

フィールド値
名前get_available_slots
説明このツールは、特定の時間枠がカレンダーで利用可能かを確認します。
メソッドGET
URLhttps://api.cal.com/v2/slots

ツールをいつ呼び出すべきかをエージェントが判断するために使用するメタデータ:

フィールド値
名前book_meeting
説明このツールは、時間が決まったらカレンダーに会議を予約します。
メソッドPOST
URLhttps://api.cal.com/v2/bookings

Test AI agentボタンを押してエージェントをテストします。必要に応じてシステムプロンプトを調整してください。

3

日付と時刻を認識させる

デフォルトでは、エージェントは現在の日付や時刻を認識しません。次のいずれかの方法を使用してください:

  1. 時刻取得ツールを作成する:現在の日付と時刻を取得するツールを追加します。

  2. オーバーライド:オーバーライド機能を使用して、各会話の開始時に現在の日付と時刻をシステムプロンプトへ挿入します。

セキュリティに関する考慮事項

  • すべてのWebhook呼び出しにHTTPSエンドポイントを使用します。
  • 機密値はElevenLabs Secrets Managerを使用してシークレットとして保存します。
  • すべての認証ヘッダーが必要な形式(Bearer YOUR_API_KEY)に従っていることを確認します。
  • イベントタイプIDやAPIの詳細を発信者に公開しないでください。

便利なリンク