lively-horse-90722
09/12/2025, 3:31 AMtall-airline-16756
09/12/2025, 3:31 AMtall-airline-16756
09/12/2025, 3:31 AMcreate_sip_participant
to place the call. This method begins dialing right away without waiting for an answer, giving you a smooth start.
2. Monitor Call Status: Keep an eye on the sip.callStatus
participant attribute. This lets you track important states like dialing, ringing, active (when the call is answered), hangup, or unavailable (if the line is busy).
3. Set Ringing Timeout: You can set the ringing_timeout
parameter to control how long the call rings. By default, it’s 3 minutes, but you can adjust it up to a maximum of 80 seconds to fit your needs.
4. Forward/Transfer Call: When it’s time to forward, use the transferCall
method. You also have the option to play a dial tone during the transfer, which can enhance the caller’s experience.
5. Handle Answered Call: Once sip.callStatus
switches to active, it means the forwarded party has picked up. At this point, you can end the agent session so the caller can continue seamlessly with the forwarded participant.
6. Handle Hang-Up: Finally, when either the caller or the forwarded participant hangs up, use the delete_room
API to end the call for everyone involved.
This method helps you manage ringing timeouts, busy signals, answered calls, and hang-ups smoothly and effectively. If you have any questions or need further clarification, feel free to ask—I’m here to help!
Sources: Agents telephony integration | LiveKit Docs | SIP Integration | livekit/livekit_composite | DeepWiki | Making calls using SIP | LiveKit Docs | Making outbound calls | LiveKit Docs | pkg/sip/outbound.golively-horse-90722
09/12/2025, 3:32 AMtall-airline-16756
09/12/2025, 3:33 AMringing_timeout
parameter is being set as a proper Duration
object in your TransferSIPParticipant
API call? Also, if possible, would you mind taking a look at the SIP signaling logs to see if LiveKit sends a disconnect (like a BYE or CANCEL) after the timeout? I'm here to help you through this!
Sources: packages/livekit-server-sdk/src/SipClient.ts | lib/livekit/sip_service_client.rb | livekit/livekit_sip.pb.go | livekit-protocol/livekit/protocol/sip.pyi | SIP APIs | LiveKit Docs