ParticipantChangedPayload

@JsonClass(generateAdapter = true)
class ParticipantChangedPayload(val id: String, var entries: List<ParticipantChangedEntry>, val activeModalities: List<Modality>? = null) : EntryPayload

Indicates that participants in the conversation have joined, left, or changed roles.

See also

Samples

val payload = entry.payload as? EntryPayload.ParticipantChangedPayload ?: return
for (change in payload.entries) {
    when (change.operation) {
        ParticipantChangedOperation.Add -> showParticipantJoined(change.displayName)
        ParticipantChangedOperation.Remove -> showParticipantLeft(change.displayName)
        else -> { }
    }
}

Constructors

Link copied to clipboard
constructor(id: String, entries: List<ParticipantChangedEntry>, activeModalities: List<Modality>? = null)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The type discriminator indicating which kind of payload this entry contains.

Link copied to clipboard
open override val id: String

The unique identifier for this conversation entry.

Functions

Link copied to clipboard

Filters out participant changes for internal roles (Supervisor, Router) that should not be displayed to end users.