Skip to content

Instantly share code, notes, and snippets.

@DEberhardt
Last active August 5, 2021 17:39
Show Gist options
  • Save DEberhardt/74da392e41fdd7afdcbe4cc845d80db0 to your computer and use it in GitHub Desktop.
Save DEberhardt/74da392e41fdd7afdcbe4cc845d80db0 to your computer and use it in GitHub Desktop.
InterpretedUserType - Particle Analysis

Based on https://gist.github.com/get-itips/469e47b3afe7982269fe329515c213f5

Dissection and Interpretation of particles making up the InterpretedUserType

Prefix - (Inter)Connectivity?

Describing Connectivity and Synchronisation configuration for an Object

Phrase Description Confidence
can be empty, but shouldn't in most cases
May indicate 'not enough information' to make a call (new user?)
Pure (maybe PureOnline)
Indicating account is only present in 365
50
Hybrid Directory Synchronisation is employed AND
Account has a presence in 365 and OnPrem Ad
100
DirSync (maybe DirSyncEnabled and DirSyncDisabled)
Directory Synchronisation is employed
100
AADConnect (maybe AADConnectEnabled and AADConnectDisabled)
Directory Synchronisation is employed with Azure Ad Connect
100

Connectivity Status?

Potentially only applicable to certain Connectivity states - Under evaluation to merge with Prefix

Phrase Description Confidence
can be empty, could be part of only certain Prefixes, like DirSync and AADConnect
Enabled Object is Enabled for Synchronisation 60
Disabled Object is Disabled for Synchronisation - might be excluded? 60

Location?

Seems to be a hard requirement

Phrase Description Confidence
OnPrem Authoritative Object is On Premesis, for example User located in Skype OnPrem 90
Online Authoritative Object is in 365, for example User located in Skype Online or Teams 90

Service OR Status for UserType?

Phrase Description Confidence
ActiveDirectoryDisabled Object Disabled in Active Directory 40
Enabled Object Enabled - read together with Prefix and Location to determine where 90
Disabled Object Disabled - read together with Prefix and Location to determine where 90
Teams Object Enabled and located in Teams. Some functionality may be used in Skype still 80
TeamsOnly Object Enabled and located in Teams. TeamsMigrationPolicy is set to TeamsOnly.
No Services outside Teams used (not SkypeOnline and not SkypeOnPrem)
90
SfB Object Enabled and located in Skype - read together with Location 70
SfBOnly Not observed, but logically would fit here 70

UserType

required

Phrase Description Confidence
User User Object: Query with AzureAdUser, CsOnlineUser, etc. 100
Application Instance Resource Account: Query with AzureAdUser, CsOnlineApplicationInstance
NOTE: Department on AzureAdUser is fixed and an indicator for this.
If Department is changed, Object can become corrupted (shows up as User)
NOTE: CsOnlineUser will return the object as well, but changes should be done through Set-CsOnlineApplicationInstance to retain integrity of the Object
100
NoService Seems to be an outlier here, but may be shown if not determined?
No clear understanding yet, but indicates no "usable" ObjectType
10

Additional Information

Suffix 1 - Licensing Information

Should be empty for working objects, error status for License issues

Phrase Description Confidence
if nothing shown, good indicator for 'not incorrect' Licensing 90
NotLicensedForService No License assigned to be able to use this Object 90
WithTeamsLicense Object may be in Skype but has a Teams License 30
WithDeletedLicenses Licenses have been deleted from this Object
This may be a temporary state until propagation has completed. Then shown as NotLicensedForService
70
WithMCOValidationError Object not correctly provisioned - multiple reasons possible
Possible Reason #1
Possible Reason #2
Possible Mitigation Options
80

Suffix 2 - Status Information

Should be empty for working objects, interim status and misconfiguration

Phrase Description Confidence
if nothing shown, good indicator for settled Configuration 90
NotInPDL Object is not located in Preferred Data Location (PDL) 60
NeedsProvisioning Temporary State until propagation has completed (BVD) 60
NeedsPublishingInAAd Temporary State until propagation has completed (AAD) 60
FailedProvisioningToBVD Business Voice Directory has not been updated with this record - Investigate LineUri is unique? 60
FailedPublishingToAAD Object failed to Publish to AAD - Check DirSync? 40
PendingAttributeRemovalFromAD Temporary State until all Parameters have been removed (Object was deleted) 70

Conclusion

This list represents my initial guesswork and by no means final or complete - If you can improve our understanding of the InterpretedUserType, please reach out; correct, supplement or confirm these findings.

Sources

Published as Blog

This list the subject of my blog entry from 11-APR 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment