why is participant attributes dictionary is passed...
# ask-ai
c
why is participant attributes dictionary is passed as empty? 2025-07-27 202357,141 - INFO voysera - ==================== NEW SESSION ==================== 2025-07-27 202357,142 - INFO voysera - Session ID: a8983630-6a7e-4071-8490-0a3efdaaa82f 2025-07-27 202357,142 - INFO voysera - Room Name: voysera_room_realestate_web_client 2025-07-27 202357,770 - INFO voysera - Client ID: None 2025-07-27 202357,770 - INFO voysera - Source: None 2025-07-27 202357,770 - INFO voysera - Participant attributes: {} 2025-07-27 202357,771 - INFO voysera - Client dev-client-d6fca1 connected via dev-console publishing track {room: 'voysera_room_realestate_web_client', roomID: '', participant: 'user_3185', pID: 'PA_XpKrWxZqeaUW', trackID: undefined, …}enabled: truekind: "audio"muted: falsepID: "PA_XpKrWxZqeaUW"participant: "user_3185"room: "voysera_room_realestate_web_client"roomID: ""source: "microphone"streamID: "f6bedad1-8ae2-4e74-8089-4178b4ea7343"streamTrackID: "f6bedad1-8ae2-4e74-8089-4178b4ea7343"trackID: undefined[[Prototype]]: Object
t
Thanks for reaching out, ZaidKaraymeh. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
The participant attributes dictionary is passed as empty in LiveKit logs for several reasons: • Default Initialization: Participant attributes are initialized as empty by default across all SDKs. For example, the Android SDK uses
emptyMap()
, and the Swift SDK initializes them as an empty dictionary
[:]
. • Optional Nature of Attributes: Participant attributes are optional user-defined metadata. If no custom attributes are set during participant creation or connection, the dictionary will remain empty. • SIP Participant Creation: For SIP participants, attributes are optional parameters. If the
participant_attributes
parameter is not specified during SIP calls, the dictionary will be empty. • Standard Connection Flows: When participants join through standard connection flows without explicitly assigned attributes, the dictionary will also remain empty. Attributes serve as custom metadata containers for application-specific data. If you need attributes to be populated, ensure they are explicitly set during participant creation or connection. Sources: protobufs/rpc/io.proto | livekit-android-sdk/src/main/java/io/livekit/android/room/participant/Parti... | Sources/LiveKit/Participant/Participant.swift | Core API primitives | LiveKit Docs | SIP APIs | LiveKit Docs