From 09a4289639b78e768472b00454cbc9ea567711ac Mon Sep 17 00:00:00 2001 From: Alex Date: Thu, 26 Mar 2026 09:48:42 -0700 Subject: [PATCH] Exposing optional TransferSipParticipant.ringingTimeout --- .changeset/afraid-garlics-brush.md | 5 +++++ packages/livekit-server-sdk/src/SipClient.ts | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .changeset/afraid-garlics-brush.md diff --git a/.changeset/afraid-garlics-brush.md b/.changeset/afraid-garlics-brush.md new file mode 100644 index 00000000..f1843a65 --- /dev/null +++ b/.changeset/afraid-garlics-brush.md @@ -0,0 +1,5 @@ +--- +'livekit-server-sdk': patch +--- + +Add ringingTimeout option to transferSipParticipant diff --git a/packages/livekit-server-sdk/src/SipClient.ts b/packages/livekit-server-sdk/src/SipClient.ts index d2e97bd2..8f04013d 100644 --- a/packages/livekit-server-sdk/src/SipClient.ts +++ b/packages/livekit-server-sdk/src/SipClient.ts @@ -210,6 +210,8 @@ export interface SipOutboundTrunkUpdateOptions { export interface TransferSipParticipantOptions { playDialtone?: boolean; headers?: { [key: string]: string }; + /** Maximum time for the transfer destination to answer the call, in seconds. */ + ringingTimeout?: number; } /** @@ -789,6 +791,9 @@ export class SipClient extends ServiceBase { transferTo: transferTo, playDialtone: opts.playDialtone, headers: opts.headers, + ringingTimeout: opts.ringingTimeout + ? new Duration({ seconds: BigInt(opts.ringingTimeout) }) + : undefined, }).toJson(); await this.rpc.request(