in sdk/communication/azure-communication-chat/src/main/java/com/azure/android/communication/chat/implementation/notifications/NotificationUtils.java [179:206]
public static CommunicationIdentifier getCommunicationIdentifier(String rawId) {
if (rawId.startsWith(TEAMS_PUBLIC_USER_PREFIX)) {
return new MicrosoftTeamsUserIdentifier(rawId.substring(TEAMS_PUBLIC_USER_PREFIX.length()), false)
.setRawId(rawId)
.setCloudEnvironment(CommunicationCloudEnvironment.PUBLIC);
} else if (rawId.startsWith(TEAMS_DOD_USER_PREFIX)) {
return new MicrosoftTeamsUserIdentifier(rawId.substring(TEAMS_DOD_USER_PREFIX.length()), false)
.setRawId(rawId)
.setCloudEnvironment(CommunicationCloudEnvironment.DOD);
} else if (rawId.startsWith(TEAMS_GCCH_USER_PREFIX)) {
return new MicrosoftTeamsUserIdentifier(rawId.substring(TEAMS_GCCH_USER_PREFIX.length()), false)
.setRawId(rawId)
.setCloudEnvironment(CommunicationCloudEnvironment.GCCH);
} else if (rawId.startsWith(TEAMS_VISITOR_USER_PREFIX)) {
return new MicrosoftTeamsUserIdentifier(rawId.substring(TEAMS_VISITOR_USER_PREFIX.length()), true)
.setRawId(rawId);
} else if (rawId.startsWith(PHONE_NUMBER_PREFIX)) {
return new PhoneNumberIdentifier(rawId.substring(PHONE_NUMBER_PREFIX.length()))
.setRawId(rawId);
} else if (rawId.startsWith(ACS_USER_PREFIX)
|| rawId.startsWith(ACS_GCCH_USER_PREFIX)
|| rawId.startsWith(ACS_DOD_USER_PREFIX)
|| rawId.startsWith(SPOOL_USER_PREFIX)) {
return new CommunicationUserIdentifier(rawId);
} else {
return new UnknownIdentifier(rawId);
}
}