In picture form: (arrow direction denotes which object has the reference to the other)
contact-user -> contact-group <- AD-group <- AD users
host template -> contact group
So obviously first/second level support teams will receive most low level problems before reaching third level queues and the first level team might be responsible for basic satellite site server and network support. So they will be able to see all that through the contact-group inheritance, what about third level teams though? They only want to know about their devices and adding them to the first level team contact-group will allow them to see and control far beyond they need to.
To overcome this obstacle I have secondary host-templates that specify subsets of devices that certain groups are likely going to need to see and control... I.e. So our level 3 middleware team can see and control all servers with databases/mainframe/AS400/etc, but they are not a direct contact for windows servers but if they do maintenance on a windows server with a database they may need to set down time. I've used the + flag on the secondary host-templates to ensure that the hostgroups for the view subsets are additive but CCM doesn't appear to be writing that flag. What's even more curious is in the user view they can see some of the devices they've been assigned via this method but not all of them, especially considering the template order in CCM is uniform across all hosts so without the flag you would expect the view groups to have no visibility or full visibility (as one should overwrite the other) not partial visibility.
This stops us from being able to provide adequate device ownership to our support teams which is posing a real problem to us when we want to open it up beyond just infrastructure and have XI manage all of our IT monitoring. We were just about there when we hit this unexpected hurdle.
This is the end of a rather long day so this may or may not have turned out as coherent as I had intended
