FR 2906957 A1 20080411 FR 0608732 A 20061004 1 PROCEDE ET DISPOSITIF DE COMMUNICATION 5 10 La présente invention concerne un procédé et un dispositif de communication. Elle s'applique, en particulier, à la communication relative à des événements, sur un réseau informatique tel qu'Internet. On connaît, de la demande de brevet internationale WO2006054047, publiée le 26 mai 2006, et de la demande nationale correspondante GB0425246.6 (Skinkers Itd), un 15 procédé de mise à disposition de données personnelles dans un réseau de communication de données au moyen de demandes adressées par un terminal client à un serveur. Sur le terminal client, on détermine quand une vérification concernant la disponibilité des données personnelles devrait être effectuée et on transmet une première demande au serveur lorsqu'une telle vérification est nécessaire. Le serveur indique au terminal client si les 20 données personnelles sont disponibles ou non. Sur le terminal client, on détermine s'il est nécessaire d'envoyer une deuxième demande au serveur en fonction de la disponibilité des données personnelles, on transmet une deuxième demande si les données personnelles sont disponibles et, en réponse, on reçoit les données personnelles. Ce procédé présente de nombreux inconvénients. En effet, il s'appuie sur un 25 mécanisme de demande périodique adressée par le terminal client à un serveur. Aucune information concernant la disponibilité de futures données personnelles n'étant stockée sur le terminal client, ce procédé ne fait que décrire un mode de fonctionnement et de relève très classique et utilisé depuis très longtemps. De plus, il ne permet pas, en particulier au serveur : 30 - de signifier lors d'une relève périodique du terminal client la disponibilité d'une information à afficher à une heure précise hors période de relève périodique, - de stocker totalement ou partiellement sur le terminal client le contenu que ce dernier devra afficher à l'utilisateur à l'heure qui a été précisée, et ce même si le terminal client est déconnecté du réseau de communication au moment précis de l'affichage, 35 - de modifier les caractéristiques d'affichage de l'alerte et de permettre en particulier de régler son temps d'affichage en lui précisant soit une durée fixe soit une date et heure butoir, 2906957 2 - de permettre et automatiser le déclenchement d'un nouveau traitement à une étape donnée de l'affichage du message ou de l'alerte ou - d'incorporer dans le corps du message un contenu multimédia complet incluant textes, images, sons, vidéos, Scripts, et non un simple message comportant du texte, une image et un lien formaté d'une façon toujours identique et non modifiable par le serveur. II ne permet pas, en particulier au logiciel client : - de sortir de son mode d'interrogation classique et périodique, même si la périodicité programmée n'a pas de lien direct avec la survenance de l'événement à afficher, - d'afficher à un instant précis l'information sur le terminal client, - d'afficher un message ou une alerte sur le terminal client même lorsque ce dernier n'est pas connecté sur le réseau de communication, - de faire disparaître ce message à un instant contrôlé par le serveur ou - de déclencher de nouveau traitements à certaines étapes de l'affichage du message La présente invention vise à remédier à ces inconvénients. A cet effet, selon un premier aspect, la présente invention vise un procédé de communication entre un terminal client et un serveur qui comporte : une étape d'émission d'une requête par le terminal client au serveur, une étape de réception d'une requête depuis ledit serveur, ladite requête comportant une information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire, une étape de stockage sur le terminal client, d'une information représentative de l'alerte, de la date et heure de déclenchement d'affichage et de chaque date et heure de déclenchement d'action complémentaire, à la date et à l'heure de déclenchement d'affichage, une étape d'affichage, sur un écran du terminal client, d'une information représentative de l'alerte et à chaque date et heure de déclenchement d'action complémentaire, une étape de déclenchement de l'action complémentaire correspondant à ladite date et heure. Grâce à ces dispositions, l'utilisateur du terminal client n'a pas à surveiller des événements dont il a demandé, au niveau du serveur, à être alerté : automatiquement, au moment où il doit en être informé, l'information représentative de l'alerte lui est affichée et, automatiquement, des actions complémentaires sont déclenchées. On observe que le terme de terminal client recouvre aussi bien les ordinateurs que les assistants numériques personnels, ou PDA (acronyme de personal digital assistant ), les téléphones mobiles, les smartphones, c'est-à-dire les téléphones mobiles possédant des fonctions d'assistants numériques personnels. 2906957 3 Selon des caractéristiques particulières, au moins une information représentative de date et heure est représentative d'un délai entre deux événements. Selon des caractéristiques particulières, l'information représentative d'alerte affichée au cours de l'étape d'affichage prend la forme d'une fenêtre surgissante (en anglais popup 5 window ). Selon des caractéristiques particulières, l'information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire est, en outre, représentative d'une date et heure d'arrêt d'affichage et le procédé comporte, en outre, à la date et à l'heure d'arrêt d'affichage, 10 une étape d'arrêt d'affichage, sur l'écran du terminal client, de l'information représentative de l'alerte. Selon des caractéristiques particulières, au moins une action complémentaire comporte une ouverture d'une fenêtre sur l'écran du terminal client. Selon des caractéristiques particulières, au moins une action complémentaire 15 comporte le lancement d'un logiciel sur le terminal client. Selon des caractéristiques particulières, au cours de l'étape d'affichage de l'alerte, le terminal client demande de l'information à afficher au serveur et affiche l'information à afficher fournie, en retour, par le serveur. Selon des caractéristiques particulières, au cours de l'étape de réception d'une 20 requête depuis ledit serveur, l'information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire, est, en outre, représentative d'une adresse électronique de page accessible sur un réseau informatique, le terminal client accédant à ladite page en mettant en oeuvre ladite adresse électronique pour demander de l'information à afficher. 25 Selon des caractéristiques particulières, au cours de l'étape d'affichage d'une information représentative de l'alerte, on affiche la durée restant à courir avant que l'action associée soit déclenchée. Selon des caractéristiques particulières, l'information représentative de l'alerte affichée au cours de l'étape d'affichage comporte un contenu décrit dans un langage et/ou 30 un protocole interprété par un navigateur sans ouvrir de navigateur. Selon un deuxième aspect, la présente invention vise un dispositif de communication entre un terminal client et un serveur qui comporte : - un moyen d'émission d'une requête depuis le terminal client au serveur, - un moyen de réception d'une requête depuis ledit serveur, ladite requête comportant 35 une information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire, 2906957 4 - un moyen de stockage sur le terminal client, d'une information représentative de l'alerte, de la date et heure de déclenchement d'affichage et de chaque date et heure de déclenchement d'action complémentaire et - un moyen de commande adapté, à la date et à l'heure de déclenchement d'affichage, 5 à afficher, sur un écran du terminal client, d'une information représentative de l'alerte, ledit moyen de commande étant, en outre, adapté, à chaque date et heure de déclenchement d'action complémentaire, à déclencher l'action complémentaire correspondant à ladite date et heure. Les avantages, buts et caractéristiques particulières de ce dispositif étant similaires à 10 ceux du procédé tel que succinctement exposé ci-dessus, ils ne sont pas rappelés ici. D'autres avantages, buts et caractéristiques particulières de la présente invention ressortiront de la description qui va suivre, faite, dans un but explicatif et nullement limitatif, en regard des dessins annexés, dans lesquels : - la figure 1 représente, l'architecture d'un mode de réalisation particulier du dispositif 15 objet de la présente invention ; la figure 2 représente, sous forme d'un logigramme, des étapes mises en oeuvre sur un terminal client, pour programmer et stocker une alerte et la figure 3 représente, sous forme d'un logigramme, des étapes mises en oeuvre sur un terminal client, pour afficher une alerte et déclencher une action sur un terminal 20 client. Dans toute la description, on utilise les définitions suivantes : - fenêtre : contrairement à la définition classique d'une fenêtre (Partie rectangulaire de l'écran d'un ordinateur à l'intérieur de laquelle sont affichées les informations relatives à une activité déterminée), nous englobons dans le terme fenêtre des 25 formes quelconques, non nécessairement rectangulaires ; - terminal client : tout terminal pouvant être utilisé par un utilisateur, par exemple ordinateur, téléphone, assistant personnel numérique PDA, smartphone, borne ou télévision interactive ; - package : ensemble de contenus multimédias (texte, image, animation, son, 30 scripts de programmation ...) correspondant au contenu nécessaire à l'affichage d'une fenêtre d'alerte ainsi que le type et les paramètres de chaque action complémentaire à déclencher à la suite de l'alerte. Le package correspond à un unique fichier compressé contenant l'ensemble des données ; - URL d'alerte : adresse électronique URL qui permet d'accéder au contenu de la 35 fenêtre d'alerte et de l'afficher dans celle-ci, généralement sur une page conservée par un serveur de la toile (connue sous le nom de web ) distant, écrite en langage 2906957 5 html (acronyme de hypertext markup language pour langage de marquage hypertext) et URL de package : adresse électronique à laquelle peut être effectué le téléchargement du package sur le réseau internet. 5 On observe, en figure 1, un terminal client 100 et un serveur 170. Le terminal client 100 met en oeuvre un logiciel client d'alerte 105 comportant un module de communication sur réseau 110, et un autre logiciel client 115, de type connu. Le logiciel client d'alerte 105 met en oeuvre une base de données d'informations de déclenchement 120, une base de données de contenus d'alertes 125, une fenêtre d'alerte 10 130 à afficher sur un écran du terminal client, un module de modification de fenêtre 135, un module d'ouverture d'une autre fenêtre avec un contenu multimédia 140, un module d'émission de son et/ou d'affichage d'animation 145, un module de fermeture de fenêtre d'alerte 150, un module externe de déclenchement de requête sur un serveur distant 155 et un module de déclenchement d'un logiciel externe 160. 15 La base de données d'informations de déclenchement 120 conserve des informations représentative : - d'une alerte, d'une date et heure de déclenchement d'affichage associée à chaque alerte et d'au moins une date et heure de déclenchement d'action complémentaire associée à 20 chaque alerte, date et heure de déclenchement que le terminal client a reçu du logiciel serveur 175. Préférentiellement, la base de données d'informations de déclenchement 120 conserve, en outre, en relation avec chaque alerte des informations représentatives : - d'un type de contenu, 25 - d'une précision des date et heure de déclenchement, préférentiellement tirée aléatoirement, - d'une date et heure d'arrêt d'affichage et/ou, - d'une adresse électronique de page accessible sur un réseau informatique pour télécharger un package d'alerte. 30 Comme exposé en regard de la figure 2, étapes 230 à 250, la base de données de contenus d'alertes 125 conserve : - des adresses électroniques URL d'alertes, - des adresses électroniques URL de packages et/ou des packages récupérés sur le serveur 170, la récupération du package se faisant 35 par l'intermédiaire d'une requête en http (acronyme de hypertext transfer protocol pour protocole de transfert hypertexte), https (acronyme de http sécurisé ) ou 2906957 6 protocole propriétaire en TCP (acronyme de Transmission Control Protocol pour protocole de contrôle de transmissions). La fenêtre d'alerte 130 à afficher sur un écran du terminal client est générée et éditée par le module de modification de fenêtre 135 en fonction du contenu à afficher conservé 5 dans la base de données de contenus d'alertes 125. Cette fenêtre d'alerte apparaît, à sa date et heure de déclenchement d'affichage conservée dans la base de données d'informations de déclenchement 120, sous forme d'une fenêtre surgissante (en anglais popup window ) en superposition sur les autres fenêtres déjà ouvertes sur l'écran du terminal client 100. 10 On observe que le contenu de l'alerte peut comporter tout type de contenu multimédia décrit en html (acronyme de hypertext markup language pour langage de balisage hypertexte) ou toute autre langage et protocole interprété par un navigateur (en anglais browser ) sans ouvrir de navigateur. Le module d'ouverture d'une autre fenêtre avec un contenu multimédia 140 permet 15 d'ouvrir une fenêtre supplémentaire à une date et heure de déclenchement d'action complémentaire. Le module d'émission de son et/ou d'affichage d'animation 145 permet de diffuser un contenu sonore et/ou une animation graphique lorsque le contenu d'une fenêtre d'alerte ou une action complémentaire mettent en oeuvre un fichier son et/ou fichier animation. Le module de fermeture de fenêtre d'alerte 150 est adapté à fermer la fenêtre 20 d'alerte à une date et heure d'expiration conservée dans la base de données d'informations de déclenchement 120. Le module externe de déclenchement de requête sur un serveur distant 155 est adapté, de manière connue en soi, à effectuer une requête sur un serveur distant, soit pour télécharger un package lié à une fenêtre d'alerte, soit lors du déclenchement d'une action complémentaire. 25 Le module de déclenchement d'un logiciel externe 160 permet de lancer un logiciel se trouvant sur le même terminal 100. Le logiciel serveur 175 met en oeuvre une base de données d'informations de déclenchement 180, une base de données de contenus d'alertes 185, un protocole de communication propriétaire 190. 30 Les bases de données 180 et 185 sont similaires aux bases de données 120 et 125 mais concernent toutes les alertes gérées, pour tous les terminaux clients, par le serveur 170. Le protocole de communication propriétaire 190 permet au serveur 170 de communiquer avec les logiciels clients 105, lorsque ceux-ci mettent en oeuvre le même protocole. 35 On va maintenant décrire, en regard des figues 2 et 3, le fonctionnement d'un mode de réalisation du procédé objet de la présente invention. 2906957 7 Au cours d'une étape 205 effectuée au lancement du logiciel 105, c'est-à-dire préférentiellement, à l'initialisation du terminal client 100 lors de sa mise sous tension et après ouverture d'une connexion internet ou similaire selon les réseaux disponibles, le logiciel 105 émet une requête à destination du logiciel serveur 175, pour demander si des 5 alertes le concerne. Au cours de cette étape 205, le logiciel 105 émet un identifiant de l'utilisateur du terminal client 100, en particulier si ce terminal client 100 est multi-sessions, si le service offert par la mise en oeuvre de la présente invention fonctionne sur abonnement, ou un profil de l'utilisateur, qui décrit sa sélection d'alertes, si ce service est anonyme. Le logiciel serveur 175 détermine alors, en fonction de l'identifiant ou du profil de 10 l'utilisateur, si au moins une alerte lui est destinée, dans la base de données 180 et, si oui, le logiciel serveur 175 transmet de l'information permettant la récupération, sur le serveur 170, des informations de déclenchement concernant chaque alerte destinée à l'utilisateur. Au cours d'une étape 210, le terminal client détermine si le serveur a transmis des informations de déclenchement concernant au moins une alerte. Si non, au cours d'une 15 étape de temporisation 215, le logiciel client 105 attend pendant une durée prédéterminée, par exemple une heure, avant de réitérer l'étape 205. Si oui, au cours d'une étape 220, le logiciel client 105 effectue la récupération des informations de déclenchement concernant chaque alerte destinée à l'utilisateur, depuis la base de données 180. Au cours d'une étape 225, les informations récupérées au cours de l'étape 220 sont 20 stockées dans la base de données 120. Les étapes suivantes, 230 à 340 sont réalisées, en parallèle, pour chacune des alertes conservées dans la base de données 120. Au cours d'une étape 230, le logiciel client 105 détermine le type de l'alerte. Si l'alerte est de type package , au cours d'une étape 235, le logiciel client récupère le package depuis la base de données 185 et le stocke en base de données 125, au cours d'une étape 25 240. Si l'alerte est de type URL , au cours d'une étape 245, le logiciel client stocke l'adresse URL dans la base de données 125. Si l'alerte est de type package différé , au cours d'une étape 250, le logiciel client 105 stocke l'URL du package dans la base de données 125. A la suite de l'une des étapes 240 à 250, au cours d'une étape 260, le logiciel client 30 lit, dans la base de données 120, les dates et heures de déclenchement d'affichage et d'arrêt d'affichage. Puis, au cours d'une étape 255, le logiciel client détermine si la date et heure de l'horloge du terminal client 100 est supérieure ou égale à la date et heure de déclenchement d'affichage et inférieure à la date et heure d'arrêt d'affichage et si la fenêtre d'alerte n'est pas déjà affichée. 35 On observe que, au cours de l'étape 255, préférentiellement, on ajoute à la date et heure de déclenchement, la précision de date et heure, pour éviter que dans le cas où le contenu de l'alerte n'est pas enregistré par le logiciel client, tous les terminaux clients 2906957 8 effectuent en simultané leur requête pour obtenir ce contenu. La précision est ainsi une durée préférentiellement aléatoire. Si l'une de ces conditions n'est pas remplie, au cours d'une étape de temporisation 265, le logiciel client 105 attend pendant une durée prédéterminée, par exemple dix minutes, 5 avant de réitérer l'étape 255. Si toutes les conditions de l'étape 255 sont remplies, au cours d'une étape 270, on passe à l'étape 270 (figure 3), au cours de laquelle le logiciel client lit, dans la base de données 125, le type de contenu de l'alerte. Puis, au cours d'une étape 275, on détermine le type de contenu de l'alerte. Si l'alerte est de type package différé , au cours d'une étape 280, on effectue la récupération du package dans la base de données 185 10 et on stocke le package dans la base de données 125. Si l'alerte est de type URL , au cours d'une étape 285, on effectue une requête sur internet, en mettant en oeuvre l'URL de l'alerte pour obtenir une page à afficher. Si l'alerte est de type package ou après l'étape 280, au cours d'une étape 290, on effectue un chargement du package conservé dans la base de données 125, c'est-à-dire la décompression et l'ouverture du fichier unique 15 décrivant le contenu de la fenêtre à afficher. A la suite de l'une des étapes 285 et 290, au cours d'une étape 295, on effectue la configuration ou édition de la fenêtre d'alerte à afficher et on affiche la fenêtre d'alerte, en superposition sur les fenêtres déjà ouvertes sur l'écran du terminal client 100. Préférentiellement, au cours de l'étape d'affichage d'une information représentative 20 de l'alerte 295, on affiche la durée restant à courir avant qu'une action complémentaire associée à ladite alerte soit déclenchée. Les étapes suivantes, 300 à 340, sont réitérées pour chaque action complémentaire décrite dans le package ou dans la page à afficher dans le cas des alertes de type URL . Au cours d'une étape 300, le logiciel client détermine si la date et heure de l'horloge 25 du terminal client 100 est supérieure ou égale à la date et heure de déclenchement d'une action complémentaire. Si non, au cours d'une étape de temporisation 305, le logiciel client 105 attend pendant une durée prédéterminée, par exemple dix minutes, avant de réitérer l'étape 300. Si oui, au cours d'une étape 310, on détermine le type d'action complémentaire et ses paramètres, décrits dans la base de données 125 ou dans la page ouverte, dans le 30 cas des alertes de type URL . Si l'action est de type déclenchement d'une requête sur un serveur distant, au cours d'une étape 315, le logiciel 105 émet une requête à un serveur distant identifié par les paramètres de l'action complémentaire. Si l'action est de type déclenchement d'un logiciel sur le terminal client 100, au cours 35 d'une étape 320, le logiciel 105 lance un logiciel présent sur le terminal client 100, logiciel identifié par les paramètres de l'action complémentaire. 2906957 9 Si l'action est de type modification d'une fenêtre (dimensions et/ou position), au cours d'une étape 325, le logiciel 105 effectue les modifications d'une fenêtre affichée sur l'écran du terminal 100, les modifications étant identifiées par les paramètres de l'action complémentaire. 5 Si l'action est de type ouverture d'une autre fenêtre comportant un contenu multimédia local ou distant, au cours d'une étape 330, le logiciel 105 effectue l'ouverture d'une nouvelle fenêtre identifiée par les paramètres de l'action complémentaire. Si l'action est de type émission d'un programme sonore, audiovisuel et/ou d'une animation, au cours d'une étape 335, le logiciel 105 effectue l'émission en question, sur la 10 base d'une source de données locale ou distante. Si l'action est de type fermeture de la fenêtre d'alerte, au cours d'une étape 340, le logiciel 105 effectue la fermeture de la fenêtre d'alerte. On observe que la date d'arrêt d'affichage conservée en base de données 120 est ainsi, un cas particulier des actions complémentaires associées à une alerte. 15 REVENDICATIONS 1 - Procédé de communication entre un terminal client (100) et un serveur (170), caractérisé en ce qu'il comporte : - une étape (205) d'émission d'une requête par le terminal client au serveur, - une étape (220 à 235) de réception d'une requête depuis ledit serveur, ladite requête comportant une information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire (135 à 160), - une étape (240 à 250) de stockage sur le terminal client, d'une information représentative de l'alerte, de la date et heure de déclenchement d'affichage et de chaque date et heure de déclenchement d'action complémentaire, à la date et à l'heure de déclenchement d'affichage, une étape (270 à 295) d'affichage, sur un écran du terminal client, d'une information représentative de l'alerte et à chaque date et heure de déclenchement d'action complémentaire, une étape (310 à 340) de déclenchement de l'action complémentaire correspondant à ladite date et heure. 2 û Procédé selon la revendication 1, caractérisé en ce qu'au moins une information représentative de date et heure est représentative d'un délai entre deux événements. 3 û Procédé selon l'une quelconque des revendications 1 ou 2, caractérisé en ce que l'information représentative d'alerte affichée au cours de l'étape (270 à 295) d'affichage prend la forme d'une fenêtre surgissante (en anglais popup window ). 4 û Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que l'information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire est, en outre, représentative d'une date et heure d'arrêt d'affichage et le procédé comporte, en outre, à la date et à l'heure d'arrêt d'affichage, une étape (340) d'arrêt d'affichage, sur l'écran du terminal client, de l'information représentative de l'alerte. 5 û Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'au moins une action complémentaire (330) comporte une ouverture d'une fenêtre sur l'écran du terminal client. 6 û Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce qu'au moins une action complémentaire (320) comporte le lancement d'un logiciel sur le terminal client. 7 û Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que, au cours de l'étape (270 à 295) d'affichage de l'alerte, le terminal client demande de 2906957 11 l'information à afficher au serveur et affiche l'information à afficher fournie, en retour, par le serveur. 8 û Procédé selon la revendication 7, caractérisé en ce que, au cours de l'étape (220) de réception d'une requête depuis ledit serveur, l'information représentative d'une alerte, une 5 date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire, est, en outre, représentative d'une adresse électronique de page accessible sur un réseau informatique, le terminal client accédant à ladite page en mettant en oeuvre ladite adresse électronique pour demander de l'information à afficher. 10 9 û Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce que, au cours de l'étape (270 à 295) d'affichage d'une information représentative de l'alerte, on affiche la durée restant à courir avant qu'une action complémentaire associée à ladite alerte soit déclenchée. 10 û Procédé selon l'une quelconque des revendications 1 à 9, caractérisé en ce que 15 l'information représentative de l'alerte affichée au cours de l'étape (270 à 295) d'affichage comporte un contenu décrit dans un langage et/ou un protocole interprété par un navigateur sans ouvrir de navigateur. 11 - Dispositif de communication entre un terminal client (100) et un serveur (170), caractérisé en ce qu'il comporte : 20 -un moyen (110) d'émission d'une requête depuis le terminal client au serveur, - un moyen (110) de réception d'une requête depuis ledit serveur, ladite requête comportant une information représentative d'une alerte, une date et heure de déclenchement d'affichage et d'au moins une date et heure de déclenchement d'action complémentaire (135 à 160), 25 - un moyen (120, 125) de stockage sur le terminal client, d'une information représentative de l'alerte, de la date et heure de déclenchement d'affichage et de chaque date et heure de déclenchement d'action complémentaire et un moyen de commande adapté, à la date et à l'heure de déclenchement d'affichage, à afficher, sur un écran du terminal client, d'une information représentative de l'alerte, 30 ledit moyen de commande étant, en outre, adapté, à chaque date et heure de déclenchement d'action complémentaire, à déclencher l'action complémentaire correspondant à ladite date et heure.