A standard routing queue. The agent may explicitly log in and out, and a authorized supervisor may log the agent in or out.
Represented on the wire as null. The SDK normalizes this to GENERAL.
A queue tied to an individual agent. Explicit login and logout are not supported — the platform manages this queue automatically. Neither the agent nor an authorized supervisor can toggle it.
A queue that serves both personal and general routing. The agent may explicitly log in and out, and a supervisor may log the agent in or out on their behalf — same rules as a GENERAL queue.
The backend did not send the queueType field for this queue — typically
an older backend version that has not yet shipped the feature, or a
value the SDK does not yet recognise.
The SDK does not block login or logout on UNKNOWN queues: any server-
side restriction (e.g. a personal queue the SDK could not identify)
surfaces via the server's rejection response instead. Consumers should
either surface UNKNOWN queues to the user as-is and let the server be
the source of truth, or gate explicitly on the values they recognise.
The category of a queue.
GENERAL and HYBRID queues support explicit login and logout — the agent (or an authorized supervisor) can toggle them at will. PERSONAL queues do not: the platform manages them automatically. UNKNOWN indicates the backend did not send the type field at all (typically an older backend version that has not yet shipped the feature); consumers should treat it as "let the server decide" — the SDK will not block login/logout, and any server-side rejection surfaces normally.
Read from QueueTrait.queueType on a Queue.
Example