Brevet FR2784832A1 — publié le 20000421

PROCEDE DE DIFFUSION D'INFORMATIONS VERS UN TERMINAL D'EVOLUTION SUR L'INTERNET Un réseau informatique tel que l'Internet permet à des utilisateurs de naviguer sur le Web, à l'aide d'un terminal de navigation, et de visiter des sites Web. D'emblee, on notera que le"Web"désigne la partie de l'Internet sur laquelle sont diffusées toutes sortes d'informations et de ressources. Les sites Web, hébergés par des serveurs Web, contiennent des pages Web composées de textes, de graphiques, d'images, d'animations vidéo, de sons et autres éléments multimédia d'information, ainsi que de liens hypertextes reliant entre elles une pluralité de pages Web. Pour passer d'une page à une autre page, il suffit, avec les logiciels les plus exploités, de cliquer sur un lien hypertexte, a 1'ecran du terminal. Le terminal de navigation comporte un logiciel client de navigation sur le Web, tel que"Internet Explorer"ou encore"Netscape Navigator". Afin de naviguer sur le Web, le terminal doit se connecter à l'Internet et exécuter le logiciel de navigation. Une fentre de navigation s'ouvre et s'affiche alors à l'écran du terminal. Pour visiter un site déterminé, l'utilisateur indique l'adresse Web, encore appelée URL ("Universal Ressources Locator" Localisation de ressources universelles), dans une zone d'adresse de la fentre de navigation, ou clique sur un lien hypertexte d'accès au site. Sur requte du terminal, le serveur Web renvoie à celui-ci la page d'accueil du site. Le terminal peut ensuite passer d'une page à une autre page, en cliquant sur des liens hypertextes, afin d'explorer le site. L'accès aux sites Web est souvent gratuit. C'est pourquoi de nombreux sites Web insèrent de la publicité dans leurs pages Web. Le public atteint par la publicité diffusée par un site déterminé est cependant limité aux visiteurs de ce site. En d'autres termes, les utilisateurs du Web ne reçoivent la publicité diffusée par un site que dans la mesure où ils vont la chercher. La présente invention vise à diffuser de la publicité, et plus généralement tout autre type d'informations, vers les utilisateurs du Web, sans que ces derniers ne visitent nécessairement un site déterminé. A cet effet, l'invention concerne un procédé de diffusion d'informations vers un terminal d'évolution sur un réseau informatique tel que l'Internet, dans lequel -on connecte le terminal au réseau informatique et on ouvre une fentre d'application, -après ouverture de la fentre d'application, on déclenche l'intégration d'une zone d'informations à la fentre d'application et -on transmet au terminal des informations afin de remplir la zone d'informations. D'emblée, on notera que par"terminal d'évolution"on entend désigner tout terminal capable d'évoluer sur le réseau informatique, à l'aide d'un navigateur, par courrier électronique ou par tout autre moyen d'évolution. Une"application"désigne un logiciel, un programme ou toute autre suite d'instructions, destinés à tre exécutés par un système informatique (terminal, serveur,...). L'invention consiste donc à intégrer une zone d'informations dans une fentre d'application qui s'ouvre et s'affiche à l'écran du terminal lorsque l'application est lancée, c'est-à-dire exécutée. Après connexion au réseau informatique et ouverture de la fentre d'application, le terminal affiche les informations transmises dans la zone d'informations intégrée à la fentre d'application, sans que son utilisateur ne les aient demandées. Le procédé de l'invention présente un grand intért commercial. En effet, un serveur, fournisseur d'accès au réseau, peut proposer des abonnements d'accès au réseau informatique à des prix extrmement compétitifs, dans la mesure où les abonnés acceptent de recevoir des publicités. On peut insérer la zone d'informations dans la fentre d'application ou l'accoler à celle-ci. Dans un mode de réalisation particulier, on connecte le terminal à un serveur fournisseur d'accès au réseau informatique qui, à la connexion, transmet au terminal un programme d'intégration d'une zone d'informations à une fentre d'application. L'installation du programme d'intégration dans le terminal est ainsi transparente pour l'utilisateur du terminal. Avantageusement, le terminal comportant une application de connexion/déconnexion au réseau informatique, le programme d'intégration d'une zone d'informations enrichit ladite application de connexion/déconnexion. Dans un mode de réalisation préféré, on détecte la fentre d'application ouverte et on déclenche alors l'exécution d'une tâche d'intégration de la zone d'informations. Avantageusement, la fentre d'application consiste en une fentre d'évolution sur le réseau informatique. L'invention sera mieux comprise à l'aide de la description suivante d'un mode de réalisation particulier du procédé de diffusion de l'invention en référence au dessin annexé sur lequel : -la figure 1 représente une vue schématique d'un terminal d'évolution relié à l'Internet par l'intermédiaire d'un fournisseur d'accès ; -la figure 2 représente une fentre de navigation dans laquelle est insérée une barre d'informations ; -la figure 3 représente un schéma des différentes étapes du procédé de diffusion, selon un mode de réalisation particulier, et -la figure 4 représente une fentre de navigation à laquelle est accolée une barre d'informations. Le procédé de l'invention permet de diffuser des informations vers un terminal 1 d'évolution sur un réseau informatique, en l'espèce l'Internet 4. Dans 1'exemple particulier de la description, le terminal d'évolution 1 consiste ici en un ordinateur personnel, de type PC, comprenant une interface homme-machine-comportant notamment un écran d'affichage et un clavier de saisie-, un modem de liaison à un réseau téléphonique 3, en l'espèce le réseau téléphonique commuté (RTC) et, en mémoire, un système d'exploitation, ici Windows@95, une application de connexion/déconnexion à l'Internet 4, une application de navigation sur l'Internet 4 et diverses autres applications telles que notamment une application de traitement de texte. D'emblée, on notera que par le terme"application"on entend désigner un logiciel, un programme ou toute autre suite d'instructions, destinés à tre exécutés par un système informatique (terminal, serveur,...). Le terminal d'évolution 1, ou de navigation, dispose d'un accès à l'Internet 4 fourni par un serveur fournisseur d'accès 2. L'application de connexion/déconnexion est destinée à connecter le terminal 1 à l'Internet 4, par connexion téléphonique au serveur 2 à travers le réseau téléphonique 3, suivant un processus de connexion, et à le déconnecter, suivant un processus de déconnexion. Le serveur 2, directement connecté à l'Internet 4, comprend en mémoire -un logiciel serveur de fournisseur d'accès à l'Internet 4, -une table d'utilisateurs contenant une liste de noms et de mots de passe associés d'utilisateur, -une application d'intégration d'une zone d'informations, en l'espèce une barre d'informations, à une fentre de navigation d'un terminal de navigation, -une application de diffusion d'informations vers un terminal de navigation et -les informations à diffuser. Le serveur 2 fait ici fonction à la fois de fournisseur d'accès à l'Internet 4 et de serveur de diffusion d'informations. La table d'utilisateurs contient en particulier le nom et le mot de passe associé d'un utilisateur du terminal 1. L'application de diffusion d'informations permet au serveur 2 de diffuser des informations vers un terminal client, sur requte de celui-ci. L'application d'intégration d'une barre d'informations à une fentre de navigation comprend un programme client d'intégration et un programme serveur d'intégration, respectivement destinés à tre exécutés par un terminal de navigation et par le serveur 2, comme cela sera explicité plus loin dans la description du procédé. Le programme serveur d'intégration permet au serveur 2 de transmettre, si nécessaire, le programme client d'intégration à un terminal de navigation. Le programme client d'intégration est destiné à intégrer une barre d'informations à une fentre de navigation d'un terminal de navigation, en utilisant une librairie de fonctions préprogrammées, appelée API (Application Programing Interface-Interface de programmation d'application), permettant de faire du développement sous Windows. En l'espèce, l'intégration consiste à insérer la barre d'informations dans la fentre de navigation. Le programme client d'intégration comporte un fichier exécutable d'insertion d'une barre d'informations dans une fentre de navigation et une fonction H, appelée"hook"par l'homme du métier, destinée à détecter une fentre de navigation ouverte afin de déclencher l'insertion d'une barre d'informations dans la fentre de navigation, comme cela sera explicité plus loin. Le fichier exécutable d'insertion de la barre d'informations est ici un fichier "dll" (dynamic link library-librairie de liaison dynamique), selon le vocabulaire utilisé par l'homme du métier, destiné à commander l'insertion de la barre d'informations. Ce fichier permet au terminal de créer une fentre fille constituant la barre d'informations, en utilisant une fonction de création de fentre de la librairie API, et de l'insérer dans une fentre mère, à savoir une fentre de navigation détectée par le hook H. Un hook est une fonction associée à au moins un événement et destinée à réagir à cet événement. Le document intitulé"Développer sous Windows 95 et Windows NT", de Jeffrey Richter, publié aux éditions Microsoft Press, explicite plus précisément ce qu'est un hook. En l'espèce, le hook H est associé à une pluralité d'événements : ouverture d'une fentre, activation d'une fenetre, destruction d'une fentre et autres événements liés à une fentre ouverte. II peut s'agir d'une fentre de navigation mais également d'une fenetre de tout autre type d'application. Lorsque l'un des événements associé au hook H intervient, le hook H détermine d'abord s'il s'agit d'une fentre de navigation, par lecture du titre de la fentre, et, le cas échéant, déclenche l'exécution d'une tache d'insertion d'une barre d'informations dans la fentre de navigation. Les informations à diffuser, en l'espèce de la publicité, consistent ici en une page Web, de format HTML (HyperText Markup Language-langage de marquage hypertexte), contenant différents éléments d'information multimédia dont certains sont fixes et d'autres évolutifs (images, animations vidéo, etc.). Le procédé de diffusion d'informations par le serveur fournisseur d'accès 2 vers le terminal de navigation 1 va maintenant tre décrit. 1-Connexion à l'Internet Afin de connecter le terminal de navigation 1 à l'Internet 4 (étape 20), l'utilisateur du terminal 1 déclenche l'exécution de l'application de connexion/déconnexion, à l'aide de l'interface homme-machine. Le terminal 1 appelle alors le serveur 2, via le modem, à travers le réseau téléphonique 3, et entame le processus de connexion au cours duquel le terminal 1 transmet au serveur 2 un nom et un mot de passe d'utilisateur. Le serveur 2 vérifie la validité du nom et du mot de passe reçus, par comparaison avec ceux stockés dans la table d'utilisateurs, et valide l'accès du terminal 1 à l'Internet 4. A la connexion, le serveur 2, par exécution du programme serveur d'intégration, transmet ici au terminal 1 le programme client d'intégration d'une barre d'informations dans une fentre de navigation, à travers le réseau téléphonique 3 (étape 21). Le programme client d'intégration enrichit l'application de connexion/déconnexion du terminal 1, de façon transparente pour l'utilisateur. En d'autres termes, le serveur 2 modifie l'application de connexion/déconnexion du terminal 1, par téléchargement du programme client d'intégration. Lors de la connexion, l'application de connexion/déconnexion du terminal 1, enrichie par le programme client d'intégration, active le hook H du programme client d'intégration. Après activation, le hook H surveille en permanence l'éventuelle intervention de l'un des événements auquel il est associé afin de détecter le cas échéant une fentre de navigation ouverte. 2-Navigation sur l'Internet Afin de naviguer sur l'Internet 4, l'utilisateur du terminal 1 déclenche l'exécution de l'application de navigation et ouvre ainsi une fentre de navigation 11 qui s'affiche à l'écran du terminal 1 (étape 22). La fentre de navigation 11 permet à l'utilisateur de visiter des sites Web et d'afficher les pages Web diffusées par ceux-ci. De façon connue, la fentre 11 contient, du bas vers le haut, une zone client 5 d'affichage des pages Web, une zone d'adresse 6 destinée à contenir l'adresse URL ("Universal Ressources Locator"-Localisation de ressources universelles) d'un site visité, une barre de boutons 7, une barre de menus 9 et une barre de titre contenant le titre de la fentre 11, ici le nom de l'application de navigation. La barre de boutons 7 et la barre de menus 9 permettent d'exécuter des commandes de l'application de navigation. Le hook H activé détecte l'ouverture de la fentre de navigation 11 (étape 23), détermine qu'il s'agit bien d'une fentre de navigation, par lecture du titre de la fentre 11, et déclenche alors l'exécution de la tâche d'insertion d'une barre d'informations 8 dans la fentre de navigation 11 (étape 24). On notera ici que, pour chaque fentre d'application, et notamment pour la fentre de navigation 11, il existe une procédure de fentre qui gère une pluralité d'événements relatifs à la fentre d'application, et en particulier l'affichage de cette fentre. En outre, chaque fentre d'application ouverte est associée à un"process"de l'application, selon le vocabulaire utilisé par l'homme du metier, c'est-à-dire à un environnement vital dans lequel évolue l'application pendant toute la durée de vie de la fentre d'application. L'exécution de la tâche d'insertion de la barre d'informations 8 va maintenant tre décrite. Après détection de la fentre de navigation 11 ouverte sur action du hook H, celui-ci charge le fichier dll d'insertion d'une barre d'informations dans le process de navigation de la fentre de navigation 11 ouverte. Après chargement, le fichier dll surclasse la procédure de fentre de la fentre de navigation 11. On modifie ainsi la procédure de fentre de la fentre 11. La nouvelle procédure de fentre, contenant le fichier dll d'insertion, autrement dit le code d'insertion, gère notamment un message du système d'exploitation Windows, appelé "WMNCCALCSIZE", pour dimensionner et positionner la zone client 5 de la fentre de navigation 11. La nouvelle procédure de fentre modifie les paramètres de dimensionnement et de positionnement de la zone client 5, qui accompagnent ce message, de façon à réduire la surface de la zone client 5 et à libérer ainsi une surface utile pour la barre d'informations 8, puis crée et insère la barre d'informations 8 ici entre la barre de boutons 7 et la barre de menus 9 (étape 25). Après insertion de la barre d'informations 8, sous la commande du programme client d'intégration, le terminal 1 envoie au serveur 2 une requte pour rapatrier les informations destinées à remplir la barre d'informations 8. Sur réception de cette requte, le serveur 2 transmet alors au terminal 1 la page Web de publicité et le terminal 1 remplit la barre d'informations 8 avec la page Web reçue (étape 26). La fentre de navigation 11, affichée à l'écran du terminal I, contient alors une barre horizontale 8, intercalée entre la barre de menus 9 et la barre de boutons 7, contenant de la publicité. Bien entendu, pendant l'affichage de la barre de publicité, l'utilisateur peut utiliser la fentre de navigation 11 pour naviguer sur l'Internet 4 et afficher dans la zone client 5 des pages Web diffusées par les sites visités. Après avoir navigué sur l'Internet 4, le terminal 1 se déconnecte (étape 27) du serveur fournisseur d'accès alors que la fentre de navigation 11 est toujours ouverte. Lors du processus de déconnexion, sur commande de l'application de connexion/déconnexion modifiée, le terminal 1 supprime (étape 28) la barre d'informations 8 et désactive le hook H. Dans le cas où, sur commande de l'utilisateur, le terminal 1 fermerait la fentre de navigation 11 avant de se déconnecter de l'Internet 4, la fermeture de la fentre de navigation 11 entraînerait naturellement la suppression de la barre d'informations 8. Lors des connexions ultérieures du terminal 1 au serveur 2, celui-ci ne transmet pas à nouveau le programme client d'intégration, installé définitivement dans le terminal 1. A chaque connexion ultérieure, sur action de l'application de connexion/déconnexion modifiée, le terminal 1 active le hook H afin de surveiller les événements intervenant dans le terminal 1 et détecter toute fentre de navigation ouverte et, le cas échéant, insère une barre d'informations dans la fentre de navigation, comme précédemment décrit. Dans un deuxième mode de réalisation du procédé de diffusion de l'invention, l'intégration d'une barre d'informations dans une fentre de navigation consiste à accoler la barre d'informations à la fentre de navigation. Par souci de clarté, seules les étapes de ce deuxième mode de réalisation différant de celles de la première forme de réalisation décrite vont maintenant tre explicitées. On notera d'abord que le programme client d'intégration d'une barre d'informations à une fentre de navigation comporte, à la place du fichier d'insertion, un fichier exécutable dll d'accolement d'une barre d'informations à la fentre de navigation, ainsi qu'un hook H'destiné à détecter une fentre de navigation ouverte afin de déclencher l'exécution d'une tâche d'accolement d'une barre d'informations à la fentre de navigation. A la connexion du terminal de navigation 1 à l'Internet 4, le serveur fournisseur d'accès 2 transmet au terminal 1 le programme client d'intégration qui enrichit l'application de connexion/déconnexion du terminal 1. L'application de connexion/déconnexion modifiée active le hook H'qui surveille alors l'éventuelle intervention de l'un des événements auquel il est associé, afin de détecter le cas échéant une fentre de navigation ouverte. Lorsque l'utilisateur ouvre une fentre de navigation 30, le hook H'activé la détecte et déclenche alors l'exécution de la tâche d'accolement d'une barre d'informations 31 à la fentre de navigation 30, dont l'exécution va maintenant tre décrite. Le hook H'charge le fichier dll d'accolement d'une barre d'informations dans le process de navigation de la fentre de navigation 30. Après chargement, le fichier dll surclasse la procédure de fentre de la fentre de navigation 30 qui est ainsi modifiée. La nouvelle procédure de fentre surveille notamment un message du système d'exploitation Windows, appelé WMGETMINMAXINFO, qui gère la taille et la position sur l'écran du terminal de la fentre de navigation 30. La nouvelle procédure de fentre lit, ici sans les modifier, les paramètres de taille et de position de la fentre de navigation 30 qui accompagnent ce message, afin d'en déduire la taille et la position à donner à la barre d'informations 31, puis crée et accole une fentre fille constituant la barre d'informations 31 contre l'un des bords de la fentre mère de navigation 30, ici contre le bord inférieur 32. La barre d'informations 31 accolée est de mme largeur que la fentre de navigation 30 et s'étend le long du bord inférieur 32. Après accolement de la barre d'informations 31, le serveur 2 transmet au terminal 1, sur requte de ce dernier, les informations pour remplir la barre d'informations 31. Dans le cas où la taille ou la position de la fentre de navigation ne permettent pas de lui accoler une barre d'informations, à cause des limites de l'écran du terminal, la nouvelle procédure de fentre intercepte les paramètres de taille et de position du message WM-GETMINMAXINFO et modifie au moins l'un de ces deux paramètres. Dans la description qui précède, l'utilisateur du terminal de navigation n'a ouvert qu'une seule fentre de navigation. Il pourrait bien entendu ouvrir plusieurs fentres de navigation, dans la mesure où l'application de navigation l'autorise. Dans ce cas, le hook détecterait chaque fentre de navigation ouverte afin d'y intégrer une barre d'informations, comme précédemment décrit. Dans une variante, les informations destinées à remplir la zone d'informations sont diffusées par un serveur de diffusion différent du serveur fournisseur d'accès. Pour rapatrier les informations, le terminal envoie une requte, non pas au serveur fournisseur d'accès, mais au serveur de diffusion. On vient de décrire un procédé de diffusion d'informations vers un terminal de navigation, dans lequel on intègre une zone d'informations à une fentre de navigation. On pourrait tout aussi bien envisager d'intégrer la zone d'informations à une fentre d'une application autre que la navigation, par exemple à une fentre de traitement de texte. Dans ce cas, le hook activé détecterait une fentre ouverte de cette autre application, une fentre de traitement de texte pour reprendre cet exemple, et déclencherait alors l'intégration de la zone d'informations à la fentre d'application détectée. Pour intégrer la zone d'informations à la fentre d'application, le hook chargerait un fichier dll d'intégration de la zone d'informations dans le process de l'application, afin de surclasser la procédure de fentre de la fentre d'application. Dans ce cas, l'utilisateur du terminal pourrait sélectionner une ou plusieurs applications afin d'intégrer une zone d'informations aux seules fentres des applications sélectionnées. En variante, on pourrait envisager d'intégrer une barre d'informations à toute fentre d'application ouverte. A la place de la publicité, on pourrait bien sûr diffuser tout autre type d'informations. Enfin, on soulignera que le procédé de diffusion d'informations de l'invention permet à tout utilisateur du Web d'accéder aux informations diffusées, quelle que soit l'application d'évolution utilisée et quel que soit le site Web visité. REVENDICATIONS 1-Procédé de diffusion d'informations vers un terminal d'évolution (1) sur un réseau informatique (4) tel que l'Internet, dans lequel -on connecte (20) le terminal (1) au réseau informatique (4) et on ouvre (22) une fentre d'application (11), -après ouverture (23) de la fentre d'application (11 ; 30), on déclenche (24) l'intégration (25) d'une zone d'informations (8 ; 31) à la fentre d'application (11 ; 30) et -on transmet au terminal (1) des informations afin de remplir (26) la zone d'informations (8 ; 31). 2-Procédé selon la revendication 1, dans lequel on insère la zone d'informations (8) dans la fentre d'application (11). 3-Procédé selon la revendication 1, dans lequel on accole la zone d'informations (31) à la fentre d'application (30). 4-Procédé selon l'une des revendications 1 a 3, dans lequel on connecte (20) le terminal (1) à un serveur (2) fournisseur d'accès au réseau informatique (4) qui, à la connexion, transmet au terminal (1) un programme d'intégration d'une zone d'informations (8 ; 31) à une fentre d'application. 5-Procédé selon la revendication 4, dans lequel, le terminal (1) comportant une application de connexion/déconnexion au réseau informatique (4), le programme d'intégration d'une zone d'informations (8 ; 31) enrichit ladite application de connexion/déconnexion. 6-Procédé selon l'une des revendications 1 à 5, dans lequel on détecte (23) la fentre d'application ouverte (11 ; 30) et on déclenche alors (24) l'exécution d'une tâche d'intégration de la zone d'informations (8 ; 31). 7-Procédé selon l'une des revendications 1 à 6, dans lequel, une procédure de fentre gérant une pluralité d'événements relatifs à la fentre d'application (11 ; 30), on modifie ladite procédure de fentre de façon à intégrer la zone d'informations (8 ; 31) à la fentre d'application (11 ; 30). 8-Procédé selon l'une des revendications 1 à 7, dans lequel, après ouverture (23) de la fentre d'application (11 ; 30), on charge un fichier exécutable d'intégration de la zone d'informations (8 ; 31) dans l'environnement vital de la fentre d'application (11 ; 30). 9-Procédé selon l'une des revendications 1 à 8, dans lequel le terminal (1) envoie à un serveur (2) de diffusion d'informations une requte afin de rapatrier les informations destinées à remplir la zone d'informations (8 ; 31). 10-Procédé selon l'une des revendications 1 à 9, dans lequel à la connexion du terminal (1) au serveur (2), on active une fonction de détection d'une fentre d'application ouverte. l l-Procédé selon l'une des revendications 1 à 10, dans lequel, dans le cas où le terminal (1) se déconnecte (27) du réseau informatique (4) alors que la fentre d'application (11 ; 30) est ouverte, on supprime (28) la zone d'informations (8 ; 31). 12-Procédé selon l'une des revendications 10 et 11, dans lequel, lorsque le terminal (1) se déconnecte (27) du serveur (2), on désactive la fonction de détection d'une fentre d'application ouverte. 13-Procédé selon l'une des revendications 1 à 12, dans lequel la fentre d'application (11 ; 30) consiste en une fentre d'évolution sur le réseau informatique (4).