lively-lawyer-42128
07/09/2025, 10:25 AMtall-airline-16756
07/09/2025, 10:25 AMtall-airline-16756
07/09/2025, 10:26 AMlively-lawyer-42128
07/09/2025, 10:43 AMtall-airline-16756
07/09/2025, 10:43 AMCreateSIPParticipant
API to invite your SIP trunk provider. Once they accept, a new room gets created automatically - even if no one else is there yet. Think of it like setting up a virtual meeting space just for that call.
I know this might sound a bit unexpected, but it's totally normal. The outbound call itself is what kickstarts the room creation.
If you want to get a bit more specific about these webhook events, you might want to add some custom logic on your end to tell the difference between outbound and inbound call events. No worries if that sounds complex - we can always help you figure out the best approach!
Sources: Making outbound calls | LiveKit Docs | Webhooks | LiveKit Docs | livekit-protocol/livekit/protocol/webhook.pyi | protobufs/livekit_sip.proto | pkg/telemetry/events.go | test/integration/sip_test.go | packages/livekit-server-sdk/src/WebhookReceiver.test.ts | Agents telephony integration | LiveKit Docs | livekit-protocol/src/livekit.rslively-lawyer-42128
07/09/2025, 10:44 AMtall-airline-16756
07/09/2025, 10:45 AMsip.ruleID
attribute is like a secret weapon for identifying inbound calls. It'll be filled in for inbound calls and blank for outbound ones.
Quick summary to make your life easier:
1. Peek at the call_direction
in the webhook event to see if it's coming or going.
2. Use sip.ruleID
as your backup detective – it's got your back!
Now you'll be able to handle and filter your calls like a pro. Hope this helps!
Sources: SIP participant | LiveKit Docs | livekit/livekit_sip.pb.golively-lawyer-42128
07/09/2025, 11:18 AMtall-airline-16756
07/09/2025, 11:19 AMid
and created_at
timestamp to help us keep track of what's happening.
Got questions? I'm all ears! Feel free to ask about any of these details, and I'll be happy to explain more.
Sources: packages/livekit-rtc/src/proto/room_pb.tslively-lawyer-42128
07/09/2025, 11:20 AMtall-airline-16756
07/09/2025, 11:20 AMsip.callDirection
: Think of this like a signpost that tells you the call's direction. It'll show either SCD_INBOUND
(incoming call) or SCD_OUTBOUND
(outgoing call).
• sip.ruleID
: This one's a bit of a tell for inbound calls – it'll have a dispatch rule ID. For outbound calls, it'll be blank.
• sip.trunkID
: This shows which SIP trunk was used for your call, whether it's coming in or going out.
Pro tip: SIP participants will have kind
set to Participant.Kind == SIP
, and their attributes
include cool details like sip.callID
that can give you even more context.
By checking out these fields in the event payload, you'll be a call direction detective in no time! Let me know if you need any more help understanding this.
Sources: livekit-protocol/livekit/protocol/analytics.pyi | SIP participant | LiveKit Docs