hooks는 통화의 특정 시점에 동작합니다(최대 10개 규칙). on: "silence"(에이전트가 말을 마친 뒤 발신자가 seconds초(3–600) 동안 아무 말도 하지 않음, 다시 말할 때까지 한 번), 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으로 고릅니다. 다른 에이전트는 지금까지의 대화를 모두 받아 같은 통화를 이어 가며, 자신의 지시문, 음성, 지식, 도구, 넘기기 설정으로 말합니다. 통화는 첫 번째 에이전트 아래에 표시되고 분석되고 과금되며, 대화 기록에 넘긴 지점이 표시됩니다.
직접 연결한 통신사를 통한 전화 통화에서, 에이전트는 웹 통화라면 카드로 보여 줄 내용을 문자로 보낼 수 있습니다. 문자 한 건에 최대 3개 항목(제목, 한 줄 설명, 링크)을 통화 번호에서 보냅니다. 보내기 전에 고객의 동의를 받습니다. send_to_caller의 sms로 켭니다. 허용 사이트와 미리 만든 카드는 카드와 같습니다. 문자 요금은 통신사가 청구합니다.
"send_to_caller": {
"enabled": true,
"allowed_hosts": ["shop.example.com"],
"sms": { "enabled": true, "signature": "Acme Salon", "countries": ["CA"] }
}
signature는 모든 문자 앞에 붙는 서명입니다(비우면 에이전트 이름). 문자는 내 번호와 같은 국가의 번호와 추가한 countries의 번호로 보냅니다.call.message_sent(channel은 sms, status 포함)가 전송되고, 결과는 call.message_status(delivered, reason이 있는 failed, 또는 unconfirmed)로 전송됩니다. GET /calls/{id}는 통화의 texts를 반환합니다.