자미 식별자

Jami에는 많은 식별자가 있습니다. 우리는 모든 구현들 사이에서 이러한 식별자의 이름을 통합해야합니다. 이 페이지는 관련 예로 Jami에서 사용되는 다양한 유형의 식별자를 참조합니다.

  • Jami Infohash 또는 Jami 공중 키의 지문: 3d1112ab2bb089370c0744a44bb0786418d40b

  • ** 등록된 이름**: 블록체인에서 Jami Infohash와 연관된 사용자 이름, 예를 들어 jeandupont

  • URI: Jami 또는 SIP URI, 예를 들어 jami:3d1112ab2bb089370c0744a44bb0786418d40b 또는 jami:jeandupont 또는 <sip:nnnnn@host:5060>. [rfc3986]에 따라야 한다.

  • 통일적 URI: jami:3d1112ab2bb089370c0744a44bb0786418d40b 또는 sip:nnnnn@host:5060. URI의 가장 단순화된 형태. 등록된 이름은 해결되어야 하며 <> 괄호나 표시 이름도 포함되지 않습니다. 계획 (jami: 또는 sip: 또는 sips:) 로 앞장서야 합니다.

  • ** 사용자 ID**: 등록 이름 (이종) 또는 공개 키의 지문. 계정 공개 키의 사용자 표면 식별자.

  • ** 디스플레이 이름** 또는 ** 프로필 이름**: Jean Dupont와 같이 편집 가능한 사용자 정의 프로필 이름.

연락처를 표시할 때:

 _____
|photo|   Display name or User ID
|_____|   User ID
  • 디스플레이 이름이 빈 경우 사용자 ID가 표시됩니다.

  • 두 줄 모두 같은 내용을 가지고 있다면, 첫 줄만 표시됩니다.

  • If no photo is available and a registered name (jami) or display name (sip) is available, the first letter of this name can be used to generate a placeholder. Otherwise a generic placeholder is used.

  • 사진이 없는 경우, 캐논िकल URI 특화된 배경색을 가진 위치지식을 사용할 수 있습니다.

final int[] contactColors = {
    color.red_500, color.pink_500,
    color.purple_500, color.deep_purple_500,
    color.indigo_500, color.blue_500,
    color.cyan_500, color.teal_500,
    color.green_500, color.light_green_500,
    color.grey_500, color.lime_500,
    color.amber_500, color.deep_orange_500,
    color.brown_500, color.blue_grey_500
};

int generateAvatarColor(String canonicalUri) {
    if (isEmpty(canonicalUri))
        return R.color.grey_500;
    String h = md5(canonicalUri);
    if (h == null)
        return R.color.grey_500;
    int colorIndex = Integer.parseInt(h.charAt(0) + "", 16);
    return contactColors[colorIndex % contactColors.length];
}

색상 값은 재료 패レット에서: https://material.io/tools/color

références_couleurs_jami