The following web sequence diagrams are meant to help better understand a few of TaskRouter's key call control concepts: Blind Transfer and Warm Transfer
If you want to customize any of the flows described here for your own use, you can paste the full descriptions found below each diagram into websequencediagrams.com and edit from there.
Brand new to these call control concepts? We've got you covered: check out our documentation to learn more about blind call transfers and warm transfers.
1title Blind Call Transfer2345Caller->Twilio: new call67note over Twilio, App: <not shown> create Task89Twilio->App: Reservation request1011App->Twilio: instruction:conference1213note right of Twilio: Twilio connects agent and caller to conference1415App->Twilio: Conference hold conference.participants.customer1617App->Twilio: New Task1819note right of Twilio:2021fill in task.requested_agent or task.desired_queue.2223Ensure workflow acts on this information2425Include conference SID of existing call2627and TaskSID of original task2829end note3031App->Twilio: remove original agent leg from conference3233App->Twilio: complete original task (or move to wrap)3435note right of Twilio: Task gets assigned3637Twilio->App: Reservation request3839App->Twilio: instruction:call4041note right of Twilio: Agent answers4243Twilio->App: webhook for TwiML for answered call4445App->Twilio: <Dial><Conference>Original Task SID</Conference></Dial>
1title Warm Transfer2345Caller->Twilio: new call67note over Twilio, App: <not shown> create Task89Twilio->App: Reservation request1011App->Twilio: instruction:conference1213note right of Twilio: Twilio connects agent and caller to conference1415App->Twilio: Conference hold conference.participants.customer1617App->Twilio: New Task1819alt Warm Transfer to known person2021note right of Twilio:2223fill in task.requested_agent2425Ensure workflow acts on this information2627end note2829else Warm Transfer to queue3031note right of Twilio:3233fill in task.desired_queue.3435Ensure workflow acts on this information3637end note38394041end4243note right of Twilio:4445For either option, include in Task:4647- conference SID of existing call4849- TaskSID of original task5051end note5253note right of Twilio: Task gets assigned5455Twilio->App: Reservation request5657App->Twilio: instruction:call5859note right of Twilio: Agent answers6061Twilio->App: webhook for TwiML for answered call6263App->Twilio: <Dial><Conference>Original Task SID</Conference></Dial>6465note over Twilio, App: Customer, Agent 1 and Agent 2 in 3-way6667App->Twilio: remove original agent leg from conference6869App->Twilio: complete original task (or move to wrap)7071note over Twilio, App: Customer and Agent 2 in 1:1