Profil synkronisering

Der er to typer profiler. Den ene til den løbende konto, og de fra kontakter. Da dette vcard indeholder oplysninger, såsom avatar og visningsnavn, bør det synkroniseres så hurtigt som muligt. Men det skal kun sendes, når det er nødvendigt, for at undgå unødvendige dataoverførsler. Formatet, der bruges til at gemme profilerne, er en [vCard] (https://en.wikipedia.org/wiki/VCard) (https://datatracker.ietf.org/doc/html/rfc6350)

Hvor er profiler gemt?

Selv

Det er i ${idPath_}/profile.vcf f.eks.: .local/share/jami/xxxxxx/profile.vcf på GNU/Linux.

Kontakter

Fordi denne logik stadig administreres pr. klient, afhænger det af klienten.

Når en profil sendes

Opkald

I begyndelsen af et opkald sender normalt klienten vCard. Denne metode bør dog fjernes til fordel for den anden placeret i daemon.

Send til kontaktens enheder

Når du forbinder med en ny enhed, er der en SIP eller en synkroniseringskanale. Når denne kanal er klar, tjekker vi, om vi skal sende profilen. For at gøre dette, sammenlignes profilen hash med den i cacheen (${cacheDir}/${accId}/vcard/sha3 som ~/.cache/jami/xxxxx/vcard/sha3 på GNU/Linux), og filen ${cacheDir}/${accId}/vcard/deviceId).

Multidivis

Hvis profilen sendes, og enheden er fra samme konto, kontrolleres samtaler og vi sender profiler af alle medlemmer. Kanalnavnet vil være »\({conversationId}/profil/\){memberUri}.vcf«. Adfærd testet i daemon/test/unitTest/syncHistory/syncHistory.cpp