VisuallyMeta
← Field Notes

Problem: Assigning Agents to Campaigns

Part of Contact Center Dialer

Initial approach
When the client started using the dialer, I designed agent assignment around a single assumption: a user creating a campaign simply wants to select which agents are on it. The implementation reflected that — the full list of agents with a checkbox beside each, where the user checks or unchecks and saves.

Where it broke
The assumption didn't hold once real usage surfaced three distinct needs:

  1. One user wanted to override an agent's other campaigns and move them entirely into this one.
  2. Another wanted the agent to remain on their existing campaigns while also joining this one.
  3. A third wanted to decide per agent, in the moment — which campaign should override and which should stay intact.

A single checkbox couldn't express any of these. The model was too simple for how people actually assigned agents.

Resolution
We introduced a new design that supports all three behaviors — override, coexist, or decide case by case — rather than forcing every user into one fixed interpretation of what "adding an agent" means.

Conflict arises when agent is already in a campaign
Managing conflicts if agent is already in a campaign