[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"doc-\u002Fen\u002Fdocs\u002Fcanaux\u002Ftelephone":3,"docs-nav-en":1057},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"body":10,"_type":1051,"_id":1052,"_source":1053,"_file":1054,"_stem":1055,"_extension":1056},"\u002Fen\u002Fdocs\u002Fcanaux\u002Ftelephone","canaux",false,"","Real-time telephony","Inbound and outbound voice via LiveKit + SIP — streaming transcription and synthesis, barge-in, transfer, outbound calls started by a pipeline.",{"type":11,"children":12,"toc":1034},"root",[13,43,50,55,92,104,111,186,213,219,250,260,266,287,358,363,369,380,460,466,483,538,566,572,608,614,634,818,823,856,925,931,964,970,983,989],{"type":14,"tag":15,"props":16,"children":17},"element","p",{},[18,21,27,29,34,36,41],{"type":19,"value":20},"text","The ",{"type":14,"tag":22,"props":23,"children":24},"strong",{},[25],{"type":19,"value":26},"telephony",{"type":19,"value":28}," channel lets a betool pipeline ",{"type":14,"tag":22,"props":30,"children":31},{},[32],{"type":19,"value":33},"answer",{"type":19,"value":35}," calls and ",{"type":14,"tag":22,"props":37,"children":38},{},[39],{"type":19,"value":40},"place",{"type":19,"value":42}," them. Real-time audio, streaming transcription, streaming speech synthesis, and barge-in interruption are all supported.",{"type":14,"tag":44,"props":45,"children":47},"h2",{"id":46},"architecture",[48],{"type":19,"value":49},"Architecture",{"type":14,"tag":15,"props":51,"children":52},{},[53],{"type":19,"value":54},"Under the hood:",{"type":14,"tag":56,"props":57,"children":58},"ul",{},[59,70,80],{"type":14,"tag":60,"props":61,"children":62},"li",{},[63,68],{"type":14,"tag":22,"props":64,"children":65},{},[66],{"type":19,"value":67},"LiveKit",{"type":19,"value":69}," handles real-time audio transport.",{"type":14,"tag":60,"props":71,"children":72},{},[73,78],{"type":14,"tag":22,"props":74,"children":75},{},[76],{"type":19,"value":77},"LiveKit-SIP",{"type":19,"value":79}," connects LiveKit to your carrier trunk (SIP).",{"type":14,"tag":60,"props":81,"children":82},{},[83,85,90],{"type":19,"value":84},"A ",{"type":14,"tag":22,"props":86,"children":87},{},[88],{"type":19,"value":89},"dedicated worker",{"type":19,"value":91}," orchestrates the call: transcription (STT), LLM, speech synthesis (TTS).",{"type":14,"tag":15,"props":93,"children":94},{},[95,97,102],{"type":19,"value":96},"This stack runs as a ",{"type":14,"tag":22,"props":98,"children":99},{},[100],{"type":19,"value":101},"separate process",{"type":19,"value":103}," from the main backend. You do not configure it directly — the operator of your instance sets up the SIP bridge.",{"type":14,"tag":105,"props":106,"children":108},"h3",{"id":107},"voice-providers",[109],{"type":19,"value":110},"Voice providers",{"type":14,"tag":112,"props":113,"children":114},"table",{},[115,139],{"type":14,"tag":116,"props":117,"children":118},"thead",{},[119],{"type":14,"tag":120,"props":121,"children":122},"tr",{},[123,129,134],{"type":14,"tag":124,"props":125,"children":126},"th",{},[127],{"type":19,"value":128},"Role",{"type":14,"tag":124,"props":130,"children":131},{},[132],{"type":19,"value":133},"Providers",{"type":14,"tag":124,"props":135,"children":136},{},[137],{"type":19,"value":138},"Default",{"type":14,"tag":140,"props":141,"children":142},"tbody",{},[143,165],{"type":14,"tag":120,"props":144,"children":145},{},[146,155,160],{"type":14,"tag":147,"props":148,"children":149},"td",{},[150],{"type":14,"tag":22,"props":151,"children":152},{},[153],{"type":19,"value":154},"Transcription (STT)",{"type":14,"tag":147,"props":156,"children":157},{},[158],{"type":19,"value":159},"Deepgram, faster-whisper (run locally)",{"type":14,"tag":147,"props":161,"children":162},{},[163],{"type":19,"value":164},"Deepgram",{"type":14,"tag":120,"props":166,"children":167},{},[168,176,181],{"type":14,"tag":147,"props":169,"children":170},{},[171],{"type":14,"tag":22,"props":172,"children":173},{},[174],{"type":19,"value":175},"Synthesis (TTS)",{"type":14,"tag":147,"props":177,"children":178},{},[179],{"type":19,"value":180},"ElevenLabs, Cartesia, OpenAI, Deepgram Aura",{"type":14,"tag":147,"props":182,"children":183},{},[184],{"type":19,"value":185},"ElevenLabs",{"type":14,"tag":15,"props":187,"children":188},{},[189,190,195,197,202,204,211],{"type":19,"value":20},{"type":14,"tag":22,"props":191,"children":192},{},[193],{"type":19,"value":194},"voice catalog",{"type":19,"value":196}," of each TTS provider can be browsed in the admin, with a sample you can ",{"type":14,"tag":22,"props":198,"children":199},{},[200],{"type":19,"value":201},"listen to",{"type":19,"value":203}," before choosing. The LLM is the one of your choice (managed model, BYOK or private model — see ",{"type":14,"tag":205,"props":206,"children":208},"a",{"href":207},"\u002Fen\u002Fdocs\u002Fdemarrer\u002Fbrancher-llm",[209],{"type":19,"value":210},"Connect an LLM key",{"type":19,"value":212},").",{"type":14,"tag":44,"props":214,"children":216},{"id":215},"prerequisites",[217],{"type":19,"value":218},"Prerequisites",{"type":14,"tag":56,"props":220,"children":221},{},[222,233,245],{"type":14,"tag":60,"props":223,"children":224},{},[225,226,231],{"type":19,"value":84},{"type":14,"tag":22,"props":227,"children":228},{},[229],{"type":19,"value":230},"SIP trunk",{"type":19,"value":232}," from a carrier.",{"type":14,"tag":60,"props":234,"children":235},{},[236,238,243],{"type":19,"value":237},"An ",{"type":14,"tag":22,"props":239,"children":240},{},[241],{"type":19,"value":242},"inbound number",{"type":19,"value":244}," and \u002F or the ability to place outbound calls.",{"type":14,"tag":60,"props":246,"children":247},{},[248],{"type":19,"value":249},"Access to the chosen STT \u002F TTS providers.",{"type":14,"tag":251,"props":252,"children":254},"alert",{"type":253},"info",[255],{"type":14,"tag":15,"props":256,"children":257},{},[258],{"type":19,"value":259},"With the managed offering, betool can provision the SIP trunk and voice providers for you.",{"type":14,"tag":44,"props":261,"children":263},{"id":262},"designing-a-voice-pipeline-inbound-call",[264],{"type":19,"value":265},"Designing a voice pipeline (inbound call)",{"type":14,"tag":15,"props":267,"children":268},{},[269,271,276,278,285],{"type":19,"value":270},"A voice pipeline starts with a ",{"type":14,"tag":22,"props":272,"children":273},{},[274],{"type":19,"value":275},"Start",{"type":19,"value":277}," node carrying the ",{"type":14,"tag":279,"props":280,"children":282},"code",{"className":281},[],[283],{"type":19,"value":284},"phone_gateway",{"type":19,"value":286}," receiver. On each transcribed turn of speech, the pipeline receives in particular:",{"type":14,"tag":56,"props":288,"children":289},{},[290,309,336,347],{"type":14,"tag":60,"props":291,"children":292},{},[293,299,301,307],{"type":14,"tag":279,"props":294,"children":296},{"className":295},[],[297],{"type":19,"value":298},"user_message",{"type":19,"value":300}," and ",{"type":14,"tag":279,"props":302,"children":304},{"className":303},[],[305],{"type":19,"value":306},"phone.transcript",{"type":19,"value":308}," — the transcribed turn of speech",{"type":14,"tag":60,"props":310,"children":311},{},[312,318,320,326,328,334],{"type":14,"tag":279,"props":313,"children":315},{"className":314},[],[316],{"type":19,"value":317},"phone.call",{"type":19,"value":319}," — the call: identifier, caller \u002F callee numbers, direction (",{"type":14,"tag":279,"props":321,"children":323},{"className":322},[],[324],{"type":19,"value":325},"inbound",{"type":19,"value":327}," \u002F ",{"type":14,"tag":279,"props":329,"children":331},{"className":330},[],[332],{"type":19,"value":333},"outbound",{"type":19,"value":335},"), line",{"type":14,"tag":60,"props":337,"children":338},{},[339,345],{"type":14,"tag":279,"props":340,"children":342},{"className":341},[],[343],{"type":19,"value":344},"phone.from",{"type":19,"value":346}," — the caller's number",{"type":14,"tag":60,"props":348,"children":349},{},[350,356],{"type":14,"tag":279,"props":351,"children":353},{"className":352},[],[354],{"type":19,"value":355},"phone.caller_timezone",{"type":19,"value":357}," — the time zone inferred from the dialing code (empty when the code covers several time zones)",{"type":14,"tag":15,"props":359,"children":360},{},[361],{"type":19,"value":362},"The text produced by the pipeline is read aloud by the TTS.",{"type":14,"tag":105,"props":364,"children":366},{"id":365},"receiver-settings",[367],{"type":19,"value":368},"Receiver settings",{"type":14,"tag":15,"props":370,"children":371},{},[372,373,378],{"type":19,"value":20},{"type":14,"tag":279,"props":374,"children":376},{"className":375},[],[377],{"type":19,"value":284},{"type":19,"value":379}," receiver sets the call's behavior, without code:",{"type":14,"tag":56,"props":381,"children":382},{},[383,400,410,420,430,440,450],{"type":14,"tag":60,"props":384,"children":385},{},[386,391,393,398],{"type":14,"tag":22,"props":387,"children":388},{},[389],{"type":19,"value":390},"Greeting",{"type":19,"value":392}," — several greeting ",{"type":14,"tag":22,"props":394,"children":395},{},[396],{"type":19,"value":397},"variants",{"type":19,"value":399}," (one is picked at random), a separate greeting for outbound calls, a delay before the greeting.",{"type":14,"tag":60,"props":401,"children":402},{},[403,408],{"type":14,"tag":22,"props":404,"children":405},{},[406],{"type":19,"value":407},"Silence",{"type":19,"value":409}," — a prompt after a prolonged silence, then a goodbye message and hang-up if the silence persists; maximum call duration.",{"type":14,"tag":60,"props":411,"children":412},{},[413,418],{"type":14,"tag":22,"props":414,"children":415},{},[416],{"type":19,"value":417},"Interruption (barge-in)",{"type":19,"value":419}," — enabled by default: the caller can cut the agent off. Minimum duration and number of words for an interruption to count.",{"type":14,"tag":60,"props":421,"children":422},{},[423,428],{"type":14,"tag":22,"props":424,"children":425},{},[426],{"type":19,"value":427},"End-of-turn detection",{"type":19,"value":429}," — detection mode and end-of-speech delays.",{"type":14,"tag":60,"props":431,"children":432},{},[433,438],{"type":14,"tag":22,"props":434,"children":435},{},[436],{"type":19,"value":437},"Fillers",{"type":19,"value":439}," — holding phrases spoken when the response is slow, dedicated phrases while a tool is running, or a background holding sound (keyboard, office, hold music). Disabled by default.",{"type":14,"tag":60,"props":441,"children":442},{},[443,448],{"type":14,"tag":22,"props":444,"children":445},{},[446],{"type":19,"value":447},"Voice",{"type":19,"value":449}," — STT \u002F TTS provider, model, language and voice, with fine voice settings (stability, speed…).",{"type":14,"tag":60,"props":451,"children":452},{},[453,458],{"type":14,"tag":22,"props":454,"children":455},{},[456],{"type":19,"value":457},"Call dispositions",{"type":19,"value":459}," — a closed list of outcome codes the agent can set on the call.",{"type":14,"tag":105,"props":461,"children":463},{"id":462},"what-the-agent-can-do-during-the-call",[464],{"type":19,"value":465},"What the agent can do during the call",{"type":14,"tag":15,"props":467,"children":468},{},[469,474,476,481],{"type":14,"tag":22,"props":470,"children":471},{},[472],{"type":19,"value":473},"Telephony tools",{"type":19,"value":475}," are available to the agents of a pipeline that has ",{"type":14,"tag":279,"props":477,"children":479},{"className":478},[],[480],{"type":19,"value":284},{"type":19,"value":482}," upstream:",{"type":14,"tag":56,"props":484,"children":485},{},[486,504,521],{"type":14,"tag":60,"props":487,"children":488},{},[489,495,497,502],{"type":14,"tag":279,"props":490,"children":492},{"className":491},[],[493],{"type":19,"value":494},"phone_gateway.transfer_call",{"type":19,"value":496}," — ",{"type":14,"tag":22,"props":498,"children":499},{},[500],{"type":19,"value":501},"transfer",{"type":19,"value":503}," the call to another number (SIP REFER). The number is validated in E.164 format; the transfer happens after the current response has been spoken.",{"type":14,"tag":60,"props":505,"children":506},{},[507,513,514,519],{"type":14,"tag":279,"props":508,"children":510},{"className":509},[],[511],{"type":19,"value":512},"phone_gateway.hangup_call",{"type":19,"value":496},{"type":14,"tag":22,"props":515,"children":516},{},[517],{"type":19,"value":518},"hang up",{"type":19,"value":520},", after the goodbye message.",{"type":14,"tag":60,"props":522,"children":523},{},[524,530,531,536],{"type":14,"tag":279,"props":525,"children":527},{"className":526},[],[528],{"type":19,"value":529},"phone_gateway.set_call_disposition",{"type":19,"value":496},{"type":14,"tag":22,"props":532,"children":533},{},[534],{"type":19,"value":535},"qualify",{"type":19,"value":537}," the call with one of the configured codes.",{"type":14,"tag":15,"props":539,"children":540},{},[541,543,548,550,556,558,564],{"type":19,"value":542},"An agent can also ",{"type":14,"tag":22,"props":544,"children":545},{},[546],{"type":19,"value":547},"send an SMS during the call",{"type":19,"value":549}," (tool ",{"type":14,"tag":279,"props":551,"children":553},{"className":552},[],[554],{"type":19,"value":555},"allmysms.send_sms",{"type":19,"value":557},", see ",{"type":14,"tag":205,"props":559,"children":561},{"href":560},"\u002Fen\u002Fdocs\u002Fintegrations\u002Fsms",[562],{"type":19,"value":563},"SMS",{"type":19,"value":565},"): on this channel, the recipient is locked to the person on the call. If the number is withheld, sending is refused.",{"type":14,"tag":105,"props":567,"children":569},{"id":568},"offering-time-slots",[570],{"type":19,"value":571},"Offering time slots",{"type":14,"tag":15,"props":573,"children":574},{},[575,577,583,585,591,593,598,600,606],{"type":19,"value":576},"The availability calculation (",{"type":14,"tag":279,"props":578,"children":580},{"className":579},[],[581],{"type":19,"value":582},"free_slots",{"type":19,"value":584}," operation of the ",{"type":14,"tag":279,"props":586,"children":588},{"className":587},[],[589],{"type":19,"value":590},"compute",{"type":19,"value":592}," node) produces time slots ",{"type":14,"tag":22,"props":594,"children":595},{},[596],{"type":19,"value":597},"ready to be spoken",{"type":19,"value":599},", in the caller's time zone. Combined with calendar reading (",{"type":14,"tag":205,"props":601,"children":603},{"href":602},"\u002Fen\u002Fdocs\u002Fintegrations\u002Fgoogle",[604],{"type":19,"value":605},"Google",{"type":19,"value":607}," or Microsoft), a voice agent can state a few free slots and then book the appointment.",{"type":14,"tag":44,"props":609,"children":611},{"id":610},"outbound-calls",[612],{"type":19,"value":613},"Outbound calls",{"type":14,"tag":15,"props":615,"children":616},{},[617,619,624,626,632],{"type":19,"value":618},"A pipeline can ",{"type":14,"tag":22,"props":620,"children":621},{},[622],{"type":19,"value":623},"place a call",{"type":19,"value":625}," with the ",{"type":14,"tag":279,"props":627,"children":629},{"className":628},[],[630],{"type":19,"value":631},"phone_call",{"type":19,"value":633}," node: for example, calling back a lead as soon as it arrives, or following up on a list.",{"type":14,"tag":112,"props":635,"children":636},{},[637,652],{"type":14,"tag":116,"props":638,"children":639},{},[640],{"type":14,"tag":120,"props":641,"children":642},{},[643,648],{"type":14,"tag":124,"props":644,"children":645},{},[646],{"type":19,"value":647},"Field",{"type":14,"tag":124,"props":649,"children":650},{},[651],{"type":19,"value":128},{"type":14,"tag":140,"props":653,"children":654},{},[655,672,696,713,738,769,793],{"type":14,"tag":120,"props":656,"children":657},{},[658,667],{"type":14,"tag":147,"props":659,"children":660},{},[661],{"type":14,"tag":279,"props":662,"children":664},{"className":663},[],[665],{"type":19,"value":666},"trunk_id",{"type":14,"tag":147,"props":668,"children":669},{},[670],{"type":19,"value":671},"Line used to call",{"type":14,"tag":120,"props":673,"children":674},{},[675,684],{"type":14,"tag":147,"props":676,"children":677},{},[678],{"type":14,"tag":279,"props":679,"children":681},{"className":680},[],[682],{"type":19,"value":683},"voice_model",{"type":14,"tag":147,"props":685,"children":686},{},[687,689,694],{"type":19,"value":688},"The model that leads the conversation (its Start must carry the ",{"type":14,"tag":279,"props":690,"children":692},{"className":691},[],[693],{"type":19,"value":284},{"type":19,"value":695}," receiver)",{"type":14,"tag":120,"props":697,"children":698},{},[699,708],{"type":14,"tag":147,"props":700,"children":701},{},[702],{"type":14,"tag":279,"props":703,"children":705},{"className":704},[],[706],{"type":19,"value":707},"to_number",{"type":14,"tag":147,"props":709,"children":710},{},[711],{"type":19,"value":712},"Number to call (templatable), normalized to E.164 format",{"type":14,"tag":120,"props":714,"children":715},{},[716,725],{"type":14,"tag":147,"props":717,"children":718},{},[719],{"type":14,"tag":279,"props":720,"children":722},{"className":721},[],[723],{"type":19,"value":724},"call_vars",{"type":14,"tag":147,"props":726,"children":727},{},[728,730,736],{"type":19,"value":729},"Variables passed to the conversation (",{"type":14,"tag":279,"props":731,"children":733},{"className":732},[],[734],{"type":19,"value":735},"phone.outbound.vars",{"type":19,"value":737},") — for example the first name, usable in the outbound greeting",{"type":14,"tag":120,"props":739,"children":740},{},[741,764],{"type":14,"tag":147,"props":742,"children":743},{},[744,750,751,757,758],{"type":14,"tag":279,"props":745,"children":747},{"className":746},[],[748],{"type":19,"value":749},"allowed_days",{"type":19,"value":327},{"type":14,"tag":279,"props":752,"children":754},{"className":753},[],[755],{"type":19,"value":756},"allowed_hours",{"type":19,"value":327},{"type":14,"tag":279,"props":759,"children":761},{"className":760},[],[762],{"type":19,"value":763},"timezone",{"type":14,"tag":147,"props":765,"children":766},{},[767],{"type":19,"value":768},"Allowed time window: outside the window, the call is not placed",{"type":14,"tag":120,"props":770,"children":771},{},[772,788],{"type":14,"tag":147,"props":773,"children":774},{},[775,781,782],{"type":14,"tag":279,"props":776,"children":778},{"className":777},[],[779],{"type":19,"value":780},"max_in_flight",{"type":19,"value":327},{"type":14,"tag":279,"props":783,"children":785},{"className":784},[],[786],{"type":19,"value":787},"max_per_day",{"type":14,"tag":147,"props":789,"children":790},{},[791],{"type":19,"value":792},"Caps on simultaneous calls (3 by default) and daily calls (100 by default)",{"type":14,"tag":120,"props":794,"children":795},{},[796,805],{"type":14,"tag":147,"props":797,"children":798},{},[799],{"type":14,"tag":279,"props":800,"children":802},{"className":801},[],[803],{"type":19,"value":804},"output_key",{"type":14,"tag":147,"props":806,"children":807},{},[808,810,816],{"type":19,"value":809},"Output key (default ",{"type":14,"tag":279,"props":811,"children":813},{"className":812},[],[814],{"type":19,"value":815},"phone.call_result",{"type":19,"value":817},")",{"type":14,"tag":15,"props":819,"children":820},{},[821],{"type":19,"value":822},"Safeguards:",{"type":14,"tag":56,"props":824,"children":825},{},[826,836,846],{"type":14,"tag":60,"props":827,"children":828},{},[829,834],{"type":14,"tag":22,"props":830,"children":831},{},[832],{"type":19,"value":833},"Exactly-once",{"type":19,"value":835}," — a replay never redials a number already called.",{"type":14,"tag":60,"props":837,"children":838},{},[839,844],{"type":14,"tag":22,"props":840,"children":841},{},[842],{"type":19,"value":843},"Refusal before dialing",{"type":19,"value":845}," if the organization has no credits left.",{"type":14,"tag":60,"props":847,"children":848},{},[849,854],{"type":14,"tag":22,"props":850,"children":851},{},[852],{"type":19,"value":853},"No calls in simulation",{"type":19,"value":855}," — the node is skipped during a test run (dry-run).",{"type":14,"tag":15,"props":857,"children":858},{},[859,861,866,868,874,876,885,887,893,895,901,903,909,910,916,917,923],{"type":19,"value":860},"The node returns as soon as the call ",{"type":14,"tag":22,"props":862,"children":863},{},[864],{"type":19,"value":865},"rings",{"type":19,"value":867},": ",{"type":14,"tag":279,"props":869,"children":871},{"className":870},[],[872],{"type":19,"value":873},"ok",{"type":19,"value":875}," means \"call started\", not \"answered\". To know the outcome, add the ",{"type":14,"tag":22,"props":877,"children":878},{},[879],{"type":14,"tag":279,"props":880,"children":882},{"className":881},[],[883],{"type":19,"value":884},"phone_call_outcome",{"type":19,"value":886}," receiver to the model's Start: it triggers the pipeline once the call has ended, with ",{"type":14,"tag":279,"props":888,"children":890},{"className":889},[],[891],{"type":19,"value":892},"phone.outcome",{"type":19,"value":894}," — answered or not (",{"type":14,"tag":279,"props":896,"children":898},{"className":897},[],[899],{"type":19,"value":900},"answered",{"type":19,"value":902},", ",{"type":14,"tag":279,"props":904,"children":906},{"className":905},[],[907],{"type":19,"value":908},"no_answer",{"type":19,"value":902},{"type":14,"tag":279,"props":911,"children":913},{"className":912},[],[914],{"type":19,"value":915},"rejected",{"type":19,"value":902},{"type":14,"tag":279,"props":918,"children":920},{"className":919},[],[921],{"type":19,"value":922},"unknown",{"type":19,"value":924},"), duration, number of turns, disposition set by the agent.",{"type":14,"tag":44,"props":926,"children":928},{"id":927},"best-practices",[929],{"type":19,"value":930},"Best practices",{"type":14,"tag":56,"props":932,"children":933},{},[934,944,954],{"type":14,"tag":60,"props":935,"children":936},{},[937,942],{"type":14,"tag":22,"props":938,"children":939},{},[940],{"type":19,"value":941},"Keep missions concise.",{"type":19,"value":943}," Response latency matters: an agent that hesitates for 4 seconds sounds frozen on a call. Prefer fast models except for decision-critical turns.",{"type":14,"tag":60,"props":945,"children":946},{},[947,952],{"type":14,"tag":22,"props":948,"children":949},{},[950],{"type":19,"value":951},"Leave barge-in enabled.",{"type":19,"value":953}," Callers must be able to interrupt the agent. This is the default setting.",{"type":14,"tag":60,"props":955,"children":956},{},[957,962],{"type":14,"tag":22,"props":958,"children":959},{},[960],{"type":19,"value":961},"Configure fillers",{"type":19,"value":963}," for turns that call tools: a long silence unsettles the caller.",{"type":14,"tag":44,"props":965,"children":967},{"id":966},"costs",[968],{"type":19,"value":969},"Costs",{"type":14,"tag":15,"props":971,"children":972},{},[973,975,981],{"type":19,"value":974},"See ",{"type":14,"tag":205,"props":976,"children":978},{"href":977},"\u002Fen\u002Fpricing",[979],{"type":19,"value":980},"Pricing",{"type":19,"value":982},". A call has no per-minute price as such: it is billed by its components — transcription (by audio duration), speech synthesis (by number of characters) and LLM (by tokens, except with BYOK).",{"type":14,"tag":44,"props":984,"children":986},{"id":985},"known-limitations",[987],{"type":19,"value":988},"Known limitations",{"type":14,"tag":56,"props":990,"children":991},{},[992,1012,1022],{"type":14,"tag":60,"props":993,"children":994},{},[995,997,1002,1004,1010],{"type":19,"value":996},"The telephony channel is ",{"type":14,"tag":22,"props":998,"children":999},{},[1000],{"type":19,"value":1001},"audio only",{"type":19,"value":1003},". Video goes through other building blocks (video generation and dubbing with ",{"type":14,"tag":205,"props":1005,"children":1007},{"href":1006},"\u002Fen\u002Fdocs\u002Fintegrations\u002Fheygen",[1008],{"type":19,"value":1009},"HeyGen",{"type":19,"value":1011},"), not through the call.",{"type":14,"tag":60,"props":1013,"children":1014},{},[1015,1020],{"type":14,"tag":22,"props":1016,"children":1017},{},[1018],{"type":19,"value":1019},"Transfer to a human",{"type":19,"value":1021}," requires a SIP trunk that supports REFER.",{"type":14,"tag":60,"props":1023,"children":1024},{},[1025,1027,1032],{"type":19,"value":1026},"The agent cannot ",{"type":14,"tag":22,"props":1028,"children":1029},{},[1030],{"type":19,"value":1031},"identify the caller",{"type":19,"value":1033}," without a CRM integration: it only knows the presented number.",{"title":7,"searchDepth":1035,"depth":1035,"links":1036},2,[1037,1041,1042,1047,1048,1049,1050],{"id":46,"depth":1035,"text":49,"children":1038},[1039],{"id":107,"depth":1040,"text":110},3,{"id":215,"depth":1035,"text":218},{"id":262,"depth":1035,"text":265,"children":1043},[1044,1045,1046],{"id":365,"depth":1040,"text":368},{"id":462,"depth":1040,"text":465},{"id":568,"depth":1040,"text":571},{"id":610,"depth":1035,"text":613},{"id":927,"depth":1035,"text":930},{"id":966,"depth":1035,"text":969},{"id":985,"depth":1035,"text":988},"markdown","content:en:docs:2.canaux:2.telephone.md","content","en\u002Fdocs\u002F2.canaux\u002F2.telephone.md","en\u002Fdocs\u002F2.canaux\u002F2.telephone","md",[1058],{"title":1059,"_path":1060,"children":1061},"En","\u002Fen",[1062],{"title":1063,"_path":1064,"children":1065},"Docs","\u002Fen\u002Fdocs",[1066,1077,1103,1131,1144,1160,1173,1229],{"title":1067,"_path":1068,"children":1069},"Getting started","\u002Fen\u002Fdocs\u002Fdemarrer",[1070,1073,1076],{"title":1071,"_path":1072},"Welcome","\u002Fen\u002Fdocs\u002Fdemarrer\u002Fbienvenue",{"title":1074,"_path":1075},"Create an account","\u002Fen\u002Fdocs\u002Fdemarrer\u002Fcreer-un-compte",{"title":210,"_path":207},{"title":1078,"_path":1079,"children":1080},"Channels","\u002Fen\u002Fdocs\u002Fcanaux",[1081,1084,1085,1088,1091,1094,1097,1100],{"title":1082,"_path":1083},"Channels overview","\u002Fen\u002Fdocs\u002Fcanaux\u002Fvue-densemble",{"title":8,"_path":4},{"title":1086,"_path":1087},"Email","\u002Fen\u002Fdocs\u002Fcanaux\u002Femail",{"title":1089,"_path":1090},"Web chat widget","\u002Fen\u002Fdocs\u002Fcanaux\u002Fchat-widget",{"title":1092,"_path":1093},"HTTP Webhook","\u002Fen\u002Fdocs\u002Fcanaux\u002Fwebhook",{"title":1095,"_path":1096},"Messaging (WhatsApp, Messenger, Telegram, Mattermost)","\u002Fen\u002Fdocs\u002Fcanaux\u002Fmessageries",{"title":1098,"_path":1099},"Meta Lead Ads","\u002Fen\u002Fdocs\u002Fcanaux\u002Ffacebook-leads",{"title":1101,"_path":1102},"Schedule (cron)","\u002Fen\u002Fdocs\u002Fcanaux\u002Fschedule",{"title":1104,"_path":1105,"children":1106},"Pipelines","\u002Fen\u002Fdocs\u002Fpipelines",[1107,1110,1113,1116,1119,1122,1125,1128],{"title":1108,"_path":1109},"The Visual Editor","\u002Fen\u002Fdocs\u002Fpipelines\u002Fediteur-visuel",{"title":1111,"_path":1112},"AI Agents","\u002Fen\u002Fdocs\u002Fpipelines\u002Fagents",{"title":1114,"_path":1115},"Deterministic Operators","\u002Fen\u002Fdocs\u002Fpipelines\u002Foperateurs",{"title":1117,"_path":1118},"Flow Control","\u002Fen\u002Fdocs\u002Fpipelines\u002Fcontrole-flux",{"title":1120,"_path":1121},"Code Steps","\u002Fen\u002Fdocs\u002Fpipelines\u002Fcode-step",{"title":1123,"_path":1124},"Sub-pipelines","\u002Fen\u002Fdocs\u002Fpipelines\u002Fsous-pipelines",{"title":1126,"_path":1127},"No-code actions","\u002Fen\u002Fdocs\u002Fpipelines\u002Factions-no-code",{"title":1129,"_path":1130},"Knowledge base","\u002Fen\u002Fdocs\u002Fpipelines\u002Fbase-de-connaissances",{"title":1132,"_path":1133,"children":1134},"Supervision","\u002Fen\u002Fdocs\u002Fsupervision",[1135,1138,1141],{"title":1136,"_path":1137},"Execution History","\u002Fen\u002Fdocs\u002Fsupervision\u002Fexecutions",{"title":1139,"_path":1140},"Credits & Metering","\u002Fen\u002Fdocs\u002Fsupervision\u002Fcredits-metering",{"title":1142,"_path":1143},"Benchmarks","\u002Fen\u002Fdocs\u002Fsupervision\u002Fbenchmarks",{"title":1145,"_path":1146,"children":1147},"Security","\u002Fen\u002Fdocs\u002Fsecurite",[1148,1151,1154,1157],{"title":1149,"_path":1150},"Security principles","\u002Fen\u002Fdocs\u002Fsecurite\u002Fprincipes",{"title":1152,"_path":1153},"Strict multi-tenancy","\u002Fen\u002Fdocs\u002Fsecurite\u002Fmulti-tenant",{"title":1155,"_path":1156},"GDPR audit & access log","\u002Fen\u002Fdocs\u002Fsecurite\u002Faudit-rgpd",{"title":1158,"_path":1159},"Sovereign deployment","\u002Fen\u002Fdocs\u002Fsecurite\u002Fdeploiement-souverain",{"title":1161,"_path":1162,"children":1163},"Developers","\u002Fen\u002Fdocs\u002Fdeveloppeurs",[1164,1167,1170],{"title":1165,"_path":1166},"Admin API","\u002Fen\u002Fdocs\u002Fdeveloppeurs\u002Fapi-admin",{"title":1168,"_path":1169},"Outbound webhooks","\u002Fen\u002Fdocs\u002Fdeveloppeurs\u002Fwebhooks-sortants",{"title":1171,"_path":1172},"Drive betool from Claude (MCP)","\u002Fen\u002Fdocs\u002Fdeveloppeurs\u002Fmcp",{"title":1174,"_path":1175,"children":1176},"Integrations","\u002Fen\u002Fdocs\u002Fintegrations",[1177,1180,1183,1186,1187,1190,1193,1196,1199,1200,1203,1206,1208,1211,1214,1217,1220,1223,1226],{"title":1178,"_path":1179},"Integrations overview","\u002Fen\u002Fdocs\u002Fintegrations\u002Fvue-densemble",{"title":1181,"_path":1182},"Stripe","\u002Fen\u002Fdocs\u002Fintegrations\u002Fstripe",{"title":1184,"_path":1185},"GitHub","\u002Fen\u002Fdocs\u002Fintegrations\u002Fgithub",{"title":605,"_path":602},{"title":1188,"_path":1189},"LinkedIn Ads","\u002Fen\u002Fdocs\u002Fintegrations\u002Flinkedin-ads",{"title":1191,"_path":1192},"Kavkom","\u002Fen\u002Fdocs\u002Fintegrations\u002Fkavkom",{"title":1194,"_path":1195},"Jira","\u002Fen\u002Fdocs\u002Fintegrations\u002Fjira",{"title":1197,"_path":1198},"Slack","\u002Fen\u002Fdocs\u002Fintegrations\u002Fslack",{"title":563,"_path":560},{"title":1201,"_path":1202},"Enable Banking (open banking)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fenable-banking",{"title":1204,"_path":1205},"CRM, marketing & productivity","\u002Fen\u002Fdocs\u002Fintegrations\u002Fcrm-marketing",{"title":1207,"_path":1006},"HeyGen (video)",{"title":1209,"_path":1210},"La Poste","\u002Fen\u002Fdocs\u002Fintegrations\u002Fla-poste",{"title":1212,"_path":1213},"Industry CRM (beTool Application, Qhare)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fcrm-metier",{"title":1215,"_path":1216},"Mitti (field inspections)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fmitti",{"title":1218,"_path":1219},"Meta (Messenger, Pages, Meta Ads)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fmeta",{"title":1221,"_path":1222},"Onoff Business (Beta)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fonoff",{"title":1224,"_path":1225},"Smart Life \u002F Tuya (connected devices)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fsmart-life",{"title":1227,"_path":1228},"beTool products (Desktop, Kiosk, Terminal)","\u002Fen\u002Fdocs\u002Fintegrations\u002Fproduits-betool",{"title":1230,"_path":1231,"children":1232},"Use cases","\u002Fen\u002Fdocs\u002Fcas-usage",[1233,1236,1239,1242,1245,1248],{"title":1234,"_path":1235},"Typical business agents","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fvue-densemble",{"title":1237,"_path":1238},"CFO IA","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fcfo-ia",{"title":1240,"_path":1241},"COO IA","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fcoo-ia",{"title":1243,"_path":1244},"CTO IA","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fcto-ia",{"title":1246,"_path":1247},"Product Manager IA","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fproduct-manager-ia",{"title":1249,"_path":1250},"Personal assistant","\u002Fen\u002Fdocs\u002Fcas-usage\u002Fassistant-personnel"]