FR3105521A1 - Système et procédé pour le partage de contenu - Google Patents

Système et procédé pour le partage de contenu Download PDF

Info

Publication number
FR3105521A1
FR3105521A1 FR1915259A FR1915259A FR3105521A1 FR 3105521 A1 FR3105521 A1 FR 3105521A1 FR 1915259 A FR1915259 A FR 1915259A FR 1915259 A FR1915259 A FR 1915259A FR 3105521 A1 FR3105521 A1 FR 3105521A1
Authority
FR
France
Prior art keywords
computing
data
computing devices
user interface
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1915259A
Other languages
English (en)
Other versions
FR3105521B1 (fr
Inventor
Matthieu Gallet
Nicolas Brayard
Sofiane Nait Ouslimane
Jean Mouyade
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amadeus SAS
Original Assignee
Amadeus SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amadeus SAS filed Critical Amadeus SAS
Priority to FR1915259A priority Critical patent/FR3105521B1/fr
Priority to US17/124,725 priority patent/US11662892B2/en
Priority to EP20214787.2A priority patent/EP3839867A1/fr
Priority to CN202011502877.2A priority patent/CN113010530A/zh
Publication of FR3105521A1 publication Critical patent/FR3105521A1/fr
Application granted granted Critical
Publication of FR3105521B1 publication Critical patent/FR3105521B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Système et procédé pour le partage de contenu Un procédé de création collaborative de contenu exécuté dans un réseau. Le réseau inclut une pluralité de dispositifs informatiques et une ressource informatique. La ressource informatique inclut une base de données. La pluralité des dispositifs informatiques est connectée en mode communication à la ressource informatique. Le procédé inclut la réception, au niveau de la ressource informatique, de données de sélection d’un premier dispositif informatique de la pluralité des dispositifs informatiques. La ressource informatique sélectionne, à partir de la base de données, sur la base des données de sélection, au moins un enregistrement de données de la pluralité des enregistrements de données stockés dans la base de données. Ledit au moins un enregistrement de données sélectionné ayant une première taille de données. La ressource informatique crée des informations d’interface d’utilisateur représentatives dudit au moins un enregistrement de données et configurées pour permettre à un deuxième dispositif informatique de la pluralité des dispositifs informatiques d’afficher une représentation dudit au moins un enregistrement de données sélectionné dans une interface d’utilisateur du deuxième dispositif informatique. Les informations d’interface d’utilisateur ont une deuxième taille de données qui est plus petite que la première taille. La ressource informatique transmet les informations d’interface d’utilisateur au deuxième dispositif informatique. Figure 3

Description

Système et procédé pour le partage de contenu
Domaine
Les modes de réalisation décrits dans la présente concernent de façon générale des outils de support de décisions en réseau et plus spécifiquement des outils de support de décision en réseau permettant des contributions provenant de sources multiples.
Contexte
La popularité du commerce électronique a augmenté drastiquement et les achats effectués via une large gamme de types de dispositifs de communications électroniques sont monnaie courante. Ces achats imposent une charge computationnelle importante sur les serveurs hébergeant les entreprises de commerce électronique.
Les modes de réalisation seront compris et appréciés plus pleinement avec la description détaillée ci-après, conjointement avec les dessins dans lesquels:
montre une vue d’ensemble d’un système de communications dans lequel les modes de réalisation peuvent être mis en pratique;
montre un exemple d’un dispositif utilisateur selon un mode de réalisation ; et
illustre un flux de données dans un procédé de communication collaborative.
Description détaillée
Référence sera maintenant faite en détail aux modes de réalisation exemplaires implémentés selon la présente divulgation dont les exemples sont illustrés dans les dessins accompagnants. Dans la mesure du possible, les mêmes numéros de référence seront utilisés dans les dessins pour faire référence à une même partie ou à des parties similaires.
Dans des modes de réalisation, il est fourni un procédé de création collaborative de contenu exécuté dans un réseau comprenant une pluralité de dispositifs informatiques et une ressource informatique. La ressource informatique comprend une base de données. La pluralité des dispositifs informatiques est connectée en mode communication à la ressource informatique. Le procédé inclut la réception, au niveau de la ressource informatique, de données de sélection provenant d’un premier dispositif informatique de la pluralité des dispositifs informatiques, la ressource informatique sélectionnant dans la base de données, sur la base des données de sélection, au moins un enregistrement de données d’une pluralité d’enregistrements de données stockés dans la base de données, ledit au moins un enregistrement de données sélectionné ayant une première taille de données, la ressource informatique créant des informations d’interface d’utilisateur représentatives dudit au moins un enregistrement de données et configurées pour permettre à un deuxième dispositif informatique de la pluralité des dispositifs informatiques d’afficher une représentation dudit au moins un enregistrement de données sélectionné dans une interface d’utilisateur du deuxième dispositif informatique, dans lequel l’information d’interface d’utilisateur a une deuxième taille de données qui est plus petite que la première taille  et la transmission de l’information d’interface d’utilisateur au deuxième dispositif informatique.
Dans un mode de réalisation, le procédé comprend par ailleurs la réception, au niveau de la ressource informatique, d’un dispositif informatique de la pluralité des dispositifs informatiques, de données de sélection mises à jour. Dans le mode de réalisation, la ressource informatique met à jour l’enregistrement de données sur la base des données de sélection mises à jour, met à jour les informations d’interface d’utilisateur sur la base de l’enregistrement de données mis à jour afin de créer des informations d’interface d’utilisateur mises à jour , génère une différence entre les informations d’interface d’utilisateur stockées et les informations d’interface d’utilisateur mises à jour , et transmet la différence à la pluralité des dispositifs informatiques connectés en mode communication à la ressource informatique.
Dans un mode de réalisation la pluralité des dispositifs informatiques, connectés en mode communication à une ressource informatique, collaborent dans un processus de sélection d’enregistrements de données stockés dans la base de données ; et dans lequel tous les dispositifs informatiques de la pluralité des dispositifs informatiques souscrivent à un service de communications unique pour faciliter la transmission en temps réel des mises à jour à tous les dispositifs souscripteurs.
Dans un mode de réalisation tous les dispositifs informatiques de la pluralité des dispositifs informatiques souscrivent au même service websocket/bidirectionnel/en duplex intégral.
Dans un mode de réalisation, ledit au moins un deuxième dispositif informatique reçoit une entrée d’un utilisateur via l’interface d’utilisateur et transmet ladite entrée reçue en temps réel à la ressource informatique centrale. La ressource informatique centrale transmet l’entrée reçue dudit au moins un deuxième dispositif informatique au premier dispositif informatique.
Dans un mode de réalisation, le procédé comprend par ailleurs la mise à jour d’un ou de plusieurs enregistrements de données stockés au sein de la base de données après un évènement déclencheur de mise à jour, dans lequel ledit évènement déclencheur de mise à jour est au moins l’un de la réception d’une instruction pour mettre à jour ledit un ou plusieurs enregistrements de données ou de la sélection ou de la modification d’un enregistrement de données lié audit un ou plusieurs enregistrements de données.
Dans un mode de réalisation, l’enregistrement de données comprend une pluralité d’entrées de données. L’enregistrement de données persiste dans la base de données une fois tous les dispositifs informatiques déconnectés de la ressource informatique. Une ou plusieurs desdites entrées de données peuvent indépendamment être mis à jour au sein de la base de données. Dans le mode de réalisation, le procédé comprend la mise à jour de l’enregistrement de données chaque fois que ladite entrée de données est mise à jour, quel que soit l’état de connexion des dispositifs informatiques. De cette manière, la base de données est toujours à jour de sorte qu’une fois que les dispositifs utilisateurs se reconnectent à la base de données, l’enregistrement de données correct puisse être affiché. Cela a pour effet que la récupération de l’affichage de l’enregistrement de données est facilitée, par exemple suite à une déconnexion involontaire du dispositif utilisateur de la base de données. On appréciera le fait que l’état de l’enregistrement de données soit indépendant de l’état de connexion des dispositifs utilisés dans la création de l’enregistrement de données et/ou de la participation continue des dispositifs dans une session de réservation. Il est par conséquent possible de retenir l’enregistrement de données pour une durée indéfinie ou librement sélectionnable, par exemple pour rendre l’enregistrement de données permanent pendant plusieurs mois ou, par exemple, un trimestre.
Selon un autre mode de réalisation il est fourni un procédé de collaboration en temps réel entre une pluralité de dispositifs informatiques connectés en mode communication à une ressource informatique. La pluralité des dispositifs informatiques est connectée à une ressource de communication commune, facilitant substantiellement la transmission simultanée d’informations provenant de la ressource informatique à la pluralité des dispositifs informatiques. La ressource informatique comprend une base de données stockant des enregistrements de données pouvant être mis à jour. La ressource informatique communique des mises à jour apportées à un ou plusieurs enregistrements de données sélectionnés à la pluralité des dispositifs informatiques via ladite ressource de communication.
Selon un autre mode de réalisation, des instructions de programme informatique sont fournies pour exécution par un ou plusieurs processeurs. Les instructions amènent ledit un ou plusieurs processeurs, lorsqu’elles sont exécutées par ledit un ou plusieurs processeurs, à exécuter le procédé tel que décrit dans la présente.
De préférence, les instructions sont stockées sur un dispositif de stockage non volatile.
Selon un autre mode de réalisation, un dispositif informatique, comprenant un processeur et une mémoire, est fourni. Le dispositif informatique est configuré pour être connectable en mode communication à une base de données et à une pluralité de dispositifs informatiques. La mémoire stocke des instructions de programme qui, lorsqu’elles sont exécutées par le processeur, amènent le processeur à recevoir des données de sélection d’un premier dispositif informatique de la pluralité des dispositifs informatiques, sélectionner, dans la base de données, sur la base des données de sélection, au moins un enregistrement de données d’une pluralité d’enregistrements de données stockés dans la base de données, ledit au moins un enregistrement de données sélectionné ayant une première taille de données, créer des informations d’interface d’utilisateur représentatives dudit au moins un enregistrement de données et configurées pour permettre à un deuxième dispositif informatique de la pluralité des dispositifs informatiques d’afficher une représentation dudit au moins un enregistrement de données dans une interface d’utilisateur du deuxième dispositif informatique, dans lequel les informations d’interface d’utilisateur ont une deuxième taille de données qui est plus petite que la première taille, et transmettre les informations d’interface d’utilisateur au deuxième dispositif informatique.
Dans un mode de réalisation, les instructions de programme sont par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à recevoir d’un dispositif utilisateur de la pluralité des dispositifs informatiques des données de sélection mises à jour, mettre à jour l’enregistrement de données sur la base des données de sélection mises à jour, mettre à jour les informations d’interface d’utilisateur sur la base de l’enregistrement de données mis à jour pour créer des informations d’interface d’utilisateur mises à jour, générer une différence entre les informations d’interface d’utilisateur stockées et les informations d’interface d’utilisateur mises à jour et transmettre la différence à la pluralité des dispositifs informatiques connectés en mode communication à la ressource informatique.
Dans un mode de réalisation, les instructions de programme sont par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à permettre à tous les dispositifs informatiques de la pluralité des dispositifs informatiques de souscrire à un service de communications unique pour faciliter la transmission des mises à jour en temps réel à tous les dispositifs souscripteurs. Le service de communications unique peut être basé sur websocket.
Dans un mode de réalisation, le dispositif comprend la base de données. Dans le mode de réalisation, les instructions de programme sont par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à mettre à jour un ou plusieurs enregistrements de données stockés au sein de ladite base de données après un évènement déclencheur de mise à jour. L’évènement déclencheur de mise à jour est au moins un de la réception d’une instruction pour mettre à jour ledit un ou plusieurs enregistrements de données ou la sélection ou la modification d’un enregistrement de données lié audit un ou plusieurs enregistrements de données.
Dans un mode de réalisation, l’enregistrement de données comprend une pluralité d’entrées de données, dans lequel ledit enregistrement de données persiste dans une base de données une fois tous les dispositifs informatiques déconnectés de la ressource informatique et dans lequel une ou plusieurs desdites entrées peuvent être indépendamment mises à jour au sein de la base de données. Les instructions de programme sont par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à mettre à jour l’enregistrement de données chaque fois que ladite entrée de donnée est mise à jour, quel que soit l’état de connexion des dispositifs informatiques.
Dans un autre mode de réalisation, il est fourni une ressource informatique comprenant une ressource de communication commune connectable en mode communication à une pluralité de dispositifs informatiques pour une collaboration en temps réel entre la pluralité des dispositifs informatiques. La ressource de communication commune est configurée pour faciliter substantiellement la transmission simultanée d’informations provenant de la ressource informatique à la pluralité des dispositifs informatiques. La ressource informatique comprend une base de données stockant des enregistrements de données pouvant être mis à jour. La ressource informatique est configurée pour communiquer des mises à jour apportées à un ou plusieurs enregistrements de données sélectionnés à la pluralité des dispositifs informatiques via ladite ressource de communication.
Les systèmes en réseau permettent à de multiples entités d’accéder à une ressource de réseau simultanément. Les multiples entités peuvent souhaiter être informées simultanément ou quasiment simultanément de l’état actuel de la ressource de réseau. Cette information peut être souhaitée ou nécessaire pour permettre aux utilisateurs des entités d’afficher un état actuel de la ressource de réseau, par exemple dans le but de contribuer à un processus de prise de décision associé à la ressource de réseau. Ce processus de prise de décision peut concerner la réservation collaborative de produits ou de services, telle que par exemple la création coopérative et la modification d’un itinéraire de voyage.
La ressource de réseau peut être virtuelle ou être un panier d’achats en ligne géré sur une ressource informatique centralisée telle qu’un serveur ou une machine virtuelle. Les paniers d’achats en ligne sont connus, mais les paniers d’achats qui peuvent être modifiés d’une manière efficace et fiable en termes de ressources par un nombre d’entités ne sont pas, à la connaissance des inventeurs, connus à ce jour. Alors que les modes de réalisation seront décrits en faisant référence à un panier d’achats de multiples parties pour une réservation collaborative de services de voyage, des modes de réalisation ne sont pas limités à cet exemple spécifique. D’autres modes de réalisation peuvent concerner d’autres informations gérées centralement qui font aussi l’objet de changements rapides et qui sont disséminées à une pluralité de parties connectées à un service qui gère les informations.
Un changement rapide qui peut survenir à tout moment et qui vraisemblablement surviendra au moins une fois et probablement plus d’une fois en l’espace de quelques minutes, heures, jours ou semaines. Les informations de voyage en particulier font l’objet de changements rapides, car les services offerts par les fournisseurs de services de voyage sont censés être utilisés pleinement au moment du voyage, de sorte que les vols, les hôtels et les locations de voitures, etc. sont totalement réservés et il ne reste que peu ou aucune capacité de génération de recettes au moment de la livraison du service. En termes de processus de réservation, ce modèle signifie que la disponibilité d’un service pour une offre peut subir un changement rapide, la disponibilité d’un service particulier étant limitée à une courte durée après la pleine disponibilité du service, par exemple quelques heures ou même quelques minutes après la pleine disponibilité du service. La rapidité du changement de la disponibilité d’un service dépend bien sûr de l’équilibre entre la pleine disponibilité et l’intensité de l’intérêt/nombre de parties intéressées. On appréciera néanmoins le fait que même dans un système dans lequel les informations ne changent pas rapidement par moments, la fréquence de changement des informations puisse être plus importante à d’autres moments. Dans un mode de réalisation, un système qui peut gérer les deux situations est fourni.
En outre, les plateformes d’achats en ligne peuvent appliquer des politiques de tarification dynamique aux marchandises ou services offerts. Une marchandise ou un service peuvent, par exemple, être offerts à la vente à un prix plus bas lorsque l’inventaire est abondant que lorsque inventaire est devenu limité. Inversement, dans le but de vendre les quelques offres de marchandises ou services restants les prix de vente peuvent être abaissés après une période de tarification élevée. Ceci contribue à la rapidité du changement des informations conservées centralement.
Dans des modes de réalisation dans lesquels une plateforme centrale de gestion d’offres de services ou de produits provenant de multiples services, tels que par exemple, des données de voyage, de vols ou d’offres de location de véhicule ou de réservation d’hôtel, les informations peuvent, ou est même probablement, être émises à partir d’un nombre de sources de données, par l’exemple d’une compagnie aérienne offrant les vols, d’un ou de plusieurs loueurs de voitures ou même d’une autre plateforme qui agrège les offres d’un nombre de loueurs de voitures et de divers hôtels, des chaînes d’hôtels ou des agrégateurs de réservation d’hôtel. Dans ces situations, des changements dans les données ne sont pas sous le contrôle de la ressource centrale qui est configurée pour coordonner les offres de divers services et produits à destination des entités en réseau. Une conséquence de ce manque de contrôle est que les mises à jour de données ne peuvent pas être coordonnées et peuvent être nécessaires à tout moment. Ceci augmente encore plus la rapidité du changement dans les données.
Dans un scénario impliquant de multiples utilisateurs humains dans la sélection collaborative de données au sein de la base de données, par exemple pour réserver des services ou des produits de façon collaborative, il est important que la base de données puisse appliquer les mises à jour internes pertinentes dans un cadre temporel permettant la communication des changements qui affectent les décisions prises par les utilisateurs humains sans délai apparent pour l’utilisateur humain. Dans ce but, il est souhaitable de fournir un mécanisme pour communiquer tout changement de ce genre aux utilisateurs collaborant dans le processus de sélection de données d’une manière efficace et préférablement sans risquer une dépendance de la rapidité des mises à jour de l’utilisateur sur les conditions de transmission de réseau.
La Figure 1 montre une vue d’ensemble d’un système100 qui comprend une ressource informatique centrale110 et un nombre de dispositifs utilisateurs1201à 120mqui peuvent se connecter en mode communication à la ressource informatique110 via un réseau130 et une interface de communication140. La ressource informatique centrale110 comprend une ou plusieurs bases de données en temps réel150 et une API de réservation160. La base de données en temps réel comprend des informations mises à jour concernant des produits ou des services offerts aux utilisateurs des dispositifs utilisateurs1201à 120m. L’API de réservation160 est configurée pour faciliter la coordination entre les activités de réservation des divers utilisateurs1201à 120m.
Les données peuvent être stockées dans une base de données en temps réel150 par les dispositifs informatiques1701à 170pexternes à la ressource informatique centrale110. Une ou plusieurs de tous les dispositifs informatiques1701à 170ppeuvent être sous le contrôle de la partie qui gère la ressource informatique centrale110. Autrement, les dispositifs informatiques1701à 170ppeuvent être sous le contrôle de parties autres que la partie qui gère la ressource informatique centrale110. Un ou plusieurs de tous les dispositifs informatiques1701à 170ppeuvent, par exemple, être sous le contrôle des fournisseurs de services ou de produits tels qu’un site de réservation d’hôtel ou de vols ou un site de location de voitures qui ne sont pas sous le contrôle de la partie gérant le dispositif informatique central110. On appréciera le fait que, bien que les dispositifs informatiques1701à 170psoient montrés comme étant en dehors du dispositif informatique central110, un ou plusieurs de tous les dispositifs informatiques1701à 170ppeuvent faire partie du dispositif informatique central110, en particulier lorsque ledit un ou plusieurs de tous les dispositifs informatiques1701à 170psont sous le contrôle de la partie gérant le dispositif informatique central110. Inversement, pour les dispositifs informatiques1701à 170pqui ne sont pas sous le contrôle du dispositif informatique central110, l’accès au dispositif informatique central110 peut être fourni à travers l’interface de communication140 bien que ce ne soit pas illustré dans la Figure 1.
Dans un mode de réalisation, la ressource informatique centrale110 peut être une ressource informatique telle qu’un ou plusieurs serveurs qui sont sous le contrôle exclusif de la partie gérant la ressource informatique110. Dans un autre mode de réalisation, la ressource informatique110 peut être une ressource basée sur la dématérialisation, c.-à-d. une ressource dans laquelle l’API de réservation160 est hébergée et la base de données150 est maintenue et mise à jour. Un exemple d’un service dématérialisé approprié peut être Google cloud, mais d’autres services basés sur la dématérialisation capable d’héberger l’API de réservation160 et la base de données150 peuvent être utilisés à la place.
Le réseau130 peut être tout type de réseau de communication tel que l’Internet, un LAN ou un WAN ou tout autre type de réseau informatique, le réseau de téléphone ou une combinaison d’un quelconque de ces réseaux. Le but du réseau130 est de permettre aux dispositifs utilisateurs1201à 120mde se connecter à la ressource informatique centrale110 via l’interface de communication140, par exemple à la manière d’un utilisateur qui se connecterait à un portail d’achat en ligne.
Dans un mode de réalisation, l’interface de communication140 est un backend mobile comme une offre de services qui sert d’interface entre la ressource informatique centrale110 et une variété de dispositifs informatiques différents1201à 120m, tels que des dispositifs informatiques incluant des téléphones portables des tablettes informatiques et des ordinateurs portables ou tout autre dispositif informatique capable d’afficher à un utilisateur une interface d’utilisateur fournie par l’API de réservation160 via l’interface de communication140 et le réseau130. Dans un mode de réalisation, l’interface de communication140 est en particulier configurée pour gérer les contacts ou les comptes de l’utilisateur au nom de la ressource informatique110, afin de fournir des alertes de poussée, des messages textes, toute technologie de poussée basée sur le Web, tels que des pushlets des web sockets, un serveur HTTP de poussée, une consultation de longue durée [long polling] et Adobe Flash, entre autres ou toute autre façon appropriée de transmettre des messages à des dispositifs utilisateurs et/ou de faire interface avec des sites de médias sociaux. Dans un mode de réalisation, l’interface de communication140 comprend ou consiste en certains éléments du service Firebase fourni par Google ou mongoDB qui sont indispensables pour fournir la fonctionnalité décrite ci-dessus.
La Figure 2 montre un exemple d’un dispositif informatique selon un mode de réalisation. Le dispositif informatique peut être un dispositif utilisateur120 de la ressource informatique110. Le dispositif utilisateur 120 comprend une interface de communication200, un processeur210, une mémoire220 configurés pour être accessibles pour des opérations de lecture et/ou d’écriture, par le processeur210 et une interface I/O 230. La mémoire220 stocke des instructions de programme informatique qui sont configurées pour amener le processeur210, lorsqu’il exécute les instructions de programme informatique, à interagir avec les dispositifs informatiques connectés de la manière décrite dans la présente. Si le dispositif informatique est un dispositif utilisateur 120, l’interface I/O d’utilisateur 230 est configurée pour afficher les informations à un utilisateur sur le dispositif utilisateur120 et pour recevoir des informations saisies par l’utilisateur. L’interface I/O230 peut, par exemple, inclure un écran d’affichage dans le but d’afficher une interface d’utilisateur à l’utilisateur. L’écran d’affichage peut être un écran tactile pour permettre à l’utilisateur de saisir des informations, par exemple pour remplir un formulaire présenté à l’utilisateur. Autrement, ou de plus, le dispositif informatique peut comprendre d’autres moyens d’entrée tels qu’un clavier. L’interface de communications200 est configurée pour se connecter à un ou plusieurs canaux de communication240 afin d’établir une communication avec l’interface de communications140. On appréciera le fait que, lorsque le dispositif utilisateur120 est un dispositif sans fil, tel qu’un téléphone portable, une tablette informatique ou un ordinateur portable, l’interface de communications200 puisse être connectée à une antenne (non illustrée) pour accéder à un canal de communication sans fil240. Autrement, pour des dispositifs utilisateurs stationnaires120, une connexion filaire peut être fournie pour se connecter à/établir le canal de communication240.
La mémoire220 peut stocker des instructions de programmes informatiques250 qui amènent le processeur210, lorsqu’il exécute les instructions de programme informatique250, à exécuter une application informatique qui est configurée pour se connecter en mode communication à d’autres dispositifs informatiques, tels que l’interface de communications140, les dispositifs utilisateurs120 ou la ressource informatique110. Autrement, l’interaction entre les dispositifs utilisateurs120 et la ressource informatique110 est entièrement basée sur un navigateur. Dans ce cas, les instructions de programme informatique250 amènent le dispositif utilisateur120 à faire fonctionner un navigateur.
La Figure 3 illustre un flux de données dans un procédé de communication collaborative. Dans le mode de réalisation, trois utilisateurs collaborent en utilisant trois dispositifs utilisateurs, les dispositifs utilisateurs 1 à 3. Le premier utilisateur initie la communication en utilisant son dispositif utilisateur, le dispositif utilisateur1. L’utilisateur se connecte initialement (étape400) à l’API de réservation160 pour obtenir des offres disponibles de la ressource informatique110. Ainsi que détaillé ci-dessus, le dispositif utilisateur peut comprendre une app. dédiée pour présenter des offres acquises à l’utilisateur sur le dispositif et/ou fournir la présentation pertinente dans un navigateur. Les offres présentées peuvent inclure des suggestions concrètes ou des encarts publicitaires. Autrement, ou de plus, l’app. ou le navigateur fonctionnant sur le dispositif utilisateur inclut des champs d’entrée pour être remplis par l’utilisateur. Dans un mode de réalisation, chaque élément d’information saisi par l’utilisateur dans un quelconque de ces champs d’entrée est diffusé du dispositif utilisateur à la base de données en temps réel. Un utilisateur peut, par exemple, commencer à entrer le nom d’une ville qu’il souhaite visiter ou le nom ou l’abréviation d’un aéroport vers lequel il souhaite se rendre. Le dispositif utilisateur est configuré pour diffuser des frappes de touche à l’interface de communications140. L’interface de communications140 à son tour est configurée pour affiner une liste de destinations possibles à celles qui peuvent être identifiées par l’information déjà fournie par l’utilisateur. Dans un mode de réalisation, une telle liste réduite de destinations possibles est fournie au dispositif utilisateur par l’API de réservation160. En diffusant les informations aux utilisateurs, les modes de réalisation évitent le besoin d’utiliser un système d’alerte d’un tiers (tel que WhatsApp, courriel, texto, etc.) pour alerter les utilisateurs.
Une fois qu’un utilisateur a indiqué sur le dispositif utilisateur qu’une sélection actuelle d’un ou de plusieurs services ou produits est désirée, c.-à-d. une fois que l’utilisateur a affiché son panier d’achats à l’étape405 à l’API de réservation160, l’API de réservation communique avec la base de données en temps réel (étape410) pour créer un premier panier d’achats/options de voyage qui est stocké dans la base de données en temps réel. Les paniers d’achats/options de voyage sont des ensembles de références avec des références individuelles qui identifient des entrées de données individuelles correspondantes dans la base de données en temps réel. Ce panier d’achats constitue un nœud auquel d’autres utilisateurs du système peuvent souscrire en utilisant leurs dispositifs utilisateurs et peut être identifiable en utilisant une ID de panier. D’autres options de voyage peuvent être créées par l’utilisateur du dispositif utilisateur1 en indiquant d’autres sélections dans la mesure où elles sont désirées à l’étape415. Chaque fois que cette indication est fournie par le dispositif utilisateur à l’API de réservation160, une option de voyage (étape420) est créée par la base de données en temps réel150 dans une interaction avec l’API160.
À ce point, les seuls dispositifs qui ont interagi les uns avec les autres sont le premier dispositif utilisateur et l’API de réservation160. Dans le mode de réalisation, l’utilisateur peut choisir de partager le panier d’achats avec d’autres utilisateurs. Dans le mode de réalisation, l’API de réservation160 inclut une fonctionnalité permettant ce partage. Cela peut inclure un bouton d’écran activable par logiciel ou un champ d’adresse pour une entrée des informations identifiant un ou plusieurs utilisateurs avec lesquels le panier d’achats doit être partagé. Une fois que l’utilisateur a saisi les informations pertinentes, telles que par exemple le nom du contact, son adresse courriel ou un quelconque identifiant qui est déjà connu par la ressource informatique110 et en particulier par l’interface de communications140 comme étant liée au contact désiré ou à des identifiants pertinents qui permettent de contacter le contact désiré via des plateformes de média sociaux, ces informations sont transmises par le dispositif utilisateur au serveur d’alertes. Plusieurs façons d’inviter d’autres utilisateurs à collaborer pour participer à la sélection de données sont divulguées dans le brevet US9,704,109 dont la totalité est incorporée dans la présente par cette référence.
Dans un mode de réalisation, le serveur d’alertes fait partie de l’interface de communication140 et en particulier peut être fourni par un backend comme élément de service de l’interface de communication140. Le serveur d’alertes est configuré pour envoyer une alerte (étape430) aux parties identifiées par les informations reçues pour l’utilisateur1. Cette alerte peut prendre la forme d’une alerte poussée, d’un texto, d’un message de Messenger ou, plus généralement, tout type d’alerte qui peut être envoyée à partir du serveur d’alertes aux utilisateurs sans nécessiter une quelconque action de la part de l’utilisateur du dispositif utilisateur.
Dans le mode de réalisation, les alertes envoyées au deuxième et troisième utilisateur respectivement comprennent des informations informant l’utilisateur récepteur que le premier utilisateur souhaite partager l’option de voyage et un moyen permettant à l’utilisateur récepteur d’indiquer son souhait de participer au partage de l’option de voyage. Dans ce but, l’alerte peut par exemple comprendre un lien pour l’utilisateur récepteur à activer, par exemple, dans un navigateur. Une fois que l’utilisateur récepteur a indiqué, via son dispositif utilisateur, par exemple en activant un lien reçu du serveur d’alertes à l’étape430, une volonté de participer au partage de l’option de voyage, la base de données en temps réel fournit, à l’étape435, un état d’interface d’utilisateur qui permet au dispositif utilisateur récepteur d’afficher le panier d’achats à l’utilisateur.
L’état de l’interface d’utilisateur comprend toutes les informations nécessaires pour afficher l’option de voyage actuelle à l’utilisateur, mais n’inclut pas les informations complètes qui définissent le panier d’achats. L’état de l’interface d’utilisateur inclut une ou plusieurs des informations suivantes:
L’URL actuelle du navigateur
les paramètres typiquement utilisés dans une recherche en ligne tels que:
aéroport de départ
aéroport de destination et
date de voyage
les informations liées aux services
franchise de bagages réservée,
franchise de bagages de cabine et le coût,
tout repas de passagers inclus,
numéro de siège et/sa localisation, et
permission d’accès au salon,
les informations concernant les préférences de repas et/les allergies,
la sélection du Wifi à bord,
les informations concernant le besoin de services spéciaux,
les informations concernant la vente incitative ou croisée à d’autres fournisseurs (p. ex. AirBNB),
les informations concernant un panneau/écran actuel affiché sur un dispositif utilisateur, et
les informations concernant une transition du panneau/écran affiché, initié par l’utilisateur.
L’état de l’interface d’utilisateur a une taille de quelques octets.
Par contraste la totalité du panier d’achats comprend une ou plusieurs de toutes les informations suivantes:
informations de vol:
date de départ
heure de départ
aéroport de départ
aéroport de destination
Identifiant/numéro de vol
opérateur du vol
durée du vol
type d’aéronef
tarif en partance
code de voyage
franchise de bagages incluse
repas inclus
location de siège (allée, milieu, hublot)
frais pour changement d’itinéraire (et les frais sont-ils remboursables ?),
classe de voyage (économie, affaires, première...)
informations sur le passager
âge du passager
date de naissance du passager
informations sur les contacts du passager
adresse courriel du passager
numéro de téléphone du passager
adresse du passager
prénom
nom de famille du passager
ID du passager
photo
Détails du paiement
nom du payeur
type de paiement (Carte de crédit, paiement Apple de, PayPal)
type de carte
nom sur la carte
numéro de carte + CVV
date d’expiration de la carte
Pour des voyages qui incluent un nombre de segments, par exemple un voyage comprenant des vols avec une ou plusieurs escales, les informations du panier d’achats ci-dessus sont requises pour chaque segment du voyage. Ces informations en outre concernent seulement un seul passager et un seul payeur. Pour les voyages de groupe, les informations du panier d’achats sont en outre requises pour chaque passager et pour chaque payeur. De plus, on appréciera le fait que bien que les informations de panier d’achat ci-dessus ne concernent qu’une réservation de vol, elles puissent autrement concerner la réservation pour d’autres services ou produits. On appréciera aussi le fait que d’autres services, tels qu’une réservation d’hôtel une réservation de voiture de location puissent être associés à des réservations de vol. Dans cette situation, des informations supplémentaires sont associées au panier d’achats.
Les informations du panier d’achats ont la taille de plusieurs centaines de kilo-octets. Bien que la transmission d’un ou de seulement quelques paniers d’achats serait probablement gérable, le fait de transmettre uniquement l’information de l’interface d’utilisateur la plus petite est avantageux dans une situation dans laquelle un grand nombre d’opérations de réservation se déroulent à tout moment. Dans cette situation, la ressource informatique110 doit gérer un volume de flux de données qui peut compromettre la performance ou même l’intégrité du système si des paniers d’achats entiers doivent être transférés aux dispositifs utilisateurs. En limitant les informations transmises aux dispositifs utilisateurs aux informations de l’interface d’utilisateur, les ressources computationnelles consommées par le partage des options de voyage sont considérablement réduites. En outre, vu que le contenu du panier d’achats n’est jamais partagé il ne peut y avoir aucune confusion concernant l’état actuel/le plus à jour du panier d’achats. En d’autres termes, la seule et véritable copie du panier d’achats pendant sa création est détenue par la base de données en temps réel.
L’API de réservation160 accède à la base de données en temps réel et fait abstraction du panier d’achats en limitant la quantité de données stockées aux seules données requises par les dispositifs utilisateurs pour afficher aux utilisateurs l’état actuel du panier d’achats, une liste des utilisateurs impliqués dans un processus de réservation particulier, les identifiants de réservation associés et une liste des produits couverts par la réservation. L’API de réservation160 crée un état d’interface d’utilisateur unique pour transmission à tous les utilisateurs souscripteurs. L’état de l’interface d’utilisateur est stocké dans la base de données en temps réel d’où il est disséminé aux utilisateurs participants par l’interface de communication140. De cette manière, la mise à jour de la communication avec les dispositifs utilisateurs peut, une fois que l’API de réservation160 a fait abstraction du panier d’achats, être gérée par l’interface de communication140 sans implication de l’API de réservation160. Le nombre de communications entre les parties du système100 situées du côté de la ressource informatique110 de l’interface de communication140 et des dispositifs utilisateurs est minimisé étant donné que l’interface de communication peut faciliter la communication avec les dispositifs utilisateurs par un seul accès à la base de données en temps réel 150, tout en évitant d’avoir à établir des connexions consommatrices de temps et de ressources entre les dispositifs utilisateurs et l’API de réservation.
De cette manière, un point de référence pour les dispositifs utilisateurs qui se sont accidentellement déconnectés est par ailleurs créé, tout en minimisant la quantité des données qui ont besoin d’être stockées. Dans un mode de réalisation, l’état de l’interface d’utilisateur est indépendant du type de dispositif utilisateur. De cette manière, les utilisateurs sont par ailleurs capables d’accéder à leur panier d’achats actuel en utilisant des dispositifs utilisateurs différents. Le système100 est par conséquent résistant à de multiples points de contact. Les états des interfaces utilisateurs ou les mises à jour des interfaces utilisateurs créés dans ce processus d’abstraction sont ensuite transmis aux utilisateurs par l’interface de communication140. Une mise à jour d’une interface d’utilisateur comprend seulement les informations qui distinguent un état d’interface d’utilisateur nouvellement créé d’un état d’interface d’utilisateur créé précédemment. Les informations qui ont déjà été transmises aux dispositifs utilisateurs dans un état d’interface d’utilisateur précédent ou dans une mise à jour d’interface d’utilisateur précédente sont déjà disponibles aux dispositifs utilisateurs pour affichage dans un état d’interface d’utilisateur actuel, de sorte que seules les nouvelles informations ont besoin d’être transmises aux dispositifs utilisateurs pour permettre au dispositif utilisateur de continuer à afficher l’état de l’interface d’utilisateur entièrement mise à jour. On appréciera le fait qu’en transmettant des mises à jour d’états d’interfaces utilisateurs plutôt que des états d’interfaces d’utilisateurs complets, la largeur de bande requise pour transmettre les informations aux dispositifs utilisateurs puisse par ailleurs être réduite. Dans un mode de réalisation, l’API de réservation160 stocke l’état d’interface d’utilisateur dérivé et/ou la mise à jour de l’état d’interface d’utilisateur, par exemple comme un objet, un Redux, un ensemble de références aux données pertinentes au sein de la base de données en temps réel qui doivent être transmis à l’utilisateur pour une récupération ultérieure par l’interface de communications aux dispositifs utilisateurs, ou similaires. Vu que l’API de réservation160 fait abstraction du panier d’achats, la base de données en temps réel150 a seulement besoin d’être accédée par une seule entité, l’API de réservation160, plutôt que de multiples fois par les utilisateurs. De cette manière, le nombre de paniers d’achats qu’une base de données d’une spécification donnée peut gérer est augmenté. Ainsi que décrit ci-dessus la communication entre l’API de réservation160 et les dispositifs utilisateurs1201et 120mest facilitée par l’interface de communications140 sur la base des mises à jour apportées à l’interface d’utilisateur. De cette manière, la charge de traitement de l’API de réservation160 est réduite. Dans un mode de réalisation, tous les dispositifs utilisateurs1201à 120m , participant à la création d’un panier d’achats particulier, souscrivent à un support particulier et tous les dispositifs utilisateurs souscripteurs reçoivent une mise à jour automatique de l’état d’interface d’utilisateur stocké dès que l’état change. En faisant abstraction des données du panier d’achats de l’état d’interface d’utilisateur décrit ci-dessus, la quantité des données devant être transmises aux dispositifs utilisateurs est aussi limitée. Ainsi que décrit ci-dessus, les données stockées dans la base de données peuvent subir des changements rapides. L’information reflétant ces changements a besoin d’être transmise de manière égale rapidement ou tout au moins d’une manière qui fournit des mises à jour aux utilisateurs sans délai perceptible. En réduisant la taille des données devant être transmises, le nombre de mises à jour qui peuvent être communiquées aux utilisateurs avec un système matériel donné est augmenté.
Une fois que le dispositif utilisateur a obtenu l’information d’interface d’utilisateur, il utilise l’information pour mettre à jour l’interface d’utilisateur affichée à l’utilisateur à l’étape440. Un des autres utilisateurs, l’utilisateur2 dans l’exemple montré dans la Figure 3, peut souhaiter proposer des modifications au panier d’achats qui avait initialement été proposé par l’utilisateur1. Pour faciliter ceci, les frappes au clavier saisies par l’utilisateur2 dans son interface d’utilisateur sont diffusées à l’API de réservation160 à l’étape445. Les informations de frappes au clavier reçues par l’API de réservation160 sont utilisées par l’API de réservation160 pour mettre à jour l’état actuel, permanent, de l’interface d’utilisateur stockée par l’API de réservation160. Les changements au sein de l’état d’interface d’utilisateur créés par cette mise à jour sont à leur tour diffusés à tous les autres utilisateurs participants dans le processus de réservation, à l’étape450. Pendant la diffusion, toutes les actions de l’utilisateur sont ordonnées et stockées. Ceci permet la résolution d’un quelconque conflit entre les actions des utilisateurs. Les autres utilisateurs utilisent les mises à jour de l’état de l’interface d’utilisateur, UI, pour mettre à jour leurs UIs respectives, à l’étape455.
Une fois que l’utilisateur2 a pris une décision concernant les changements désirés, l’utilisateur soumet ces changements à la base de données 150 en temps réel, à l’étape460. Dans un mode de réalisation, la base de données en temps réel utilise les changements soumis pour mettre à jour le panier d’achats auquel s’appliquent les changements. Dans un autre mode de réalisation, la base de données en temps réel crée une copie du panier d’achats auquel s’appliquent les changements et applique les changements à la copie du panier d’achats. De cette manière, les changements peuvent être annulés en revenant à une version précédente du panier d’achats. Une fois que le processus de réservation a été complété ou terminé, toutes les copies du panier d’achats pertinent peuvent être supprimées.
À l’étape465, les modifications du panier d’achats (ou la différence entre le panier d’achats nouveau/mis à jour et son prédécesseur si le panier d’achats a été mis à jour en faisant une copie du panier d’achats d’origine et en altérant cette copie) sont envoyées aux utilisateurs qui n’ont pas demandé la mise à jour du panier d’achats (les utilisateurs1 et 3 dans l’exemple montré dans la Figure 3). On notera que les informations envoyées aux autres utilisateurs ne représentent qu’une simple mise à jour des informations transmises précédemment. De cette manière, la largeur de bande requise pour transmettre les informations est réduite et la réactivité de la base de données en temps réel150 est améliorée. Les informations transmises sont utilisées par les utilisateurs à l’étape470 pour mettre à jour leurs interfaces d’utilisateur respectives.
Une situation est par ailleurs illustrée dans la Figure 3 dans laquelle un des points de données dans la base de données en temps réel subit un changement. Dans ce cas, le changement est causé par l’API de réservation 140 qui informe la base de données en temps réel150 d’un changement de prix à l’étape475. Un tel changement dans un panier d’achats, résultant d’un changement apporté aux données, est communiqué à tous les utilisateurs qui travaillent sur le panier d’achats à l’étape480. Ainsi que décrit ci-dessus, seul le changement dans le panier d’achats est transmis et non la totalité du panier d’achats. À l’étape485, les dispositifs des utilisateurs utilisent les informations reçues pour mettre à jour leur interface d’utilisateur.
On appréciera le fait que les étapes475 à 485 puissent survenir à une quelconque phase de la séquence d’étapes montrée dans la Figure3
Les paniers d’achats créés dans le mode de réalisation sont permanents et peuvent être stockés pendant une durée, même dans des situations dans lesquelles tous les utilisateurs1201à 120mse sont déconnectés de l’interface de communication140. Dans le mode de réalisation, tous les paniers d’achats stockés sont continuellement mis à jour par la base de données en temps réel chaque fois qu’un changement lié à un élément/objet dans le panier d’achats change, de sorte que tous les paniers d’achats stockés soient à jour à tout moment. Dans un autre mode de réalisation, si un dispositif utilisateur1201à 120m revient au panier d’achats, la base de données en temps réel150 met à jour le contenu du panier d’achats.
Ainsi que décrit ci-dessus, le système divulgué dans la présente peut permettre à de multiples utilisateurs de payer une partie des produits ou services sélectionnés. Si le service sélectionné est un voyage, chaque utilisateur peut, par exemple, payer son ou ses propres vols et/ou hébergement. Cependant, le système est configuré pour autrement accepter qu’un seul payeur couvre la totalité des frais de plus d’un seul voyageur ou même de tous les voyageurs. Dans un agencement, le système est configuré pour répartir les frais de façon égale par le nombre de payeurs ainsi qu’indiqué par un utilisateur utilisant un dispositif utilisateur.
Bien que les utilisateurs collaborent pour sélectionner des données dans la base de données en utilisant une pluralité de dispositifs utilisateurs, une réservation effectuée sur la base d’une sélection de données convenues n’est pas traitée par le système comme étant une pluralité de réservations faites par des individus. Dans l’industrie du voyage, les réservations faites par des individus sont traitées comme étant indépendantes. Par contraste, dans un mode de réalisation le système est configuré pour traiter des réservations effectuées de façon collaborative de la manière décrite ci-dessus par contraste aux réservations qui sont dépendantes les unes des autres pour que, par exemple, les sièges sur un vol soient affectés sur la base d’un groupe, de sorte que les membres du groupe soient assis ensemble.
Dans un mode de réalisation, l’API de réservation est par ailleurs configurée pour alerter les utilisateurs via le dispositif utilisateur si les détails d’un processus de réservation engagé précédemment ou actuellement en cours ont changé. Ces alertes peuvent être liées à des changements apportés aux coûts des options de réservation sélectionnées lorsque le nombre d’éléments qui restent disponibles, par exemple des sièges sur un avion, est inférieur au nombre d’éléments sélectionnés ou si le nombre disponible a été réduit au point de s’approcher du nombre d’éléments sélectionnés ou si les offres associées à une sélection ont expiré.
Dans la spécification précitée, les modes de réalisation ont été décrits en faisant référence à de nombreux détails spécifiques qui peuvent varier d’une implémentation à une autre. Certaines adaptations et modifications des modes de réalisation décrits peuvent être réalisées. D’autres modes de réalisation pourront être apparents aux hommes de métier à l’examen de la spécification et à la mise en pratique de l’invention divulguée dans les présentes. La spécification et les exemples sont censés être à titre exemplaire uniquement. La séquence des étapes présentées dans les figures est aussi censée être uniquement à titre illustratif et n’est pas censée se limiter à une quelconque séquence particulière des étapes. Par conséquent, les hommes de métier pourront reconnaître que ces étapes peuvent être exécutées dans un ordre différent tout en implémentant le même procédé.

Claims (16)

  1. Procédé de création collaborative de contenu exécuté dans un réseau comprenant une pluralité de dispositifs informatiques et une ressource informatique, la ressource informatique comprenant une base de données et la pluralité des dispositifs informatiques étant connectés, par communication, à la ressource informatique, le procédé comprenant:
    la réception, au niveau de la ressource informatique, de données de sélection provenant d’un premier dispositif informatique de la pluralité des dispositifs informatiques ;
    la ressource informatique sélectionnant, à partir de la base de données, sur la base des données de sélection, au moins un enregistrement de données d’une pluralité d’enregistrements de données stockés dans la base de données, ledit au moins un enregistrement de données sélectionné ayant une première taille de données ;
    la ressource informatique créant des informations d’interface d’utilisateur représentatives dudit au moins un enregistrement de données et configurées pour permettre à un deuxième dispositif informatique de la pluralité des dispositifs informatiques d’afficher une représentation dudit au moins un enregistrement de données sélectionné dans une interface d’utilisateur du deuxième dispositif informatique, dans lequel les informations d’interface d’utilisateur ont une deuxième taille de données qui est plus petite que la première taille ; et
    la transmission des informations d’interface d’utilisateur au deuxième dispositif informatique.
  2. Procédé selon la revendication1, le procédé comprenant par ailleurs:
    la réception, au niveau de la ressource informatique, provenant d’un dispositif informatique de la pluralité des dispositifs informatiques, de données de sélection mises à jour ;
    la ressource informatique:
    mettant à jour ledit enregistrement de données sur la base des données de sélection mises à jour ;
    mettant à jour lesdites informations d’interface d’utilisateur sur la base de l’enregistrement de données actualisé pour créer des informations d’interface d’utilisateur mises à jour ;
    générant une différence entre les informations d’interface d’utilisateur stockées et les informations d’interface d’utilisateur mises à jour ; et
    transmettant la différence à la pluralité des dispositifs informatiques connectés en mode communication à la ressource informatique.
  3. Procédé selon la revendication1 ou 2, dans lequel la pluralité des dispositifs informatiques connectés en mode communication à une ressource informatique collaborent dans un processus de sélection d’enregistrements de données stockés dans la base de données ; et
    dans lequel tous les dispositifs de la pluralité des dispositifs informatiques souscrivent à un service de communications unique pour faciliter la transmission en temps réel de mises à jour à tous les dispositifs souscripteurs.
  4. Procédé selon la revendication3, dans lequel tous les dispositifs de la pluralité des dispositifs informatiques souscrivent au même service websocket/bidirectionnel/en duplex intégral.
  5. Procédé selon l’une quelconque des revendications précédentes, comprenant par ailleurs:
    la réception par ledit au moins un deuxième dispositif informatique d’une entrée d’un utilisateur via l’interface d’utilisateur et la transmission de ladite entrée reçue en temps réel à la ressource informatique centrale ;
    la transmission par la ressource informatique centrale de l’entrée reçue provenant dudit au moins un deuxième dispositif informatique au premier dispositif informatique.
  6. Procédé selon l’une quelconque des revendications précédentes, comprenant par ailleurs:
    la mise à jour d’un ou de plusieurs enregistrements de données stockés au sein de ladite base de données après un évènement déclencheur de mise à jour, dans lequel ledit évènement déclencheur de mise à jour est au moins l’un parmi:
    la réception d’une instruction pour mettre à jour ledit un ou plusieurs enregistrements de données ; ou
    la sélection ou la modification d’un enregistrement de données lié audit un ou plusieurs enregistrements de données.
  7. Procédé selon l’une quelconque des revendications précédentes, dans lequel ledit enregistrement de données comprend une pluralité d’entrées de données et dans lequel ledit enregistrement de données persiste dans la base de données une fois tous les dispositifs informatiques déconnectés de la ressource informatique et dans lequel une ou plusieurs desdites entrées de données peuvent être indépendamment mises à jour au sein de la base de données, le procédé comprenant par ailleurs:
    La mise à jour dudit enregistrement de données chaque fois que ladite entrée de données est mise à jour, quel que soit l’état de connexion des dispositifs informatiques.
  8. Procédé de collaboration en temps réel entre une pluralité de dispositifs informatiques connectés en mode communication à une ressource informatique, dans lequel la pluralité des dispositifs informatiques est connectée à une ressource de communication commune facilitant substantiellement la transmission simultanée d’informations provenant de la ressource informatique à la pluralité des dispositifs informatiques, dans lequel la ressource informatique comprend une base de données stockant des enregistrements de données pouvant être mis à jour et dans lequel la ressource informatique communique des mises à jour apportées à un ou plusieurs enregistrements de données sélectionnés, à la pluralité des dispositifs informatiques via ladite ressource de communication.
  9. Instructions de programme informatique pour une exécution par un ou plusieurs processeurs, les instructions amenant ledit un ou plusieurs processeurs, lorsqu’elles sont exécutées par ledit ou un plusieurs processeurs, à exécuter un procédé selon l’une quelconque des revendications précédentes.
  10. Dispositif informatique comprenant un processeur, une mémoire et configuré pour être connectable, par communication, à une base de données et à une pluralité de dispositifs informatiques, la mémoire stockant des instructions de programme qui, lorsqu’elles sont exécutées par le processeur, amènent le processeur à:
    recevoir, des données de sélection provenant d’un premier dispositif informatique de la pluralité des dispositifs informatiques ;
    sélectionner, à partir de la base de données, sur la base des données de sélection, au moins un enregistrement de données d’une pluralité d’enregistrements de données stockés dans la base de données, ledit au moins un enregistrement de données sélectionné ayant une première taille de données ;
    créer des informations d’interface d’utilisateur représentatives dudit au moins un enregistrement de données et configurées pour permettre à un deuxième dispositif informatique de la pluralité des dispositifs informatiques d’afficher une représentation dudit au moins un enregistrement de données dans une interface d’utilisateur du deuxième dispositif informatique, dans lequel les informations d’interface d’utilisateur ont une deuxième taille de données qui est plus petite que la première taille ; et
    transmettre les informations d’interface d’utilisateur au deuxième dispositif informatique.
  11. Dispositif selon la revendication10, les instructions de programme étant par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à:
    recevoir, en provenance d’un dispositif utilisateur de la pluralité des dispositifs informatiques, des données de sélection mises à jour ;
    mettre à jour ledit enregistrement de données sur la base des données de sélection mises à jour ;
    mettre à jour lesdites informations d’interface d’utilisateur sur la base de l’enregistrement de données mis à jour pour créer des informations d’interface d’utilisateur mises à jour ;
    générer une différence entre les informations d’interface d’utilisateur stockées et les informations d’interface d’utilisateur mises à jour ; et
    transmettre la différence à la pluralité des dispositifs informatiques connectés en mode communication à la ressource informatique.
  12. Dispositif selon les revendications10 ou 11, les instructions de programme étant par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à permettre à tous les dispositifs de la pluralité des dispositifs informatiques de souscrire à un service de communications unique pour faciliter la transmission des mises à jour en temps réel à tous les dispositifs souscripteurs.
  13. Dispositif selon la revendication12, dans lequel le service de communications unique est basé sur un websocket.
  14. Dispositif selon les revendications 10 à 13, dans lequel le dispositif comprend ladite base de données, les instructions de programme étant par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à:
    mettre à jour un ou plusieurs enregistrements de données stockés au sein de ladite base de données après un évènement déclencheur d’une mise à jour, dans lequel ledit évènement déclencheur de mise à jour est au moins l’un parmi:
    la réception d’une instruction pour mettre à jour ledit un ou plusieurs enregistrements de données ; ou
    la sélection ou la modification d’un enregistrement de données lié audit un ou plusieurs enregistrements de données.
  15. Dispositif selon la revendication14, dans lequel ledit enregistrement de données comprend une pluralité d’entrées de données, dans lequel ledit enregistrement de données persiste dans la base de données une fois tous les dispositifs informatiques déconnectés de la ressource informatique et dans lequel une ou plusieurs desdites entrées de données peuvent être indépendamment mis à jour au sein de la base de données, les instructions de programme étant par ailleurs configurées pour, lorsqu’elles sont exécutées par le processeur, amener le processeur à:
    mettre à jour ledit enregistrement de données chaque fois qu’une entrée de données est mise à jour, quel que soit l’état des connexions des dispositifs informatiques.
  16. Ressource informatique comprenant une ressource de communication commune connectable, par communication, à une pluralité de dispositifs informatiques pour une collaboration en temps réel entre la pluralité des dispositifs informatiques, dans laquelle la ressource de communication commune est configurée pour faciliter substantiellement la transmission simultanée d’informations provenant de la ressource informatique à la pluralité des dispositifs informatiques, dans laquelle la ressource informatique comprend une base de données stockant des enregistrements de données pouvant être mis à jour et dans laquelle la ressource informatique est configurée pour communiquer des mises à jour apportées à un ou plusieurs enregistrements de données sélectionnés, à la pluralité des dispositifs informatiques via ladite ressource de communication.
FR1915259A 2019-12-20 2019-12-20 Système et procédé pour le partage de contenu Active FR3105521B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR1915259A FR3105521B1 (fr) 2019-12-20 2019-12-20 Système et procédé pour le partage de contenu
US17/124,725 US11662892B2 (en) 2019-12-20 2020-12-17 System and method for content sharing
EP20214787.2A EP3839867A1 (fr) 2019-12-20 2020-12-17 Système et procédé de partage de contenu
CN202011502877.2A CN113010530A (zh) 2019-12-20 2020-12-18 用于内容共享的系统和方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1915259 2019-12-20
FR1915259A FR3105521B1 (fr) 2019-12-20 2019-12-20 Système et procédé pour le partage de contenu

Publications (2)

Publication Number Publication Date
FR3105521A1 true FR3105521A1 (fr) 2021-06-25
FR3105521B1 FR3105521B1 (fr) 2021-12-17

Family

ID=72266331

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1915259A Active FR3105521B1 (fr) 2019-12-20 2019-12-20 Système et procédé pour le partage de contenu

Country Status (4)

Country Link
US (1) US11662892B2 (fr)
EP (1) EP3839867A1 (fr)
CN (1) CN113010530A (fr)
FR (1) FR3105521B1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033453A1 (fr) * 1999-11-04 2001-05-10 The Foxboro Company Systeme de gestion d'un panier a courses commun
EP1170690A1 (fr) * 2000-07-06 2002-01-09 Hewlett-Packard Company Caddie en ligne partagé
EP2963567A1 (fr) * 2014-07-04 2016-01-06 Xiaomi Inc. Procédé, dispositif, serveur et terminal pour visiter une page web
US9704109B2 (en) 2013-03-28 2017-07-11 Amadeus S.A.S. Community travel booking

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751272B1 (en) * 1999-07-20 2014-06-10 Expedia, Inc. Fare compare—a system for collecting and displaying price information
US6876977B1 (en) * 1999-07-27 2005-04-05 The Foxboro Company Shared shopping basket management system
US8700459B2 (en) * 2000-04-28 2014-04-15 Yisroel Lefkowitz Method and apparatus for selling international travel tickets in combination with duty free goods
US6850917B1 (en) * 2000-10-02 2005-02-01 Oracle International Corporation Methods and systems for sharing an online shopping cart
EP1355238A1 (fr) * 2002-04-19 2003-10-22 Sap Ag Méthode et système d'ordinateur de manipulation de deltas dans des pages serveur
US7434163B2 (en) * 2002-05-31 2008-10-07 Sap Aktiengesellschaft Document structures for delta handling in server pages
CN1662915A (zh) * 2002-06-18 2005-08-31 阿玛得斯两合公司 飞行计划修订的加载方法
US7287256B1 (en) * 2003-03-28 2007-10-23 Adobe Systems Incorporated Shared persistent objects
US20060106655A1 (en) * 2003-08-05 2006-05-18 Ladislav Lettovsky System and method for coordinating travel itineraries
US20050216281A1 (en) * 2004-03-23 2005-09-29 Prior Francis J System and method for managing flight information
US8600784B1 (en) * 2004-07-30 2013-12-03 Kayak Software Corporation Indentifying information sources to search based on rules
US20070162314A1 (en) * 2005-03-15 2007-07-12 Gunn Gerald B Multi-traveler flight pass
US8706560B2 (en) * 2011-07-27 2014-04-22 Ebay Inc. Community based network shopping
US7996270B2 (en) * 2006-03-30 2011-08-09 Ebay Inc. Community based network shopping
US20090287513A1 (en) * 2006-06-23 2009-11-19 Unisys Corporation System and method for processing multiple bookings to receive a transportation service
US20080189190A1 (en) * 2007-02-01 2008-08-07 Jeff Ferber Proxy server and api extension for online stores
US20090030885A1 (en) * 2007-07-26 2009-01-29 Ridecharge Method and system for on-demand and scheduled services relating to travel and transportation
US10872322B2 (en) * 2008-03-21 2020-12-22 Dressbot, Inc. System and method for collaborative shopping, business and entertainment
US20130215116A1 (en) * 2008-03-21 2013-08-22 Dressbot, Inc. System and Method for Collaborative Shopping, Business and Entertainment
US20090288012A1 (en) * 2008-05-18 2009-11-19 Zetawire Inc. Secured Electronic Transaction System
US8719251B1 (en) * 2008-11-14 2014-05-06 Kayak Software Corporation Sharing and collaboration of search results in a travel search engine
US20100306249A1 (en) * 2009-05-27 2010-12-02 James Hill Social network systems and methods
US20120072249A1 (en) * 2010-09-22 2012-03-22 Mobiata LLC System and method for sending travel information to a wireless mobile device
US10242327B2 (en) * 2010-11-15 2019-03-26 Pros Travel Commerce, Inc. Discovering and reserving travel solutions
WO2012097285A2 (fr) * 2011-01-14 2012-07-19 Suarez Corporation Industries Appareil, système et procédé d'achat social
US20120197753A1 (en) * 2011-01-28 2012-08-02 Etsy, Inc. Systems and methods for shopping in an electronic commerce environment
US20120253972A1 (en) * 2011-03-28 2012-10-04 Rawllin International Inc. Electronic shared shopping list management
US20130036024A1 (en) * 2011-08-02 2013-02-07 Edward George Boettcher Systems and methods for online pre-purchase visual bundling
US20130218610A1 (en) * 2012-02-22 2013-08-22 ZigAir LLC Method and System for Aggregating Travelers to Transact Air Travel Reservations
TW201351339A (zh) * 2012-06-13 2013-12-16 Hon Hai Prec Ind Co Ltd 登機資訊提示系統及方法
US8924848B2 (en) * 2012-07-16 2014-12-30 Sap Se Synchronizing a user interface area
US20140058939A1 (en) * 2012-08-24 2014-02-27 Ebay Inc. Method and apparatus for processing payment transactions from a chat application integrated with a payment application that leverages social features from the chat application
EP2926313A1 (fr) * 2012-11-27 2015-10-07 Secure Accreditation Solutions Technologies, S.L. Procédé et système de fourniture de validations de participation
US10169806B1 (en) * 2013-02-13 2019-01-01 Amazon Technologies, Inc. Shared aggregated e-commerce shopping cart
JP2015036887A (ja) * 2013-08-13 2015-02-23 富士通株式会社 購入サービス提供装置、方法及びプログラム
US20150242927A1 (en) * 2013-10-03 2015-08-27 Jason Will Method and system of an online travel website
US20150161712A1 (en) * 2013-12-10 2015-06-11 12 Retail (HK) Limited Unifying shopping experience system
US20150178642A1 (en) * 2013-12-20 2015-06-25 Amadeus S.A.S. Dynamic travel planner
US9875446B2 (en) * 2014-04-03 2018-01-23 Amadeus S.A.S. Travel product information sharing
US10127600B2 (en) * 2014-07-31 2018-11-13 Walmart Apollo, Llc Online cart and shopping list sharing
US10127590B2 (en) * 2014-12-15 2018-11-13 Sears Brands, L.L.C. Methods and systems supporting online shopping as a shared and social activity
US9881262B2 (en) * 2015-01-26 2018-01-30 Amadeus S.A.S. Undo/redo of database files for modifying re-accommodation
EP3098711B1 (fr) * 2015-05-29 2019-11-27 Amadeus S.A.S. Communication aéronef-sol
US20170180352A1 (en) * 2015-12-22 2017-06-22 Mavatar Technologies, Inc. Single (social) login authentication and user-centric portal
US20170228668A1 (en) * 2016-02-10 2017-08-10 Khalid R. Oreif Comprehensive door-to-door trip planning and purchasing process and system that provides ongoing support to a traveler throughout a trip
US11188990B2 (en) * 2016-05-02 2021-11-30 Onriva Llc Purchasing a travel package via a communication network
US10331665B2 (en) * 2016-09-30 2019-06-25 Amadeus S.A.S. Search query processing
US20180211189A1 (en) * 2017-01-23 2018-07-26 Amadeus S.A.S. Record aggregation database
US10510024B2 (en) * 2017-03-08 2019-12-17 Amadeus S.A.S. Coordinated disruption handling
US11196714B2 (en) * 2018-11-07 2021-12-07 Citrix Systems, Inc. Systems and methods for encrypted browser cache
US11163590B2 (en) * 2018-12-04 2021-11-02 Sap Se Graphical user interface command pattern
US11138611B2 (en) * 2019-06-18 2021-10-05 Target Brands, Inc. Transferable and blended shopping cart
US20210065015A1 (en) * 2019-09-04 2021-03-04 Idk Tonight, Llc Computerized platform for facilitating group based decision making
US11042918B2 (en) * 2019-10-11 2021-06-22 Target Brands, Inc. Customer service tool

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033453A1 (fr) * 1999-11-04 2001-05-10 The Foxboro Company Systeme de gestion d'un panier a courses commun
EP1170690A1 (fr) * 2000-07-06 2002-01-09 Hewlett-Packard Company Caddie en ligne partagé
US9704109B2 (en) 2013-03-28 2017-07-11 Amadeus S.A.S. Community travel booking
EP2963567A1 (fr) * 2014-07-04 2016-01-06 Xiaomi Inc. Procédé, dispositif, serveur et terminal pour visiter une page web

Also Published As

Publication number Publication date
US11662892B2 (en) 2023-05-30
EP3839867A1 (fr) 2021-06-23
US20210191601A1 (en) 2021-06-24
FR3105521B1 (fr) 2021-12-17
CN113010530A (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
US10037564B2 (en) Methods and systems to facilitate a purchase of an item on a network-based marketplace
US10970758B2 (en) Electronic marketplace for hosted service images
US10834025B2 (en) Multi-functional integrated communications system application
US20130268377A1 (en) Gift collaboration social network service
WO2021205240A1 (fr) Différents types de services d'appels textuels, applications centralisées de dialogue en direct et différents types de supports de communication pour l'appelant et l'appelé ou les participants à la communication
US9032027B2 (en) Enhanced consumer engagement using advanced communication exchange services
KR20090107076A (ko) 지불 펀딩을 위한 방법, 장치, 머신 판독 가능한 매체 및 시스템
CN109995581B (zh) 内容发布方法和装置
CN111582961B (zh) 信息处理方法及装置
US20120072304A1 (en) Method of Shopping Online with Real-Time Data Sharing Between Multiple Clients
US10764428B2 (en) Simultaneous voice and data content driven commercial data platform
US20120284063A1 (en) System and method for providing a travel ecosystem with sharing of social travel preferences
TW201434003A (zh) 活動圖
US10397322B2 (en) Mobile and computer applications, systems and methods for large group travel and event management
US20080162252A1 (en) Granting electronic calendar access to a second party via an exposed application programming interface
CN112534837A (zh) 用于提供灵活且集成的通信、调度和商业平台的系统和方法
WO2004015897A2 (fr) Systeme et procede de collaboration multi-utilisateur
US11093909B1 (en) System and methods for negotiating ticket transfer
US20220036433A1 (en) Shared Virtual Shopping Basket
FR3105521A1 (fr) Système et procédé pour le partage de contenu
EP3926566A1 (fr) Validation d'une transaction relative a une offre d'un bien ou d'un service à un utilisateur
US20080162251A1 (en) Electronic calendaring system with an exposed application programming interface
US20080162253A1 (en) Receiving electronic calendar access from a first party via an exposed application programming interface
Oppitz et al. Cloud computing
US20230394025A1 (en) Digital information management system, method, and device

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20210625

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5