-
-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add filtering options for Get-CsCallQueue , Get-CsAutoAttendant and Get-MgUser to reduce runtimes #42
Comments
Hi, thanks for the comment. On auto attendants and call queues, linked AAs and CQs are referenced by the resource account object Id. In order to find the AA/CQ which has a particular RA object Id linked to it, I need to first get all AAs/CQs and then locally filter for the one which has the RA object Id in it's Because of that, I changed the script logic and created the external function Let me think about this, maybe I can include a Name filter and only really fetch all AAs/CQs if there's a need for it/linked AAs/CQs are not present in the results of name filter. Are you aware of the I haven't really touched Find-CallQueueAndAutoAttendantUserLinks in a long time. I guess a name filter does make sense for large organizations but then again, you could also just use a UserId to avoid fetching all users. I'll also think about that and see what I can do. I don't really have capacity to do anything right now so it might take me a couple of weeks/months. |
Thanks for the reply. I'm not in any hurry for any modifications, since I was able to put in the static name filter I need. As for a user filter, we have many different AD domains syncing to the same tenant, each with its own UPN suffix - that is followed since it takes an Enterprise admin to add additional suffixes to the on-premises forests, and we're apparently lucky none of those rare folks have added cross-region suffixes. On our case, global Hq also requires the regional prefixes for object names to avoid cross-region conflicts. |
Awesome visualization tool, thank you so much!
In large global organizations, there can be hundreds of call flows and tens of thousands of users. Get-CsAutoAttendant and Get-CscallQueue have -NameFilter options - adding a regional naming convention prefix (if the organization had the foresight to require such a convention) can drastically reduce the time to search for all flows to present in the out-gridview and to scan all flows for which ones a specified user is linked to.
I was able to add a static -NameFilter in the code, which brought Find-CallQueueAndAutoAttendantUserLinks for a UserID from over 20 minutes down to under a minute. Might be good to have a Get-MgUser search filter for that option when it's not fed a UserID as well - we have over 100,000 users, but any one region has many fewer users to have to manage. I never had the patience to find out how long that Out-GridView would take to fully populate. A config file to set such filters would be fine for our use-case, since we are not likely to need to review call flows or users in other regions of the world.
The text was updated successfully, but these errors were encountered: