Are Queue Supervisors also Queue Members?
We’ve recently had a couple questions from customers in regards to queue members and supervisors. There is definitely some weirdness here, so hopefully this post will clear up a little confusion.
In Clarify, there are two relations from queue to user:
- queue2user, a ManyToMany relation, which is the users assigned to the queue
- queue_supvr2user, a ManyToMany relation, which is the users supervising the queue
Queue Membership in the Clarify UI
In the Clarify Classic Client, when you add a user as a supervisor, you see the user listed only as a supervisor.
For example, here I just added the user “texas” as a supervisor of the WebSupport queue. Notice that he shows up in the Supervisors list, but not in the Members list. As expected. Notice there are only two queue members listed.
Queue Membership in the Database
Now, lets look in the database.
Find the supervisors of the queue:
select u.login_name from table_queue q,
table_user u,
mtm_queue5_user24 mtm
where q.title = ‘WebSupport’
and queue_supvr2user = q.objid
and supvr_assigned2queue = u.objid
1 row returned
- texas
Find the members of the queue:
select u.login_name from table_queue q,
table_user u,
mtm_queue4_user23 mtm
where q.title = ‘WebSupport’
and queue2user= q.objid
and user_assigned2queue = u.objid
3 rows returned
- fred
- texas
- cali
Notice that texas is showing up as a queue member in the database, but not in the UI.
What’s actually happening is that Clarify includes queue supervisors as queue members at the database level, but not at the UI level.
Yes, its confusing.
RuleManager
In RuleManager, its common for a business rule to notify Queue Members and/or Queue Supervisors. So, when RuleManager has to expand the alias [Queue Members], it actually has to get the queue members, and then dynamically exclude the queue supervisors. Both the Clarify Rulemanager and the Dovetail RuleManager have to do this extra processing to exclude supervisors.
Summary
So, are Queue Supervisors also Queue Members?
- At the database level, Yes.
- At the UI level, No.
- Within RuleManager, No.
This reminds me of a Scott Bellware quote: Programmers are responsible for creating an incredible amount of complexity. How true.