Open in
組み込みツール
ThunderPhoneエージェントに、通話の終了、発信者の転送、キーパッド操作、保留中の待機、ナレッジの検索、サウンドの再生、メールの送信、合計の計算を指示できます。
組み込みツールにより、独自の API を接続せずに、エージェントが一般的な通話アクションを実行できます。ほとんどは自動的に利用可能です。メール、サウンド、計算機、ナレッジ検索は、関連する設定またはソースを構成した後にのみ表示されます。各アクションを使用するタイミングをプロンプトでエージェントに指示します。
| ツール | 用途 | 有効にする方法 | 対応する通話 |
|---|---|---|---|
end_call | 完了した会話を終了する | 常に利用可能 | 電話、ブラウザの通話、ウィジェット、シミュレーション、Realtime |
transfer_call | 電話の発信者を転送する | プロンプトでルーティングを構成する | 通常の電話通話。call_events を使用するインライン Realtime ではコールド転送を使用できます。保存済みエージェントの Realtime では利用できません。 |
send_keypad_input | 電話メニューのキーを押す | 通常の電話通話では常に利用可能 | 電話通話。call_events を使用するインライン発信 Realtime。保存済みエージェントの Realtime では利用できません。 |
no_response | 自動メニューが話している間、または発信者が考えを声に出している間も聞き続ける。発信者がエージェントに待つよう依頼した場合は、「もちろんです。」とだけ応答します。 | 常に利用可能 | すべての通話タイプ |
wait_on_hold | 相手が戻るまで無言で待機する | 発信通話に含まれる | 発信電話通話および発信インライン Realtime セッション |
search_knowledge_base | 添付されたソースに基づいて回答する | エージェントにナレッジを添付する | ナレッジが添付された保存済みエージェントの通話 |
play_sound | 構成済みの通知音を再生する | 詳細設定 → ツールサウンド | 保存済みエージェントの通話 |
send_email | 固定の受信者 1 名にメールを送信する | 詳細設定 → メールを送信 | 保存済みエージェントの通話 |
calculate | 合計、手数料、および釣り銭を正確に計算する | 詳細設定 → 計算機 | 保存済みエージェントの通話 |
end_call
プロンプトでモデルに指示した場合に、現在の通話を終了します。デフォルトで利用可能であり、エージェント設定はありません。
条件と必要な別れの挨拶をプロンプトに記述します。
When the caller confirms they need nothing else, say goodbye and end the call.モデルによって終了された通話には end_reason: "ai_hangup" が設定されます。これには、通話時間制限の警告後に終了する通話も含まれます。時間制限に先に達した場合にのみ通話は max_duration で終了し、プリペイド残高がなくなると balance_exhausted で終了します。
transfer_call
モデルが指定した固定番号へ電話の発信者を転送します。コールド転送は即時に行われます。スクリーニング付きウォーム転送では、当事者を接続する前に転送先へ非公開で電話をかけます。ウォーム転送には、発信可能な確認済みのインポート済み VoIP 番号が必要です。
転送先番号と正確なルーティング条件をプロンプトに記述します。
If the caller asks for billing, transfer them to +15551234567.コールド転送が成功した場合は end_reason: "ai_transfer" になります。ウォーム転送が完了した場合は end_reason: "ai_warm_transfer" になります。ウォーム転送の試行に失敗すると制御がエージェントに戻るため、その後の通話終了によって終了理由が決まります。電話以外のセッションでは、転送リクエストによってセッションが終了します。
ダッシュボードと API の設定、ルーティング、スクリーニング、失敗処理、制限、テストについては、通話転送を参照してください。
send_keypad_input
電話回線に DTMF(電話キーパッド)の数字 0~9、*、# を送信します。モデルは、発信者にキーを押すよう求める自動メニューである IVR を操作するためにこれを使用します。デフォルトで利用可能であり、エージェント設定はありません。
操作を許可するメニューと、要求された値の取得元をモデルに伝えてください。メニューオプションを推測するよう指示しないでください。
Follow the phone menu for account status. Press a key only after the menu
states what that key does. Enter the account number supplied by the caller.プラットフォームは未対応の文字を削除し、有効な数字を順番に送信します。有効な数字が残っていない場合、または通話でキーパッド入力を送信できない場合は、失敗がエージェントに返されるため、エージェントは復旧できます。
no_response
自動システムがまだ話している、または聞き続けるよう求めている間、および発信者が考えを口にしている間(「ええと、少し考えます」)や別の相手に話しかけるために向きを変えた間、エージェントを沈黙させます。発信者が何かをしている間に待つようエージェントへ求め(「少々お待ちください」「確認します」「少し待ってもらえますか?」)、ほかに応答すべき内容がない場合、エージェントは「承知しました。」だけを言い(「ごゆっくりどうぞ」ではなく)、発信者が再び話すのを待ちます。回線が静かなままの場合でも、エージェントの無音時の確認応答は引き続き実行され、常に音声で行われます。これは、担当者によるあいさつ、質問、または実際の保留キュー向けではありません。デフォルトで利用でき、エージェント設定はありません。
発信者が少し待つよう求めたときにエージェントが言う内容をプロンプトで指定している場合は、プロンプトの指示が優先されます。
通常は組み込みの説明で十分です。IVR が多い通話では、プロンプトで境界を明確にしてください。
Stay silent while a phone menu is still speaking. Answer a live person as soon
as they address you.このアクションでは通話は終了しません。
wait_on_hold
発信エージェントを、実際の担当者が戻るまで無音の保留状態にします。 モデルがこれを使用するのは、相手がエージェントを保留にすると明示的に伝えた後のみです。発信通話では自動的に利用可能であり、ダッシュボードでの設定はありません。
If a person explicitly puts you on hold, wait silently. When they return,
continue from the question you were discussing.IVR の「少々お待ちください」メッセージに対して、エージェントにこれを使用するよう指示しないでください。保留はデフォルトで最大15分間継続します。通常の発信通話では、POST /v1/call
が正の整数の max_hold_seconds を受け付けます。インライン Realtime では
max_hold_seconds は10~900秒に制限されます。相手が
戻ると、通話の終了理由を変更せずにエージェントが応答を再開します。制限時間が
切れると、プラットフォームは end_reason: "ai_hangup" で通話を終了します。
search_knowledge_base
エージェントに添付されたドキュメントを検索し、関連する抜粋を返します。これを有効にするには、 ナレッジベースまたは個別のナレッジドキュメントを添付し、そのソースから回答する必要がある内容をモデルに指示します。
Search the knowledge base before answering policy questions. If the first
search is inconclusive, try once more with different key terms.検索が失敗した場合、結果がエージェントに返されます。ダッシュボードと API の設定については、 ナレッジベースを参照してください。
play_sound
同じターン内の発話後に、エージェントに設定された通知音を再生します。 ダッシュボードで 詳細設定 → ツール音 を チャイム、ディン、 または ビープ に設定し、エージェントをデプロイします。なし を選択するとツールが削除されます。
Agents API では、play_sound_asset を
"chime"、"ding"、または "beep" としてステージングしてからデプロイします。ツールを
無効にするには "" に設定します。
After confirming that an appointment was saved, say "You're all set" and play
the notification sound.再生に失敗した場合はエージェントに返され、通話は終了しません。
send_email
エージェント所有者が設定した1人の受信者にプレーンテキストメールを送信します。 モデルが件名と本文を指定します。受信者パラメーターがモデルに表示されることはなく、 アドレスを選択または変更することもできません。
ダッシュボードで 詳細設定 → メール送信 を有効にし、受信者のアドレスを保存してから、
エージェントをデプロイします。Agents API では、send_email_enabled: true と
空でない send_email_recipient の両方をステージングしてからデプロイします。
プロンプトでトリガーと必要な内容を定義します。
When the caller asks to leave a message, collect their name, callback number,
and message. Read the details back for confirmation, then email them.1回の通話で試行できるメール送信は最大3回です。各件名は300 文字、各本文は20,000文字に制限されます。設定不足、無効な 内容、通話ごとの上限、および配信失敗はエージェントに返されます。 配信に失敗した場合も、3回の試行のうち1回として扱われます。
広範囲にデプロイする前に、管理された受信者でテストしてください。ブラウザ通話と シミュレーションでは実際にメールが送信されます。ドライランモードはありません。
calculate
算術式を正確に評価して結果を返すため、エージェントが頭の中で価格を計算する必要がありません。デフォルトでは無効です。ダッシュボードで 詳細設定 → 計算機 を有効にしてから、エージェントをデプロイします。Agents API では、calculator_enabled: true をステージングしてからデプロイします。
モデルは 2*23.5 + 16.5 + 4 のような式を書き、結果を発信者に読み上げます。式には数値、+、-、*、/、および括弧を使用できます。1回の呼び出しには、小計や配送料を含む合計など、; で区切られた最大10個の式を含めることができ、全体で最大500文字です。結果は小数点以下10桁に丸められます。計算には正確な10進数演算を使用するため、0.1 + 0.2 は 0.3 を返します。ゼロ除算や式内のその他の問題は、エージェントが修正できるようエラーとして返されます。ThunderPhone 上で実行され、つなぎの文言や入力音なしに即座に応答します。
注文合計、手数料、またはお釣りを案内するエージェントで有効にします。プロンプトの変更は不要です。
互換性に関する注意
詳細設定 → 中断不可の告知 設定とレガシー
speak_uninterruptible_enabled フィールドは互換性のために残されていますが、有効にしても
効果はありません。設定はオフのままにしてください。どのプロンプトでもこのツールを有効化することはできません。
通話開始時に必須の告知には、同意に関するアナウンス を使用してください。これは通常の会話の前に そのまま再生され、中断できません。通話録音に関する同意法を参照してください。
組み込みツールをテストして監視する
ブラウザ通話またはシミュレーションを使用して、プロンプト、ナレッジ検索、音声、 メールを確認します。これらの環境では電話ネットワークの動作を再現できません。対象となる 発信電話でキーパッド操作と保留をテストし、条件を満たすインポート済み VoIP 番号を使用した実際の通話で 完全なウォーム転送をテストしてください。Realtime のサポートは上記の表に示すとおり 限定されています。
通話、料金、Webhook
組み込みアクションには、使用ごとのツール料金はかかりません。通常の通話料金とプロバイダー料金は
引き続き適用されます。料金を参照してください。通話とその結果は
完了したトランスクリプトに表示される場合がありますが、telephony.tool または web.tool は発行されません。
これらのイベントはユーザー定義関数向けです。完了した
通話終了または転送のみが通話の end_reason を変更します。その他の失敗はエージェントに返されます。
通話レコードについては、完了Webhookを参照してください。