hooks は通話の特定の時点で動作を行います(最大 10 ルール)。on: "silence"(エージェントが話し終えてから発信者が seconds 秒(3–600)何も言わない。再び話すまで 1 回)、on: "time_elapsed"(通話開始から seconds 秒、10–3600)、on: "call_ending"。各ルールは {type: "say", text}、{type: "transfer", destination?}、{type: "end_call", text?}、{type: "tool", name, args?} を最大 3 つ do します。通話終了時のルールは関数の実行のみです。ルールで終了した通話の ended_reason は rule_ended です。
電話では、発信者が押したキーが回答としてエージェントに届きます。入力は # または 2 秒の間で確定します。発信時には、エージェントがキーを押して企業の自動音声メニューを進むこともできます。
transfer_number は発信者を人に引き継ぐときのエージェントの主な番号で、ワークスペースのクレジットが尽きたときに呼び出す番号でもあります。transfer_destinations は名前付きの番号を追加し、それぞれにいつ使うかの説明(「請求:請求書と返金の質問」)を付けると、エージェントが選びます。transfer_briefing を有効にすると、エージェントは転送時に短い要約を作成し、電話に出た人は発信者がつながる前に、EvaSay の音声とエージェントの要約言語でそれを聞きます。その通話の ended_reason は transferred になります。
handoffs を使うと、受付が予約担当のエージェントに予約を渡すように、エージェントがワークスペースの別の公開中エージェントに通話を渡せます。エージェントは when で選びます。引き継いだエージェントはそれまでの会話をすべて受け取って同じ通話を続け、自身の指示、音声、ナレッジ、ツール、引き継ぎ設定で話します。通話は最初のエージェントの下で一覧表示、分析、課金され、文字起こしに各引き継ぎが記録されます。
お客様ご自身の通信事業者を経由する電話では、ウェブ通話ならカードで表示する内容を、エージェントがSMSで送れます。1通に最大3項目(タイトル、1行の説明、リンク)を、通話の番号から送ります。送る前に相手の同意を取ります。send_to_caller の sms で有効にします。許可するサイトと定型カードはカードと共通です。SMS料金は通信事業者が請求します。
"send_to_caller": {
"enabled": true,
"allowed_hosts": ["shop.example.com"],
"sms": { "enabled": true, "signature": "Acme Salon", "countries": ["CA"] }
}
signature は各SMSの冒頭に入る署名です(空欄ならエージェント名)。SMSはお使いの番号と同じ国の番号と、追加した countries の番号に送られます。call.message_sent(channel は sms、status 付き)が届き、結果は call.message_status(delivered、reason 付きの failed、または unconfirmed)で届きます。GET /calls/{id} は通話の texts を返します。