Jami-identifiointi

Jami-kokouksessa on monia tunnisteita. Meidän on yhdistettävä näiden tunnisteiden nimitys kaikkien toteutusten välillä.

  • Jami Infohash tai Jami julkisen avaimen sormenjälki: julkisen avaimen sormenjälki, kuten 3d1112ab2bb089370c0744a44bb0786418d40b

  • Kirjoitettu nimi: käyttäjänimi, joka liittyy Jami Infohashin blockchainissa, kuten jeandupont

  • URI: Jami- tai SIP-URI, kuten jami:3d1112ab2bb089370c0744a44bb0786418d40b tai jami:jeandupont tai <sip:nnnnn@host:5060>. Täytyy olla [rfc3986]:https://tools.ietf.org/html/rfc3986). Jos kyseessä on SIP-URI, se on oltava [rfc3261#19.1]:https://tools.ietf.org/html/rfc3261#-luokkaa-19.1).

  • Kanoninen URI: jami:3d1112ab2bb089370c0744a44bb0786418d40b tai sip:nnnnn@host:5060. Yksinkertaisinta URI-muotoa. Kirjattu nimi on ratkaistava, ei sisälly <>-sääliä tai näytön nimeä.

  • Käyttäjä-ID: rekisteröity nimi (mieluummin) tai julkinen avaimen sormenjälki.

  • Väite- ja kuvausnimi tai Profiili-nimi: muokkaettavissa oleva käyttäjä määritellyt profiili-nimi, kuten Jean Dupont.

Jos näyttö on yhteydessä:

 _____
|photo|   Display name or User ID
|_____|   User ID
  • Jos näytön nimi on tyhjä, käyttäjä-ID näkyy sen sijaan

  • Jos molemmilla riikoilla on sama sisältö, näkyy vain ensimmäinen riitti

  • 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.

  • Jos kuvaa ei ole saatavilla, voidaan käyttää paikallispäätöä, jossa on Canonical URI:n erityinen taustavär:

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];
}

Väriarvot ovat materiaalipaletista: https://material.io/tools/color

! références_couleurs_jami