As far as I am aware, the current workflow for messaging departments on a show would be to create and assign groups to users as required. It seems to be a fairly laborious process that I am sure Production staff would loath. Would it be possible for Shotgun to automatically create groups based on a combination of "Project" and "Department" fields of the users? It may not be fullproof for users who jump between roles, but this could be overcome by allowing manual addition of users to auto-groups. The beauty of this system would be that for every project, you would automatically have groups for each department; assuming users had been correctly assigned to departments.
eg, Users would be assigned to 'Projects', and be assigned a 'department' (typically this would be a single value, but could be multiple).
The users would automatically be added to the dynamic groups for the departments they are part of eg:
megaProject ( a group automatically created to include all people associated with the project).
This would remove a large amount of admin work for some poor soul.