Brevet FR2860676A1 — publié le 20050408

PROCEDE ET SYSTEME D'ECHANGE D'INFORMATIONS POINT A POINT PAR L'INTERMEDIAIRE D'UN RESEAU DE DIFFUSION. La présente invention concerne le domaine des télécommunications et plus particulièrement les services susceptibles d'être offerts par l'intermédiaire de telles communications. Elle s'applique notamment, mais non exclusivement, à la réalisation d'un 10 service de mise en relation d'offres et de demandes diffusées dans un réseau de télécommunication par un ensemble d'utilisateurs. De plus en plus de terminaux mobiles (PDA, téléphones mobiles, ...) sont équipés d'une liaison Bluetooth leur permettant de communiquer avec d'autres appareils situés à proximité. Dans la demande de brevet US 2003/0065805 on a pensé à utiliser une telle liaison pour mettre en oeuvre un système conçu pour diffuser des informations vers des terminaux d'utilisateurs en fonction de critères de sélection émis par ces derniers, les informations diffusées étant liées au lieu où se trouvent le système et les utilisateurs. Ce système permet notamment de diffuser au moyen de bornes des messages publicitaires ciblés et d'échanger des petites annonces avec d'autres utilisateurs. Il s'avère qu'en pratique, ce système fonctionne mal du fait que pour déterminer avec une fiabilité suffisante si une annonce reçue correspond aux critères de sélection définis par un utilisateur, il est nécessaire d'effectuer une analyse sémantique à la fois des mots figurant dans l'annonce et des mots définissant les critères de sélection. Or une telle analyse sémantique requiert des capacités de traitement et de stockage importantes qui dépassent celles qui sont disponibles dans la plupart des terminaux mobiles actuels. La présente invention a pour but de supprimer ces inconvénients. Cet objectif est atteint par la prévision d'un procédé d'échange de données diffusées par une pluralité de terminaux dans un réseau de télécommunication, chacun des terminaux détectant la présence d'autres terminaux situés à portée de communication, établissant une communication avec un terminal détecté et échangeant des données avec le terminal avec lequel une communication est établie. 2860676 -2- Selon l'invention, les données échangées entre deux terminaux comprennent des fiches présentant chacune une structure définie dans un profil respectif connu des deux terminaux, le procédé comprenant des étapes au cours desquelles: à la suite de l'établissement d'une communication entre un premier et un second terminal, le premier terminal transmet au second terminal une liste de codes d'identification de profils, le second terminal transmet en réponse au premier terminal un ensemble de 10 fiches correspondant chacune à un profil identifié dans la liste de codes d'identification de profils reçue du premier terminal, et le premier terminal mémorise les fiches reçues. Selon un mode de réalisation de l'invention, le premier terminal compare chacune des fiches reçues à des fiches personnelles stockées en mémoire et dont les profils correspondent, pour déterminer si une fiche reçue coïncide avec une fiche personnelle, et si une fiche reçue coïncide avec une fiche personnelle, le terminal émet un signal à destination de l'utilisateur. Avantageusement, dans un premier mode de fonctionnement du terminal, les fiches transmises comprennent uniquement des fiches personnelles d'un utilisateur du terminal. Avantageusement, dans un second mode de fonctionnement du terminal, les 25 fiches transmises comprennent uniquement des fiches reçues d'autres terminaux. Avantageusement, dans un troisième mode de fonctionnement du terminal, les fiches transmises comprennent à la fois des fiches reçues d'autres terminaux et 30 des fiches personnelles de l'utilisateur du terminal. Selon un mode de réalisation de l'invention, la liste de codes d'identification de profils transmise par un terminal contient des codes d'identification de profils préalablement sélectionnés par l'utilisateur. Selon un mode de réalisation de l'invention, préalablement à la transmission de la liste de codes d'identification de profils, une signature identifiant l'utilisateur du terminal est transmise à l'autre terminal. 2860676 3 Avantageusement, dans un mode de fonctionnement du terminal, chaque signature émise comprend un identifiant de l'utilisateur permettant d'établir une communication par un autre moyen avec l'utilisateur. Avantageusement, dans un mode de fonctionnement du terminal, chaque signature émise est anonyme et les fiches transmises comprennent uniquement des fiches reçues d'autres terminaux. Selon un mode de réalisation de l'invention, chacune des fiches échangées comprend plusieurs champs dont la nature et les caractéristiques sont définies dans le profil de la fiche, la comparaison d'une fiche reçue avec une fiche personnelle stockée en mémoire consistant à comparer les deux fiches champ par champ, pour déterminer pour chaque champ de la fiche reçue un niveau de pertinence, et à déterminer un niveau de pertinence global pour la fiche reçue en fonction des niveaux de pertinence calculés pour chacun des champs de la fiche reçue. Selon un mode de réalisation de l'invention, le procédé comprend en outre des étapes consistant à définir un nouveau profil, générer une application capable de gérer le nouveau profil, et installer l'application dans au moins deux terminaux d'utilisateur. Selon un mode de réalisation de l'invention, le procédé comprend en outre des étapes consistant à générer un code de profil appartenant à une plage de codes prédéfinie en appliquant une fonction de codage à un mot de passe d'utilisateur et à un code de profil de fiche prédéfini, et à transmettre le code de profil généré dans la liste des codes de profils transmis, de sorte qu'une fiche ayant le profil prédéfini est transmise uniquement si le terminal destinataire dispose à la fois du mot de passe, de la fonction de codage et du profil prédéfini. Selon un mode de réalisation de l'invention, les liaisons de communication établies entre les terminaux sont de faible portée, conformes à une norme de télécommunication sans fil. Alternativement, les liaisons de communication établies entre les terminaux sont de type point à point par l'intermédiaire du réseau Internet. 2860676 -4- Selon un mode de réalisation de l'invention, chaque profil définit le format de différents champs d'une fiche, des règles de saisie des champs d'une fiche du profil, des règles de comparaison à appliquer à chacun des champs de la fiche pour les comparer aux champs d'une autre fiche du même profil, des formules de calcul d'un niveau de pertinence en fonction du résultat de la comparaison, et une formule de calcul d'un niveau de pertinence global en fonction des niveaux de pertinence calculés pour chacun des champs de la fiche. L'invention concerne également un système d'échange de fiches diffusées par une pluralité de terminaux un réseau de télécommunication, chacun des terminaux comprenant des moyens pour détecter la présence d'autres terminaux situés à proximité, des moyens pour établir une communication avec un terminal détecté, et des moyens pour échanger des données avec le terminal avec lequel une communication est établie. Selon l'invention, les données échangées entre deux terminaux comprennent des fiches présentant chacune une structure définie dans un profil respectif connu des deux terminaux, chaque terminal comprenant en outre: des moyens pour recevoir d'un autre terminal avec lequel une communication est établie, une liste de codes d'identification de profils, des moyens pour transmettre à l'autre terminal un ensemble de fiches correspondant chacune à un profil identifié dans la liste de codes d'identification de profils reçue de l'autre terminal, et des moyens de réception et de mémorisation de fiches. Selon un mode de réalisation de l'invention, chaque terminal comprend en outre: des moyens de comparaison pour comparer chacune des fiches reçues à des fiches personnelles stockées en mémoire et dont les profils correspondent, pour déterminer si une fiche reçue coïncide avec une fiche personnelle, et des moyens pour émettre un signal à destination de l'utilisateur du terminal si une fiche reçue coïncide avec une fiche personnelle. Avantageusement, le réseau de télécommunication est du type sans fil. Alternativement, le réseau de télécommunication est du type réseau point à point dans le réseau Internet. Selon un mode de réalisation de l'invention, le système comprend des moyens pour générer une application spécifique à au moins un profil et pour installer 5 l'application dans des terminaux d'utilisateur. Un mode de réalisation préféré de l'invention sera décrit ci-après, à titre d'exemple non limitatif, avec référence aux dessins annexés dans lesquels: La figure 1 représente schématiquement un système d'échange d'informations point à point selon l'invention; La figure 2 représente schématiquement l'architecture d'une application d'échange d'informations point à point selon l'invention, installée dans un terminal d'utilisateur montré sur la figure 1; La figure 3 représente la structure d'une signature échangée entre deux terminaux d'utilisateur, selon l'invention; Les figures 4a et 4b illustrent sous la forme d'un organigramme différentes étapes du procédé selon l'invention, exécutées par des 20 terminaux d'utilisateur au cours d'un échange d'informations; La figure 5 illustre sous la forme d'un organigramme plus détaillé les différentes étapes qui sont exécutées par un terminal d'utilisateur lors de la réception d'informations d'un autre terminal. La figure 1 représente un système comprenant des terminaux d'utilisateurs 2, 3 qui peuvent être de différents types, équipés de moyens d'émission et de réception de signaux, pour pouvoir établir des liaisons de communication 1 avec d'autres terminaux et échanger des informations. Les terminaux sont avantageusement de type terminal mobile, téléphone ou assistant électronique personnel (PDA), ces terminaux étant équipés de modules d'émission / réception radio conçus pour établir une liaison point à point avec un autre terminal. Ces modules sont par exemple conformes à la norme Bluetooth. Alternativement, les terminaux peuvent également comprendre des 2860676 -6- moyens pour se connecter à des réseaux dits poste à poste ("Peer to Peer") par l'intermédiaire du réseau Internet. Selon l'invention, les informations échangées entre les terminaux 2 à 4 se présentent sous la forme de fiches ayant des formats prédéfinis dans des profils, chaque profil étant associé à un code d'identification. La valeur de ce code permet avantageusement de distinguer trois catégories de profils, à savoir les profils de service définissant le format de fiches de service destinées à l'application, des profils de fiches cryptées et des profils de fiches non cryptées. En outre, pour pouvoir identifier l'émetteur d'une fiche, les terminaux s'échangent également des informations d'identification regroupées dans un ensemble appelé "signature". Chaque terminal 2 à 4 est en outre équipé d'une application dédiée à l'échange de telles fiches, telle qu'illustrée sur la figure 2. Sur cette figure, l'application d'échange de fiches 10 comprend un module générique 16 qui gère l'application et qui fait appel à des utilitaires 18 de communication pour émettre et recevoir des paquets de données, et de gestion du stockage de fiches en mémoire, et à un ou plusieurs modules spécifiques 17 adaptés à un ou plusieurs profils de fiches, ces modules spécifiques rassemblant des fonctions d'édition et de comparaison de fiches. L'application 10 a accès à un ensemble 12 de paramètres de configuration de l'application, ainsi qu'à des fiches stockées en mémoire qui sont avantageusement réparties en un ou plusieurs répertoires 13 de fiches personnelles créées par l'utilisateur, un ou plusieurs répertoires 14 de fiches glanées, c'est-à-dire reçues d'autres utilisateurs, et un répertoire 15 de paires de fiches associant une fiche personnelle et une fiche reçue qui coïncide avec la fiche personnelle. Sur la figure 3, la signature d'un utilisateur comprend: un code d'identification "ID" non modifiable, identifiant de manière unique le terminal de l'utilisateur vis-à-vis du moyen de transmission utilisé, par exemple un identifiant Bluetooth sur 6 octets, un champ "pseudo" destiné à recevoir une chaîne de caractères telle que le nom de l'utilisateur, lui permettant d'être identifié par d'autres utilisateurs du système d'échange, par exemple sur 8 octets, 2860676 -7- - un numéro de mode de fonctionnement de l'application, par exemple sur un octet, et éventuellement un identifiant "tel" de l'utilisateur vis-à-vis d'un autre moyen de télécommunication par lequel l'utilisateur peut être joint, par exemple un numéro de téléphone ou un identifiant de messagerie instantanée. A la suite de l'établissement d'une communication avec un autre terminal, cette signature est transmise en association avec une liste de codes d'identification de profils de fiches que l'utilisateur a en général sélectionné parmi les profils dont il dispose, ces codes étant par exemple définis sur deux octets. Chaque profil défmit un format de fiche comportant un ou plusieurs champs à remplir par les utilisateurs, chacun de ces champs étant associé à des attributs indiquant notamment le type du champ, un niveau de priorité, si le champ est à saisie obligatoire ou non, la taille du champ dans le cas d'un champ de type texte. Les types de champs possibles sont par exemple les suivants: liste à choix unique, de n éléments parmi lesquels l'utilisateur doit choisir un seul élément, liste à choix multiple, de n éléments parmi lesquels l'utilisateur doit choisir un ou plusieurs éléments, liste à classer ou trier, de n éléments parmi lesquels l'utilisateur doit choisir un ou plusieurs éléments auxquels il affecte un ordre de priorité, mot de passe de longueur fixe, texte de longueur maximale prédéfinie, image, vidéo, Pour un champ de type liste, le profil fournit les valeurs de tous les éléments de la liste. Chaque profil fait également référence à des fonctions du module générique 16 à exécuter pour remplir chaque champ d'une fiche du profil, et pour comparer champ à champ deux fiches du profil, en vue d'une comparaison de fiches pour évaluer un niveau de pertinence. 2860676 -8- Dans le cas où le format des fiches de demande doit être différent de celui des fiches d'offre correspondantes, on prévoit des profils appairés définissant le format et les fonctions applicables aux fiches de demandes pour l'un et aux fiches d'offre pour l'autre. Dans le cas où il n'est pas nécessaire distinguer les profils des fiches de demandes et d'offres correspondantes, le profil est dit "symétrique". On peut prévoir parmi les utilitaires 18 un utilitaire de création de profil personnalisé, permettant à un utilisateur de créer des profils personnalisés et de 10 le transmettre à des personnes d'un groupe d'échange qu'il veut ainsi former. Les terminaux 2 à 4 sont conçus pour fonctionner en mode automatique, c'est-à-dire qu'ils effectuent périodiquement des recherches d'autres terminaux avec lesquels ils peuvent échanger des fiches. Ils peuvent également fonctionner au choix de l'utilisateur en mode manuel dans lequel la recherche d'un autre terminal en vue d'établir une communication est déclenchée par l'utilisateur. Lorsque plus de deux terminaux tentent simultanément d'entrer en communication, on peut prévoir l'exécution par chaque terminal d'une procédure effectuant des tentatives aléatoires, en suivant une liste circulaire contenant tous les identifiants ID des terminaux détectés, candidats à l'établissement d'une connexion. Cette procédure consiste tout d'abord à effectuer une tentative de connexion avec le premier candidat de la liste des terminaux détectés, et si le candidat ne répond pas suivant un protocole prédéfini, la procédure passe au candidat suivant dans la liste, et ainsi de suite. Si une connexion est établie, le correspondant est retiré de la liste. Lorsque la fin de la liste est atteinte et si celle-ci n'est toujours pas vide (au moins une tentative de connexion n'a pas abouti) alors la procédure redémarre au premier correspondant de la liste, et ainsi de suite jusqu'à ce que la liste soit vide ou qu'un nombre maximal de tentatives ait été atteint pour chaque terminal détecté. Dans la norme Bluetooth, l'établissement de cette liste de terminaux candidats est effectué à l'aide de la procédure "inquiry". On peut prévoir de définir un délai Tc minimum à la suite duquel un terminal tente une nouvelle connexion vers un même terminal candidat, ainsi qu'un nombre de tentatives maximal pour établir une connexion avec un même correspondant. Si ce nombre est dépassé, le correspondant en question est éliminé de la liste. 2860676 9 En outre, pour éviter d'entrer en communication avec un même correspondant plusieurs fois de suite, on définit également un délai Tr minimum pendant lequel un correspondant avec lequel une connexion a déjà été établie ne peut pas réintégrer la liste des terminaux détectés. Alternativement, on définit un nombre minimum de correspondants avec lesquels une communication a été établie avant de reprendre en compte un correspondant avec lequel une connexion a déjà été établie. Si le moyen de transmission permet des connexions simultanées, le terminal appelé répond qu'il est occupé, par exemple en envoyant une signature dans laquelle le mode est forcé à une valeur prédéfinie, par exemple 11. Lorsque deux terminaux d'utilisateurs entrent en communication, ils s'échangent tout d'abord un code d'application pour indiquer qu'ils veulent activer l'application d'échange de fiches. Si l'un des deux terminaux en communication ne renvoie pas ce code, ils se déconnectent ou exécutent une autre application, si une telle application est prévue. Si au contraire, ce code est reçu par chacun des deux terminaux, ils s'échangent leur signature et la liste des codes de profils de fiches qu'ils souhaitent s'échanger. Ensuite, les deux terminaux s'échangent uniquement les fiches ayant des profils communs, dits "symétriques", ou appairés, dans les deux listes de codes de profils précédemment échangées. Dans ce contexte, l'application 10 est avantageusement conçue pour gérer plusieurs modes d'échange de fiches entre utilisateurs. Quel que soit le mode d'échange, les terminaux acceptent toutes les fiches transmises et effectuent ensuite un tri des fiches reçues. On prévoit ainsi les modes suivants: un premier mode de requête anonyme dans lequel le terminal de l'utilisateur ne transmet qu'une signature anonyme, c'est-à-dire dans laquelle les champs "pseudo" et "tel" sont vides, et ne transmet que des fiches glanées, c'est-à-dire reçues d'autres utilisateurs, à l'exclusion des fiches personnelles de l'utilisateur, un second mode d'échange dit "de gré à gré" dans lequel le terminal de l'utilisateur ne transmet sa signature complète à son interlocuteur que si ce dernier lui fournit également sa signature complète, et transmet des fiches 2860676 -10glanées, et si les signatures complètes ont été échangées, également des fiches personnelles, un troisième mode d'échange ciblé dans lequel le terminal de l'utilisateur 5 transmet sa signature complète et ne transmet que des fiches personnelles, et un quatrième mode d'échange global dans lequel le terminal de l'utilisateur transmet sa signature complète et toutes ses fiches personnelles et glanées. En retransmettant des fiches reçues d'autres utilisateurs, chaque terminal assure la fonction de relais vis-à-vis des autres terminaux. On peut également prévoir un cinquième mode adapté à des terminaux fixes ou mobiles 4 qui n'ont pas de fiches personnelles à diffuser et donc fonctionnant uniquement comme des stations relais. Dans ce mode, le terminal envoie systématiquement sa signature complète et toutes les fiches qu'il a reçues et ayant un profil demandé par son correspondant. Dans ce mode, le terminal n'émet aucune liste de codes de profils à la suite de la signature. Les figures 4a et 4b illustrent des procédures 20, 40 qui sont exécutées respectivement par deux terminaux A et B lorsqu'ils entrent en communication. Aux premières étapes 21 et 41 de ces procédures, les deux terminaux établissent entre eux une liaison, l'un A de ces deux terminaux prenant l'initiative de l'échange, par exemple en fonction des valeurs relatives de leurs identifiants "ID" respectifs. A l'étape suivante 22, le terminal A envoie un message d'introduction contenant la signature de l'utilisateur du terminal et une liste de codes de profils (sauf si le terminal est en mode 5: station relais). Si le terminal A est en mode 1 ou 2, la signature envoyée est anonyme. Si le terminal A est en mode 1, 2 ou 3, la liste des codes de profils envoyée correspond à des profils préalablement sélectionnés par l'utilisateur. En mode 4, cette liste de codes fait référence à tous les profils gérés par l'application 10 installée dans le terminal A. Parallèlement à l'étape 22, le terminal B se met en attente de réception du message d'introduction du terminal A et reçoit ce message à l'étape 42. A l'étape suivante 43, il émet son message d'introduction, tandis qu'à l'étape 2860676 -11- 23, le terminal A est en attente de ce message puis le reçoit. La signature émise par le terminal B est également anonyme si le terminal A se trouve en mode 1, le terminal B connaissant le mode du terminal A grâce à la signature reçue de ce dernier. Comme pour le terminal A, la liste des codes de profils transmis dans le message d'introduction émis par le terminal B contient les codes de profils sélectionnés par l'utilisateur du terminal B en mode 1, 2 ou 3 et tous les codes des profils gérés par le terminal B en mode 4. Comme pour le terminal A, le message d'introduction émis par le terminal B ne contient pas de liste de codes de profils si celui-ci est en mode 5. A l'étape 24a suivante, le terminal A teste le mode du terminal B reçu dans le message d'introduction et si celui-ci est égal à 2, 3 ou 4, tandis que le mode du terminal A est égal à 2, le terminal A transmet sa signature complète au terminal B (étape 24b). A l'étape suivante 24c et si le mode du terminal A n'est pas égal à 2 ou si le mode du terminal B est égal à 1, le terminal A transmet des fiches au terminal B, tandis que le terminal B est en attente de ces fiches et les reçoit à l'étape 44. Le terminal A ne transmet que des fiches glanées dans les profils communs mentionnés dans les messages d'introduction, s'il est en mode 1 ou si le terminal A est en mode 2 et le terminal B en mode 1. Le terminal A ne transmet que ses fiches personnelles dans les profils communs s'il est en mode 3, et transmet toutes les fiches (personnelles + glanées) dans les profils communs s'il est en mode 2 et le terminal B également, ou s'il est en mode 4. A l'étape suivante 25, le terminal A se met en attente des fiches du terminal B, tandis que le terminal B transmet ses fiches à A (étape 45), en suivant les mêmes règles que le terminal A en fonction de leurs modes respectifs. Aux étapes suivantes respectives 26, 46, les deux terminaux A et B appliquent aux fiches reçues un premier traitement de tri pour rejeter les fiches qui ont déjà été reçues et stockées, et pour stocker les nouvelles fiches reçues dans le répertoire 14 des fiches glanées. Pour identifier qu'une fiche a déjà été reçue, l'application 10 se base sur l'identifiant de l'émetteur de la fiche et sur une information de date de création figurant en entête de toutes les fiches, cette information pouvant être codée sur 4 octets. Ensuite, aux étapes 27 et 47, les terminaux A et B appliquent un calcul de pertinence à chaque fiche reçue, ce calcul consistant à comparer champ à champ 2860676 -12- chaque fiche reçue avec les fiches personnelles stockées dans le terminal et ayant le même profil. Le résultat des comparaisons champ à champ entre deux fiches sert à calculer un niveau de pertinence. Le terminal B se met ensuite en attente d'un message du terminal A (étape 48), tandis que le terminal A à l'étape 27a, compare chaque niveau de pertinence obtenu à un seuil prédéfini par l'utilisateur, les fiches reçues dont le niveau de pertinence calculé est supérieur au seuil étant considérées comme pertinentes. Si des fiches pertinentes sont trouvées, elles sont stockées avec la fiche personnelle correspondante dans le répertoire 15 prévus à cet effet. On peut prévoir en outre d'avertir l'utilisateur par exemple en déclenchant l'émission par le terminal d'un signal sonore ou visuel sur l'écran d'affichage du terminal, selon le choix de l'utilisateur défini par des paramètres de l'application. Ensuite, on peut donner à l'utilisateur la possibilité de consulter les fiches 15 reçues, jugées pertinentes. Deux cas sont alors à considérer, selon que les fiches pertinentes sont ou non des fiches personnelles du terminal B. Si une fiche pertinente n'est pas une fiche personnelle du terminal B, on peut prévoir l'envoi automatique ou au choix de l'utilisateur d'un message court par exemple de type SMS (Short Message Service) au terminal identifié dans le champ "tel" de la signature associée à la fiche pertinente. Au contraire, si une fiche pertinente est une fiche personnelle de l'utilisateur du terminal B, le terminal A peut transmettre, automatiquement ou au choix de l'utilisateur, au terminal B un message de demande de confirmation de pertinence (étape 28). Ce message contient une information spécifiant la nature du message, telle que la signature du terminal A dans laquelle le mode est forcé à une valeur particulière (6 par exemple), ainsi que les deux fiches (fiche personnelle et fiche reçue du terminal B). Le terminal A se met ensuite en attente d'une réponse du terminal B. A la réception du message de demande de confirmation de pertinence (étape 48), et selon le niveau de pertinence calculé par le terminal B pour les deux fiches spécifiées dans ce message et le résultat de la comparaison de ce niveau de pertinence au seuil de pertinence spécifié par l'utilisateur du terminal B, le terminal B émet en réponse un message confirmant ou non la pertinence des fiches (étape 49). 2860676 - 13 - Le calcul de pertinence de deux fiches peut en effet varier d'un terminal à l'autre, en raison d'une part du seuil de pertinence choisis par l'utilisateur, et d'autre part, par la possibilité qu'offrent certains profils d'influencer le calcul en modifiant des coefficients de pondération associés aux différents champs. Le message de confirmation de pertinence contient une information spécifiant la nature du message, par exemple la signature du terminal B dans laquelle le mode est forcé à une valeur particulière, par exemple 7 pour indiquer que la pertinence n'est pas confirmée par le terminal B, et 8 dans le cas contraire. Dans le cas où la pertinence est confirmée par le terminal B, ce message peut avantageusement contenir un mot de passe choisi aléatoirement, qui peut être utilisé par les utilisateurs des deux terminaux pour s'échanger en temps réel des messages qu'ils introduisent dans leur terminal. Les messages ainsi échangés peuvent être des fiches d'un profil crypté particulier comportant un champ de type texte libre. A l'étape 29, le terminal A reçoit ce message, et si la pertinence est confirmée (étapes 30 et 50), il peut établir un dialogue avec le terminalB par exemple au moyen du mot de passe transmis dans le message de confirmation de pertinence (étapes 31 et 51). Dans le cas contraire, les procédures 20 et 40 prennent fin. Si la pertinence est confirmée, les deux utilisateurs peuvent décider d'entrer en communication vocale, par exemple à l'aide de leurs terminaux respectifs s'il 25 s'agit de téléphones mobiles. Dans les procédures 20, 40 qui viennent d'être décrites, l'échange d'une liste de codes de profils permet d'effectuer un tri préalable (avant émission) des fiches échangées. Un tri après réception sur les fiches reçues est ensuite effectué sur la base des formats des fiches prédéfinies dans les profils. Ces dispositions permettent à la fois de limiter le volume d'informations échangées, et de simplifier le tri des fiches reçues. Il est à noter que le passage aux étapes 27 et 47 peut être manuel. En outre, les traitements effectués aux étapes 27 à 31 et 47 à 51 peuvent être réalisés sur un autre terminal, après téléchargement des fiches reçues et des fiches personnelles. 2860676 -14- La figure 5 illustre plus précisément un exemple de procédure 60 d'entrée en communication et de réception d'informations d'un autre terminal, exécutée à la fois par un terminal maître et esclave. A la suite de l'établissement d'une liaison avec un autre terminal, le terminal reçoit un message d'introduction. Si à l'étape 61, ce message ne contient pas le code d'introduction INTRO prédéfini correspondant à l'application d'échange de fiches, la procédure 60 prend fin, c'est-àdire que le terminal ne répond rien. Dans le cas contraire, le code d'introduction de l'application est suivi d'une signature et éventuellement d'une liste de codes de profils si le mode contenu dans la signature reçue est inférieur à 5 (étape 62). A l'étape suivante 63, le terminal teste si au moins un des codes de profils reçus correspond à au moins un des profils attendus, ou si le mode contenu dans la signature est égal à 5 (étape 63). Si aucun code de profil reçu ne correspond à un profil attendu ou si le mode reçu n'est pas égal à 5, la procédure prend fin, éventuellement par l'échange d'un code de conclusion CC, les deux terminaux n'ayant aucun profil en commun et donc aucune fiche à échanger. Si les deux terminaux en communication présentent des profils de fiches en 20 commun, cinq cas peuvent se produire. Le terminal récepteur peut ainsi recevoir: soit une fiche pour le premier profil commun spécifié dans la liste des codes de profils contenue dans le message d'introduction reçu, en tenant compte de l'ordre dans lequel les codes de profils apparaissent dans la liste (étape 69), soit une séquence de séparation INTER indiquant que la fiche suivante qui va être transmise a le profil commun suivant, spécifié dans la liste des codes de profils contenue dans le message d'introduction reçu (étape 64), soit une signature complète dans le cas où le mode 2 est actif et où le mode 30 spécifié dans la signature reçue est supérieur à 1 (étape 65), soit un code d'introduction INTRO spécifiant dans ce cas, que la fiche suivante qui va être transmise est une fiche glanée et est donc précédée de la signature du créateur de cette fiche (étape 67), soit un code de conclusion CC mettant fin au dialogue dans le cas où le 35 terminal émetteur n'a pas de fiche à émettre dans les profils communs et n'attend aucune fiche du terminal récepteur (étape 68). Si à l'étape 64, le code séparateur INTER est reçu, le terminal récepteur revient 2860676 - 15 - à l'étape 64. Si le test de l'étape 65 est positif, le terminal récepteur reçoit la signature complète du terminal émetteur, puis passe à l'étape 69 de réception d'une fiche. Si à l'étape 67, le terminal récepteur reçoit un code d'introduction, il passe aux 5 étapes 70 à 75 de réception de fiches glanées, décrites ciaprès. A la suite de la réception d'une fiche (étape 69), le terminal revient à l'étape 64. Aux étapes 70 à 72, le terminal récepteur peut recevoir: soit un code de séparation INTER (étape 70) spécifiant un changement de profil et le passage au profil commun suivant dans la liste des codes de profils reçue à l'étape 62, soit un code de conclusion CC (étape 71) mettant fin au dialogue dans le cas où le terminal émetteur n'a pas de fiche glanée à émettre dans les profils 15 communs, soit une fiche glanée (étape 73) précédée de la signature (étape 72) de l'utilisateur qui a créé la fiche. Dans le cas de la réception d'un code séparateur INTER à l'étape 70, le 20 terminal exécute à nouveau cette étape au cas où il y aurait encore un code de séparation indiquant qu'il faut passer au code de profil commun suivant. A la suite de l'étape 73, le terminal teste à nouveau si les données reçues ensuite correspondent au code de séparation INTER (étape 74). Ce test est exécuté à nouveau tant qu'un code de séparation est détecté. A chaque fois qu'un tel code est détecté, on passe au profil suivant dans la liste des codes de profils reçue. Si les données reçues ensuite ne contiennent pas de code séparateur INTER à l'étape 74, le terminal passe à l'étape suivante 75 où il teste si les données reçues ensuite correspondent au code d'introduction INTRO, spécifiant que les données qui suivent contiennent une signature suivie d'une ou plusieurs fiches (cas d'un changement de créateur de fiche). Si tel est le cas, le terminal revient à l'étape 72. Dans le cas contraire, le terminal passe à l'étape suivante 76 où il teste si les données reçues ensuite correspondent au code de conclusion. Si tel est le cas, la procédure prend fin. Dans le cas contraire, les données suivantes reçues contiennent une nouvelle fiche et le terminal retourne à cet effet à l'étape 73. 2860676 - 16 - La réception d'une signature ne pose pas de problème étant donné que sa longueur est fixe. La liste des codes de profils est de longueur variable, définie par la taille du message d'introduction reçu. Les fiches d'un même profil ont de préférence une longueur fixe déterminée par leur profil qui est connu lors de la réception de la fiche, grâce au fait que les fiches sont transmises dans l'ordre des codes de profils de la liste de codes de profils reçue et à la présence de codes séparateurs INTER. On peut toutefois prévoir des fiches de taille variable et donc avec des champs de taille variable. Dans ce cas, les champs de taille variable sont délimités grâce à un code séparateur défini à cet effet dans le profil. Le séparateur du dernier champ de la fiche ou le dernier champ de taille fixe marquant la fin de la fiche. Pour faciliter leur émission, les fiches sont rangées par profils dans les répertoires 13 et 14 de la mémoire du terminal, à raison d'un fichier par profil. Dans chaque fichier du répertoire des fiches personnelles 13, les fiches sont disposées séquentiellement sans séparateur particulier. Dans chaque fichier du répertoire des fiches glanées, les fiches sont rangées comme elles sont reçues, c'est-à-dire avec une signature suivie des fiches appartenant à la personne correspondant à la signature. De cette manière, aucun traitement particulier n'est nécessaire pour mettre en forme les fiches avant de les transmettre ou à la suite de leur réception. 25 On peut prévoir que dans certains cas (par exemple pour les stations relais), des informations supplémentaires sont stockées avec les fiches reçues. Ces informations peuvent contenir la date et le lieu de réception de la fiche. Ainsi, une station relais mobile peut être équipée à cet effet de moyens de localisation, tels que GPS (Global Positioning System). Comme les fiches d'un même profil ont un format prédéfini et grâce à la présence de champs de type liste d'éléments prédéfinis, la création et l'édition d'une fiche ainsi que le calcul de pertinence sont relativement simples. Lorsqu'il s'agit de comparer deux fiches d'un même profil, on applique par exemple les règles générales suivantes. 2860676 -17- Pour un champ de type liste à choix unique, on applique un critère d'égalité stricte aux valeurs respectives des champs de deux fiches à comparer. Pour un champ de type mot de passe, on peut également procéder à une comparaison caractère par caractère du mot de passe, le niveau de pertinence étant déterminé en fonction du nombre de caractères égaux. Pour un champ de type liste à choix multiple, le niveau de pertinence est calculé en divisant le nombre de bonnes réponses par le nombre de choix à effectuer si ce dernier est fixé. Dans le cas où le nombre de choix à effectuer est libre, le calcul de pertinence peut consister à diviser le nombre de choix identiques entre les deux champs à comparer par le plus grand nombre de choix effectués dans l'un ou l'autre des champs à comparer. Pour un champ de type liste triée ou classée, le calcul de pertinence peut 15 consister à comparer élément par élément, les valeurs respectives attribuées à chacun des éléments de la liste. A partir des niveaux de pertinence calculés pour chaque champ du profil des fiches à comparer, on calcule ensuite un niveau de pertinence global pour la fiche consistant en une combinaison algébrique, selon le caractère éliminatoire ou non des champs, et incluant des coefficients de pondération choisis en fonction de l'importance relative que l'on souhaite attribuer à chacun des champs. Les formules de calcul appliquées pour calculer un niveau de pertinence pour chaque champ d'un profil et pour calculer un niveau de pertinence global pour le profil en fonction des niveaux de pertinence calculés pour les champs sont définies dans le profil, sous la forme de paramètres et de références à des fonctions (ou méthodes) du module générique 16. Lorsqu'il s'agit de comparer deux fiches d'un profil, les champs à comparer entre eux peuvent être croisés. Chaque application 10 est un programme exécutable par un terminal 2 à 4, et est conçue pour gérer et traiter certains profils. Par conséquent, si l'on souhaite qu'un terminal soit capable de gérer et traiter un profil supplémentaire, il est nécessaire d'installer dans le terminal une nouvelle application capable de traiter en plus ce profil supplémentaire. Ainsi, le système selon l'invention peut 2860676 -18- comprendre un générateur d'application 5 couplé à un serveur d'application 6 à partir duquel les terminaux peuvent télécharger des applications, par exemple par l'intermédiaire d'une liaison Bluetooth, d'un réseau mobile 7 et d'un protocole de transmission de données tel que WAP, ou encore par l'intermédiaire du réseau Internet. Le serveur d'application 6 est par exemple conçu pour permettre à un utilisateur via une interface homme/machine adaptée, de définir un profil symétrique ou deux profils appairés, c'est-à-dire pour chaque profil un format de fiche, les dialogues permettant de saisir une fiche de ce format, et les méthodes de calcul de pertinence à appliquer. Avantageusement, on prévoit également des profils sécurisés avec mot de passe permettant aux utilisateurs de former des groupes fermés. Pour les fiches ayant un tel profil sécurisé, on peut appliquer le traitement décrit ci-avant prévoyant la transmission de la fiche si le destinataire a fournit le code du profil de la fiche dans la liste des codes de profils transmise à la suite de la signature, et l'application d'un calcul de pertinence au champ de type mot de passe. Cette solution présente l'avantage d'utiliser le même processus de traitement que les autres fiches, mais n'empêche pas la transmission d'une fiche à une personne disposant du profil mais pas du mot de passe. Une fois reçue et stockée, la fiche peut alors être lue par des moyens détournés. Une autre solution consiste à réserver une plage entière de codes de profils aux profils sécurisés par mot de passe et à inclure le mot de passe dans le code de profil transmis pour émettre et/ou recevoir une fiche d'un profil sécurisé. A cet effet, on applique une fonction de codage produisant un code à partir du mot de passe de l'utilisateur et du code de profil, le code obtenu étant transmis en tant que code de profil dans la liste des codes de profils. Cette fonction de codage consiste par exemple en une fonction de hachage telle que MD5 qui est appliquée au mot de passe sur M octets, en utilisant le code du profil comme valeur d'initialisation, pour le transformer en un code dont la taille correspond à celle d'un code de profil et appartenant à la plage de codes réservée aux profils sécurisés. En raison du choix d'une fonction de hachage, la probabilité que deux mots de passe distincts produisent deux codes identiques est très faible. Pour réduire encore le risque qu'une fiche soit indûment transmise, on peut prévoir d'appliquer des tests supplémentaires par exemple portant sur la taille de la fiche, afin d'interrompre la communication en cas d'échec d'un de ces tests. 2860676 - 19 - Un tel échange de fiches de profil sécurisé peut être avantageusement utilisé lorsque deux terminaux en communication ont détecté parmi des fiches reçues une fiche pertinente créée par l'utilisateur de l'autre terminal. - 20 - REVENDICATIONS 1. Procédé d'échange de données diffusées par une pluralité de terminaux (2, 3) dans un réseau de télécommunication (1), chacun des terminaux détectant la présence d'autres terminaux situés à portée de communication, établissant une communication avec un terminal détecté et échangeant des données avec le terminal avec lequel une communication est établie, caractérisé en ce que les données échangées entre deux terminaux (2, 3) comprennent des fiches présentant chacune une structure définie dans un profil respectif connu des deux terminaux, le procédé comprenant des étapes au cours desquelles: à la suite de l'établissement d'une communication (1) entre un premier et un second terminal, le premier terminal transmet (22, 43) au second terminal 15 une liste de codes d'identification de profils, le second terminal transmet (24c, 45) en réponse au premier terminal un ensemble de fiches correspondant chacune à un profil identifié dans la liste de codes d'identification de profils reçue du premier terminal, et le premier terminal mémorise (26, 46) les fiches reçues. 2. Procédé selon la revendication 1, caractérisé en ce que le premier terminal compare (27, 47) chacune des fiches reçues à des fiches personnelles stockées en mémoire et dont les profils correspondent, pour déterminer si une fiche reçue coïncide avec une fiche personnelle, et si une fiche reçue coïncide avec une fiche personnelle, le terminal émet un signal à destination de l'utilisateur. 3. Procédé selon l'une des revendications 1 à 2, caractérisé en ce que dans un premier mode de fonctionnement du terminal (2, 30 3), les fiches transmises comprennent uniquement des fiches personnelles d'un utilisateur du terminal. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que dans un second mode de fonctionnement du terminal (2, 3, 35 4), les fiches transmises comprennent uniquement des fiches reçues d'autres terminaux (2, 3). 5. Procédé selon l'une des revendications 1 à 4, 2860676 -21- caractérisé en ce que dans un troisième mode de fonctionnement du terminal (2, 3), les fiches transmises comprennent à la fois des fiches reçues d'autres terminaux et des fiches personnelles de l'utilisateur du terminal. 6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce que la liste de codes d'identification de profils transmise par un terminal (2, 3) contient des codes d'identification de profils préalablement sélectionnés par l'utilisateur. 7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce que préalablement à la transmission de la liste de codes d'identification de profils, une signature identifiant l'utilisateur du terminal (2, 3) est transmise à l'autre terminal. 8. Procédé selon la revendication 7, caractérisé en ce que dans un mode de fonctionnement du terminal, chaque signature émise comprend un identifiant de l'utilisateur permettant d'établir une communication par un autre moyen avec l'utilisateur. 9. Procédé selon l'une des revendications 1 à 8, caractérisé en ce que dans un mode de fonctionnement du terminal, chaque signature émise est anonyme et les fiches transmises comprennent uniquement des fiches reçues d'autres terminaux. 10. Procédé selon l'une des revendications 1 à 9, caractérisé en ce que chacune des fiches échangées comprend plusieurs champs dont la nature et les caractéristiques sont définies dans le profil de la fiche, la comparaison d'une fiche reçue avec une fiche personnelle stockée en mémoire consistant à comparer les deux fiches champ par champ, pour déterminer pour chaque champ de la fiche reçue un niveau de pertinence, et à déterminer un niveau de pertinence global pour la fiche reçue en fonction des niveaux de pertinence calculés pour chacun des champs de la fiche reçue. 11. Procédé selon l'une des revendications 1 à 10, caractérisé en ce qu'il comprend en outre des étapes consistant à définir un nouveau profil, générer une application capable de gérer le nouveau profil, et installer l'application dans au moins deux terminaux d'utilisateur. 2860676 -22- 12. Procédé selon l'une des revendications 1 à 11, caractérisé en ce qu'il comprend en outre des étapes consistant à générer un code de profil appartenant à une plage de codes prédéfinie en appliquant une fonction de codage à un mot de passe d'utilisateur et à un code de profil de fiche prédéfini, et à transmettre le code de profil généré dans la liste des codes de profils transmis, de sorte qu'une fiche ayant le profil prédéfini est transmise uniquement si le terminal destinataire dispose à la fois du mot de passe, de la fonction de codage et du profil prédéfini. 13. Procédé selon l'une des revendications 1 à 12, caractérisé en ce que les liaisons de communication (1) établies entre les terminaux sont de faible portée, conformes à une norme de télécommunication sans fil. 14. Procédé selon l'une des revendications 1 à 12, caractérisé en ce que les liaisons de communication (1) établies entre les terminaux sont de type point à point par l'intermédiaire du réseau Internet. 15. Procédé selon l'une des revendications 1 à 14, caractérisé en ce que chaque profil définit le format de différents champs d'une fiche, des règles de saisie des champs d'une fiche du profil, des règles de comparaison à appliquer à chacun des champs de la fiche pour les comparer aux champs d'une autre fiche du même profil, des formules de calcul d'un niveau de pertinence en fonction du résultat de la comparaison, et une formule de calcul d'un niveau de pertinence global en fonction des niveaux de pertinence calculés pour chacun des champs de la fiche. 16. Système d'échange de fiches diffusées par une pluralité de terminaux (2, 3) un réseau de télécommunication (1), chacun des terminaux comprenant des moyens pour détecter la présence d'autres terminaux situés à proximité, des moyens pour établir une communication avec un terminal détecté, et des moyens pour échanger des données avec le terminal avec lequel une communication est établie, caractérisé en ce que les données échangées entre deux terminaux (2, 3) comprennent des fiches présentant chacune une structure définie dans un profil respectif connu des deux terminaux, chaque terminal comprenant en outre: des moyens pour recevoir d'un autre terminal avec lequel une communication (1) est établie, une liste de codes d'identification de profils, 2860676 - 23 - - des moyens pour transmettre à l'autre terminal un ensemble de fiches correspondant chacune à un profil identifié dans la liste de codes d'identification de profils reçue de l'autre terminal, et des moyens de réception et de mémorisation (14) de fiches. 17. Système selon la revendication 16, caractérisé en ce que chaque terminal comprend en outre: des moyens de comparaison pour comparer chacune des fiches reçues à des fiches personnelles stockées en mémoire (13) et dont les profils 10 correspondent, pour déterminer si une fiche reçue coïncide avec une fiche personnelle, et des moyens pour émettre un signal à destination de l'utilisateur du terminal si une fiche reçue coïncide avec une fiche personnelle. 18. Système selon la revendication 16 ou 17, caractérisé en ce que le réseau de télécommunication (1) est du type sans fil. 19. Système selon la revendication 16 ou 17, caractérisé en ce que le réseau de télécommunication (1) est du type réseau 20 point à point dans le réseau Internet. 20. Système selon l'une des revendications 16 à 19, caractérisé en ce qu'il comprend des moyens (5) pour générer une application spécifique à au moins un profil et pour installer l'application dans des 25 terminaux d'utilisateur (2, 3, 4).