Le 13/01/2020 à 14:18, anne.guilde@??? a écrit :
> Le 13/01/2020 à 11:52, Marc BERLIOUX a écrit :
>> Le 11/01/2020 à 16:01, anne.guilde@??? a écrit :
>>> Les exportations se font avec des fichiers vcf.
>>> Comment comparer les fichiers vcf.
>>
>> Personnellement, j'ai adopté la fusion à travers une base de données
>> MariaDB. Je balance tous mes fichiers contenant mes vcards et ensuite je
>> choisis le type de sortie, soit en V-Card, J-Card, X-card, H-Card, LDIF,
>> KML Map, soit directement en attaquant un serveur CardDAV. Au passage,
>> je remets en forme les données. Si ça peut t'inspirer :
>>
>> https://berlioux.com/tmp/Screenshot_VcardHandler.png
>>
>
> J'avais bien pensé à la base de données.
>
> Tu as fait cela comment l'exportation des vcards dans une bd?
> Sur mon serveur, j'utilise mysql.
MariaDB est issue de MySQL et en php, ce sont les mêmes fonctions pour
les utiliser
Une fois détectés tous les champs du VCF, je rentre tout ce qui concerne
les identités, les adresses, les téléphones, les emails dans des tables
éponymes, ensuite, j'ai un moteur qui compare le tout et qui croise les
données pour trouver ce qui peut être fusionné.
J'avais à peu près 1400 contacts répartis sur trois types principaux de
carnets d'adresses (identités+adresses, identités+emails,
identités+téléphones) et j'ai réduit de moitié le résultat, en remettant
le tout en forme et en ajoutant la géolocalisation des adresses et des
timezones.
> Ce qui m'inquiète, ce sont les 'ENCODING=QUOTED-PRINTABLE' et les
> 'ENCODING=BASE64;JPEG'
Je suis passé par là..
Il y a des fonctions php pour décoder ça, comme :
quoted_printable_decode($dataValue);
Le problème, c'est qu'il y a des entrées du fichier VCF qui peuvent se
prolonger sur plusieurs lignes, il faut le gérer aussi
Le base64, je ne l'ai pas pris en compte vu que c'est principalement
utilisé pour des images et j'en avais pas dans mes contacts
Le VCF, c'est vraiment un format alakon. Je me suis morflé la lecture de
toutes les RFC pour prendre en compte tous les champs et toutes les
variantes possibles
--
Marc BERLIOUX
On veut toujours avoir plus qu'on ne possède,
mais la disette a perdu bien moins de gens que la satiété.