DE212017000286U1 - Multimodale Übertragung von paketierten Daten - Google Patents
Multimodale Übertragung von paketierten Daten Download PDFInfo
- Publication number
- DE212017000286U1 DE212017000286U1 DE212017000286.7U DE212017000286U DE212017000286U1 DE 212017000286 U1 DE212017000286 U1 DE 212017000286U1 DE 212017000286 U DE212017000286 U DE 212017000286U DE 212017000286 U1 DE212017000286 U1 DE 212017000286U1
- Authority
- DE
- Germany
- Prior art keywords
- computing device
- interface
- processing system
- data processing
- candidate
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 289
- 230000009471 action Effects 0.000 claims abstract description 185
- 230000005236 sound signal Effects 0.000 claims abstract description 127
- 238000007726 management method Methods 0.000 claims abstract description 97
- 238000000034 method Methods 0.000 claims abstract description 87
- 230000008569 process Effects 0.000 claims abstract description 29
- 238000001514 detection method Methods 0.000 claims description 20
- 238000013515 script Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 description 26
- 238000009877 rendering Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 22
- 238000004590 computer program Methods 0.000 description 13
- 230000000475 sunscreen effect Effects 0.000 description 12
- 239000000516 sunscreening agent Substances 0.000 description 12
- 238000012546 transfer Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000000670 limiting effect Effects 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001902 propagating effect Effects 0.000 description 3
- 230000004308 accommodation Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000006053 organic reaction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- IRLPACMLTUPBCL-KQYNXXCUSA-N 5'-adenylyl sulfate Chemical compound C1=NC=2C(N)=NC=NC=2N1[C@@H]1O[C@H](COP(O)(=O)OS(O)(=O)=O)[C@@H](O)[C@H]1O IRLPACMLTUPBCL-KQYNXXCUSA-N 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S11/00—Systems for determining distance or velocity not using reflection or reradiation
- G01S11/14—Systems for determining distance or velocity not using reflection or reradiation using ultrasonic, sonic, or infrasonic waves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0295—Proximity-based methods, e.g. position inferred from reception of particular signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B13/00—Transmission systems characterised by the medium used for transmission, not provided for in groups H04B3/00 - H04B11/00
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/70—Routing based on monitoring results
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S2205/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S2205/01—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations specially adapted for specific applications
- G01S2205/02—Indoor
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Acoustics & Sound (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
System zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung, umfassend:
eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, um über eine Schnittstelle des Datenverarbeitungssystems Datenpakete zu empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen;
die Prozessorkomponente für natürliche Sprache zum Parsen des Eingabeaudiosignals, um eine Anfrage und ein der Anfrage entsprechendes Auslöserschlüsselwort zu identifizieren;
eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems, um basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur zu generieren;
eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente zum Empfangen mindestens eines von der Anfrage und dem Auslöserschlüsselwort, das durch den Prozessor für natürliche Sprache identifiziert wird, und basierend auf dem mindestens einen von der Anfrage und dem Auslöserschlüsselwort, Auswählen eines Inhaltselements über einen Echtzeit-Inhaltsauswahlprozess;
eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems zum:
Pollen einer Vielzahl von Schnittstellen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle innerhalb eines Schwellenabstands des Computergeräts zu identifizieren;
Bestimmen eines ersten Ressourcenauslastungswerts für die erste Kandidatenschnittstelle und eines zweiten Ressourcenauslastungswerts für die zweite Kandidatenschnittstelle;
Basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts, Auswählen der ersten Kandidatenschnittstelle als eine ausgewählte Schnittstelle, um das Inhaltselement zu präsentieren;
Bereitstellen des Inhaltselements zur Zustellung in einer Modalität, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird; und
Übertragen des Inhaltselements in der ersten Modalität zum Zustellen des Inhaltselements zur Präsentation über die ausgewählte Schnittstelle.
eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, um über eine Schnittstelle des Datenverarbeitungssystems Datenpakete zu empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen;
die Prozessorkomponente für natürliche Sprache zum Parsen des Eingabeaudiosignals, um eine Anfrage und ein der Anfrage entsprechendes Auslöserschlüsselwort zu identifizieren;
eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems, um basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur zu generieren;
eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente zum Empfangen mindestens eines von der Anfrage und dem Auslöserschlüsselwort, das durch den Prozessor für natürliche Sprache identifiziert wird, und basierend auf dem mindestens einen von der Anfrage und dem Auslöserschlüsselwort, Auswählen eines Inhaltselements über einen Echtzeit-Inhaltsauswahlprozess;
eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems zum:
Pollen einer Vielzahl von Schnittstellen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle innerhalb eines Schwellenabstands des Computergeräts zu identifizieren;
Bestimmen eines ersten Ressourcenauslastungswerts für die erste Kandidatenschnittstelle und eines zweiten Ressourcenauslastungswerts für die zweite Kandidatenschnittstelle;
Basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts, Auswählen der ersten Kandidatenschnittstelle als eine ausgewählte Schnittstelle, um das Inhaltselement zu präsentieren;
Bereitstellen des Inhaltselements zur Zustellung in einer Modalität, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird; und
Übertragen des Inhaltselements in der ersten Modalität zum Zustellen des Inhaltselements zur Präsentation über die ausgewählte Schnittstelle.
Description
- HINTERGRUND
- Übertragen von Daten zu einen Computergerät, das Computerressourcen verwendet, kann zur Folge haben, dass paketbasierte oder anderweitige überhöhte Netzwerkübertragungen von Netzwerkverkehrsdaten ein Computergerät daran hindern, die Netzwerkverkehrsdaten richtig zu verarbeiten, einen Vorgang, der mit den Netzwerkverkehrsdaten verbunden ist, abzuschließen oder zeitgerecht auf die Netzwerkverkehrsdaten zu reagieren. Die Steuerung von Netzwerkübertragungen, die Inhaltselementobjekten entsprechen, kann durch die große Anzahl von Inhaltselementobjekten verkompliziert werden, die Netzwerkübertragungen von Netzwerkverkehrsdaten zwischen Computergeräten initiieren können.
- ZUSAMMENFASSUNG
- Mindestens ein Aspekt betrifft ein System zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung. Eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, kann über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Die Prozessorkomponente für natürliche Sprache kann das Eingabeaudiosignal parsen, um eine Anfrage und ein Auslöserschlüsselwort gemäß der Anfrage zu identifizieren. Eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems kann basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente kann mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und kann basierend auf dem mindestens einen von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems kann eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren, und kann einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Der erste Ressourcenauslastungswert und der zweite Ressourcenauslastungswert können auf mindestens einem von Folgendem basieren: Batteriezustand, Prozessorauslastung, Arbeitsspeicherverwendung, Schnittstellenparameter und Netzwerkbandbreitenauslastung. Die Schnittstellenverwaltungskomponente kann basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren, und kann das Inhaltselement zum Zustellen in eine Modalität konvertieren, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Die Schnittstellenverwaltungskomponente kann dem Client-Computergerät die erste Aktionsdatenstruktur zum Wiedergeben als Audioausgabe von dem Client-Computergerät bereitstellen und das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Mindestens ein Aspekt betrifft ein Verfahren zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung. Das Verfahren kann durch die Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Das Verfahren kann von dem Eingabeaudiosignal eine Anfrage und ein Auslöserschlüsselwort durch die Prozessorkomponente für natürliche Sprache gemäß der Anfrage identifizieren. Das Verfahren kann durch eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems basierend auf mindestens einem von und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Das Verfahren kann durch eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und kann basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Das Verfahren kann über eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren. Das Verfahren kann durch die Schnittstellenverwaltungskomponente einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Der erste Ressourcenauslastungswert und der zweite Ressourcenauslastungswert können auf mindestens einem von Folgendem basieren: Batteriezustand, Prozessorauslastung, Arbeitsspeicherverwendung, Schnittstellenparameter und Netzwerkbandbreitenauslastung. Das Verfahren kann basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren. Das Verfahren kann das Inhaltselement zur Zustellung in eine Modalität konvertieren, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Das Verfahren kann dem Client-Computergerät die erste Aktionsdatenstruktur zum Wiedergeben als Audioausgabe von dem Client-Computergerät bereitstellen. Das Verfahren kann das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Mindestens ein offenbarter Aspekt bezieht sich auf ein computerlesbares Speichermedium, das Anweisungen speichert, die wenn sie durch einen oder mehrere Datenprozessoren ausgeführt werden, den einen oder die mehreren Datenprozessoren veranlassen, Vorgänge zur multimodalen Übertragung von paketierten Daten in einer auf sprachaktivierten Datenpaketen basierenden Computernetzwerkumgebung auszuführen. Die Vorgänge können durch eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Die Vorgänge können durch die Prozessorkomponente für natürliche Sprache basierend auf dem Eingabeaudiosignal eine Anfrage und ein Auslöserschlüsselwort gemäß der Anfrage identifizieren. Das Verfahren kann durch eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems basierend auf mindestens einem von und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Die Vorgänge können durch eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und können basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Die Vorgänge können über eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren. Die Vorgänge können durch die Schnittstellenverwaltungskomponente einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Der erste Ressourcenauslastungswert und der zweite Ressourcenauslastungswert können auf mindestens einem der folgenden Werte basieren: Batteriezustand, Prozessorauslastung, Speicherauslastung, Schnittstellenparameter und Netzwerkbandbreitenauslastung. Die Vorgänge können basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren. Die Vorgänge können das Inhaltselement zur Zustellung in eine Modalität konvertieren, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Die Vorgänge können dem Client-Computergerät die erste Aktionsdatenstruktur zum Wiedergeben als Audioausgabe von dem Client-Computergerät bereitstellen. Die Vorgänge können das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Mindestens ein Aspekt betrifft ein System zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung. Eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, kann über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Die Prozessorkomponente für natürliche Sprache kann das Eingabeaudiosignal parsen, um eine Anfrage und ein Auslöserschlüsselwort gemäß der Anfrage zu identifizieren. Eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems kann basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente kann mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und basierend auf dem mindestens einen von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems kann eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren, die innerhalb eines Schwellenabstands von dem Computergerät liegen, und kann einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Die Schnittstellenverwaltungskomponente kann basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren, und kann das Inhaltselement zur Zustellung in einer Modalität bereitstellen, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Das Schnittstellenverwaltungsverfahren kann das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Mindestens ein Aspekt betrifft ein Verfahren zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung. Das Verfahren kann durch die Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Das Verfahren kann von dem Eingabeaudiosignal eine Anfrage und ein Auslöserschlüsselwort durch die Prozessorkomponente für natürliche Sprache gemäß der Anfrage identifizieren. Das Verfahren kann durch eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems basierend auf mindestens einem von und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Das Verfahren kann durch eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und kann basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Das Verfahren kann über eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren, die innerhalb eines Schwellenabstands des Computergeräts liegen. Das Verfahren kann durch die Schnittstellenverwaltungskomponente einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Das Verfahren kann basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren. Das Verfahren kann das Inhaltselement zur Zustellung in eine Modalität konvertieren, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Das Verfahren kann das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Mindestens ein Aspekt bezieht sich auf ein computerlesbares Speichermedium, das Anweisungen speichert, die wenn sie durch einen oder mehrere Datenprozessoren ausgeführt werden, den einen oder die mehreren Datenprozessoren veranlassen, Vorgänge für multimodale Übertragung von paketierten Daten in einem sprachaktivierten Datenpaket basierend auf einer Computernetzwerkumgebung auszuführen. Die Vorgänge können durch eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen. Die Vorgänge können durch die Prozessorkomponente für natürliche Sprache basierend auf dem Eingabeaudiosignal eine Anfrage und ein Auslöserschlüsselwort gemäß der Anfrage identifizieren. Das Verfahren kann durch eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems basierend auf mindestens einem von und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur generieren. Die Vorgänge können durch eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente mindestens eines von der Anfrage und dem Auslöserschlüsselwort empfangen, das durch den Prozessor für natürliche Sprache identifiziert wird, und basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort ein Inhaltselement über einen Echtzeit-Inhaltsauswahlprozess auswählen. Die Vorgänge können über eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems eine Vielzahl von Schnittstellen pollen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle mit einem Schwellenabstand von dem Computergerät identifizieren. Die Vorgänge können durch die Schnittstellenverwaltungskomponente einen ersten Ressourcenauslastungswert für die erste Kandidatenschnittstelle und einen zweiten Ressourcenauslastungswert für die zweite Kandidatenschnittstelle bestimmen. Die Vorgänge können basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts die erste Kandidatenschnittstelle als eine ausgewählte Schnittstelle auswählen, um das Inhaltselement zu präsentieren. Die Vorgänge können das Inhaltselement zur Zustellung in eine Modalität konvertieren, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird. Die Vorgänge können das für die erste Modalität konvertierte Inhaltselement übertragen, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Diese und andere Aspekte und Implementierungen werden nachfolgend ausführlich beschrieben. Die vorstehenden Informationen und die folgende ausführliche Beschreibung beinhalten veranschaulichende Beispiele verschiedener Aspekte und Implementierungen und stellen einen Überblick oder einen Rahmen für das Verständnis des Wesens und Charakters der beanspruchten Aspekte und Implementierungen bereit. Die Zeichnungen bieten eine Veranschaulichung und ein weiteres Verständnis der verschiedenen Aspekte und Implementierungen und sind in diese Spezifikation einbezogen und stellen einen Teil derselben dar.
- Figurenliste
- Die begleitenden Zeichnungen sollen nicht maßstabsgetreu sein. In den unterschiedlichen Zeichnungen werden gleiche Bezugszeichen und Bezeichnungen für gleiche Elemente verwendet. Aus Gründen der Übersichtlichkeit ist möglicherweise nicht jede Komponente in jeder Zeichnung beschriftet. In den Zeichnungen:
-
1 stellt ein System zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit; -
2 stellt ein Ablaufdiagramm zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit; -
3 stellt ein Verfahren zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit; -
4 stellt einen veranschaulichenden Vorgang eines Systems zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit; -
5 stellt einen veranschaulichenden Vorgang eines Systems zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit; und -
6 zeigt ein Blockdiagramm, das eine allgemeine Architektur für ein Computersystem veranschaulicht, das zum Implementieren von Elementen der hierin beschriebenen und veranschaulichten Systeme und Verfahren eingesetzt werden kann. - AUSFÜHRLICHE BESCHREIBUNG
- Nachfolgend finden sich ausführlichere Beschreibungen von verschiedenen Konzepten und Verfahren, Vorrichtungen und Systemen zur multimodalen Übertragung von paketierten Daten in einer sprachaktivierten datenpaketbasierten Computernetzwerkumgebung, die damit in Zusammenhang stehen, sowie Implementierungen derselben. Die verschiedenen Konzepte, die vorstehend vorgestellt wurden und nachstehend ausführlicher erläutert werden, können in einer beliebigen von zahlreichen Arten implementiert werden.
- Systeme und Verfahren der vorliegenden Offenbarung betreffen im Allgemeinen ein Datenverarbeitungssystem, das eine optimale Übertragungsmodalität für eine datenpaket- (oder andere protokollbasierte) Übertragungen in einer sprachaktivierten Computernetzwerkumgebung identifiziert. Das Datenverarbeitungssystem kann die Effizienz und Effektivität der Datenpaketübertragung über ein oder mehrere Computernetzwerke verbessern, indem es beispielsweise eine Übertragungsmodalität aus einer Vielzahl von Optionen für Datenpaket-Routing durch ein Computernetzwerk von Inhaltselementen zu einem oder mehreren Client-Computergeräten oder zu verschiedenen Schnittstellen (z. B. verschiedenen Anwendungen oder Programmen) eines einzelnen Client-Computergeräts auswählt. Datenpakete oder andere, den ausgewählten Vorgängen entsprechende protokollbasierte Signale können über ein Computernetzwerk zwischen mehreren Computergeräten geroutet werden. Beispielsweise kann das Datenverarbeitungssystem ein Inhaltselement an eine andere Schnittstelle routen als eine Schnittstelle, von der eine Anfrage empfangen wurde. Die unterschiedliche Schnittstelle kann sich auf demselben Client-Computergerät oder auf einem anderen Client-Computergerät befinden, von dem eine Anfrage empfangen wurde. Das Datenverarbeitungssystem kann mindestens eine Kandidatenschnittstelle aus einer Vielzahl von Kandidatenschnittstellen für die Übertragung von Inhalten an ein Client-Computergerät auswählen. Die Kandidatenschnittstellen können basierend auf technischen oder rechnerischen Parametern, wie z. B. Prozessorfähigkeit oder Verwendungsrate, Speicherfähigkeit oder Verfügbarkeit, Batteriezustand, verfügbare Leistung, Netzwerkbandbreitenauslastung, Schnittstellenparameter oder anderen Ressourcenauslastungswerten, bestimmt werden. Durch Auswählen einer Schnittstelle zum Empfangen und Bereitstellen des Inhaltselements für das Wiedergeben von dem Client-Computergerät basierend auf Kandidatenschnittstellen oder den Kandidatenschnittstellen zugeordneten Verwendungsraten kann das Datenverarbeitungssystem die Netzwerkbandbreitenauslastung, die Latenzzeit oder die Verarbeitungsverwendung oder den Stromverbrauch des Client-Computergeräts, das das Inhaltselement wiedergibt, reduzieren. Dies spart Verarbeitungsleistung und andere Rechenressourcen, wie z. B. Speicher, reduziert den Stromverbrauch des Datenverarbeitungssystems, darüber hinaus werden durch die reduzierte Datenübertragung über das Computernetzwerk der Bandbreitenbedarf und die Nutzung des Datenverarbeitungssystems reduziert.
- Die hier beschriebenen Systeme und Verfahren beinhalten ein Datenverarbeitungssystem, das eine Eingabeaudioanfrage empfängt, die auch als Eingabeaudiosignal bezeichnet werden kann. Von der Eingabeaudioanfrage kann das Datenverarbeitungssystem eine Anfrage und ein Auslöserschlüsselwort gemäß der Anfrage identifizieren. Basierend auf dem Auslöserschlüsselwort oder der Anfrage kann das Datenverarbeitungssystem eine erste Aktionsdatenstruktur generieren. Beispielsweise kann die erste Aktionsdatenstruktur eine organische Antwort auf die von einem Client-Computergerät empfangene Audioanfrage beinhalten, und das Datenverarbeitungssystem kann die erste Aktionsdatenstruktur an dasselbe Client-Computergerät zum Wiedergeben als Audioausgabe über dieselbe Schnittstelle bereitstellen, von der die Anfrage empfangen wurde.
- Das Datenverarbeitungssystem kann auch mindestens ein Inhaltselement basierend auf dem Auslöserschlüsselwort oder der Anfrage auswählen. Das Datenverarbeitungssystem kann eine Vielzahl von Kandidatenschnittstellen zum Wiedergeben des Inhalts/der Inhalte identifizieren oder bestimmen. Die Schnittstellen können eine oder mehrere Hard- oder Softwareschnittstellen beinhalten, wie z. B. Bildschirme, Audioschnittstellen, Lautsprecher, Anwendungen oder Programme, die auf dem Client-Computergerät, das die Eingabeaudioabfrage ausgelöst hat, oder auf verschiedenen Client-Computergeräten verfügbar sind. Die Schnittstellen können sowohl Javascript-Slots für Online-Dokumente zum Einfügen von Inhalten als auch Push-Benachrichtigungsschnittstellen beinhalten. Das Datenverarbeitungssystem kann Verwendungswerte für die verschiedenen Kandidatenschnittstellen bestimmen. Die Verwendungswerte können z. B. Leistung, Verarbeitung, Arbeitsspeicher, Bandbreite oder Schnittstellenparameterfähigkeiten angeben. Basierend auf den Verwendungswerten für die Kandidatenschnittstellen kann das Datenverarbeitungssystem eine Kandidatenschnittstelle als eine ausgewählte Schnittstelle für die Präsentation oder Wiedergabe des Inhaltselements auswählen. Beispielsweise kann das Datenverarbeitungssystem das Inhaltselement in einer mit der ausgewählten Schnittstelle kompatiblen Modalität konvertieren oder zur Zustellung bereitstellen. Die ausgewählte Schnittstelle kann eine Schnittstelle des gleichen Client-Computergeräts, das das Eingabeaudiosignal erzeugt hat, oder eines anderen Client-Computergeräts sein. Indem das Datenverarbeitungssystem Datenpakete basierend auf Verwendungswerten, die einer Kandidatenschnittstelle zugeordnet sind, über ein Computernetzwerk routet, wählt es ein Ziel für das Inhaltselement in einer Weise aus, die die geringste Menge an Verarbeitungsleistung, Arbeitsspeicher oder Bandbreite aus den verfügbaren Optionen verwenden, oder die Leistung eines oder mehrerer Client-Computergeräte einsparen kann.
- Das Datenverarbeitungssystem kann das Inhaltselement oder die erste Aktionsdatenstruktur durch paket- oder andere protokollbasierte Datenübertragung über ein Computernetzwerk, an ein Client-Computergerät bereitstellen. Das Ausgabesignal kann dazu führen, dass eine Audiotreiberkomponente des Client-Computergeräts eine akustische Welle generiert, z. B. eine Audioausgabe, die von dem Client-Computergerät ausgegeben werden kann. Die Audio- (oder andere) Ausgabe kann der ersten Aktionsdatenstruktur oder dem Inhaltselement entsprechen. Beispielsweise kann die erste Aktionsdatenstruktur als Audioausgabe, und das Inhaltselement als eine textbasierte Nachricht geroutet werden. Durch das Routing der ersten Aktionsdatenstruktur und des Inhaltselements auf verschiedene Schnittstellen kann das Datenverarbeitungssystem die von jeder Schnittstelle verwendeten Ressourcen im Vergleich zur Bereitstellung sowohl der ersten Aktionsdatenstruktur als auch des Inhaltselements auf derselben Schnittstelle konservieren. Dies führt zu weniger Datenverarbeitungsvorgängen, weniger Arbeitsspeicherverwendung oder weniger Netzwerkbandbreitenauslastung durch die ausgewählten Schnittstellen (oder deren entsprechenden Geräten), als dies ohne Trennung und unabhängiges Routing der ersten Aktionsdatenstruktur und des Inhaltselements der Fall wäre.
- Das Datenverarbeitungssystem kann ein oder mehrere Geräte in Reichweite eines Computergeräts identifizieren, der ein Eingabeaudiosignal über ein Mikrofon erkennt. Das Datenverarbeitungssystem kann das eine oder die mehreren identifizierten Geräte in Reichweite pollen, um eine oder mehrere Kandidatenschnittstellen zu identifizieren. Das Datenverarbeitungssystem kann für jede der einen oder mehreren Kandidatenschnittstellen einen Ressourcenauslastungswert bestimmen, um eine Schnittstelle auszuwählen, über die eine Benachrichtigung oder ein Inhaltselement übertragen werden soll. Beispielsweise kann das Datenverarbeitungssystem bestimmen, ob ein Inhaltselement oder eine Benachrichtigung übertragen werden soll. Das Datenverarbeitungssystem kann bestimmen, ob das Inhaltselement oder die Benachrichtigung in Abhängigkeit von der Spracheingabe, die von einem Computergerät empfangen wird, übertragen werden soll. Vor der Übertragung des Inhalts oder der Benachrichtigung kann das Datenverarbeitungssystem ein weiteres Computergerät in Reichweite des Computergeräts identifizieren. Das Datenverarbeitungssystem kann die Vielzahl von Computergeräten pollen, um Kandidatenschnittstellen für das Inhaltselement zu identifizieren. Das Datenverarbeitungssystem kann z. B. bestimmen, dass eine erste Kandidatenschnittstelle eines ersten Computergeräts einen hohen Ressourcenauslastungswert aufweist (z. B. kann die erste Kandidatenschnittstelle eine Audioschnittstelle sein und das Datenverarbeitungssystem kann bestimmen, dass das erste Computergerät Musik abspielt). Das Datenverarbeitungssystem kann bestimmen, dass eine zweite Kandidatenschnittstelle eine geringe Ressourcenauslastung aufweist (z. B. kann die zweite Kandidatenschnittstelle eine visuelle Anzeige beinhalten, die derzeit nicht verwendet wird). Das Datenverarbeitungssystem kann außerdem bestimmen, dass der Inhalt entweder in einem Audio- oder in einem visuellen Format dargestellt werden kann. Das Datenverarbeitungssystem kann dann die zweite Kandidatenschnittstelle auswählen, das Inhaltselement in das visuelle Format konvertieren oder auswählen, und das Inhaltselement zur Präsentation über die zweite Kandidatenschnittstelle übertragen.
-
1 stellt ein exemplarisches System100 zur multimodalen Übertragung von paketierten Daten in einer sprachaktivierten datenpaket- (oder anderen protokoll-) basierten Computernetzwerkumgebung dar. Das System100 kann mindestens ein Datenverarbeitungssystem105 beinhalten. Das Datenverarbeitungssystem105 kann mindestens einen Server, der mindestens einen Prozessor aufweist, beinhalten. Das Datenverarbeitungssystem105 kann beispielsweise eine Vielzahl von Servern beinhalten, die sich in mindestens einem Rechenzentrum oder einer Serverfarm befinden. Das Datenverarbeitungssystem105 kann aus einem Audioeingabesignal eine Anfrage und ein der Anfrage zugeordnetes Auslöserschlüsselwort bestimmen. Basierend auf der Anfrage und dem Auslöserschlüsselwort kann das Datenverarbeitungssystem105 mindestens eine Aktionsdatenstruktur bestimmen oder auswählen, und kann mindestens ein Inhaltselement auswählen (und, wie hierin beschrieben, andere Aktionen initiieren). Das Datenverarbeitungssystem105 kann Kandidatenschnittstellen für das Wiedergeben der Aktionsdatenstrukturen oder der Inhaltselemente identifizieren und die Aktionsdatenstrukturen oder die Inhaltselemente für das Wiedergeben durch eine oder mehrere Kandidatenschnittstellen auf einem oder mehreren Client-Computergeräten basierend auf Ressourcenauslastungswerten für oder der Kandidatenschnittstellen bereitstellen, beispielsweise als Teil eines sprachaktivierten Kommunikations- oder Planungssystems. Die Aktionsdatenstruktur (oder die Inhaltselemente) kann/können eine oder mehrere Audiodateien beinhalten, welche, wenn sie wiedergegeben werden, Audioausgabe oder akustische Wellen bereitstellen. Die Aktionsdatenstrukturen oder die Inhaltselemente kann/können zusätzlich zu dem Audioinhalt weitere Inhalte (z. B. Text-, Video- oder Bildinhalte) beinhalten. - Das Datenverarbeitungssystem
105 kann mehrere, logisch gruppierte Server beinhalten und verteilte Rechenprozesse ermöglichen. Die logische Gruppe von Servern kann als ein Rechenzentrum, eine Serverfarm oder eine Computerfarm bezeichnet werden. Die Server können auf verschiedene Standorte verteilt sein. Ein Rechenzentrum oder eine Computerfarm kann als eine einzelne Entität verwaltet werden oder die Computerfarm kann eine Vielzahl von Computerfarmen beinhalten. Die Server in einer Computerfarm können heterogen sein - ein oder mehrere der Server oder Computer können gemäß einem oder mehreren Typen von Betriebssystemplattformen betrieben werden. Das Datenverarbeitungssystem105 kann Server in einem Rechenzentrum beinhalten, die in einem oder mehreren Lagersystemen mit hoher Dichte gespeichert sind, zusammen mit verbundenen Speichersystemen, die sich beispielsweise in einem Enterprise-Rechenzentrum befinden. Das Datenverarbeitungssystem105 mit konsolidierten Servern kann auf diese Weise Systemverwaltung, Datensicherheit, physische Sicherheit des Systems sowie Systemleistung durch das Lokalisieren von Servern und Hochleistungsspeichersystemen in lokalisierten Hochleistungsnetzwerken verbessern. Die Zentralisierung sämtlicher oder einiger Komponenten des Datenverarbeitungssystems105 , einschließlich Servern und Speichersystemen, sowie das Koppeln dieser mit verbesserten System-Management-Tools ermöglicht eine effizientere Verwendung von Server-Ressourcen, wodurch Strom- und Verarbeitungsanforderungen eingespart und die Bandbreitenauslastung reduziert werden. - Das Datenverarbeitungssystem
105 kann mindestens eine Prozessorkomponente110 für natürliche Sprache (NLP), mindestens eine Schnittstelle115 , mindestens eine Vorhersagekomponente120 , mindestens eine Inhaltsauswahlelementkomponente125 , mindestens eine Audiosignalgeneratorkomponente130 , mindestens eine Direktaktions-Anwendungsprogrammierschnittstelle (API)135 , mindestens eine Schnittstellenverwaltungskomponente140 und mindestens einen Datenbehälter145 beinhalten. Die NLP-Komponente110 , Schnittstelle115 , Vorhersagekomponente120 , Inhaltsauswahlelementkomponente125 , Audiosignalgeneratorkomponente130 , Direktaktions-API135 und Schnittstellenverwaltungskomponente140 können jeweils mindestens eine Verarbeitungseinheit, einen Server, virtuellen Server, eine Schaltung, eine Maschine, einen Agenten, eine Vorrichtung oder ein sonstiges Logik-Gerät, wie z. B. programmierbare Arrays beinhalten, die konfiguriert sind, mit dem Datenbehälter145 und mit sonstigen Computergeräten (z. B. mindestens ein Client-Computergerät150 , mindestens ein Inhaltsanbieter-Computergerät155 oder mindestens ein Dienstanbieter-Computergerät160 ) über das mindestens eine Computernetzwerk165 kommunizieren zu können. Das Netzwerk165 kann Computernetzwerke, wie z. B. das Internet, lokale Netzwerke, regionale Netzwerke und Großraumnetzwerke oder sonstige Bereichsnetzwerke, Intranets, Satellitennetzwerke oder sonstige Computernetzwerke, wie z. B. sprach- oder datenbezogene Mobilfunknetze und Kombinationen derselben, beinhalten. - Das Netzwerk
165 kann ein Anzeigenetzwerk, wie z. B. eine im Internet verfügbare Untergruppe von Informationsquellen, beinhalten oder bilden, die einem Inhaltsanordnungs- oder Suchmaschinenergebnissystem zugeordnet sind, oder die auswählbar sind, sodass sie Drittanbieterinhaltselemente als Teil einer Inhaltselementanordnungskampagne beinhalten. Das Netzwerk165 kann durch das Datenverarbeitungssystem105 verwendet werden, um auf Informationsressourcen, wie z. B. Webseiten, Internetpräsenzen, Domänennamen oder URL-Adressen zuzugreifen, die durch das Client-Computergerät150 präsentiert, ausgegeben, gerendert oder angezeigt werden können. Beispielsweise kann ein Benutzer des Client-Computergeräts150 über das Netzwerk165 auf Informationen oder Daten zugreifen, die durch das Datenverarbeitungssystem105 , das Inhaltsanbieter-Computergerät155 oder das Dienstanbieter-Computergerät160 bereitgestellt werden. - Das Netzwerk
165 kann beispielsweise ein Point-to-Point-Netzwerk, ein Broadcast-Netzwerk, ein Großraumnetzwerk, ein lokales Netzwerk, ein Telekommunikationsnetzwerk, ein Datenkommunikationsnetzwerk, ein Computernetzwerk, ein ATM (Asynchroner Transfermodus)-Netzwerk, ein SONET (Synchrones Optisches Netzwerk)-Netzwerk, ein SDH (Synchrone Digitale Hierarchie)-Netzwerk, ein Drahtlosnetzwerk oder ein kabelgebundenes Netzwerk, und Kombinationen derselben, beinhalten. Das Netzwerk165 kann eine Drahtlosverbindung, wie beispielsweise einen Infrarotkanal oder ein Satellitenfrequenzband, beinhalten. Die Topologie des Netzwerks165 kann eine Bus-, Stern- oder Ringnetzwerktopologie beinhalten. Das Netzwerk165 kann ein beliebiges Protokoll oder beliebige Protokolle verwendende Mobilfunknetze, die zur Kommunikation zwischen Mobilgeräten verwendet werden, beinhalten, darunter auch Advanced Mobile Phone Protocol („AMPS“), Time Division Multiple Access („TDMA“), Code-Division Multiple Access („CDMA“), Global System for Mobile Communication („GSM“), General Packet Radio Services („GPRS“) und Universal Mobile Telecommunications System („UMTS“). Verschiedene Arten von Daten können über verschiedene Protokolle übertragen werden oder es können gleiche Arten von Daten über verschiedene Protokolle übertragen werden. - Das Client-Computergerät
150 , das Inhaltsanbieter-Computergerät155 und das Dienstanbieter-Computergerät160 können mindestens ein Logikgerät, wie z. B. ein Computergerät mit einem Prozessor, zur Kommunikation miteinander oder mit dem Datenverarbeitungssystem105 über das Netzwerk165 beinhalten. Das Client-Computergerät150 , das Inhaltsanbieter-Computergerät155 und das Dienstanbieter-Computergerät160 können jeweils mindestens einen Server, Prozessor oder Speicher oder eine Vielzahl von Rechenressourcen oder Servern, die sich in mindestens einem Rechenzentrum befinden, beinhalten. Das Client-Computergerät150 , das Inhaltsanbieter-Computergerät155 und das Dienstanbieter-Computergerät160 können jeweils mindestens ein Computergerät, wie z. B. einen Desktop-Computer, Laptop, Tablet, persönlichen digitalen Assistenten, Smartphone, tragbaren Computer, Server, Thin Client-Computergerät, virtuellen Server, oder ein anderes Computergerät beinhalten. - Das Client-Computergerät
150 kann mindestens einen Sensor151 , mindestens einen Wandler152 , mindestens einen Audiotreiber153 und mindestens einen Lautsprecher154 beinhalten. Der Sensor151 kann ein Mikrofon oder einen Audioeingabesensor beinhalten. Der Wandler152 kann die Audioeingabe in ein elektronisches Signal konvertieren, oder umgekehrt. Der Audiotreiber153 kann ein Script oder Programm beinhalten, das durch einen oder mehrere Prozessoren des Client-Computergeräts150 ausgeführt wird, um den Sensor151 , den Wandler152 , den Audiotreiber153 oder andere Komponenten des Client-Computergeräts150 zwecks Verarbeitens der Audioeingaben oder Bereitstellens der Audioausgaben zu steuern. Der Lautsprecher154 kann das Audioausgabesignal übertragen. - Das Client-Computergerät
150 kann einem Endbenutzer zugeordnet sein, der Sprachabfragen als Audioeingabe in das Client-Computergerät150 (über den Sensor151 ) eingibt, und eine Audioausgabe in Form einer computergenerierten Stimme empfängt, die von dem Datenverarbeitungssystem105 (oder dem Inhaltsanbieter-Computergerät155 oder dem Dienstanbieter-Computergerät160 ) für das Client-Computergerät150 bereitgestellt und von einem Lautsprecher154 ausgegeben werden kann. Die Audioausgabe kann einer Aktionsdatenstruktur entsprechen, die von der Direktaktions-API135 empfangen wird, oder einem Inhaltselement, das von der Inhaltsauswahlkomponente125 ausgewählt wird. Die computergenerierte Stimme kann Aufzeichnungen von einer realen Person oder einer computergenerierten Sprache beinhalten. - Das Inhaltsanbieter-Computergerät
155 (oder das Datenverarbeitungssystem105 oder das Dienstanbieter-Computergerät160 ) kann audiobasierte Inhaltselemente zwecks Anzeigens durch das Client-Computergerät150 als eine Audioausgabe bereitstellen. Die Aktionsdatenstruktur oder das Inhaltselement kann eine organische Reaktion oder ein Angebot für eine Ware oder eine Dienstleistung beinhalten, wie beispielsweise eine sprachbasierte Nachricht, die besagt: „Heute ist es sonnig und 80 Grad Fahrenheit am Strand“ als organische Antwort auf eine Spracheingabeabfrage von „Ist heute ein Strandtag?“ Das Datenverarbeitungssystem105 (oder eine andere Komponente des Systems100 , wie z. B. das Inhaltsanbieter-Computergerät155 , kann auch ein Inhaltselement als Antwort bereitstellen, z. B. ein sprach- oder textnachrichtenbasiertes Inhaltselement mit Sonnenschutz. - Das Inhaltsanbieter-Computergerät
155 oder der Datenbehälter145 kann einen Arbeitsspeicher zum Speichern einer Reihe von Audioaktionsdatenstrukturen oder Inhaltselementen beinhalten, die in Reaktion auf eine sprachbasierte Anfrage bereitgestellt werden können. Die Aktionsdatenstrukturen und Inhaltselemente können paketbasierte Datenstrukturen für die Übertragung über das Netzwerk165 beinhalten. Das Inhaltsanbieter-Computergerät155 kann ebenfalls audio- oder textbasierte Inhaltselemente (oder andere Inhaltselemente) an das Datenverarbeitungssystem105 bereitstellen, wo diese in dem Datenbehälter145 gespeichert werden können. Das Datenverarbeitungssystem105 kann die Audioaktionsdatenstrukturen oder textbasierten Inhaltselemente auswählen und diese bereitstellen (oder das Inhaltsanbieter-Computergerät155 anweisen, diese bereitzustellen) an dieselben oder verschiedene Client-Computergeräte150 , die auf eine Anfrage von einem dieser Client-Computergeräte150 reagieren. Die audiobasierten Aktionsdatenstrukturen können ausschließlich Audio sein oder mit Text-, Bild- oder Videodaten kombiniert sein. Die Inhaltselemente können ausschließlich Text sein oder mit Text-, Bild- oder Videodaten kombiniert sein. - Das Dienstanbieter-Computergerät
160 kann mindestens eine Prozessorkomponente für natürliche Sprache (NLP)161 des Dienstanbieters und mindestens eine Dienstanbieterschnittstelle162 beinhalten. Die Dienstanbieter-NLP-Komponente161 (oder andere Komponenten, wie z. B. eine Direktaktions-API des Dienstanbieter-Computergeräts160 ) kann das Client-Computergerät150 (über das Datenverarbeitungssystem105 oder durch Umgehen des Datenverarbeitungssystems105 ) ansteuern, um eine hin und her gehende sprach- oder audiobasierte Konversation in Echtzeit (z. B. eine Sitzung) zwischen dem Client-Computergerät150 und dem Dienstanbieter-Computergerät160 zu erzeugen. Die Dienstanbieterschnittstelle162 kann beispielsweise Datennachrichten empfangen oder diese an die Direktaktions-API135 des Datenverarbeitungssystems105 bereitstellen (z. B. Aktionsdatenstrukturen oder Inhaltselemente). Die Direktaktions-API135 kann die Aktionsdatenstrukturen auch unabhängig von oder ohne Eingabe des Dienstanbieter-Computergeräts160 generieren. Das Dienstanbieter-Computergerät160 und das Inhaltsanbieter-Computergerät155 können der gleichen Entität zugeordnet sein. Beispielsweise kann das Inhaltsanbieter-Computergerät155 Inhalte für strandbezogene Dienste wie Sonnencreme, Strandtücher oder Badeanzüge erstellen, speichern oder bereitstellen, und das Dienstanbieter-Computergerät160 kann eine Sitzung mit dem Client-Computergerät150 herstellen, um auf eine Spracheingabeabfrage über das Wetter am Strand, Wegbeschreibung zu einem Strand oder eine Empfehlung für einen Bereichsstrand zu reagieren, und diese Inhalte dem Endbenutzer des Client-Computergeräts150 über eine Schnittstelle des gleichen Client-Computergeräts150 , von dem die Anfrage empfangen wurde, einer anderen Schnittstelle des gleichen Client-Computergeräts150 oder einer Schnittstelle eines anderen Client-Computergeräts bereitzustellen. Das Datenverarbeitungssystem105 kann über die Direktaktions-API135 , die NLP-Komponente110 oder andere Komponenten zudem die Sitzung mit dem Client-Computergerät herstellen, einschließlich oder unter Umgehung des Dienstanbieter-Computergeräts160 , um z. B. eine organische Reaktion auf eine mit dem Strand in Zusammenhang stehende Anfrage bereitzustellen. - Der Datenbehälter
145 kann eine oder mehrere lokale oder verteilte Datenbanken beinhalten, und kann ein Datenbankverwaltungssystem beinhalten. Der Datenbehälter145 kann Computerdatenspeicher oder Arbeitsspeicher beinhalten und neben anderen Daten einen oder mehrere Parameter146 , eine oder mehrere Richtlinien147 , Inhaltsdaten148 oder Vorlagen149 speichern. Die Parameter146 , Richtlinien147 und Vorlagen149 können Informationen, wie z. B. Regeln über eine sprachbasierte Sitzung zwischen dem Client-Computergerät150 und dem Datenverarbeitungssystem105 (oder dem Dienstanbietercomputergerät160 ) beinhalten. Die Inhaltsdaten148 können Inhaltselemente zur Audioausgabe oder zugeordnete Metadaten sowie eingegebene Audionachrichten beinhalten, die Teil von einer oder mehreren Kommunikationssitzungen mit dem Client-Computergerät150 sein können. - Das System
100 kann die Verarbeitung von Aktionsdatenstrukturen und Inhaltselementen in einer sprachaktivierten Datenpaket- (oder anderen Protokoll-) Umgebung optimieren. Beispielsweise kann das Datenverarbeitungssystem105 einen sprachaktivierten Assistentendienst, ein Sprachbefehlsgerät, einen intelligenten persönlichen Assistenten, einen Wissensnavigator, eine Ereignisplanung oder ein anderes Assistentenprogramm beinhalten oder Teil davon sein. Das Datenverarbeitungssystem105 kann eine oder mehrere Instanzen von Aktionsdatenstrukturen als Audioausgabe für die Anzeige von dem Client-Computergerät150 bereitstellen, um Aufgaben im Zusammenhang mit diesem Eingabeaudiosignal zu erfüllen. Beispielsweise kann das Datenverarbeitungssystem mit dem Dienstanbieter-Computergerät160 oder anderen Drittanbieter-Computergeräten kommunizieren, um unter anderem Aktionsdatenstrukturen mit Informationen über einen Strand zu generieren. Zum Beispiel kann ein Endbenutzer ein Eingabeaudiosignal in das Client-Computergerät150 wie folgt eingeben: „Ok, ich möchte dieses Wochenende an den Strand gehen“ und eine Aktionsdatenstruktur kann die Wochenendwettervorhersage für Strände in der Umgebung anzeigen, wie z. B. „es wird sonnig und 80 Grad Fahrenheit am Strand am Samstag, mit Flut um 15 Uhr.“ - Die Aktionsdatenstrukturen können eine Reihe von organischen oder nicht gesponserten Antworten auf das Eingabeaudiosignal beinhalten. Beispielsweise können die Aktionsdatenstrukturen eine Strandwettervorhersage oder eine Wegbeschreibung zu einem Strand beinhalten. Die Aktionsdatenstrukturen in diesem Beispiel beinhalten organische oder nicht gesponserte Inhalte, die direkt auf das Eingabeaudiosignal reagieren. Die Inhaltselemente, die auf das Eingabeaudiosignal reagieren, können gesponserte oder nicht organische Inhalte beinhalten, wie z. B. ein Angebot zum Kauf von Sonnenschutzmitteln in einem Geschäft in der Nähe des Strandes. In diesem Beispiel reagiert die organische Aktionsdatenstruktur (Strandprognose) auf das Eingabeaudiosignal (eine Anfrage, die sich auf den Strand bezieht), und das Inhaltselement (eine Erinnerung oder ein Angebot für Sonnenschutz) reagiert ebenfalls auf das gleiche Eingabeaudiosignal. Das Datenverarbeitungssystem
105 kann Parameter von System100 (z. B. Stromverbrauch, verfügbare Anzeigen, Anzeigeformate, Arbeitsspeicheranforderungen, Bandbreitenauslastung, Leistungskapazität oder Zeit der Eingangsleistung (z. B. interne Batterie oder externe Stromquelle, wie z. B. eine Stromquelle von einem Wandausgang) auswerten, um die Aktionsdatenstruktur und das Inhaltselement an verschiedene Kandidatenschnittstellen auf demselben Client-Computergerät150 oder an verschiedene Kandidatenschnittstellen auf verschiedenen Client-Computergeräten150 bereitzustellen. - Das Datenverarbeitungssystem
105 kann eine Anwendung, ein Script oder ein Programm beinhalten, die/das auf dem Client-Computergerät150 installiert ist, wie beispielsweise eine Anwendung, um Eingabeaudiosignale (wie z. B. Datenpakete über eine paketierte oder andere protokollbasierte Übertragung) an mindestens eine Schnittstelle115 des Datenverarbeitungssystems105 zu kommunizieren, und um Komponenten des Client-Computergeräts150 anzusteuern, um Ausgabeaudiosignale (z. B. für Aktionsdatenstrukturen) oder andere Ausgabesignale (z. B. Inhaltselemente) wiederzugeben. Das Datenverarbeitungssystem105 kann Datenpakete oder ein anderes Signal empfangen, das ein Audioeingabesignal beinhaltet oder identifiziert. Beispielsweise kann das Datenverarbeitungssystem105 die NLP-Komponente110 ausführen oder ausführen lassen, um das Audiosignal zu empfangen. - Die NLP-Komponente
110 kann das Audioeingabesignal durch Vergleichen des Eingabeaudiosignals mit einer gespeicherten repräsentativen Reihe von Audiowellenformen (z. B. in dem Datenbehälter145 ) und Auswählen der größten Übereinstimmungen in erkannten Text umwandeln. Die repräsentativen Wellenformen werden über eine große Menge von Benutzern erzeugt und können mit Sprachproben erweitert werden. Nachdem das Audiosignal in erkannten Text konvertiert wurde, kann die NLP-Komponente110 den Text mit Worten abgleichen, die beispielsweise via Training über Benutzer oder durch manuelle Beschreibung Aktionen zugeordnet sind, die das Datenverarbeitungssystem105 bereitstellen kann. - Das Audioeingabesignal kann durch den Sensor
151 (z. B. ein Mikrofon) von dem Client-Computergerät erkannt werden. Über den Wandler152 , den Audiotreiber153 oder andere Komponenten kann das Client-Computergerät150 das Audioeingabesignal an das Datenverarbeitungssystem105 (z. B. über das Netzwerk165 ) bereitstellen, wo es (z. B. durch die Schnittstelle115 ) empfangen werden kann, und an die NLP-Komponente110 bereitgestellt, oder in dem Datenbehälter145 als Inhaltsdaten148 gespeichert werden kann. - Die NLP-Komponente
110 kann ein erstes Eingabeaudiosignal empfangen oder anderweitig erhalten. Aus dem Eingabeaudiosignal kann die NLP-Komponente110 mindestens eine Anfrage oder mindestens ein der Anfrage entsprechendes Auslöserschlüsselwort identifizieren. Die Anfrage kann Absicht oder Gegenstand des Eingabeaudiosignals anzeigen. Das Auslöserschlüsselwort kann eine Aktionsart anzeigen, die wahrscheinlich vorzunehmen ist. Die NLP-Komponente110 kann beispielsweise das Eingabeaudiosignal parsen, um mindestens eine Anfrage zu identifizieren, das Wochenende am Strand zu verbringen. Das Auslöserschlüsselwort kann mindestens ein Wort, eine Phrase, einen Wortstamm oder ein Teilwort oder eine Ableitung beinhalten, das bzw. die eine vorzunehmende Aktion anzeigen. Das Auslöserschlüsselwort „gehen“ oder „gehen zu“ von dem Eingabeaudiosignal kann beispielsweise eine Notwendigkeit für eine Reise weg von zu Hause anzeigen. Bei diesem Beispiel drückt das Eingabeaudiosignal (oder die identifizierte Anfrage) nicht direkt eine Absicht für einen Transport aus, das Auslöserschlüsselwort zeigt jedoch an, dass ein Transport eine Zusatzaktion für mindestens eine andere Aktion ist, die durch die Anfrage angezeigt wird. - Die Vorhersagekomponente
120 (oder ein anderer Mechanismus des Datenverarbeitungssystems105 ) kann basierend auf der Anfrage oder des Auslöserschlüsselworts mindestens eine Aktionsdatenstruktur bestimmen, die dem Eingabeaudiosignal zugeordnet ist. Die Struktur der Aktionsdaten kann Informationen zum Thema des Eingabeaudiosignals anzeigen. Die Aktionsdatenstruktur kann eine oder mehrere Aktionen beinhalten, z. B. organische Reaktionen auf das Eingabeaudiosignal. Beispielsweise kann das Eingabeaudiosignal „Ok, ich möchte an diesem Wochenende an den Strand gehen“ mindestens eine Anfrage beinhalten, die ein Interesse an einer Strandwettervorhersage, einem Surfbericht oder Informationen zur Wassertemperatur anzeigt, und mindestens ein Auslöserschlüsselwort, z. B. „gehen“, wodurch eine Fahrt zum Strand, wie beispielsweise ein Bedarf an Gegenständen, die man an den Strand bringen möchte, oder ein Bedarf an Transport an den Strand, angezeigt wird. Die Vorhersagekomponente120 kann Themen für mindestens eine Aktionsdatenstruktur, einen Hinweis auf eine Anfrage nach einer Strandwettervorhersage sowie Themen für ein Inhaltselement, z. B. einen Hinweis auf eine Anfrage nach gesponserten Inhalten im Zusammenhang mit einem Tag am Strand, generieren oder identifizieren. Die Vorhersagekomponente120 (oder eine andere Komponente von System100 wie die NLP-Komponente110 oder die Direktaktions-API135 ) sagt vorher, schätzt oder bestimmt aus der Anfrage oder dem Auslöserschlüsselwort den Gegenstand für Aktionsdatenstrukturen oder für Inhaltselemente. Aus diesem Gegenstand kann die Direktaktions-API135 mindestens eine Aktionsdatenstruktur generieren und mit mindestens einem Inhaltsanbieter-Computergerät155 kommunizieren, um mindestens ein Inhaltselement155 zu erhalten. Die Vorhersagekomponente120 kann auf die Parameter146 oder Richtlinien147 in dem Datenbehälter145 zugreifen, um Anfragen nach Aktionsdatenstrukturen oder Inhaltselementen zu bestimmen oder anderweitig abzuschätzen. Beispielsweise könnten die Parameter146 oder147 Anfragen nach einer Wettervorhersage für ein Strandwochenende oder nach Inhalten im Zusammenhang mit Strandbesuchen, wie z. B. einem Inhaltselement für Sonnenschutzmittel, angeben. - Die Inhaltsauswahlkomponente
125 kann Hinweise auf das Interesse oder die Anfrage nach der Aktionsdatenstruktur oder dem Inhaltselement erhalten. Beispielsweise kann die Vorhersagekomponente120 direkt oder indirekt (z. B. über den Datenbehälter145 ) einen Hinweis auf die Aktionsdatenstruktur oder das Inhaltselement für die Inhaltsauswahlelementkomponente125 bereitstellen. Die Inhaltsauswahlelementkomponente125 kann diese Informationen von dem Datenbehälter145 erhalten, wo sie als Teil der Inhaltsdaten148 gespeichert sein können. Die Angabe der Aktionsdatenstruktur kann die Inhaltsauswahlkomponente125 über den Bedarf an Strandinformationen, wie z. B. eine Wettervorhersage oder Produkte oder Dienstleistungen informieren, die der Endverbraucher für eine Fahrt an den Strand benötigt. - Aus den von der Inhaltsauswahlelementkomponente
125 empfangenen Informationen, z. B. einer Angabe einer nahenden Fahrt zum Strand, kann die Inhaltsauswahlelementkomponente125 mindestens ein Inhaltselement identifizieren. Das Inhaltselement kann auf die Eingabeaudioanfrage reagieren oder sich darauf beziehen. Beispielsweise kann das Inhaltselement eine Datennachricht beinhalten, die sich als zerrissen in der Nähe des Strandes mit Sonnencreme identifiziert oder eine Taxifahrt zum Strand anbietet. Die Inhaltsauswahlelementkomponente125 kann den Datenbehälter145 abfragen, um das Inhaltselement, z. B. aus den Inhaltsdaten148 , auszuwählen oder anderweitig zu identifizieren. Die Inhaltsauswahlelementkomponente125 kann das Inhaltselement ebenfalls von dem Inhaltsanbieter-Computergerät155 auswählen. In Reaktion auf eine von dem Datenverarbeitungssystem105 empfangene Anfrage kann das Inhaltsanbieter-Computergerät155 beispielsweise ein Inhaltselement an das Datenverarbeitungssystem105 (oder Komponenten davon), von dem das Eingabeaudiosignal stammte, oder für die Ausgabe an denselben Endbenutzer durch ein anderes Client-Computergerät150 , das das Eingabeaudiosignal erzeugt hat, oder für eine Ausgabe an denselben Endbenutzer durch ein anderes Computergerät150 b erei tstell en. - Die Audiosignalgeneratorkomponente
130 kann ein Ausgabesignal in Reaktion auf das Eingabeaudiosignal generieren oder anderweitig erhalten, das das Inhaltselement (sowie die Aktionsdatenstruktur) beinhaltet. Beispielsweise kann das Datenverarbeitungssystem105 die Audiosignalgeneratorkomponente130 ausführen, um ein der Aktionsdatenstruktur oder dem Inhaltselement entsprechendes Ausgabesignal zu generieren oder zu erzeugen. Die Schnittstellenkomponente115 des Datenverarbeitungssystems105 kann ein oder mehrere Datenpakete mit dem Ausgabesignal über das Computernetzwerk165 an jedes beliebige Client-Computergerät150 bereitstellen oder übertragen. Die Schnittstelle115 kann konzipiert, konfiguriert, aufgebaut oder betriebsfähig sein, Informationen beispielsweise unter Verwendung von Datenpaketen zu empfangen und zu übertragen. Die Schnittstelle115 kann Informationen unter Verwendung eines oder mehrerer Protokolle, wie z. B. einem Netzwerkprotokoll, senden und empfangen. Die Schnittstelle115 kann eine Hardwareschnittstelle, eine Softwareschnittstelle, eine drahtgebundene Schnittstelle oder eine drahtlose Schnittstelle beinhalten. Die Schnittstelle115 kann das Übersetzen oder Formatieren von Daten von einem Format in ein anderes erleichtern. Die Schnittstelle115 kann beispielsweise eine Anwendungsprogrammierschnittstelle beinhalten, die Definitionen zum Kommunizieren zwischen verschiedenen Komponenten, wie z. B. Softwarekomponenten des Systems100 , beinhaltet. - Das Datenverarbeitungssystem
105 kann das Ausgabesignal, einschließlich der Aktionsdatenstruktur aus dem Datenbehälter145 oder aus der Audiosignalgeneratorkomponente130 , an das Client-Computergerät150 bereitstellen. Das Datenverarbeitungssystem105 kann das Ausgabesignal, einschließlich dem Inhaltselement aus dem Datenbehälter145 oder aus der Audiosignalgeneratorkomponente130 , an das Client-Computergerät150 bereitstellen. - Das Datenverarbeitungssystem
105 kann auch über Datenpaketübertragungen das Inhaltsanbieter-Computergerät155 oder das Dienstanbieter-Computergerät160 anweisen, das Ausgabesignal (z. B. entsprechend der Aktionsdatenstruktur oder dem Inhaltselement) an das Client-Computergerät150 bereitzustellen. Das Ausgabesignal kann als ein oder mehrere Datenpakete (oder ein anderes Kommunikationsprotokoll) von dem Datenverarbeitungssystem105 (oder einem anderen Datenverarbeitungsgerät) erhalten, generiert, konvertiert oder an das Client-Computergerät150 übertragen werden. - Die Inhaltsauswahlelementkomponente
125 kann das Inhaltselement oder die Aktionsdatenstruktur für die als Teil eines Echtzeit-Inhaltsauswahlprozesses auswählen. Beispielsweise kann die Aktionsdatenstruktur dem Client-Computergerät150 zur Übertragung als Audioausgabe durch eine Schnittstelle des Client-Computergeräts150 in gesprochener Weise als direkte Reaktion auf das Eingabeaudiosignal bereitgestellt werden. Der Echtzeit-Inhaltsauswahlprozess zwecks Identifizierens der Aktionsdatenstruktur und Bereitstellens des Inhaltselements an das Client-Computergerät150 kann innerhalb einer Minute oder weniger ab dem Zeitpunkt des Eingabeaudiosignals erfolgen und als in Echtzeit erfolgend betrachtet werden. Das Datenverarbeitungssystem105 kann das Inhaltselement auch an mindestens eine Schnittstelle des Client-Computergeräts150 , der das Eingabeaudiosignal erzeugt hat, oder an ein anderes Client-Computergerät150 b erei tstell en. - Die Aktionsdatenstruktur (oder das Inhaltselement), das z. B. von der Audiosignalgeneratorkomponente
130 erhalten oder generiert wird, die über die Schnittstelle115 und das Computernetzwerk165 an das Client-Computergerät150 übertragen wird, kann dazu führen, dass das Client-Computergerät150 den Audiotreiber153 ausführt, um den Lautsprecher154 anzusteuern und eine der Aktionsdatenstruktur oder dem Inhaltselement entsprechende akustische Welle zu generieren. Die akustische Welle kann Wörter beinhalten, die der Aktionsdatenstruktur oder dem Inhaltselement entsprechen. - Die akustische Welle, die die Aktionsdatenstruktur darstellt, kann von dem Client-Computergerät
150 getrennt von dem Inhaltselement ausgegeben werden. Beispielsweise kann die akustische Welle die Audioausgabe von „Heute ist es sonnig und 80 Grad Fahrenheit am Strand“ beinhalten. In diesem Beispiel erhält das Datenverarbeitungssystem105 das Eingabeaudiosignal von z. B. „Ok, ich möchte dieses Wochenende gerne an den Strand gehen.“ Aus diesen Informationen identifiziert die NLP-Komponente110 mindestens eine Anfrage oder mindestens ein Auslöserschlüsselwort, und die Vorhersagekomponente120 verwendet die Anfrage(n) oder das/die Auslöserschlüsselwort(wörter), um eine Anfrage nach einer Aktionsdatenstruktur oder nach einem Inhaltselement zu identifizieren. Die Inhaltsauswahlkomponente125 (oder eine andere Komponente) kann ein Inhaltselement für z. B. Sonnenschutzmittel in Strandnähe identifizieren, auswählen oder generieren. Die Direktaktions-API135 (oder eine andere Komponente) kann eine Aktionsdatenstruktur z. B. für die Strandprognose am Wochenende identifizieren, auswählen oder generieren. Das Datenverarbeitungssystem105 oder eine Komponente desselben, wie z. B. die Audiosignalgeneratorkomponente130 , kann die Aktionsdatenstruktur zur Ausgabe durch eine Schnittstelle des Client-Computergeräts150 bereitstellen. Beispielsweise kann die der Aktionsdatenstruktur entsprechende akustische Welle von dem Client-Computergerät150 ausgegeben werden. Das Datenverarbeitungssystem105 kann das Inhaltselement für die Ausgabe über eine andere Schnittstelle desselben Client-Computergeräts150 oder über eine Schnittstelle eines anderen Client-Computergeräts150 bereitstellen. - Die paketbasierte Datenübertragung der Aktionsdatenstruktur durch das Datenverarbeitungssystem
105 zu dem Client-Computergerät150 kann eine direkte oder Echtzeitantwort auf das Eingabeaudiosignal von „Ok, ich möchte an diesem Wochenende an den Strand gehen“ beinhalten, sodass die paketbasierten Datenübertragungen über das Computernetzwerk165 , die Teil einer Kommunikationssitzung zwischen dem Datenverarbeitungssystem105 und dem Client-Computergerät150 sind, den Ablauf und das Empfinden eines Echtzeitgesprächs von Mensch zu Mensch haben. Diese paketbasierte Datenübertragungskommunikationssitzung kann auch das Inhaltsanbieter-Computergerät155 oder das Dienstanbieter-Computergerät160 beinhalten. - Die Inhaltsauswahlkomponente
125 kann das Inhaltselement oder die Aktionsdatenstruktur basierend auf mindestens einer Anfrage oder mindestens einem Auslöserschlüsselwort des Eingabeaudiosignals auswählen. Beispielsweise können die Anfragen des Eingabeaudiosignals „Ok, ich möchte an diesem Wochenende an den Strand gehen“ Themen des Strandes, Fahrten an den Strand oder Dinge angeben, die einen Ausflug an den Strand erleichtern. Die NLP-Komponente110 oder die Vorhersagekomponente120 (oder andere Komponenten des Datenverarbeitungssystems105 , die im Rahmen der Direktaktions-API135 ausgeführt werden) können das Auslöserschlüsselwort „gehen“, „gehen zu“ oder „um zu gehen“ identifizieren und eine Transportanfrage zum Strand bestimmen, die zumindest teilweise auf dem Auslöserschlüsselwort basiert. Die NLP-Komponente110 (oder eine andere Komponente des Systems100 ) kann auch eine Aufforderung für Inhaltselemente in Zusammenhang mit Strandaktivitäten, wie z. B. Sonnenschutz oder Sonnenschirme, bestimmen. So kann das Datenverarbeitungssystem105 aus dem Eingabeaudiosignal Aktionen ableiten, die sekundäre Anfragen sind (z. B. eine Anfrage nach einem Sonnenschutz), die nicht die primäre Anfrage oder Gegenstand des Eingabeaudiosignals sind (Informationen über den Strand an diesem Wochenende). - Die Aktionsdatenstrukturen und Inhaltselemente können dem Inhalt des Eingabeaudiosignals entsprechen. Die Direktaktions-API
135 kann Programme oder Scripts ausführen, z. B. aus der NLP-Komponente110 , der Vorhersagekomponente120 oder der Inhaltsauswahlelementkomponente125 , um Aktionsdatenstrukturen oder Inhaltselemente für eine oder mehrere dieser Aktionen zu identifizieren. Die Direktaktions-API135 kann eine bestimmte Aktion ausführen, um die von dem Datenverarbeitungssystem105 bestimmte Absicht des Endbenutzers zu erfüllen. Abhängig von der in ihren Eingaben spezifizierten Aktion, kann die Direktaktions-API135 einen Code oder ein Dialogscript ausführen, der/das die zur Erfüllung einer Benutzeranfrage erforderlichen Parameter identifiziert. Dieser Code kann zusätzliche Informationen, beispielsweise in dem Datenbehälter145 , suchen, wie z. B. den Namen eines Hausautomatisierungsdienstes, oder kann Audioausgaben zum Wiedergeben auf dem Client-Computergerät150 bereitstellen, um dem Endbenutzer Fragen, wie beispielsweise nach dem beabsichtigten Ziel eines angeforderten Taxis, zu stellen. Die Direktaktions-API135 kann erforderliche Parameter bestimmen und die Informationen in eine Aktions-Datenstruktur zusammenfassen, welche sodann an eine andere Komponente, wie beispielsweise die Inhaltsauswahlelementkomponente125 oder das Dienstanbieter-Computergerät160 , gesendet werden kann, um erfüllt zu werden. - Die Direktaktions-API
135 des Datenverarbeitungssystems105 kann, basierend auf der Anfrage oder dem Auslöserschlüsselwort, die Datenstrukturen für die Aktionen des Threads generieren. Die Aktionsdatenstrukturen können in Reaktion auf den Gegenstand des Eingabeaudiosignals generiert werden. Die Aktionsdatenstruktur kann in den Nachrichten enthalten sein, die an das Dienstanbieter-Computergerät160 übertragen oder von diesem empfangen werden. Basierend auf dem Audioeingabesignal, das von der NLP-Komponente110 analysiert wird, kann die Direktaktions-API135 bestimmen, an welche, wenn überhaupt, von mehreren Dienstanbieter-Computergeräten160 die Nachricht übertragen werden soll. Wenn ein Eingabeaudiosignal beispielsweise „Ok, ich möchte an diesem Wochenende an den Strand gehen“ beinhaltet, kann die NLP-Komponente110 das Eingabeaudiosignal analysieren, um Anfragen zu identifizieren oder Schlüsselwörter, wie z. B. das Auslöserschlüsselwort „um zu gehen“, als Hinweis auf einen Bedarf nach einem Taxi auszulösen. Die Direktaktions-API135 kann die Anfrage in eine Aktionsdatenstruktur packen und als Nachricht an ein Dienstanbieter-Computergerät160 eines Taxidienstes übertragen. Die Nachricht kann auch an die Inhaltsauswahlelementkomponente125 weitergeleitet werden. Die Aktionsdatenstruktur kann Informationen zum Abschließen der Anfrage beinhalten. In diesem Beispiel können die Informationen einen Abholort (z. B. zu Hause) und einen Zielort (z. B. den Strand) beinhalten. Die Direktaktions-API135 kann eine Vorlage149 aus dem Datenbehälter145 abrufen, um zu bestimmen, welche Felder in die Aktionsdatenstruktur aufgenommen werden sollen. Die Direktaktions-API135 kann Inhalte aus dem Datenbehälter145 abrufen, um Informationen für die Felder der Datenstruktur zu erhalten. Die Direktaktions-API135 kann die Felder der Vorlage mit diesen Informationen füllen, um die Datenstruktur zu generieren. Die Direktaktions-API135 kann die Felder auch mit Daten aus dem Eingabeaudiosignal füllen. Die Vorlagen149 können für Kategorien von Dienstanbietern standardisiert oder für bestimmte Dienstanbieter standardisiert werden. Beispielsweise können Fahrgemeinschaftsdienstanbieter die folgende standardisierte Vorlage149 verwenden, um die Datenstruktur zu erzeugen: {client_device_identifier; authentication_credentials; pick_up_location; destination_location; no_passengers; service_level}. - Die Inhaltsauswahlelementkomponente
125 kann mehrere Inhaltselemente identifizieren, auswählen oder erhalten, die aus mehreren Inhaltsauswahlprozessen resultieren. Die Inhaltsauswahlprozesse können in Echtzeit erfolgen, z. B. als Teil derselben Konversation, Kommunikationssitzung oder Reihe von Kommunikationssitzungen zwischen dem Datenverarbeitungssystem105 und dem Client-Computergerät150 , die den gemeinsamen Gegenstand beinhalten. Die Konversation kann z. B. asynchrone Kommunikationen beinhalten, die durch einen Zeitraum von Stunden oder Tagen voneinander getrennt sind. Die Konversations- oder Kommunikationssitzung kann für einen Zeitraum vom Empfangen des ersten Eingabeaudiosignals bis zu einem geschätzten oder bekannten Abschluss einer abschließenden Aktion in Zusammenhang mit dem ersten Eingabeaudiosignal oder Empfangen eines Hinweises auf eine Beendigung oder Ablauf der Konversation durch das Datenverarbeitungssystem105 andauern. Beispielsweise kann das Datenverarbeitungssystem105 bestimmen, dass ein Gespräch im Zusammenhang mit einem Strandausflug am Wochenende zum Zeitpunkt oder Empfangen des Eingabeaudiosignals beginnt und am Ende des Wochenendes abläuft oder endet, z. B. Sonntag Nacht oder Montag Morgen. Das Datenverarbeitungssystem105 , das über eine oder mehrere Schnittstellen des Client-Computergeräts150 oder eines anderen Client-Computergeräts150 während des aktiven Zeitraums des Gesprächs (z. B. vom Empfangen des Eingabeaudiosignals bis zu einer bestimmten Ablaufzeit) Aktionsdatenstrukturen oder Inhaltselemente zur Darstellung bereitstellt, kann als in Echtzeit arbeitend betrachtet werden. In diesem Beispiel erfolgen die Inhaltsauswahlprozesse und das Wiedergeben der Inhaltselemente und der Aktionsdatenstrukturen in Echtzeit. - Die Schnittstellenverwaltungskomponente
140 kann Schnittstellen für die Wiedergabe der Aktionsdatenstrukturen und der mit dem Eingabeaudiosignal verbundenen Inhaltselemente pollen, bestimmen, identifizieren oder auswählen. Beispielsweise kann die Schnittstellenverwaltungskomponente140 eine oder mehrere Kandidatenschnittstellen von Client-Computergeräten150 identifizieren, die einem Endbenutzer zugeordnet sind, der das Eingabeaudiosignal (z. B. „Wie ist das Wetter heute am Strand?“) über eine Audioschnittstelle in eines der Client-Computergeräte150 eingegeben hat. Die Schnittstellen können Hardware, wie z. B. Sensor151 (z. B. ein Mikrofon), Lautsprecher154 oder eine Bildschirmgröße eines Computergeräts, allein oder kombiniert mit Scripts oder Programmen (z. B. dem Audiotreiber153 ) sowie Apps, Computerprogramme, Online-Dokumente (z. B. Webseiten) und Kombinationen derselben beinhalten. - Die Schnittstellen können soziale Netzwerkkonten, Textnachrichtenanwendungen oder E-Mail-Konten beinhalten, die einem Endbenutzer des Client-Computergeräts
150 zugeordnet sind, der das Eingabeaudiosignal erzeugt hat. Schnittstellen können die Audioausgabe eines Smartphones oder eines auf dem Smartphone installierten App-basierten Messaging-Geräts oder eines tragbaren Computergeräts, neben anderen Client-Computergeräten150 , beinhalten. Die Schnittstellen können zudem Bildschirmparameter (z. B. Größe, Auflösung), Audioparameter, Parameter für mobile Endgeräte (z. B. Prozessorleistung, Akkulaufzeit, Vorhandensein von installierten Anwendungen oder Programmen oder Fähigkeiten von Sensor151 oder Lautsprecher154 ), Content-Slots auf Online-Dokumenten für Text-, Bild- oder Videowiedergaben von Inhaltselementen, Chat-Anwendungen, Laptop-Parameter, Smartwatch oder andere tragbare Geräteparameter (z. B. Angaben zu deren Anzeige- oder Verarbeitungsmöglichkeiten) oder Virtual-Reality-Headset-Parameter beinhalten. - Die Schnittstellenverwaltungskomponente
140 kann eine Vielzahl von Schnittstellen pollen, um Kandidatenschnittstellen zu identifizieren. Kandidatenschnittstellen beinhalten Schnittstellen, die in der Lage sind, eine Antwort auf das eingegebene Audiosignal zu geben (z. B. die Aktionsdatenstruktur als Audioausgabe oder das Inhaltselement, das in verschiedenen Formaten, einschließlich Nichtaudioformaten, ausgegeben werden kann). Die Schnittstellenverwaltungskomponente140 kann Parameter oder andere Fähigkeiten von Schnittstellen bestimmen, um zu bestimmen, ob es sich bei diesen um Kandidatenschnittstellen handelt (oder nicht). Beispielsweise kann die Schnittstellenverwaltungskomponente140 basierend auf den Parametern146 des Inhaltselements oder eines ersten Client-Computergeräts150 (z. B. eines tragbaren Smartwatch-Geräts) bestimmen, dass die Smartwatch eine verfügbare visuelle Schnittstelle von ausreichender Größe oder Auflösung beinhaltet, um das Inhaltselement wiederzugeben. Die Schnittstellenverwaltungskomponente140 kann außerdem bestimmen, dass das Client-Computergerät150 , das das Eingabeaudiosignal erzeugt hat, eine Lautsprecher-154-Hardware und ein installiertes Programm, z. B. einen Audiotreiber oder ein anderes Script zur Wiedergabe der Aktionsdatenstruktur aufweist. - Die Schnittstellenverwaltungskomponente
140 kann Verwendungswerte für Kandidatenschnittstellen bestimmen. Die Verwendungswerte können anzeigen, dass eine Kandidatenschnittstelle die Aktionsdatenstrukturen oder die Inhaltselemente, die in Reaktion auf die eingegebenen Audiosignale bereitgestellt werden, darstellen kann (oder nicht). Die Verwendungswerte können Parameter146 aus dem Datenbehälter145 oder andere Parameter aus dem Client-Computergerät150 beinhalten, wie z. B. Bandbreiten- oder Verarbeitungsverwendungen oder - anforderungen, Rechenleistung, Leistungsbedarf, Batteriezustand, Arbeitsspeicherauslastung oder -fähigkeiten oder andere Schnittstellenparameter, die die Verfügbarkeit einer Schnittstelle zur Wiedergabe von Aktionsdatenstrukturen oder Inhaltselementen angeben. Der Batteriezustand kann eine Art von Stromquelle (z. B. interne Batterie oder externe Stromquelle, z. B. über einen Ausgang), einen Ladezustand (z. B. aktuell geladen oder nicht) oder eine Menge an verbleibender Batterieleistung angeben. Die Schnittstellenverwaltungskomponente140 kann Schnittstellen basierend auf dem Batterie- oder Ladezustand auswählen. - Die Schnittstellenverwaltungskomponente
140 kann die Kandidatenschnittstellen in einer Hierarchie oder Rangfolge nach den Verwendungswerten ordnen. Beispielsweise können unterschiedliche Verwendungswerte (z. B. Verarbeitungsanforderungen, Bildschirmgröße, Zugänglichkeit für den Endanwender) unterschiedlich gewichtet werden. Die Schnittstellenverwaltungskomponente140 kann einen oder mehrere der Verwendungswerte der Kandidatenschnittstellen basierend auf ihren Gewichtungen bewerten, um eine optimale entsprechende Kandidatenschnittstelle für die Wiedergabe des Inhaltselements (oder der Aktionsdatenstruktur) zu bestimmen. Basierend auf dieser Hierarchie kann die Schnittstellenverwaltungskomponente140 die höchstrangige Schnittstelle für die Wiedergabe des Inhaltselements auswählen. - Die Schnittstellenverwaltungskomponente
140 kann basierend auf Verwendungswerten für Kandidatenschnittstellen mindestens eine Kandidatenschnittstelle als eine ausgewählte Schnittstelle für das Inhaltselement auswählen. Die ausgewählte Schnittstelle für das Inhaltselement kann die gleiche Schnittstelle sein, von der das Eingabeaudiosignal empfangen wurde (z. B. eine Audioschnittstelle des Client-Computergeräts150 ) oder eine andere Schnittstelle (z. B. eine SMS-basierte Anwendung des gleichen Client-Computergeräts150 oder ein E-Mail-Konto, auf das von demselben Client-Computergerät150 zugegriffen werden kann. - Die Schnittstellenverwaltungskomponente
140 kann eine Schnittstelle für das Inhaltselement auswählen, die eine Schnittstelle eines anderen Client-Computergeräts150 als das Gerät ist, das das Eingabeaudiosignal erzeugt hat. Beispielsweise kann das Datenverarbeitungssystem105 das Eingabeaudiosignal von einem ersten Client-Computergerät150 (z. B. einem Smartphone) empfangen und eine Schnittstelle, wie z. B. die Anzeige einer Smartwatch (oder eines anderen Client-Computergeräts) zur Wiedergabe des Inhaltselements auswählen. Die mehreren Client-Computergeräte150 können alle dem gleichen Endbenutzer zugeordnet werden. Das Datenverarbeitungssystem105 kann bestimmen, dass mehrere Client-Computergeräte150 demselben Endbenutzer zugeordnet sind, basierend auf Informationen, die mit Zustimmung des Endbenutzers empfangen wurden, wie z. B. der Zugriff auf ein gemeinsames soziales Netzwerk- oder E-Mail-Konto über mehrere Client-Computergeräte150 . - Die Schnittstellenverwaltungskomponente
140 kann außerdem bestimmen, dass eine Schnittstelle nicht verfügbar ist. Beispielsweise kann die Schnittstellenverwaltungskomponente140 Schnittstellen pollen und bestimmen, dass der Batteriezustand eines Client-Computergeräts150 , der der Schnittstelle zugeordnet ist, niedrig ist oder unter einem Schwellenwert, wie z. B. 10 %, liegt. Oder die Schnittstellenverwaltungskomponente140 kann bestimmen, dass das der Schnittstelle zugeordnete Client-Computergerät150 keine ausreichende Bildschirmgröße oder Rechenleistung aufweist, um das Inhaltselement wiederzugeben, oder dass die Prozessorauslastungsrate zu hoch ist, da das Client-Computergerät gerade eine andere Anwendung ausführt, beispielsweise um Inhalte über das Netzwerk165 zu streamen. In diesen und anderen Beispielen kann die Schnittstellenverwaltungskomponente140 bestimmen, dass die Schnittstelle nicht verfügbar ist und kann die Schnittstelle als Kandidat für die Wiedergabe des Inhaltselements oder der Aktionsdatenstruktur beseitigen. - So kann die Schnittstellenverwaltungskomponente
140 bestimmen, dass eine Kandidatenschnittstelle, auf die das erste Client-Computergerät150 Zugriff hat, einem Konto eines Endbenutzers zugeordnet ist, und dass eine zweite Kandidatenschnittstelle, auf die ein zweites Client-Computergerät150 Zugriff hat, ebenfalls demselben Konto zugeordnet ist. Beispielsweise können beide Client-Computergeräte150 auf dasselbe soziale Netzwerkkonto zugreifen, z. B. durch Installation einer App oder eines Scripts auf jedem Client-Computergerät150 . Die Schnittstellenverwaltungskomponente140 kann außerdem bestimmen, dass mehrere Schnittstellen demselben Konto entsprechen, und kann mehrere, unterschiedliche Inhaltselemente für die mehreren Schnittstellen, die dem gemeinsamen Konto entsprechen, bereitstellen. Beispielsweise kann das Datenverarbeitungssystem105 mit Zustimmung des Endbenutzers bestimmen, dass ein Endbenutzer auf ein Konto von verschiedenen Client-Computergeräten150 aus zugegriffen hat. Diese mehreren Schnittstellen können getrennte Instanzen derselben Schnittstelle sein (z. B. dieselbe Anwendung, die auf verschiedenen Client-Computergeräten150 installiert ist) oder verschiedene Schnittstellen, z. B. verschiedene Anwendungen für verschiedene soziale Netzwerkkonten, die beide einem gemeinsamen E-Mail-Adresskonto zugeordnet sind, auf das von mehreren Client-Computergeräten150 aus zugegriffen werden kann. - Die Schnittstellenverwaltungskomponente
140 kann außerdem Entfernungen zwischen Client-Computergeräten150 bestimmen oder schätzen, die Kandidatenschnittstellen zugeordnet sind. Beispielsweise kann das Datenverarbeitungssystem105 mit Zustimmung des Benutzers einen Hinweis erhalten, dass das Eingabeaudiosignal von einem Smartphone oder einem Virtual-Reality-Headset-Computergerät150 stammt, und dass der Endbenutzer einem aktiven Smartwatch-Client-Computergerät150 zugeordnet ist. Aus diesen Informationen kann die Schnittstellenverwaltungskomponente bestimmen, dass die Smartwatch aktiv ist, z. B. von dem Endbenutzer getragen wird, wenn der Endbenutzer das Audiosignal in das Smartphone eingibt, sodass sich die beiden Client-Computergeräte150 in einem Schwellenabstand zueinander (z. B. innerhalb von 1 Meter, 2 Meter, 3 Meter, 4 Meter oder 7 Meter; oder innerhalb des Audio- oder Sichtbereichs) befinden. Das Datenverarbeitungssystem105 kann mit Zustimmung des Endbenutzers auch den Standort eines Smartphones bestimmen, das die Quelle eines Eingabeaudiosignals ist, und kann außerdem bestimmen, dass ein dem Endbenutzer zugeordnetes Laptop-Konto derzeit aktiv ist. Beispielsweise kann der Laptop bei einem sozialen Netzwerkkonto angemeldet werden, das anzeigt, dass der Benutzer gerade auf dem Laptop aktiv ist. In diesem Beispiel kann das Datenverarbeitungssystem105 bestimmen, dass sich der Endbenutzer in einem Schwellenabstand zu dem Smartphone und zu dem Laptop befindet, sodass der Laptop eine geeignete Wahl für die Wiedergabe des Inhaltselements über eine Kandidatenschnittstelle sein kann. - Die Schnittstellenverwaltungskomponente
140 kann ein oder mehrere andere Computergeräte150 identifizieren, die sich innerhalb eines Schwellenabstands von dem Computergerät150 befinden, das das Eingabeaudiosignal empfängt, und dann die den Computergeräten150 zugeordneten Kandidatenschnittstellen pollen, die sich innerhalb des Schwellenabstands des Computergeräts150 befinden. Die Schnittstellenverwaltungskomponente140 kann mit einer oder mehreren Näherungserkennungstechniken konfiguriert werden, um die Computergeräte150 zu identifizieren, die sich innerhalb des Schwellenabstands des Computergeräts150 befinden, das das Eingabeaudiosignal empfängt. Näherungserkennungstechniken können z. B. eine subakustische Wellentechnik, eine auf WIFI basierende Technik, eine auf Bluetooth basierende Technik, eine auf Eingabeaudiosignalen basierende Technik oder eine auf Token basierende Technik beinhalten. WIFI (oder Wi-Fi) kann sich auf eine Technologie zur drahtlosen lokalen Vernetzung mit Computergeräten beziehen, die auf einem Standard basieren. - Beispielsweise kann die Schnittstellenverwaltungskomponente
140 mit Zustimmung des Endbenutzers ein erstes Computergerät anweisen, das das Eingabeaudiosignal empfängt, eine subakustische Welle zu senden, um andere Computergeräte in einem Schwellenabstand zu identifizieren. Eine subakustische Welle kann sich auf eine akustische oder Audioübertragung beziehen, die für ein menschliches Ohr nicht oder nur schwer wahrnehmbar ist. Beispielsweise kann die subakustische Welle Infraschall, wie z. B. eine Schallwelle beinhalten, die eine Frequenz von unter 20 Hz aufweist. Die subakustische Welle kann Ultraschall beinhalten, z. B. eine Schallwelle mit Frequenzen über der oberen Hörgrenze des menschlichen Gehörs, z. B. über 20.000 Hz bis zu 1 Gigahertz, 2 Gigahertz oder mehr. Wenn das zweite Computergerät die subakustische Welle (oder Ultraschallwelle) erkennen kann, kann das zweite Computergerät eine zweite subakustische Welle (oder Ultraschallwelle) als Antwort übertragen. Die zweite subakustische Welle kann eine Kennung oder andere Daten codieren, um das zweite Computergerät anzugeben oder zu identifizieren. Das erste Computergerät kann dann die Antwort des zweiten Computergeräts empfangen, um zu bestimmen, dass sich das erste und das zweite Computergerät in einem Schwellenabstand befinden, da das erste und das zweite Computergerät in der Lage waren, erfolgreich subakustische Schallwellen voneinander zu senden und zu empfangen. Beispielsweise kann das erste Computergerät die zweite subakustische Welle decodieren, sodass diese die Kennung des zweiten Computergeräts extrahiert. Das erste Computergerät kann das Datenverarbeitungssystem105 abfragen, um Informationen oder Profilinformationen zu erhalten, die dem zweiten Computergerät zugeordnet sind, um die Übertragung von Inhalten oder Benachrichtigungen an das zweite Computergerät zu erleichtern. - In einigen Fällen kann ein drittes Computergerät die durch das erste Computergerät übertragene subakustische Welle empfangen. Das dritte Computergerät kann auf die subakustische Welle mit einer dritten subakustischen Welle reagieren, die mit einer dritten Kennung codiert ist. Das erste Computergerät kann die dritte subakustische Welle empfangen, um zu bestimmen, dass ein drittes Computergerät innerhalb des Bereichs des ersten Computergeräts liegt.
- In einigen Fällen kann das erste Computergerät die subakustische Welle (oder Ultraschallwelle) mit einem Token senden. Das Token kann eine einzigartige Kennung beinhalten. Das Token kann basierend auf einer Hash-Funktion, beispielsweise unter Verwendung eines n-Tupels, generiert werden. Das Token kann basierend auf einem oder mehreren Werten generiert werden, wie z. B. einem aktuellen der zu übertragenden Welle entsprechenden Zeitstempel, einer Gerätekennung, einer Internetprotokolladresse oder anderen Parametern oder Werten, die zu einer eindeutigen Kennung oder einem Token führen können, um dem Datenverarbeitungssystem die Bestimmung zu erleichtern, dass die zwei oder mehr Computergeräte innerhalb eines Schwellenabstands positioniert sind. Das erste Computergerät kann einen ersten Zeitstempel entsprechend der Übertragung einer subakustischen Welle mit dem Token aufzeichnen. Das zweite Computergerät kann das übertragene subakustische Signal erkennen und einen zweiten Zeitstempel aufzeichnen, der der Erkennung der subakustischen Welle entspricht. Das erste Computergerät kann über das Netzwerk
165 eine Angabe des ersten Zeitstempels und des Tokens an das Datenverarbeitungssystem105 (z. B. Schnittstellenverwaltungskomponente140 ) bestimmen. Das zweite Computergerät kann die subakustische Welle empfangen und die Welle decodieren, um das Token zu extrahieren. Nach Identifizieren des Tokens kann das zweite Computergerät das Token und den zweiten Zeitstempel gemäß der Erkennung (z. B. über Sensor151 ) oder dem Empfangen der subakustischen Welle an das Datenverarbeitungssystem105 übertragen. - Das Datenverarbeitungssystem
105 (z. B. Schnittstellenverwaltungskomponente140 ) kann den ersten Zeitstempel und das Token von dem ersten Computergerät, und den zweiten Zeitstempel und das Token von dem zweiten Computergerät empfangen. Das Datenverarbeitungssystem105 kann das von dem ersten Datenverarbeitungsgerät empfangene Token mit dem von dem zweiten Datenverarbeitungsgerät abgleichen, da es sich bei diesen um das gleiche Token handeln kann. In Reaktion auf den Token-Abgleich kann das Datenverarbeitungssystem105 den ersten und zweiten Zeitstempel abrufen, um den Abstand zwischen den zwei Computergeräten zu bestimmen. - Beispielsweise kann das Datenverarbeitungssystem
105 (z. B. über die Schnittstellenverwaltungskomponente140 ) eine Differenz zwischen dem zweiten Zeitstempel und dem ersten Zeitstempel bestimmen. Das Datenverarbeitungssystem105 kann aus der Differenz einen Abstand zwischen dem ersten Computergerät und dem zweiten Computergerät bestimmen. Die Differenz kann z. B. dem Abstand entsprechen, den die subakustische Übertragung zurücklegt. Die subakustische Übertragung kann sich mit Schallgeschwindigkeit bewegen, die etwa 340,29 Meter pro Sekunde betragen kann. Beträgt die Differenz zwischen dem ersten Zeitstempel und dem zweiten Zeitstempel 0,01 Sekunden, so sind das erste Computergerät und das zweite Computergerät etwa (z. B. plus oder minus 10 %) mit 3,4 Metern voneinander getrennt. In einem weiteren Beispiel, wenn die Differenz zwischen dem ersten Zeitstempel und dem zweiten Zeitstempel 0,001 Sekunden beträgt, sind das erste Computergerät und das zweite Computergerät etwa 0,34 Meter voneinander getrennt. So kann das Datenverarbeitungssystem105 die Geschwindigkeit der subakustischen Welle (z. B. die Schallgeschwindigkeit) mit der Zeitdifferenz multiplizieren, um den Abstand zwischen den Computergeräten zu bestimmen. Das Datenverarbeitungssystem105 kann die bestimmte Entfernung mit einem Schwellenabstand (z. B. 1 Meter, 2 Meter, 3 Meter, 4 Meter, 5 Meter, 7 Meter oder mehr) vergleichen, um zu bestimmen, dass sich das zweite Computergerät innerhalb des Schwellenabstands des ersten Computergeräts befindet. - Die Schnittstellenverwaltungskomponente
140 kann eine Näherungserkennungstechnik verwenden, die ein Drahtlossignal verwendet. Beispielsweise kann die Schnittstellenverwaltungskomponente140 das erste Computergerät anweisen, ein drahtloses Signal zu übertragen (z. B. Radiofrequenzsignal, Bluetooth-Signal, WIFI-Signal, Bake, Nahfeldkommunikationssignal oder Low-Power-Bluetooth-Signal). Ein Gerät in Reichweite der Sendung, das das Signal empfängt, kann auf das erste Computergerät reagieren oder eine Angabe an die Schnittstellenverwaltungskomponente140 übertragen, die das Empfangen des Signals angibt. Beispielsweise kann das zweite Computergerät ein zweites Signal senden, das eine Kennung des zweiten Computergeräts beinhaltet, und das erste Computergerät kann das zweite Signal empfangen und die Kennung des zweiten Computergeräts extrahieren, um basierend auf der Erfolgsübertragung zu bestimmen, dass sich das zweite Computergerät in einem Schwellenabstand befindet. In einem anderen Beispiel kann das zweite Computergerät einen Leistungspegel des Sendesignals bestimmen, um einen ungefähren Abstand zwischen dem zweiten Computergerät und dem ersten Computergerät zu bestimmen. Beispielsweise kann sich der Leistungspegel des Sendesignals in Abhängigkeit von der Entfernung, die das Signal zurücklegt, verschlechtern. Der Leistungspegel des Sendesignals kann sich mit einer Geschwindigkeit auflösen, die etwa umgekehrt proportional zum Quadrat der Entfernung zwischen dem Sender des ersten Computergeräts und dem Empfänger des zweiten Computergeräts ist (z. B. Empfangsleistung = Sendeleistung * (1/(4 * pi * Entfernung^2))) ist. Das zweite Computergerät kann den empfangenen Leistungspegel des Signals erkennen und die Angabe des empfangenen Leistungspegels an das erste Computergerät bereitstellen oder das Datenverarbeitungssystem105 (z. B. Schnittstellenverwaltungskomponente140 ) kann den empfangenen Leistungspegel mit dem übertragenen Leistungspegel vergleichen, um den Abstand zwischen dem ersten Computergerät und dem zweiten Computergerät zu bestimmen. - Das Datenverarbeitungssystem
105 (z. B. über die Schnittstellenverwaltungskomponente140 ) kann bestimmen, dass sich das erste Computergerät und das zweite Computergerät innerhalb des Schwellenabstands befinden, wobei sowohl das erste Computergerät als auch das zweite Computergerät ein und dasselbe Eingabeaudiosignal erkennen. Beispielsweise kann ein erstes Mikrofon des ersten Computergeräts ein Eingabeaudiosignal erkennen, und ein zweites Mikrofon des zweiten Computergeräts kann das gleiche Eingabeaudiosignal ungefähr zur gleichen Zeit erkennen (z. B. kann die Zeitdifferenz auf einen Unterschied in den jeweiligen Abständen zwischen der Quelle des Eingabeaudiosignals und dem ersten und zweiten Computergerät zurückzuführen sein). Das erste Computergerät kann das von dem ersten Mikrofon erkannte Eingabeaudiosignal an das Datenverarbeitungssystem105 bereitstellen, und das zweite Computergerät kann das von dem zweiten Mikrofon erkannte Eingabeaudiosignal an das Datenverarbeitungssystem105 bereitstellen. Das Datenverarbeitungssystem105 kann dann bestimmen, dass sowohl das erste Computergerät als auch das zweite Computergerät ungefähr zur gleichen Zeit das gleiche Eingabeaudiosignal erkannt haben. Das Datenverarbeitungssystem105 kann weiterhin basierend auf entsprechenden Zeitstempeln, die der Erkennung des Eingabeaudiosignals durch das erste Mikrofon und das zweite Mikrofon entsprechen, bestimmen, dass sich das erste und das zweite Computergerät in einem Schwellenabstand befinden. - Indem das Datenverarbeitungssystem
105 eine Übereinstimmung zwischen Eingabeaudiosignalen erkennt, die von verschiedenen Computern erkannt werden, kann es bestimmen, dass sich die verschiedenen Computergeräte relativ nahe beieinander befinden, da ihre jeweiligen Mikrofone in der Lage waren, dasselbe Eingabeaudiosignal zu erkennen. Erkennen einer Übereinstimmung kann Abgleichen akustischer Signaturen, Abgleichen einer Fourier-Transformation der Audiosignale oder Konvertieren des eingegebenen Audiosignals in Text mittels einer Sprachsynthese-Technik und Abgleichen des Textes beinhalten. Das Datenverarbeitungssystem105 kann eine Übereinstimmung bestimmen, wenn die Frequenzen im Wesentlichen übereinstimmen (z. B. 99 % Übereinstimmung, 98 % Übereinstimmung, 95 % Übereinstimmung, 90 % Übereinstimmung, 85 % Übereinstimmung) oder wenn der Text im Wesentlichen übereinstimmt (z. B. 99 % Übereinstimmung, 98 % Übereinstimmung, 95 % Übereinstimmung, 90 % Übereinstimmung oder 85 % Übereinstimmung). - Die Schnittstellenverwaltungskomponente
140 kann eine oder mehrere Näherungserkennungstechniken verwenden, um ein oder mehrere Computergeräte innerhalb des Schwellenabstands eines ersten Computergeräts zu identifizieren, das das Eingabeaudiosignal empfängt. Beispielsweise kann die Schnittstellenverwaltungskomponente140 eine erste Näherungserkennungstechnik verwenden, um ein zweites Computergerät innerhalb des Schwellenabstands von dem ersten Computergerät zu identifizieren. Die Schnittstellenverwaltungskomponente140 kann eine zweite Näherungserkennungstechnik verwenden, um ein drittes Computergerät innerhalb des Schwellenabstands von dem ersten Computergerät zu identifizieren. Die Schnittstellenverwaltungskomponente140 kann eine dritte Näherungserkennungstechnik verwenden, um ein viertes Computergerät innerhalb des Schwellenabstands von dem ersten Computergerät zu identifizieren. Jedes von dem dritten und vierten Computergerät kann eine jeweilige Kandidatenschnittstelle beinhalten. Das Datenverarbeitungssystem105 kann die jeweiligen Kandidatenschnittstellen pollen, um für jede der Kandidatenschnittstellen einen Ressourcenauslastungswert zu bestimmen, und basierend auf einem Vergleich des jeweiligen Ressourcenauslastungswerts eine der Kandidatenschnittstellen auswählen. Der Wert für die Ressourcenauslastung kann z. B. angeben, ob die Audioausgabe über die Schnittstelle übertragen wird (z. B. Audio abspielen). Wenn keine der Kandidatenschnittstellen eine Audioausgabe wiedergibt, kann das Datenverarbeitungssystem105 die für die Audioausgabe konfigurierte Kandidatenschnittstelle auswählen. - Wenn es mehrere verfügbare Schnittstellen gibt, die für die Audioausgabe konfiguriert sind, kann das Datenverarbeitungssystem
105 eine Richtlinie oder Heuristik verwenden, um eine oder mehrere der Schnittstellen für die Audioausgabe auszuwählen. Beispielsweise kann das Datenverarbeitungssystem105 das Computergerät auswählen, das die Audioschnittstelle aufweist, die dem ersten Computer am nächsten ist, um die Wiedergabe von Audioinhalten anzuweisen. Das Datenverarbeitungssystem105 kann die Audioschnittstelle auswählen, die dem Computer entspricht, der von einem Endbenutzer aktiv genutzt wird. Das Datenverarbeitungssystem105 kann die Audioschnittstelle auswählen, die dem Computer entspricht, der zuletzt von dem Endbenutzer aktiv genutzt wurde. Das Datenverarbeitungssystem105 kann die Audioschnittstelle auswählen, die dem Gerät mit der größten verbleibenden Batterie oder dem an eine Stromquelle angeschlossenen Computergerät entspricht. - In einigen Fällen ruft die Schnittstellenverwaltungskomponente
140 aus dem Arbeitsspeicher (z. B. Datenbehälter145 ) Näherungsinformationen ab, die eine Vielzahl von Computergeräten innerhalb des Schwellenabstands des Computergeräts identifizieren. Beispielsweise kann das Datenverarbeitungssystem105 zuvor die Vielzahl von Datenverarbeitungsgeräten identifiziert, und die Kandidatenschnittstellen entsprechend der Vielzahl von Datenverarbeitungsgeräten gepollt, und die Informationen in dem Datenbehälter145 gespeichert haben. Beispielsweise kann es sich bei einem oder mehreren der mehreren Computergeräte150 um stationäre oder feste Computergeräte handeln, die normalerweise nicht bewegt werden (z. B. ein an der Wand befestigtes Fernsehgerät, ein Desktop-Computergerät, ein Heimlautsprecher- oder ein Surround-Sound-Lautsprechersystem). Daher kann das Datenverarbeitungssystem105 mindestens einige Informationen über die Computergeräte von dem Arbeitsspeicher abrufen. Das Datenverarbeitungssystem105 kann dann die Kandidatenschnittstellen pollen, um einen aktuellen oder aktualisierten Ressourcenauslastungswert zu bestimmen. So kann das Datenverarbeitungssystem105 bereits über Abstandsinformationen verfügen oder zuvor bestimmt haben, dass sich ein oder mehrere Datenverarbeitungsgeräte in Reichweite eines ersten Datenverarbeitungsgeräts befinden, das das Eingabeaudiosignal empfängt, und zusätzliche Ressourcenauslastung oder Verzögerung reduzieren, indem der Schritt zum Identifizieren der Geräte und zum Pollen von Kandidatenschnittstellen übersprungen wird. - Das Datenverarbeitungssystem
105 kann eine Hierarchie von Annäherungserkennungstechniken verwenden, die zunehmend ressourcenintensiver sind, um zu bestimmen, ob sich Computergeräte innerhalb eines Schwellenabstands befinden. Beispielsweise kann das Datenverarbeitungssystem105 zunächst eine WIFI- oder internetprotokolladressbasierte Technik verwenden, um zu bestimmen, ob sich die mehreren Computergeräte in demselben Netzwerk befinden. Befinden sich die Computergeräte in getrennten WIFI-Netzwerken mit unterschiedlichen IP-Adressen, kann das Datenverarbeitungssystem105 bestimmen, dass sich die beiden Geräte nicht innerhalb des Schwellenabstands befinden. Wenn das Datenverarbeitungssystem105 jedoch bestimmt, dass sich die beiden Computergeräte in demselben WIFI-Netzwerk befinden, kann das Datenverarbeitungssystem mit einer Bluetooth-Übertragung oder einer Bake bestimmen, ob sich die beiden Computergeräte in Bluetooth-Reichweite zueinander befinden. Wenn das Datenverarbeitungssystem105 bestimmt, dass sich die beiden Geräte in dem Bluetooth-Bereich befinden, kann das Datenverarbeitungssystem105 ein erstes Computergerät anweisen, eine subakustische Schallwelle zu senden, um zu bestimmen, ob sich die Computer innerhalb des Schwellenabstands befinden. So kann das Datenverarbeitungssystem105 durch die Verwendung einer Hierarchie von Näherungserkennungstechniken die Ressourcenauslastung reduzieren und Verzögerungen reduzieren, indem es schnellere oder weniger ressourcenintensive Näherungserkennungstechniken verwendet, um Geräte herauszufiltern, die sich außerhalb des Schwellenabstands befinden, und dann zu granulareren Näherungserkennungstechniken überzugehen, die mehr Ressourcen für Computergeräte verwenden, die die breit angelegten Näherungsprüfungen bestehen. - In einigen Fällen kann das Datenverarbeitungssystem
105 ein zweites Computergerät mit einer zweiten Kandidatenschnittstelle identifizieren, die sich innerhalb des Schwellenabstands des ersten Computergeräts befindet, das das Eingabeaudiosignal empfängt. Das Datenverarbeitungssystem105 kann eine Direktaktions-Anwendungsprogrammierschnittstelle („API“) abfragen, die auf dem zweiten Computergerät ausgeführt wird, um den zweiten Ressourcenauslastungswert zu bestimmen. Beispielsweise kann das zweite Computergerät eine API beinhalten, die die Audioausgabe, die Videoausgabe, die Lautstärke oder andere Informationen im Zusammenhang mit der Präsentation von Inhalten steuert oder überwacht. Die API kann auf die Anfrage reagieren, indem sie einen aktuellen Lautstärkepegel angibt, bei dem Audio wiedergegeben wird; eine Dauer des Audioinhalts; eine Art von Audioinhalt (z. B. Musik, Fernsehen, Podcast, Hörbuch, Werbung, der zweite Verwendungswert gibt einen Lautstärkepegel an, bei dem Audioinhalt wiedergegeben wird. - Die Schnittstellenverwaltungskomponente
140 kann eine oder mehrere Techniken, Richtlinien oder Heuristiken verwenden, um eine Schnittstelle aus der Vielzahl von Kandidatenschnittstellen auszuwählen, das Inhaltselement in eine mit der ausgewählten Schnittstelle kompatible Modalität zu konvertieren und dann das konvertierte Inhaltselement zur Präsentation über die ausgewählte Schnittstelle zu übertragen. Beispielsweise kann das Datenverarbeitungssystem105 eine Schnittstelle aus den Kandidatenschnittstellen basierend auf einem Ressourcenauslastungswert, wie z. B. einem Sensorverwendungswert, auswählen. Der Sensor kann sich auf ein Mikrofon des Computergeräts entsprechend der Kandidatenschnittstelle beziehen. Das Mikrofon kann niedrige Umgebungsgeräusche erkennen, was darauf hinweist, dass der Ton nicht in der Nähe des Computergeräts abgespielt wird und dass der Endbenutzer oder andere Benutzer nicht in der Nähe des Computergeräts sprechen. Das Datenverarbeitungssystem105 kann die Auswahl der Schnittstelle bestimmen, da die Wiedergabe einer Audiodatei von der Schnittstelle nicht redundant oder duplikativ zu anderen Audioinhalten sein darf, da das Mikrofon einen niedrigen Sensorverwendungswert aufweist. - In einem anderen Beispiel kann sich die Sensorverwendung auf einen Lautsprecher des Computergeräts beziehen. Das Datenverarbeitungssystem
105 kann bestimmen, dass der Lautsprecher nicht verwendet wird, wodurch ein niedriger Sensorverwendungswert angegeben wird. Dementsprechend kann das Datenverarbeitungssystem105 den Lautsprecher als die Schnittstelle auswählen, um das Inhaltselement bereitzustellen. - In einem anderen Beispiel kann sich Sensorverwendung auf eine Temperatur des Computergeräts beziehen. Wenn beispielsweise der Prozessor des Computergeräts bei einer Temperatur über einem Schwellenwert läuft, kann das Datenverarbeitungssystem
105 bestimmen, dass das Computergerät eine prozessorintensive Aufgabe ausführt, und kann bestimmen, dass dieses Computergerät oder eine Schnittstelle dieses Computergeräts nicht verwendet wird. Dementsprechend kann das Datenverarbeitungssystem105 eine Schnittstelle eines anderen Computergeräts innerhalb eines Schwellenabstands auswählen, das eine niedrigere Temperatur aufweist. - Die Schnittstellenverwaltungskomponente
140 kann die Schnittstelle für das Inhaltselement basierend auf mindestens einem Verwendungswert auswählen, der angibt, dass die ausgewählte Schnittstelle die effizienteste für das Inhaltselement ist. Beispielsweise verwendet die Schnittstelle zum Wiedergeben des Inhaltselements bei der Smartwatch die geringste Bandbreite, da das Inhaltselement kleiner ist und mit weniger Ressourcen übertragen werden kann. Oder die Schnittstellenverwaltungskomponente140 kann bestimmen, dass die für das Wiedergeben des Inhaltselements ausgewählte Kandidatenschnittstelle gerade geladen wird (z. B. eingesteckt), sodass das Wiedergeben des Inhaltselements durch die Schnittstelle die Batterie des entsprechenden Client-Computergeräts150 nicht entleert. In einem anderen Beispiel kann die Schnittstellenverwaltungskomponente140 eine Kandidatenschnittstelle auswählen, die aktuell weniger Verarbeitungsvorgänge ausführt als eine andere, nicht ausgewählte Schnittstelle beispielsweise eines anderen Client-Computergeräts150 , das derzeit Videoinhalte aus dem Netzwerk165 streamt und daher weniger verfügbar ist, um das Inhaltselement ohne Verzögerung wiederzugeben. - Die Schnittstellenverwaltungskomponente
140 (oder eine andere Komponente des Datenverarbeitungssystems105 ) kann das Inhaltselement für die Zustellung in einer mit der Kandidatenschnittstelle kompatiblen Modalität konvertieren. Wenn die Kandidatenschnittstelle beispielsweise eine Anzeige eines Smartwatch-, Smartphone- oder Tablet-Computergeräts ist, kann die Schnittstellenverwaltungskomponente140 die Größe des Inhaltselements für eine angemessene visuelle Anzeige angesichts der Abmessungen des der Schnittstelle zugeordneten Bildschirms bemessen. Die Schnittstellenverwaltungskomponente140 kann das Inhaltselement auch in ein Paket oder ein anderes protokollbasiertes Format konvertieren, einschließlich eines proprietären oder Industriestandardformats für die Übertragung an das Client-Computergerät150 , das der ausgewählten Schnittstelle zugeordnet ist. Die von der Schnittstellenverwaltungskomponente140 für das Inhaltselement ausgewählte Schnittstelle kann eine Schnittstelle beinhalten, auf die der Endbenutzer von mehreren Client-Computergeräten150 aus zugreifen kann. Beispielsweise kann die Schnittstelle ein soziales Netzwerkkonto sein oder beinhalten, auf das der Endbenutzer über das Client-Computergerät150 , das das Eingabeaudiosignal erzeugt hat (z. B. ein Smartphone), sowie andere Client-Computergeräte, wie z. B. Tablet- oder Desktop-Computer oder andere mobile Computer zugreifen kann. - Die Schnittstellenverwaltungskomponente
140 kann auch mindestens eine Kandidatenschnittstelle für die Aktionsdatenstruktur auswählen. Diese Schnittstelle kann die gleiche Schnittstelle sein, von der das Eingabeaudiosignal erhalten wurde, z. B. ein sprachaktivierter Assistenzdienst, der auf einem Client-Computergerät150 ausgeführt wird. Dies kann die gleiche Schnittstelle oder eine andere Schnittstelle als diejenige sein, die die Schnittstellenverwaltungskomponente140 für das Inhaltselement auswählt. Die Schnittstellenverwaltungskomponente140 (oder andere Komponenten des Datenverarbeitungssystems105 ) kann die Aktionsdatenstruktur demselben Client-Computergerät150 bereitstellen, der das Eingabeaudiosignal für die Wiedergabe als Audioausgabe im Rahmen des Assistentendienstes erzeugt hat. Die Schnittstellenverwaltungskomponente140 kann das Inhaltselement auch an die ausgewählte Schnittstelle für das Inhaltselement übertragen oder anderweitig bereitstellen, und zwar in jeder für das Wiedergeben durch die ausgewählte Schnittstelle geeigneten konvertierten Modalität. - So kann die Schnittstellenverwaltungskomponente
140 die Aktionsdatenstruktur als Audioausgabe für die Wiedergabe durch eine Schnittstelle des Client-Computergeräts150 bereitstellen, die auf das von demselben Client-Computergerät150 empfangene Eingabeaudiosignal reagiert. Die Schnittstellenverwaltungskomponente140 kann auch das Inhaltselement für das Wiedergeben durch eine andere Schnittstelle des gleichen Client-Computergeräts150 oder eines anderen Client-Computergeräts150 bereitstellen, das dem gleichen Endbenutzer zugeordnet ist. Beispielsweise kann die Aktionsdatenstruktur, z. B. „Es wird sonnig und 80 Grad Fahrenheit am Strand am Samstag“, für die Audiowiedergabe durch das Client-Computergerät als Teil einer Assistenten-Programmschnittstelle, die teilweise auf dem Client-Computergerät150 ausgeführt wird, und das Inhaltselement, z. B. ein Text-, Audio- oder Kombinationsinhalt, der angibt, dass „Sonnencreme im Supermarkt in der Nähe des Strandes erhältlich ist“, für die Wiedergabe über eine Schnittstelle desselben oder eines anderen Computergeräts150 bereitgestellt werden, z. B. eine E-Mail oder Textnachricht, die von demselben oder einem anderen, dem Endbenutzer zugeordneten Client-Computergerät150 abgerufen werden kann. - Trennen des Inhaltselements von der Aktionsdatenstruktur und Senden des Inhaltselements z. B. als eine Textnachricht anstelle einer Audiomitteilung kann zu einer geringeren Rechenleistung des Client-Computergeräts
150 führen, das auf das Inhaltselement zugreift, da z. B. Textnachrichtendatenübertragungen weniger rechenintensiv sind als Audiodatenübertragungen. Diese Trennung kann auch Stromverbrauch, Speicherplatz oder die Übertragungsbandbreite reduzieren, die für die Wiedergabe des Inhaltselements verwendet wird. Dies führt zu einer höheren Verarbeitungs-, Leistungs- und Bandbreiteneffizienz des Systems100 und von Geräten, wie z. B. den Client-Computergeräten150 und dem Datenverarbeitungssystem105 . Dies erhöht die Effizienz der Computer, die diese Transaktionen verarbeiten, und erhöht die Geschwindigkeit, mit der die Inhaltselemente wiedergegeben werden können. Das Datenverarbeitungssystem105 kann Tausende, Zehntausende oder mehr Eingabeaudiosignale gleichzeitig verarbeiten, sodass die Einsparungen bei Bandbreite, Leistung und Verarbeitung erheblich sein können, und nicht nur inkrementell oder zufällig. - Die Schnittstellenverwaltungskomponente
140 kann das Inhaltselement an dasselbe Client-Computergerät150 (oder ein anderes Gerät) wie die Aktionsdatenstruktur nach der Zustellung der Aktionsdatenstruktur an das Client-Computergerät150 bereitstellen oder zustellen. Beispielsweise kann das Inhaltselement für das Wiedergeben über die ausgewählte Schnittstelle nach Abschluss der Audioausgabe der Aktionsdatenstruktur bereitgestellt werden. Die Schnittstellenverwaltungskomponente140 kann das Inhaltselement auch gleichzeitig mit der Bereitstellung der Aktionsdatenstruktur für das Client-Computergerät150 an die ausgewählte Schnittstelle bereitstellen. Die Schnittstellenverwaltungskomponente140 kann das Inhaltselement für die Zustellung über die ausgewählte Schnittstelle innerhalb eines vorgegebenen Zeitraums ab Empfang des Eingabeaudiosignals durch die NLP-Komponente110 bereitstellen. Dieser Zeitraum kann z. B. jede Zeit während einer aktiven Länge der Sitzungsunterhaltung sein. Wenn das Eingabeaudiosignal, z. B. „Ich möchte an diesem Wochenende an den Strand gehen“ lautet, kann der vorgegebene Zeitraum vom Empfangen des Eingabeaudiosignals bis zum Ende des Wochenendes, z. B. der aktive Zeitraum der Unterhaltung, beliebig lang sein. Der vorgegebene Zeitraum kann auch eine Zeit sein, die durch das Wiedergeben der Aktionsdatenstruktur als Audioausgabe durch das Client-Computergerät150 , z. B. innerhalb von 5 Minuten, einer Stunde oder einem Tag nach diesem Wiedergeben, ausgelöst wird. - Die Schnittstellenverwaltungskomponente
140 kann dem Client-Computergerät150 die Aktionsdatenstruktur mit einem Hinweis auf das Vorhandensein des Inhaltselements bereitstellen. Beispielsweise kann das Datenverarbeitungssystem105 die Aktionsdatenstruktur bereitstellen, die auf dem Client-Computergerät150 wiedergegeben wird, um die Audioausgabe „Es wird sonnig und 80 Grad Fahrenheit am Strand am Samstag, überprüfen Sie Ihre E-Mail für weitere Informationen“, bereitzustellen. Der Satz „Überprüfen Sie Ihre E-Mail für weitere Informationen“ kann auf das Vorhandensein eines Inhalts, z. B. von Sonnenschutzmitteln, hinweisen, den das Datenverarbeitungssystem105 einer Schnittstelle (z. B. E-Mail) bereitstellt. In diesem Beispiel können gesponserte Inhalte als Inhaltselemente für die E-Mail-Schnittstelle (oder andere) und organische Inhalte wie das Wetter als Aktionsdatenstruktur für die Audioausgabe bereitgestellt werden. - Das Datenverarbeitungssystem
105 kann die Aktionsdatenstruktur auch mit einer Eingabeaufforderung versehen, die den Benutzer auffordert, das Interesse des Benutzers am Erhalten des Inhaltselements zu bestimmen. Beispielsweise kann die Aktionsdatenstruktur angeben: „Es wird sonnig und 80 Grad Fahrenheit am Strand am Samstag, möchten Sie etwas über einige Dienste erfahren, die Ihnen bei Ihrer Reise behilflich sein können?“ Das Datenverarbeitungssystem105 kann ein weiteres Audioeingabesignal von dem Client-Computergerät150 empfangen, als Antwort auf die Aufforderung „Möchten Sie von einigen Diensten zur Unterstützung Ihrer Reise erfahren?“ wie z. B. „Sicher.“ Die NLP-Komponente110 kann diese Antwort, z. B. „Sicher“ analysieren und als Berechtigung für die Audiowiedergabe des Inhaltselements durch das Client-Computergerät150 , interpretieren. In Reaktion darauf kann das Datenverarbeitungssystem105 das Inhaltselement für die Audiowiedergabe durch dasselbe Client-Computergerät150 bereitstellen, von dem die Antwort „Sicher“ stammt. - Das Datenverarbeitungssystem
105 kann die Übertragung des Inhaltselements verzögern, das der Aktionsdatenstruktur zugeordnet ist, um die Verarbeitungsverwendung zu optimieren. Beispielsweise kann das Datenverarbeitungssystem105 die Aktionsdatenstruktur für die Wiedergabe als Audioausgabe durch das Client-Computergerät in Echtzeit bereitstellen, die auf das Empfangen des Eingabeaudiosignals reagiert, z. B. in einer dialogorientierten Weise, und kann die Übertragung von Inhaltselementen bis zu einem Zeitraum verzögern, in dem die Verwendung des Rechenzentrums außerhalb der Spitzenzeiten oder in Nicht-Spitzenzeiten erfolgt, was zu einer effizienteren Verwendung des Rechenzentrums führt, indem die Verwendung der Spitzenbandbreite, die Wärmeleistung oder der Kühlbedarf reduziert wird. Das Datenverarbeitungssystem105 kann auch eine Konvertierung oder eine andere, mit dem Inhaltselement verbundene Aktivität auslösen, wie z. B. die Bestellung eines Autodienstes in Reaktion auf die Aktionsdatenstruktur oder das Inhaltselement, basierend auf Datenzentrum-Verwendungsraten oder Bandbreitenmetriken oder Anfragen des Netzwerks165 oder eines Rechenzentrums, das das Datenverarbeitungssystem105 beinhaltet. - Basierend auf einer Antwort auf ein Inhaltselement oder auf die Aktionsdatenstruktur für eine nachfolgende Aktion, z. B. ein Klick auf das über die ausgewählte Schnittstelle wiedergegebene Inhaltselement, kann das Datenverarbeitungssystem
105 eine Konvertierung identifizieren oder eine Konvertierung oder Aktion auslösen. Prozessoren des Datenverarbeitungssystems105 können die Direktaktions-API135 aufrufen, um Scripts auszuführen, die die Konvertierungsaktion erleichtern, um z. B. ein Auto von einem Fahrgemeinschaftsdienst zu bestellen, um den Endbenutzer zu dem Strand zu bringen oder von dort abzuholen. Die Direktaktions-API135 kann Inhaltsdaten148 (oder Parameter146 oder Richtlinien147 ) von dem Datenbehälter145 sowie Daten empfangen, die mit Zustimmung des Endbenutzers von dem Client-Computergerät150 empfangen werden, um Standort, Zeit, Benutzerkonten, logistische oder andere Informationen zu bestimmen, um ein Auto aus dem Fahrgemeinschaftsdienst zu reservieren. Unter Verwendung der Direktaktions-API135 kann das Datenverarbeitungssystem105 auch mit dem Dienstanbieter-Computergerät160 kommunizieren, um die Umwandlung abzuschließen, indem es in diesem Beispiel die Reservierung für die Abholung der Fahrgemeinschaft vornimmt. -
2 stellt ein Ablaufdiagramm200 zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit. Das Datenverarbeitungssystem105 kann das Eingabeaudiosignal205 empfangen, z. B. „Ok, ich möchte an diesem Wochenende an den Strand gehen.“ In Reaktion generiert das Datenverarbeitungssystem mindestens eine Aktionsdatenstruktur210 und mindestens ein Inhaltselement215 . Die Aktionsdatenstruktur205 kann organische oder nicht gesponserte Inhalte beinhalten, wie z. B. eine Antwort auf Audiowiedergabe mit der Aussage „Es wird sonnig und 80 Grad Fahrenheit am Strand an diesem Wochenende“ oder „Die Flut ist um 15 Uhr.“ Das Datenverarbeitungssystem105 kann die Aktionsdatenstruktur210 dem gleichen Client-Computergerät150 bereitstellen, das das Eingabeaudiosignal205 erzeugt hat, zur Wiedergabe durch eine Kandidatenschnittstelle des Client-Computergeräts150 , z. B. als Ausgabe in Echtzeit oder dialogorientiert als Teil einer digitalen oder dialogorientierten Assistentenplattform. - Das Datenverarbeitungssystem
105 kann die Kandidatenschnittstelle220 als eine ausgewählte Schnittstelle für das Inhaltselement215 auswählen und das Inhaltselement215 der ausgewählten Schnittstelle220 bereitstellen. Das Inhaltselement215 kann auch eine Datenstruktur beinhalten, die vom Datenverarbeitungssystem105 für das Wiedergeben über die ausgewählte Schnittstelle220 in die entsprechende Modalität konvertiert werden kann. Das Inhaltselement215 kann gesponserte Inhalte, wie z. B. ein Angebot, einen Strandkorb für den Tag zu mieten, oder Sonnenschutz, beinhalten. Die ausgewählte Schnittstelle220 kann Teil desselben Client-Computergeräts150 sein oder von einem anderen Gerät ausgeführt werden, auf das der Endbenutzer des Client-Computergeräts150 zugreifen kann. Übertragung der Aktionsdatenstruktur210 und des Inhaltselements215 kann gleichzeitig oder nacheinander erfolgen. Die Aktionsdatenstruktur210 kann ein Kennzeichen beinhalten, dass das Inhaltselement215 separat über eine andere Modalität oder ein anderes Format an die ausgewählte Schnittstelle200 übertragen wird, und weist den Endbenutzer auf das Vorhandensein des Inhaltselements215 hin. - Die Aktionsdatenstruktur
210 und das Inhaltselement215 können separat für die Wiedergabe an den Endbenutzer bereitgestellt werden. Durch Trennen des gesponserten Inhalts (Inhaltselement215 ) von der organischen Reaktion (Aktionsdatenstruktur210 ) müssen Audio- oder andere Benachrichtigungen, die angeben, dass das Inhaltselement215 gesponsert wird, nicht mit der Aktionsdatenstruktur210 versehen werden. Dies kann den Bandbreitenbedarf bei der Übertragung der Aktionsdatenstruktur210 über das Netzwerk165 reduzieren und die Wiedergabe der Aktionsdatenstruktur210 vereinfachen, z. B. ohne Audio-Disclaimer oder Warnmeldungen. - Das Datenverarbeitungssystem
105 kann ein Antwort-Audiosignal225 empfangen. Das Antwort-Audiosignal225 kann ein Audiosignal beinhalten wie: „Großartig, bitte buchen Sie mir dieses Wochenende ein Hotel am Strand.“ Empfangen des Antwort-Audiosignals225 durch das Datenverarbeitungssystem105 kann dazu führen, dass das Datenverarbeitungssystem die Direktaktions-API135 aufruft, um z. B. ein Hotelzimmer am Strand zu buchen. Die Direktaktions-API135 kann auch mit mindestens einem Dienstanbieter-Computergerät160 kommunizieren, um dem Dienstanbieter-Computergerät160 Informationen bereitzustellen, damit das Dienstanbieter-Computergerät160 den Buchungsprozess abschließen oder bestätigen kann. -
3 stellt ein Verfahren300 zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit. Das Verfahren300 kann Datenpakete (ACT305 ) empfangen. Beispielsweise kann die durch das Datenverarbeitungssystem105 ausgeführte NLP-Komponente110 von dem Client-Computergerät105 Datenpakete empfangen, die ein Eingabeaudiosignal (ACT305 ) beinhalten. Die Datenpakete können über das Netzwerk165 als paket- oder andere protokollbasierte Datenübertragungen empfangen werden (ACT305 ). Das Verfahren300 kann aus dem Eingabeaudiosignal Anfragen oder Auslöserschlüsselwörter identifizieren, die den Anfragen entsprechen (ACT310 ). Beispielsweise kann die NLP-Komponente110 das Eingabeaudiosignal analysieren, um Anfragen zu identifizieren, die sich auf den Inhalt des Eingabeaudiosignals beziehen, oder um Auslöserschlüsselwörter zu identifizieren, die beispielsweise Aktionen angeben können, die den Anfragen zugeordnet sind. - Das Verfahren
300 kann mindestens eine Aktionsdatenstruktur (ACT315 ) generieren. Beispielsweise kann die Direktaktions-API135 eine Aktionsdatenstruktur (ACT315 ) basierend auf den Anfragen oder Auslöserschlüsselwörtern generieren. Die Aktionsdatenstrukturen können organischen oder nicht gesponserten Inhalt in Zusammenhang mit dem Eingabeaudiosignal beinhalten. Das Verfahren300 kann mindestens ein Inhaltselement (ACT320 ) auswählen. Beispielsweise kann die Inhaltsauswahlkomponente125 die Anfrage(n) oder das/die Auslöserschlüsselwort(e) empfangen und basierend auf diesen Informationen ein oder mehrere Inhaltselemente auswählen. Die Inhaltselemente können gesponserte Elemente beinhalten, deren Inhalt sich auf den Gegenstand der Anfrage oder das Auslöserschlüsselwort bezieht. Die Inhaltselemente können durch die Inhaltsauswahlelementkomponente125 über einen Echtzeit-Inhaltsauswahlprozess ausgewählt werden. - Das Verfahren
300 kann eine Vielzahl von Computergeräten innerhalb eines Schwellenabstands des Computergeräts identifizieren und eine Vielzahl von Schnittstellen pollen, um mindestens eine Kandidatenschnittstelle (ACT325 ) zu bestimmen. Das Verfahren300 kann eine oder mehrere Annäherungserkennungstechniken verwenden, um ein oder mehrere Computergeräte innerhalb des Schwellenabstands zu identifizieren und dann die dem einen oder den mehreren Computergeräten zugeordneten Kandidatenschnittstellen zu pollen. Die Kandidatenschnittstelle kann Kandidatenschnittstellen zum Wiedergeben des ausgewählten Inhaltselements (oder Aktionsdatenstruktur) beinhalten. Beispielsweise kann die Schnittstellenverwaltungskomponente140 Schnittstellen abfragen, um Verwendungswerte zu erhalten, z. B. Parameterinformationen oder andere Merkmale zu den Schnittstellen (ACT330 ). Basierend auf den Verwendungswerten kann die Schnittstellenverwaltungskomponente140 (ACT335 ) mindestens eine Kandidatenschnittstelle als eine ausgewählte Schnittstelle für die Wiedergabe des Inhaltselements (oder der Aktionsdatenstruktur) auswählen. Das Verfahren300 kann Konvertieren des Inhaltselements in eine Modalität zum Wiedergeben über die ausgewählte Schnittstelle (ACT340 ) beinhalten. Beispielsweise kann das Datenverarbeitungssystem105 oder eine Komponente davon, wie die Schnittstellenverwaltungskomponente140 , das Inhaltselement für die Wiedergabe in einem Inhaltselement-Slot eines Online-Dokuments (z. B. für die Anzeige als E-Mail (z. B. über eine ausgewählte E-Mail-Schnittstelle) oder als Textnachricht für die Anzeige in einer Chat-App) konvertieren. In einigen Fällen kann das Verfahren300 Auswählen des Inhaltselements in der Modalität zum Wiedergeben über die ausgewählte Schnittstelle (ACT340 ) beinhalten. - Das Verfahren
300 kann die Aktionsdatenstruktur dem Client-Computergerät150 zum Wiedergeben bereitstellen („ACT345 “) und das Inhaltselement an die für das Wiedergeben des Inhaltselements ausgewählte Kandidatenschnittstelle (ACT350 ) übertragen. Beispielsweise kann die Schnittstellenverwaltungskomponente140 über die Schnittstelle115 die Aktionsdatenstruktur dem Client-Computergerät150 zur Wiedergabe als Audioausgabe in Reaktion auf das empfangene Eingabeaudiosignal (ACT345 ) bereitstellen. Das Datenverarbeitungssystem kann das Inhaltselement auch an die ausgewählte Schnittstelle auf dem gleichen oder einem anderen Client-Computergerät150 zum Wiedergeben in der konvertierten Modalität (ACT350 ) übertragen. -
4 stellt einen veranschaulichenden Vorgang eines Systems zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit. Das System400 kann eine oder mehrere in dem System100 ,200 oder600 abgebildete Komponenten, z. B. ein Datenverarbeitungssystem105 , Netzwerk165 und ein oder mehrere Computergeräte, beinhalten. - Wie in
4 veranschaulicht, kann System400 ein erstes Computergerät404 beinhalten, das einen Abstand von 410 von einem zweiten Computergerät406 aufweist. Das zweite Computergerät406 kann mit dem ersten Ausgabegerät408 kommunikativ gekoppelt werden, um Audio, Video, Bilder oder andere Inhalte über das erste Ausgabegerät408 auszugeben. Das erste Computergerät405 , das zweite Computergerät406 und das erste Ausgabegerät408 können in einem ersten Raum402 (z. B. einem Raum eines Hauses, einer Wohnung, einer Unterkunft, einem Büro, einem Hotelzimmer oder einem anderen physischen Raum) positioniert oder platziert werden. Das erste Computergerät404 und das zweite Computergerät406 können mit einem Datenverarbeitungssystem105 über Netzwerk165 interagieren oder kommunizieren. - System
400 kann ein oder mehrere Computergeräte beinhalten, die eine oder mehrere Benutzeroberflächen aufweisen. Eine erste Benutzeroberfläche kann als invasiv angesehen werden, z. B. ein Benutzeroberflächenelement, das erscheint, ohne dass ein Benutzer das Benutzeroberflächenelement anfordert. Diese Elemente der Benutzeroberfläche können Inhaltselemente oder Benachrichtigungen beinhalten und können über eine mobile Anwendung oder Webseite bereitgestellt werden. Diese Benutzeroberflächenelemente können ignoriert oder verworfen werden, da sie visuell invasive Benutzeroberflächenelemente sein können. Einige Computergeräte können in erster Linie Audio- oder Nur-Audio-Geräte sein, wie z. B. ein sprachbasierter digitaler Assistent. Bei diesen Arten von Computergeräten kann das Benutzeroberflächenelement die Wiedergabe von Audio beinhalten, die den Inhalt unterbrechen kann, den das Gerät vor der Benachrichtigung oder dem Inhaltselement ausgegeben hat. Daher können die Systeme und Verfahren der vorliegenden Offenbarung diese Benachrichtigungen zu bestimmten Zeiten oder bestimmten Schnittstellen oder bestimmten Computergeräten bereitstellen, z. B. ohne die Stromausgabe zu unterbrechen oder über den Audiokanal des aktuellen Geräts oder den Audiokanal eines nahegelegenen Geräts abzuspielen. - Das Datenverarbeitungssystem
105 kann bestimmen, wann und wo Inhaltselemente oder Benachrichtigungen zugestellt werden sollen. Das Datenverarbeitungssystem105 kann einen Mechanismus bereitstellen, um zu bestimmen, wann ein Benutzer mit einer akustischen Benachrichtigung auf der Grundlage des Benutzereingriffs mit nahegelegenen Geräten und des Medienwiedergabestatus dieser nahegelegenen Geräte kontaktiert werden soll. Beispielsweise kann das Datenverarbeitungssystem105 bestimmen, ob der Benutzer bereits mit einem nahegelegenen Computergerät (z. B. einem zweiten Computergerät406 , das ein Video auf einem ersten Ausgabegerät408 abspielt, z. B. einem Monitor, einem Anzeigegerät, einem Fernseher oder einem Lautsprecher) verbunden ist, und entscheidet sich dafür, den Benutzer nicht durch eine audiobasierte Werbung zu unterbrechen. - Das Datenverarbeitungssystem
105 kann bestimmen, dass entweder das Inhaltselement oder die Benachrichtigung überhaupt nicht angezeigt wird, oder dass die Benachrichtigung oder das Inhaltselement an ein anderes Medium oder Gerät gesendet wird (z. B. Senden des Inhaltselements oder der Benachrichtigung als Push-Benachrichtigung an ein erstes Computergerät404 ), oder dass das Inhaltselement oder die Benachrichtigung für eine spätere Zustellung verschoben wird. - Beispielsweise kann das System
400 ein erstes Computergerät404 beinhalten. Das erste Computergerät404 kann eine oder mehrere Komponenten oder Funktionalitäten von Computergerät150 beinhalten. Das erste Computergerät404 kann ein Eingabeaudiosignal empfangen, das eine durch den Benutzer bereitgestellte Spracheingabe oder einen Audiobefehl umfasst. Das erste Computergerät404 kann mit dem Audiobefehl eingreifen und spielt dann entweder ein Inhaltselement oder eine Benachrichtigung basierend auf der Bestimmung des Datenverarbeitungssystems105 ab oder hält sie zurück. Das Datenverarbeitungssystem105 kann bestimmen, dass das erste Computergerät105 das Inhaltselement oder die Benachrichtigung abspielen oder präsentieren soll, wenn der Benutzer anwesend ist und das erste Computergerät404 keine andere Aktivität unterbricht. Das Datenverarbeitungssystem105 kann den anwesenden Benutzer basierend auf einer Interaktion oder einem Einsatz mit dem ersten Computergerät404 bestimmen. - Das Datenverarbeitungssystem
105 kann ferner bestimmen, ob das Inhaltselement oder die Benachrichtigung eine andere Aktivität unterbrechen würde. Beispielsweise kann das Datenverarbeitungssystem105 den Audiozustand von in der Nähe befindlichen Geräten durch eine lokale API bestimmen. Das Datenverarbeitungssystem105 kann die API verwenden, um das zweite Computergerät406 abzufragen, um zu bestimmen, ob das zweite Computergerät406 gerade Audioinhalte über das erste Ausgabegerät408 wiedergibt und wie hoch der Lautstärkepegel ist. Das Datenverarbeitungssystem105 kann die Metadaten über den Inhalt, der gerade von dem zweiten Datenverarbeitungsgerät406 abgespielt wird, überprüfen oder verarbeiten, um zu bestimmen, ob der Inhalt Audio beinhaltet oder nicht (z. B. Wiedergabe einer Bild-Diashow ohne Audio). Wenn das zweite Computergerät406 kein Audio abspielt, kann das Datenverarbeitungssystem105 bestimmen, dass Bereitstellen eines Audioinhaltselements für die Präsentation über das erste Computergerät404 den Inhalt des zweiten Computergeräts406 nicht unterbrechen darf. - Um dies zu tun, kann das Datenverarbeitungssystem
105 Computergeräte innerhalb eines Schwellenabstands von dem ersten Computergerät404 erkennen. Das Datenverarbeitungssystem105 (z. B. eine Schnittstellenverwaltungskomponente) kann eine oder mehrere Näherungserkennungstechniken verwenden, um einen Abstand von410 zwischen dem ersten Computergerät404 und dem zweiten Computergerät406 zu bestimmen, und zu bestimmen, ob der Abstand410 innerhalb eines Schwellenabstands liegt. Beispielsweise kann das Datenverarbeitungssystem105 das erste Computergerät404 anweisen, eine subakustische Schallwelle zu übertragen. Indem ein Token über einen subakustischen Ton von den Lautsprechern des ersten Computergeräts404 an das Mikrofon eines anderen Geräts (z. B. Mikrofon des zweiten Computergeräts406 ) gesendet, und dann der Wert dieses Tokens mit einem Serveraustausch verglichen wird, kann das Datenverarbeitungssystem105 bestimmen, ob sich das erste Computergerät404 und das zweite Computergerät406 in einem einzigen Raum (z. B. einem ersten Raum402 ) befinden. Das Datenverarbeitungssystem105 kann den Abstand410 zwischen zwei Geräten404 und406 , die Uhren synchronisieren können, durch Zählen der Millisekunden, die das Token benötigt, um von dem Lautsprecher des ersten Computergeräts404 zu dem Mikrofon des zweiten Computergeräts406 zu gelangen, weiter annähern. - In einigen Fällen kann das Datenverarbeitungssystem
105 feststellen, dass Audio oder Video auf einem nahegelegenen Gerät (z. B. innerhalb eines Schwellenabstands wie Abstand410 ) des ersten Computergeräts404 abgespielt wird, und bestimmen, die Bereitstellung eines Audioinhaltselements oder einer Benachrichtigung über das erste Computergerät404 zu blockieren. In einigen Fällen kann das Datenverarbeitungssystem105 basierend auf einer Außerkraftsetzungskonfiguration des ersten Computergeräts404 eine Außerkraftsetzung des Blocks bestimmen (z. B. zur Bereitstellung von Si cherhei tswarnungen). -
5 stellt einen veranschaulichenden Vorgang eines Systems zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung bereit. Das System500 kann eine oder mehrere in dem System100 ,200 oder600 abgebildete Komponenten beinhalten, z. B. ein Datenverarbeitungssystem105 , Netzwerk165 und ein oder mehrere Computergeräte. System500 kann ein erstes Computergerät404 , zweites Computergerät406 und erstes Ausgabegerät408 beinhalten. System500 kann ein drittes Computergerät504 beinhalten, das eine oder mehrere Komponenten oder Funktionalitäten von Computergerät150 beinhalten kann. System500 kann ein zweites Ausgabegerät506 beinhalten, das eine oder mehrere Komponenten oder Funktionalitäten von dem ersten Ausgabegerät408 beinhalten kann. - Wie in
5 veranschaulicht, kann System500 ein erstes Computergerät404 beinhalten, das einen Abstand410 weg von einem zweiten Computergerät406 aufweist. Das zweite Computergerät406 kann mit dem ersten Ausgabegerät408 kommunikativ gekoppelt werden, um Audio, Video, Bilder oder andere Inhalte über das erste Ausgabegerät408 auszugeben. Das erste Computergerät405 , das zweite Computergerät406 und das erste Ausgabegerät408 können in einem ersten Raum402 (z. B. einem Raum eines Hauses, einer Wohnung, einer Unterkunft, einem Büro, einem Hotelzimmer oder einem anderen physischen Raum) positioniert oder platziert werden. Das erste Computergerät404 und das zweite Computergerät406 können mit einem Datenverarbeitungssystem105 über Netzwerk165 interagieren oder kommunizieren. - System
500 kann einen zweiten Raum502 beinhalten, der an den ersten Raum402 angrenzend positioniert ist. Der zweite Raum502 kann mindestens teilweise von dem ersten Raum402 durch eine Wand512 getrennt sein. Die Wand512 kann eine Öffnung514 oder Türöffnung beinhalten. In dem zweiten Raum502 kann das System500 ein viertes Computergerät510 und ein drittes Computergerät504 beinhalten, die kommunikativ mit einem zweiten Ausgabegerät506 gekoppelt sind. Das dritte Computergerät504 kann von dem ersten Computergerät404 durch einen Abstand508 getrennt sein. - Das Datenverarbeitungssystem
105 kann Inhalte oder Benachrichtigungen auf einem oder mehreren Computergeräten in Umgebungen bereitstellen, in denen ein oder mehrere Geräte einen relativ hohen Wert für die Ressourcenauslastung aufweisen (z. B. Audio oder Video abspielen), ohne die Ressource zu unterbrechen. Beispielsweise kann das Datenverarbeitungssystem105 ein Inhaltselement auswählen und bestimmen, die Bereitstellung des Inhaltselements auf dem ersten Ausgabegerät408 über das zweite Computergerät406 zu blockieren, da das zweite Computergerät406 ein Video mit Audio abspielt. Stattdessen kann das Datenverarbeitungssystem105 bestimmen, dass das Inhaltselement oder die Benachrichtigung über eine Push-Benachrichtigung an ein mobiles Computergerät (z. B. ein erstes Computergerät404 ) gesendet wird, das sich innerhalb des Schwellenabstands von dem zweiten Computergerät406 befindet. - Das Datenverarbeitungssystem
105 kann eine oder mehrere Annäherungserkennungstechniken (z. B. subakustische Schallwellen, Bluetooth oder Erkennung desselben audiobasierten Eingabesignals auf separaten Geräten) verwenden, um nahegelegene Computergeräte innerhalb eines Schwellenabstands zu identifizieren. Bluetooth kann sich auf einen drahtlosen Übertragungsstandard mit kurzer Reichweite für die Verbindung von Computergeräten, wie z. B. Handys, Computern oder anderen elektronischen Geräten, beziehen. Die drahtlose Kurzstreckenübertragung kann Funkwellen von 2,4 bis 2,485 GHz verwenden. Die Reichweite kann etwa 0,5 Meter, 1 Meter, 10 Meter, 100 Meter, 150 Meter, 240 Meter oder mehr betragen. Beispielsweise kann Erkennen desselben Eingabeaudiosignals (oder Audiobefehls) durch zwei getrennte Geräte (z. B. ein erstes Computergerät404 , und ein zweites Computergerät406 ) ein Proxy-Signal sein, dass sich die Geräte in einem Schwellenabstand befinden. - Das Datenverarbeitungssystem
105 kann ein Inhaltselement oder eine Benachrichtigung identifizieren, die an ein Computergerät zu übertragen sind. Das Datenverarbeitungssystem105 kann in Reaktion auf Identifizieren des Inhaltselements oder der Benachrichtigung bestimmen, ob sich ein oder mehrere Datenverarbeitungsgeräte innerhalb des Schwellenabstands befinden. In einigen Fällen können Näherungsinformationen bereits in Datenverarbeitungssystem105 gespeichert werden, oder es können breite Näherungsinformationen verwendet werden, um zu erkennen, dass die beiden Geräte nicht nahe genug sind, um eine granulärere Nähe zum Gerät zu testen (z. B. subakustische Töne). Beispielsweise kann das Datenverarbeitungssystem105 eine Hierarchie von Annäherungserkennungstechniken verwenden, die zunehmend ressourcenintensiver sind, um zu bestimmen, ob sich Computergeräte innerhalb eines Schwellenabstands befinden. - In einigen Fällen kann das Datenverarbeitungssystem
105 mehrere Computergeräte identifizieren, die mit einem Konto verknüpft sind. Das Datenverarbeitungssystem105 kann einen Satz von in der Nähe befindlichen Geräten innerhalb eines Schwellenabstands identifizieren. Wie in500 veranschaulicht, kann das Datenverarbeitungssystem105 eine oder mehrere Näherungserkennungstechniken verwenden, um zu bestimmen, dass der Abstand508 zwischen dem ersten Computergerät404 und dem dritten Computergerät504 größer als der Schwellenabstand ist. Das Datenverarbeitungssystem105 kann bestimmen, ob ein Benutzer mit dem dritten Computergerät504 interagiert, um ein Video auf dem zweiten Ausgabegerät506 abzuspielen. Das Datenverarbeitungssystem105 kann bestimmen, keine Audioinhalte oder eine Benachrichtigung zur Präsentation über das erste Computergerät404 bereitzustellen, da das dritte Computergerät504 , das dem Benutzer zugeordnet ist oder mit dem dieser interagiert, größer als der Schwellenabstand zu dem ersten Computergerät404 ist. - In einigen Fällen kann das Datenverarbeitungssystem
105 eine oder mehrere Anwendungen als Kandidaten für die Präsentation von Inhalten oder eine Benachrichtigung identifizieren. Beispielsweise kann das Datenverarbeitungssystem105 bestimmen, ob eine mit dem ersten Datenverarbeitungsgerät404 integrierte Anwendung zum Bereitstellen des Inhalts oder der Benachrichtigung verwendet werden soll. Das Datenverarbeitungssystem105 kann mehrere mit dem ersten Datenverarbeitungsgerät404 integrierte Anwendungen identifizieren, die den Inhalt oder die Benachrichtigung bereitstellen, die Anwendungen de-duplizieren und eine Kandidatenschnittstelle (z. B. Anwendung) basierend auf Ressourcenauslastungswerten oder eine vorprogrammierte Hierarchie basierend auf einer Benachrichtigungskonfiguration auswählen (z. B. kann die Audioschnittstelle höher als die Bildschnittstelle eingestuft werden, die höher als reine Textschnittstellen eingestuft werden kann). - Somit kann das Datenverarbeitungssystem Benachrichtigungen an das ausgewählte Gerät senden. Diese Benachrichtigung kann eine Nutzlast beinhalten. Beispielsweise kann das erste Computergerät eine Benachrichtigung an ein viertes Computergerät
510 (z. B. ein mobiles Computergerät150 ) übertragen, um neue Inhalte zu fördern, die an das dritte Computergerät504 zur Präsentation über das zweite Ausgabegerät506 gestreamt werden können. Der Benutzer kann dem vierten Computergerät510 befehlen, anweisen oder angeben, den neuen Inhalt auf dem zweiten Ausgabegerät506 zu streamen. -
6 zeigt ein Blockdiagramm eines exemplarischen Computersystems600 . Das Computersystem oder Computergerät600 kann das System100 oder dessen Komponenten, wie z. B. das Datenverarbeitungssystem105 , beinhalten oder verwendet werden, um diese zu implementieren. Das Computersystem600 beinhaltet einen Bus605 oder eine andere Kommunikationskomponente zur Kommunikation von Informationen und einen Prozessor610 oder eine Verarbeitungsschaltung, die mit dem Bus605 zum Verarbeiten von Informationen gekoppelt ist. Das Computersystem600 kann außerdem einen oder mehrere Prozessoren610 oder Verarbeitungsschaltungen beinhalten, die mit dem Bus zum Verarbeiten von Informationen gekoppelt sind. Das Computersystem600 beinhaltet außerdem Hauptspeicher615 , wie z. B. Direktzugriffsspeicher (RAM) oder ein anderes dynamisches Speichergerät, das mit dem Bus605 gekoppelt ist, um Daten zu speichern, sowie Befehle, die von dem Prozessor610 ausgeführt werden sollen. Der Hauptspeicher615 kann der Datenbehälter145 sein bzw. diesen beinhalten. Der Hauptspeicher615 kann beim Ausführen von Befehlen durch den Prozessor610 ferner zum Speichern von Positionsdaten, temporären Variablen oder anderen mittelfristigen Informationen verwendet werden. Das Computersystem600 kann außerdem einen Nur-LeseSpeicher (ROM)620 oder ein anderes statisches Speichergerät beinhalten, das mit dem Bus605 gekoppelt ist, um statische Informationen und Befehle für den Prozessor610 zu speichern. Ein Speichergerät625 , wie z. B. ein Solid-State-Gerät, eine magnetische oder optische Platte, kann mit dem Bus605 gekoppelt werden, um Informationen und Anweisungen dauerhaft zu speichern. Das Speichergerät625 kann den Datenbehälter145 beinhalten bzw. Teil desselben sein. - Das Computersystem
600 kann über den Bus605 mit einer Anzeige635 , wie z. B. einer Flüssigkristallanzeige (LCD) oder aktiven Matrixanzeige, gekoppelt sein, sodass einem Benutzer Informationen angezeigt werden können. Mit dem Bus605 kann ein Eingabegerät630 , wie z. B. eine Tastatur mit alphanumerischen und anderen Tasten, gekoppelt sein, damit sich ausgewählte Informationen und Befehle an den Prozessor610 übermitteln lassen. Das Eingabegerät630 kann eine Touchscreen-Anzeige635 beinhalten. Das Eingabegerät630 kann außerdem eine Cursorsteuerung, wie z. B. eine Maus, einen Trackball oder Pfeiltasten beinhalten, um Richtungsdaten und ausgewählte Befehle an den Prozessor610 übertragen und die Bewegung des Cursors auf der Anzeige635 steuern lassen. Die Anzeige635 kann beispielsweise Bestandteil des Datenverarbeitungssystems105 , des Client-Computergeräts150 oder anderer Komponenten von1 sein. - Die hierin beschriebenen Prozesse, Systeme und Verfahren können von dem Computersystem
600 in Reaktion darauf implementiert werden, dass der Prozessor610 eine in dem Hauptspeicher615 enthaltene Anordnung von Anweisungen ausführt. Diese Anweisungen können von einem computerlesbaren Medium, wie z. B. Speichergerät625 , in den Hauptspeicher615 gelesen werden. Das Ausführen des in dem Hauptspeicher615 enthaltenen Anweisungssatzes veranlasst das Computersystem600 dazu, die hierin beschriebenen und veranschaulichten Prozesse auszuführen. Außerdem können in einer Multi-Prozessor-Anordnung ein oder mehrere Prozessoren dazu genutzt werden, die im Hauptspeicher615 enthaltenen Anweisungen auszuführen. Fest verdrahtete Schaltungen können anstelle von oder in Kombination mit Software-Anweisungen zusammen mit den hierin beschriebenen Systemen und Verfahren verwendet werden. Die hierin beschriebenen Systeme und Verfahren sind nicht auf eine spezifische Kombination aus Hardwareschaltungen und Software beschränkt. - Obwohl ein exemplarisches Computersystem in
6 beschrieben worden ist, kann der Gegenstand, einschließlich der in dieser Spezifikation beschriebenen Vorgänge, in anderen Arten von digitalen elektronischen Schaltungen oder in Computersoftware, Firmware oder Hardware implementiert werden, einschließlich der in dieser Spezifikation offenbarten Strukturen und ihrer strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer derselben. - Für Situationen, in denen die hierin erläuterten Systeme persönliche Informationen über Benutzer sammeln, oder persönliche Informationen nutzen können, kann für die Benutzer eine Möglichkeit bereitgestellt werden, einzustellen, ob Programme oder Funktionen, die persönliche Informationen sammeln können (z. B. Informationen über das soziale Netzwerk eines Benutzers, soziale Handlungen oder Aktivitäten, eine Benutzerpräferenz oder den Standort eines Benutzers), oder um einzustellen, ob und/oder wie Inhalt von einem Inhaltsserver oder einem anderen Datenverarbeitungssystem empfangen wird, der für den Benutzer ggf. relevanter ist. Zusätzlich können gewisse Daten auf eine oder mehrere Weisen anonymisiert werden, bevor sie gespeichert oder verwendet werden, sodass personenbezogene Daten beim Erstellen von Parametern entfernt werden. Eine Benutzeridentität kann beispielsweise anonymisiert werden, sodass keine personenbezogenen Informationen für den Benutzer bestimmt werden können, oder ein geografischer Standort des Benutzers verallgemeinert werden kann, wobei Standortinformationen (wie beispielsweise Stadt, Postleitzahl oder Bundesland) entnommen werden, sodass ein bestimmter Standort eines Benutzers nicht festgestellt werden kann. Somit kann der Benutzer die Kontrolle darüber haben, wie Informationen über ihn oder sie gesammelt und von einem Inhaltsserver verwendet werden.
- Der Gegenstand und die in dieser Spezifikation beschriebenen Vorgänge können in digitalen elektronischen Schaltkreisanordnungen oder in Computersoftware, Firmware oder Hardware, darunter auch in den in dieser Spezifikation offenbarten Strukturen und deren strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer derselben, implementiert werden. Der in dieser Beschreibung beschriebene Gegenstand kann als ein oder mehrere Computerprogramme implementiert werden, z. B. als eine oder mehrere Schaltungen von Computerprogrammanweisungen, die auf einem oder mehreren Computerspeichermedien codiert sind, um von Datenverarbeitungsvorrichtungen ausgeführt zu werden bzw. den Betrieb derselben zu steuern. Alternativ oder ergänzend dazu können die Programmanweisungen in einem künstlich erzeugten sich ausbreitenden Signal, wie beispielsweise einem maschinell erzeugten elektrischen, optischen oder elektromagnetischen Signal, codiert sein, das erzeugt wird, um Informationen zur Übertragung an eine geeignete Empfängervorrichtung zu codieren, damit diese von einer Datenverarbeitungsvorrichtung ausgeführt werden. Ein Computerspeichermedium kann ein computerlesbares Speichergerät, ein computerlesbares Speichersubstrat, ein frei adressierbares oder serielles Zugriffsspeicher-Array oder -Gerät oder eine Kombination von einem oder mehreren derselben sein bzw. darin enthalten sein. Obwohl ein Computerspeichermedium kein sich verbreitendes Signal ist, kann ein Computerspeichermedium jedoch eine Quelle oder ein Ziel von Computerprogrammanweisungen sein, die in einem künstlich erzeugten sich ausbreitenden Signal codiert sind. Das Computerspeichermedium kann auch eine oder mehrere separate Komponenten oder Medien sein (z. B. mehrere CDs, Datenträger oder andere Speichervorrichtungen bzw. darin beinhaltet sein). Die in dieser Spezifikation beschriebenen Vorgänge können als Vorgänge implementiert werden, die durch eine Datenverarbeitungsvorrichtung an Daten ausgeführt werden, die auf einem oder mehreren computerlesbaren Speichergerät(en) gespeichert sind oder von anderen Quellen empfangen werden.
- Die Begriffe „Datenverarbeitungssystem“, „Computergerät“, „Komponente“ oder „Datenverarbeitungsvorrichtung“ umfassen verschiedene Geräte, Vorrichtungen und Maschinen zur Verarbeitung von Daten, einschließlich beispielsweise eines programmierbaren Prozessors, eines Computers, eines oder mehrerer Systeme auf einem Chip oder mehrerer davon oder Kombinationen der vorstehenden. Die Vorrichtung kann eine Spezial-Logikschaltung, wie z. B. eine FPGA (feldprogrammierbare Universalschaltung) oder eine ASIC (anwendungsspezifische integrierte Schaltung), beinhalten. Das Gerät kann zusätzlich zur Hardware auch Code beinhalten, der eine Ausführungsumgebung für das entsprechende Computerprogramm erzeugt, wie z. B. Code, der Prozessorfirmware, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem, eine plattformübergreifende Laufzeitumgebung, einen virtuellen Computer oder eine Kombination von einem oder mehreren derselben darstellt. Das Gerät und die Ausführungsumgebung können verschiedene Computermodell-Infrastrukturen, wie z. B. Webdienste, sowie verteilte und räumlich verteilte Rechen-Infrastrukturen realisieren. Die Schnittstellenverwaltungskomponente
140 , die Direktaktions-API135 , die Inhaltsauswahlkomponente125 , die Vorhersagekomponente120 oder die NLP-Komponente110 und andere Komponenten des Datenverarbeitungssystems105 können beispielsweise eine oder mehrere Datenverarbeitungsvorrichtungen, Systeme, Computergeräte oder Prozessoren beinhalten oder gemeinsam nutzen. - Ein Computerprogramm (auch bezeichnet als Programm, Software, Softwareanwendung, App, Script oder Code) kann in einer beliebigen Form von Programmiersprache, darunter auch in kompilierten Sprachen oder interpretierten Sprachen, deklarativen oder prozeduralen Sprachen, geschrieben sein, und in beliebiger Form eingesetzt werden, darunter auch als eigenständiges Programm oder als Modul, Komponente, Unterprogramm, Objekt oder eine andere Einheit, die zur Verwendung in einer Computerumgebung geeignet ist. Ein Computerprogramm kann einer Datei in einem Dateisystem entsprechen. Ein Computerprogramm kann in einem Teil einer Datei gespeichert sein, die andere Programme oder Daten enthält (wie z. B. ein oder mehrere Scripts, die in einem Dokument in Auszeichnungssprache gespeichert sind), in einer einzelnen dem betreffenden Programm gewidmeten Datei oder in mehreren koordinierten Dateien (wie beispielsweise Dateien, die ein oder mehrere Module, Teil-Programme oder Code-Abschnitte enthalten). Ein Computerprogramm kann auf einem Computer oder auf mehreren Computern zum Ausführen bereitgestellt werden, die sich an einem Standort oder an mehreren Standorten verteilt befinden und über ein Kommunikationsnetzwerk miteinander verbunden sind.
- Die in dieser Spezifikation beschriebenen Prozesse und logischen Abläufe können von einem oder mehreren programmierbaren Prozessoren durchgeführt werden, die ein oder mehrere Computerprogramme ausführen (z. B. Komponenten des Datenverarbeitungssystems
105 ), um durch Verarbeiten von Eingabedaten und Erzeugen von Ausgaben Vorgänge durchzuführen. Die Prozesse und Logikabläufe können zudem durch eine logische Sonderzweckschaltung, wie z. B. einen feldprogrammierbaren Universalschaltkreis (FPGA) oder eine anwendungsspezifische integrierte Schaltung (ASIC) ausgeführt und Vorrichtungen in Form derselben implementiert werden. Zu den zum Speichern von Computerprogrammanweisungen und Daten geeigneten Medien gehören sämtliche Arten von Festspeichern, Medien und Speichergeräten, einschließlich Halbleiterspeicherelementen, darunter auch EPROM, EEPROM und Flash-Speichergeräte; magnetische Festplatten, wie z. B. interne Festplatten oder Wechselplatten; magneto-optische Festplatten, und CD-ROM- und DVD-ROM-Laufwerke. Der Prozessor und der Speicher können durch eine Spezial-Logikschaltung ergänzt oder in dieselbe integriert werden. - Der hierin beschriebene Gegenstand kann in einem Computersystem implementiert sein, das eine Backend-Komponente, wie z. B. einen Datenserver, oder eine Middleware-Komponente, wie z. B. einen Anwendungsserver, oder eine Frontend-Komponente, wie z. B. einen Client-Computer beinhaltet, der eine grafische Benutzeroberfläche oder einen Webbrowser aufweist, durch den ein Benutzer mit einer in dieser Spezifikation beschriebenen Implementierung des Gegenstandes interagieren kann, oder eine Kombination aus einer oder mehreren jener Backend-, Middleware- oder Frontend-Komponenten. Die Komponenten des Systems können durch eine beliebige Form oder ein beliebiges Medium digitaler Datenkommunikation, wie z. B. ein Kommunikationsnetzwerk, miteinander verbunden sein. Beispiele für Kommunikationsnetzwerke beinhalten ein lokales Netzwerk („LAN“) und ein Großraumnetzwerk („WAN“), ein Inter-Netzwerk (z. B. das Internet) und Peer-to-Peer-Netzwerke (z. B. ad hoc Peer-to-Peer-Netzwerke).
- Das Computersystem, wie z. B. System
100 oder System600 kann Clients und Server beinhalten. Ein Client und ein Server befinden sich im Allgemeinen entfernt voneinander und interagieren typischerweise über ein Kommunikationsnetzwerk (z. B. das Netzwerk165 ). Die Beziehung zwischen Client und Server entsteht basierend auf Computerprogrammen, die auf den jeweiligen Computern ausgeführt werden und die eine Client-Server-Beziehung zueinander aufweisen. In einigen Implementierungen überträgt ein Server Daten (z. B. Aktionsdatenstrukturen oder Inhaltselemente darstellende Datenpakete) an ein Client-Gerät (z. B. zu dem Client-Computergerät150 zu Zwecken des Anzeigens von Daten und Empfangens von Benutzereingaben von einem Benutzer, der mit dem Client-Gerät interagiert, oder zu dem Dienstanbieter-Computergerät160 oder dem Inhaltsanbieter-Computergerät155 ). In dem Client-Gerät generierte Daten (z. B. ein Ergebnis der Benutzerinteraktion) können von dem Client-Gerät an dem Server empfangen werden (z. B. empfangen durch das Datenverarbeitungssystem105 von dem Computergerät150 oder dem Inhaltsanbietercomputergerät155 oder dem Dienstanbietercomputergerät160 ). - Obwohl die Vorgänge in den Zeichnungen in einer bestimmten Reihenfolge dargestellt sind, ist es nicht erforderlich, dass diese Vorgänge in der dargestellten bestimmten Reihenfolge oder in fortlaufender Reihenfolge durchgeführt werden, zudem ist es nicht erforderlich, dass alle veranschaulichten Vorgänge durchgeführt werden. Hierin beschriebene Aktionen können in einer unterschiedlichen Reihenfolge durchgeführt werden.
- Die Trennung verschiedener Systemkomponenten erfordert keine Trennung in sämtlichen Implementierungen und die beschriebenen Programmkomponenten können in einem einzigen Hardware- oder Softwareprodukt enthalten sein. Die NLP-Komponente
110 , die Inhaltsauswahlelementkomponente125 , die Schnittstellenverwaltungskomponente140 oder die Vorhersagekomponente120 können beispielsweise eine einzelne Komponente, eine App oder ein Programm oder ein Logik-Gerät mit einer oder mehreren Verarbeitungsschaltungen oder Teil von einem oder mehreren Servern des Datenverarbeitungssystems105 sein. - Nachdem nunmehr einige veranschaulichende Implementierungen beschrieben wurden, ist es offensichtlich, dass das Vorstehende der Veranschaulichung und nicht als Einschränkung dient, und lediglich auf exemplarische Art und Weise präsentiert wurde. Insbesondere können, obgleich viele der hierin präsentierten Beispiele spezifische Kombinationen von Verfahrensvorgängen oder Systemelementen beinhalten, diese Vorgänge und Elemente auf andere Weisen kombiniert werden, um dieselben Ziele zu erreichen. Vorgänge, Elemente und Merkmale, die im Zusammenhang mit einer Implementierung erläutert werden, sollen nicht von einer ähnlichen Rolle in anderen Ausführungsformen oder Implementierungen ausgeschlossen sein.
- Die hier verwendete Ausdrucksweise und Terminologie dient dem Zweck der Beschreibung und sollte nicht als Einschränkung betrachtet werden. Die Verwendung der Wörter „einschließlich“, „umfassend“, „aufweisend“, „enthaltend“, „einbeziehend“, „gekennzeichnet durch“, „dadurch gekennzeichnet, dass“ und Variationen derselben, soll hier bedeuten, dass die danach aufgelisteten Gegenstände, Äquivalente derselben und zusätzliche Gegenstände sowie alternative Implementierungen, die ausschließlich aus den danach aufgelisteten Gegenständen bestehen, mit umfasst sind. In einer Implementierung bestehen die hierin beschriebenen Systeme und Verfahren aus einem, aus jeder Kombination von mehr als einem oder aus allen der hierin beschriebenen Elemente, Wirkungsweisen oder Komponenten.
- Jegliche Bezugnahmen auf Implementierungen oder Elemente oder Wirkungsweisen der Systeme und Verfahren, auf die hierin in der Einzahl verwiesen wird, können auch Implementierungen, einschließlich einer Vielzahl dieser Elemente, umfassen, und jegliche Bezugnahmen auf eine Implementierung oder ein Element oder eine Wirkungsweise beliebiger Art, auf die hierin in der Mehrzahl verwiesen wird, kann auch Implementierungen, einschließlich eines lediglich einzelnen Elements, umfassen. Bezugnahmen auf die Singular- oder die Pluralform sind nicht dazu gedacht, die vorliegend offenbarten Systeme und Verfahren, deren Komponenten, Wirkungsweisen oder Elemente auf einzelne oder mehrfache Konfigurationen einzuschränken. Bezugnahmen auf eine Wirkungsweise oder ein Element jeglicher Art, auf Basis von Informationen, Wirkungsweisen oder Elementen einer beliebigen Art können Implementierungen beinhalten, deren Wirkungsweise oder deren Element zumindest teilweise auf Informationen, Wirkungsweisen oder Elementen jeglicher Art basiert.
- Jegliche der hierin offenbarten Implementierungen können mit beliebigen anderen Implementierungen oder Ausführungsformen kombiniert werden, wobei die Bezugnahmen auf „eine Implementierung“, „einige Implementierungen“, „die eine Implementierung“ oder dergleichen einander nicht zwangsläufig ausschließen und angeben sollen, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Charakteristik, die im Zusammenhang mit der Implementierung beschrieben wird, in mindestens einer Implementierung oder Ausführungsform enthalten sein kann. Derartige Begriffe in der hierin verwendeten Form beziehen sich nicht notwendigerweise auf dieselbe Implementierung. Jede Implementierung kann einschließlich oder ausschließlich und auf jede Weise, die mit den hierin offenbarten Aspekten und Implementierungen im Einklang steht, mit jeder anderen Implementierung kombiniert werden.
- Verweise auf „oder“ können als einschließend ausgelegt werden, sodass alle Begriffe, die mithilfe von „oder“ beschrieben werden, einen beliebigen einzelnen, mehr als einen oder alle beschriebenen Begriffe angeben können. Eine Bezugnahme auf „mindestens eines von ,A‘ und ,B"‘ kann beispielsweise nur ,A‘, nur ,B‘ sowie sowohl ,A‘ und ,B‘ beinhalten. Diese Bezugnahmen, die in Verbindung mit „umfassend“ oder anderer offener Terminologie verwendet werden, können zusätzliche Elemente einbeziehen.
- Wenn technische Merkmale in den Zeichnungen, der ausführlichen Beschreibung oder einem beliebigen Anspruch von Bezugszeichen gefolgt werden, wurden die Bezugszeichen eingebunden, um die Verständlichkeit der Zeichnungen, ausführlichen Beschreibung oder Ansprüche zu erhöhen. Dementsprechend haben weder solche Bezugszeichen noch deren Abwesenheit eine einschränkende Wirkung auf den Umfang der Anspruchselemente.
- Die hierin beschriebenen Systeme und Verfahren können auch durch andere Ausführungsformen verkörpert werden, ohne von deren Eigenschaften abzuweichen. Die vorhergehenden Implementierungen werden eher als anschaulich denn als einschränkend für die hierin beschriebenen Systeme und Verfahren betrachtet. Der Umfang der hierin beschriebenen Systeme und Verfahren wird somit eher durch die beigefügten Ansprüche als durch die vorangehende Beschreibung angegeben, und Änderungen, welche innerhalb der Bedeutungen und des Bereichs der Äquivalenz der Ansprüche fallen, sind darin eingeschlossen.
Claims (20)
- System zur multimodalen Übertragung von paketierten Daten in einer auf sprachdatenaktivierten Datenpaketen basierenden Computernetzwerkumgebung, umfassend: eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, um über eine Schnittstelle des Datenverarbeitungssystems Datenpakete zu empfangen, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen; die Prozessorkomponente für natürliche Sprache zum Parsen des Eingabeaudiosignals, um eine Anfrage und ein der Anfrage entsprechendes Auslöserschlüsselwort zu identifizieren; eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems, um basierend auf mindestens einem von der Anfrage und dem Auslöserschlüsselwort eine erste Aktionsdatenstruktur zu generieren; eine durch das Datenverarbeitungssystem ausgeführte Inhaltsauswahlkomponente zum Empfangen mindestens eines von der Anfrage und dem Auslöserschlüsselwort, das durch den Prozessor für natürliche Sprache identifiziert wird, und basierend auf dem mindestens einen von der Anfrage und dem Auslöserschlüsselwort, Auswählen eines Inhaltselements über einen Echtzeit-Inhaltsauswahlprozess; eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems zum: Pollen einer Vielzahl von Schnittstellen, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle innerhalb eines Schwellenabstands des Computergeräts zu identifizieren; Bestimmen eines ersten Ressourcenauslastungswerts für die erste Kandidatenschnittstelle und eines zweiten Ressourcenauslastungswerts für die zweite Kandidatenschnittstelle; Basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts, Auswählen der ersten Kandidatenschnittstelle als eine ausgewählte Schnittstelle, um das Inhaltselement zu präsentieren; Bereitstellen des Inhaltselements zur Zustellung in einer Modalität, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird; und Übertragen des Inhaltselements in der ersten Modalität zum Zustellen des Inhaltselements zur Präsentation über die ausgewählte Schnittstelle.
- System nach
Anspruch 1 , umfassend: die Schnittstellenverwaltungskomponente, um das Computergerät anzuweisen, eine subakustische Welle zu übertragen, um ein zweites Computergerät innerhalb des Schwellenabstands des Computergeräts zu identifizieren, wobei das zweite Computergerät die zweite Kandidatenschnittstelle umfasst. - System nach
Anspruch 1 , umfassend die Schnittstellenverwaltungskomponente zum: Bereitstellen eines Tokens über die von dem Computergerät übertragene subakustische Welle zum Erkennen durch einen zweiten Sensor des zweiten Computergeräts; Empfangen des von dem zweiten Computergerät über ein Netzwerk erkannten Tokens durch den zweiten Sensor des zweiten Computergeräts; und Bestimmen, basierend auf einer Übereinstimmung zwischen dem von dem zweiten Computergerät empfangenen Token und dem über die von dem Computergerät übertragene subakustische Welle bereitgestellten Token, dass sich das zweite Computergerät innerhalb des Schwellenabstands des Computergeräts befindet. - System nach
Anspruch 1 , umfassend: die Schnittstellenverwaltungskomponente, um das Computergerät anzuweisen, eine drahtlose Kurzstreckenübertragung zu übertragen, die ein Signal umfasst, um ein zweites Computergerät innerhalb des Schwellenabstands des Computergeräts zu identifizieren, wobei das zweite Computergerät die zweite Kandidatenschnittstelle umfasst. - System nach
Anspruch 4 , umfassend die Schnittstellenverwaltungskomponente zum: die Schnittstellenverwaltungskomponente zum Vergleichen des von dem Sensor des Client-Computergeräts erfassten Eingabeaudiosignals mit einem von einem zweiten Sensor eines zweiten Client-Computergeräts erfassten zweiten Eingabeaudiosignal, um eine Übereinstimmung zu identifizieren; und basierend auf der Übereinstimmung, Identifizieren des zweiten Computergeräts als innerhalb des Schwellenabstands des Computergeräts, wobei das zweite Computergerät die zweite Kandidatenschnittstelle umfasst. - System nach
Anspruch 5 , umfassend die Schnittstellenverwaltungskomponente zum: Empfangen eines ersten Zeitstempels, der der Übertragung der das Token umfassenden subakustischen Welle durch das Computergerät entspricht; Empfangen eines zweiten Zeitstempels, der der Übertragung der das Token umfassenden subakustischen Welle durch das zweite Computergerät entspricht; und Bestimmen, basierend auf einem Unterschied zwischen dem zweiten Zeitstempel und dem ersten Zeitstempel, dass sich das zweite Computergerät innerhalb des Schwellenabstands von dem Computergerät befindet. - System nach
Anspruch 1 , umfassend die Schnittstellenverwaltungskomponente zum: Identifizieren, basierend auf einer Vielzahl von Näherungserkennungstechniken, einer Vielzahl von Computergeräten innerhalb des Schwellenabstands des Computergeräts, wobei die Vielzahl von Computergeräten ein zweites Computergerät mit der zweiten Kandidatenschnittstelle und ein drittes Computergerät mit einer dritten Kandidatenschnittstelle umfasst; Pollen der Vielzahl von Schnittstellen, die die erste Kandidatenschnittstelle, die zweite Kandidatenschnittstelle und die dritte Kandidatenschnittstelle umfassen; Bestimmen eines dritten Ressourcenauslastungswerts für die dritte Kandidatenschnittstelle; und basierend auf einem Vergleich des ersten Ressourcenauslastungswerts, des zweiten Ressourcenauslastungswerts, und des dritten Ressourcenauslastungswerts, Auswählen der ersten Kandidatenschnittstelle als die ausgewählte Schnittstelle, um das Inhaltselement zu präsentieren. - System nach
Anspruch 1 , umfassend: dass die Schnittstellenverwaltungskomponente aus dem Arbeitsspeicher Näherungsinformationen abruft, die eine Vielzahl von Computergeräten innerhalb des Schwellenabstands des Computergeräts identifizieren. - System nach
Anspruch 1 , umfassend die Schnittstellenverwaltungskomponente zum: Identifizieren eines zweiten Computergeräts, das die zweite Kandidatenschnittstelle umfasst; Anfragen einer Anwendungsprogrammierschnittstelle, die auf dem zweiten Computergerät ausgeführt wird, um den zweiten Ressourcenauslastungswert zu bestimmen, wobei der zweite Verwendungswert einen Lautstärkepegel angibt, bei dem Audioinhalte wiedergegeben werden. - System nach
Anspruch 1 , wobei der erste Ressourcenauslastungswert und der zweite Ressourcenauslastungswert basierend auf mindestens einem von Batteriezustand, Prozessorauslastung, Speicherauslastung, Schnittstellenparameter und Netzwerkbandbreitenauslastung bestimmt werden. - System nach
Anspruch 1 , wobei der erste Ressourcenauslastungswert und der zweite Ressourcenauslastungswert basierend auf Sensorverwendung bestimmt werden. - System nach
Anspruch 1 , wobei die erste Kandidatenschnittstelle und die zweite Kandidatenschnittstelle zwei verschiedene Schnittstellen des Client-Geräts sind. - System nach
Anspruch 1 , wobei das Client-Computergerät ein erstes Client-Computergerät ist, umfassend: dass die Schnittstellenverwaltungskomponente bestimmt, dass die erste Kandidatenschnittstelle dem ersten Client-Computergerät entspricht, das mit dem Konto verknüpft ist, und dass die zweite Kandidatenschnittstelle einem zweiten Client-Computergerät entspricht, das mit dem Konto verknüpft ist. - System nach
Anspruch 1 , wobei die erste Kandidatenschnittstelle einen Anzeigebildschirm beinhaltet, und die zweite Kandidatenschnittstelle eine Audioschnittstelle beinhaltet. - System von
Anspruch 1 , wobei die erste Kandidatenschnittstelle einer Push-Benachrichtigung zugeordnet ist und die zweite Kandidatenschnittstelle einen Java-Script-Slot auf einem Online-Dokument beinhaltet. - System nach
Anspruch 1 , umfassend die Schnittstellenverwaltungskomponente zum: Identifizieren einer dritten Kandidatenschnittstelle; Bestimmen eines dritten Ressourcenauslastungswerts für die dritte Kandidatenschnittstelle; und Zuordnen einer Hierarchie zu der ersten Kandidatenschnittstelle, der zweiten Kandidatenschnittstelle und der dritten Kandidatenschnittstelle basierend auf dem ersten Ressourcenauslastungswert, dem zweiten Ressourcenauslastungswert und dem dritten Ressourcenauslastungswert. - System nach
Anspruch 1 , wobei die Vielzahl von Kandidatenschnittstellen mindestens eines von einem Bildschirm, einer Audioschnittstelle, einer Vibrationsschnittstelle, einer E-Mail-Schnittstelle, einer Push-Benachrichtigungsschnittstelle, einer Schnittstelle für mobile Computergeräte, einer Anwendung für tragbare Computergeräte, einem Inhaltsschlitz in einem Online-Dokument, einer Chat-Anwendung, einer Anwendung für mobile Computergeräte, einem Laptop, einer Uhr, einem Headset für virtuelle Realität und einem Lautsprecher beinhaltet. - Computerlesbares Speichermedium, das Anweisungen speichert, die wenn sie durch einen oder mehrere Datenprozessoren ausgeführt werden, den einen oder die mehreren Datenprozessoren veranlassen, Vorgänge zur multimodalen Übertragung von paketierten Daten in einer auf sprachaktivierten Datenpaketen basierenden Computernetzwerkumgebung auszuführen, die Vorgänge umfassend: Empfangen von Datenpaketen durch eine Prozessorkomponente für natürliche Sprache, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems, die ein durch einen Sensor eines Client-Computergeräts erkanntes Eingabeaudiosignal umfassen; Identifizieren einer Anfrage und eines Auslöserschlüsselworts gemäß der Anfrage durch die Prozessorkomponente für natürliche Sprache von dem Eingabeaudiosignal; Generieren einer ersten Aktionsdatenstruktur durch eine Direktaktions-Anwendungsprogrammierschnittstelle des Datenverarbeitungssystems basierend auf mindestens einem von und dem Auslöserschlüsselwort; Empfangen mindestens eines von der Anfrage und dem Auslöserschlüsselwort, das durch den Prozessor für natürliche Sprache identifiziert wird, durch das durch eine Inhaltsauswahlkomponente ausgeführte Datenverarbeitungssystem, und basierend auf mindestens einem aus der Anfrage und dem Auslöserschlüsselwort, Auswählen eines Inhaltselements über einen Echtzeit-Inhaltsauswahlprozess; Pollen einer Vielzahl von Schnittstellen über eine Schnittstellenverwaltungskomponente des Datenverarbeitungssystems, um eine erste Kandidatenschnittstelle und eine zweite Kandidatenschnittstelle zu identifizieren, die innerhalb eines Schwellenabstands des Computergeräts liegen; Bestimmen eines ersten Ressourcenauslastungswerts durch die Schnittstellenverwaltungskomponente für die erste Kandidatenschnittstelle und eines zweiten Ressourcenauslastungswerts für die zweite Kandidatenschnittstelle; basierend auf einem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts, Auswählen der ersten Kandidatenschnittstelle als eine ausgewählte Schnittstelle, um das Inhaltselement zu präsentieren; Konvertieren des Inhaltselements zur Zustellung in eine Modalität, die mit der ausgewählten Schnittstelle kompatibel ist, die basierend auf dem Vergleich des ersten Ressourcenauslastungswerts und des zweiten Ressourcenauslastungswerts ausgewählt wird; und Übertragen des für die erste Modalität konvertierten Inhaltselements, um das Inhaltselement zum Wiedergeben von der ausgewählten Schnittstelle zuzustellen.
- Computerlesbares Speichermedium nach
Anspruch 18 , die Vorgänge umfassend: Anweisen des Computergeräts durch die Schnittstellenverwaltungskomponente, eine subakustische Welle zu übertragen, um ein zweites Computergerät innerhalb des Schwellenabstands des Computergeräts zu identifizieren, wobei das zweite Computergerät die zweite Kandidatenschnittstelle umfasst. - Computerlesbares Speichermedium nach
Anspruch 18 , die Vorgänge umfassend: Bereitstellen eines Tokens über die von dem Computergerät übertragene subakustische Welle zum Erkennen durch einen zweiten Sensor des zweiten Computergeräts; Empfangen des von dem zweiten Computergerät über ein Netzwerk erkannten Tokens durch den zweiten Sensor des zweiten Computergeräts; und Bestimmen, basierend auf einer Übereinstimmung zwischen dem von dem zweiten Computergerät empfangenen Token und dem über die von dem Computergerät übertragene subakustische Welle bereitgestellten Token, dass sich das zweite Computergerät innerhalb des Schwellenabstands des Computergeräts befindet.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/395,703 US10032452B1 (en) | 2016-12-30 | 2016-12-30 | Multimodal transmission of packetized data |
US15/395,703 | 2016-12-30 | ||
US15/674,838 | 2017-08-11 | ||
US15/674,838 US10708313B2 (en) | 2016-12-30 | 2017-08-11 | Multimodal transmission of packetized data |
PCT/US2017/049782 WO2018125307A1 (en) | 2016-12-30 | 2017-08-31 | Multimodal transmission of packetized data |
Publications (1)
Publication Number | Publication Date |
---|---|
DE212017000286U1 true DE212017000286U1 (de) | 2019-08-20 |
Family
ID=59901585
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE212017000286.7U Active DE212017000286U1 (de) | 2016-12-30 | 2017-08-31 | Multimodale Übertragung von paketierten Daten |
DE112017000142.0T Pending DE112017000142T5 (de) | 2016-12-30 | 2017-08-31 | Multimodale übertragung von paketierten daten |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112017000142.0T Pending DE112017000142T5 (de) | 2016-12-30 | 2017-08-31 | Multimodale übertragung von paketierten daten |
Country Status (8)
Country | Link |
---|---|
US (3) | US10708313B2 (de) |
EP (2) | EP3961372A1 (de) |
JP (3) | JP6586470B2 (de) |
KR (3) | KR101996574B1 (de) |
CN (2) | CN108541312A (de) |
AU (2) | AU2017384996B2 (de) |
DE (2) | DE212017000286U1 (de) |
WO (1) | WO2018125307A1 (de) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105678586B (zh) | 2016-01-12 | 2020-09-29 | 腾讯科技(深圳)有限公司 | 一种信息扶持方法和装置 |
EP4235644A3 (de) * | 2018-03-14 | 2023-10-25 | Google LLC | Erzeugung von iot-basierten benachrichtigungen und bereitstellung von befehlen, um eine automatische wiedergabe von iot-basierten benachrichtigungen durch automatisierte assistenten-clients von client-vorrichtungen zu bewirken |
US11145313B2 (en) * | 2018-07-06 | 2021-10-12 | Michael Bond | System and method for assisting communication through predictive speech |
US11403888B2 (en) * | 2018-09-24 | 2022-08-02 | Gojo Industries, Inc. | Method and system for using data packet beaconing to determine compliance with protocols |
US10777186B1 (en) * | 2018-11-13 | 2020-09-15 | Amazon Technolgies, Inc. | Streaming real-time automatic speech recognition service |
JP7135099B2 (ja) * | 2018-11-21 | 2022-09-12 | グーグル エルエルシー | 異種のデータソースへのクエリからの応答の統合 |
US11785386B2 (en) * | 2019-01-03 | 2023-10-10 | Harman International Industries, Incorporated | Multistep sound preference determination |
EP3912024A1 (de) * | 2019-05-06 | 2021-11-24 | Google LLC | Erzeugung und aktualisierung von sprachbasierten softwareanwendungen unter verwendung von anwendungsschablonen |
US11429793B2 (en) * | 2019-05-28 | 2022-08-30 | Dell Products L.P. | Site ambient audio collection |
CN112783954B (zh) * | 2019-11-06 | 2024-04-05 | 北京金山云网络技术有限公司 | 数据访问方法、装置及服务器 |
US11083036B1 (en) * | 2020-05-27 | 2021-08-03 | Lenovo (Singapore) Pte. Ltd. | Vehicle selection of device to use to execute function |
DE112022002775T5 (de) | 2021-05-27 | 2024-04-04 | Sony Group Corporation | Informationsverarbeitungseinrichtung, informationsverarbeitungsverfahren und informationsverarbeitungsprogramm |
Family Cites Families (274)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04287556A (ja) | 1991-03-18 | 1992-10-13 | Nippon Telegr & Teleph Corp <Ntt> | 通信端末探索方法 |
AU684872B2 (en) | 1994-03-10 | 1998-01-08 | Cable And Wireless Plc | Communication system |
JP2775140B2 (ja) | 1994-03-18 | 1998-07-16 | 株式会社エイ・ティ・アール人間情報通信研究所 | パターン認識方法、音声認識方法および音声認識装置 |
US5724521A (en) | 1994-11-03 | 1998-03-03 | Intel Corporation | Method and apparatus for providing electronic advertisements to end users in a consumer best-fit pricing manner |
US6259405B1 (en) | 1995-06-06 | 2001-07-10 | Wayport, Inc. | Geographic based communications service |
US5835061A (en) | 1995-06-06 | 1998-11-10 | Wayport, Inc. | Method and apparatus for geographic-based communications service |
US5740549A (en) | 1995-06-12 | 1998-04-14 | Pointcast, Inc. | Information and advertising distribution system and method |
US6026368A (en) | 1995-07-17 | 2000-02-15 | 24/7 Media, Inc. | On-line interactive system and method for providing content and advertising information to a targeted set of viewers |
US5675788A (en) | 1995-09-15 | 1997-10-07 | Infonautics Corp. | Method and apparatus for generating a composite document on a selected topic from a plurality of information sources |
GB2305747A (en) | 1995-09-30 | 1997-04-16 | Ibm | Load balancing of connections to parallel servers |
WO1997021183A1 (en) | 1995-12-08 | 1997-06-12 | Bell Communications Research, Inc. | Method and system for placing advertisements in a computer network |
US5801413A (en) | 1995-12-19 | 1998-09-01 | Micron Technology, Inc. | Container-shaped bottom electrode for integrated circuit capacitor with partially rugged surface |
US5848397A (en) | 1996-04-19 | 1998-12-08 | Juno Online Services, L.P. | Method and apparatus for scheduling the presentation of messages to computer users |
US5850433A (en) | 1996-05-01 | 1998-12-15 | Sprint Communication Co. L.P. | System and method for providing an on-line directory service |
US6185427B1 (en) | 1996-09-06 | 2001-02-06 | Snaptrack, Inc. | Distributed satellite position system processing and application network |
US5948061A (en) | 1996-10-29 | 1999-09-07 | Double Click, Inc. | Method of delivery, targeting, and measuring advertising over networks |
US6078914A (en) | 1996-12-09 | 2000-06-20 | Open Text Corporation | Natural language meta-search system and method |
US6144944A (en) | 1997-04-24 | 2000-11-07 | Imgis, Inc. | Computer system for efficiently selecting and providing information |
US6044376A (en) | 1997-04-24 | 2000-03-28 | Imgis, Inc. | Content stream analysis |
WO1998058334A1 (en) | 1997-06-16 | 1998-12-23 | Doubleclick Inc. | Method and apparatus for automatic placement of advertising |
JPH1165950A (ja) | 1997-08-15 | 1999-03-09 | Sony Corp | 情報通信方法、情報通信システム、携帯無線通信端末およびサーバ装置 |
US6600930B1 (en) | 1997-07-11 | 2003-07-29 | Sony Corporation | Information provision system, information regeneration terminal, and server |
US5930773A (en) | 1997-12-17 | 1999-07-27 | Avista Advantage, Inc. | Computerized resource accounting methods and systems, computerized utility management methods and systems, multi-user utility management methods and systems, and energy-consumption-based tracking methods and systems |
US6457040B1 (en) | 1998-01-16 | 2002-09-24 | Kabushiki Kaisha Toshiba | Method and system for a distributed network computing system for providing application services |
JPH11265347A (ja) | 1998-01-16 | 1999-09-28 | Toshiba Corp | 分散ネットワークコンピューティングシステム、及びこのシステムに用いられる情報交換装置、情報交換方法、並びに情報交換方法のプログラム情報を格納したコンピュータ読取り可能な記憶媒体 |
US6647257B2 (en) | 1998-01-21 | 2003-11-11 | Leap Wireless International, Inc. | System and method for providing targeted messages based on wireless mobile location |
US6286005B1 (en) | 1998-03-11 | 2001-09-04 | Cannon Holdings, L.L.C. | Method and apparatus for analyzing data and advertising optimization |
US20030154072A1 (en) | 1998-03-31 | 2003-08-14 | Scansoft, Inc., A Delaware Corporation | Call analysis |
US20070294229A1 (en) | 1998-05-28 | 2007-12-20 | Q-Phrase Llc | Chat conversation methods traversing a provisional scaffold of meanings |
US6167382A (en) | 1998-06-01 | 2000-12-26 | F.A.C. Services Group, L.P. | Design and production of print advertising and commercial display materials over the Internet |
US6731612B1 (en) | 1998-06-29 | 2004-05-04 | Microsoft Corporation | Location-based web browsing |
US6826593B1 (en) | 1998-09-01 | 2004-11-30 | Lucent Technologies Inc. | Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content |
US6189003B1 (en) | 1998-10-23 | 2001-02-13 | Wynwyn.Com Inc. | Online business directory with predefined search template for facilitating the matching of buyers to qualified sellers |
US7881936B2 (en) * | 1998-12-04 | 2011-02-01 | Tegic Communications, Inc. | Multimodal disambiguation of speech recognition |
HK1025466A2 (en) | 1999-01-15 | 2000-10-05 | Imandi Corp | Extraction of vendor information from web sites |
US6332127B1 (en) | 1999-01-28 | 2001-12-18 | International Business Machines Corporation | Systems, methods and computer program products for providing time and location specific advertising via the internet |
US6985882B1 (en) | 1999-02-05 | 2006-01-10 | Directrep, Llc | Method and system for selling and purchasing media advertising over a distributed communication network |
US6269361B1 (en) | 1999-05-28 | 2001-07-31 | Goto.Com | System and method for influencing a position on a search result list generated by a computer network search engine |
US7035812B2 (en) | 1999-05-28 | 2006-04-25 | Overture Services, Inc. | System and method for enabling multi-element bidding for influencing a position on a search result list generated by a computer network search engine |
US7844594B1 (en) | 1999-06-18 | 2010-11-30 | Surfwax, Inc. | Information search, retrieval and distillation into knowledge objects |
US6275806B1 (en) | 1999-08-31 | 2001-08-14 | Andersen Consulting, Llp | System method and article of manufacture for detecting emotion in voice signals by utilizing statistics for voice signal parameters |
US6363065B1 (en) | 1999-11-10 | 2002-03-26 | Quintum Technologies, Inc. | okApparatus for a voice over IP (voIP) telephony gateway and methods for use therein |
US7392185B2 (en) * | 1999-11-12 | 2008-06-24 | Phoenix Solutions, Inc. | Speech based learning/training system using semantic decoding |
US6446045B1 (en) | 2000-01-10 | 2002-09-03 | Lucinda Stone | Method for using computers to facilitate and control the creating of a plurality of functions |
AU2001234986A1 (en) | 2000-02-11 | 2001-08-20 | Wynwyn.Com, Inc. | Online business directory with thesaurus and search template |
US6401075B1 (en) | 2000-02-14 | 2002-06-04 | Global Network, Inc. | Methods of placing, purchasing and monitoring internet advertising |
JP2001236410A (ja) | 2000-02-21 | 2001-08-31 | Kyota Iwaoka | 相互接続型広告配信方法およびそのシステム |
JP2002132827A (ja) | 2000-03-06 | 2002-05-10 | Katsuyoshi Nagashima | インターネット情報からの広告宣伝情報自動検索装置及び広告宣伝情報自動検索方法 |
US7376729B2 (en) | 2000-03-23 | 2008-05-20 | Freebit Co., Ltd. | System for internet connections, method for calculating connection fees for network connection services, billing system for network connection services, and system for network connection management |
JP2002007253A (ja) | 2000-06-19 | 2002-01-11 | Freebit.Com Co Ltd | インターネット接続システム、インターネット利用者への情報提供システム、及びインターネット利用者への情報提供方法 |
JP2001282982A (ja) | 2000-03-28 | 2001-10-12 | Hisahiro Negi | Webマーケティングシステム |
US7155729B1 (en) * | 2000-03-28 | 2006-12-26 | Microsoft Corporation | Method and system for displaying transient notifications |
JP2001297256A (ja) | 2000-04-12 | 2001-10-26 | Kuku:Kk | サーバーコンピュータの制御方法 |
JP2001312646A (ja) | 2000-04-28 | 2001-11-09 | Occs Planning Corp | 屋外広告における広告媒体賃貸システム |
JP2001312649A (ja) | 2000-05-01 | 2001-11-09 | Adc Technology Kk | 広告システム及び記録媒体 |
CN1252975C (zh) | 2000-05-16 | 2006-04-19 | 约翰·塔歇罗 | 提供地理目标信息和广告的方法和系统 |
KR20000054165A (ko) | 2000-05-24 | 2000-09-05 | 김병남 | 위치정보를 이용한 인터넷 광고 시스템 및 그 방법 |
US6684249B1 (en) | 2000-05-26 | 2004-01-27 | Sonicbox, Inc. | Method and system for adding advertisements over streaming audio based upon a user profile over a world wide area network of computers |
KR20020035113A (ko) | 2000-05-31 | 2002-05-09 | 추후보정 | 네트웍을 통해 광고를 전달하기 위한 방법 및 시스템 |
JP4612158B2 (ja) | 2000-06-29 | 2011-01-12 | 株式会社東芝 | 移動通信端末装置 |
CA2414379A1 (en) | 2000-06-30 | 2002-01-10 | Troy Schultz | Method and apparatus for a gis based search engine utilizing real time advertising |
AU2001269411A1 (en) | 2000-07-10 | 2002-01-21 | Viven Ltd. | Broadcast content over cellular telephones |
US20020082938A1 (en) | 2000-07-19 | 2002-06-27 | Dana Borger | Systems, methods and computer program products that facilitate and account for call-through advertising between advertisers and users of web-enabled telephone devices |
JP2002073666A (ja) | 2000-08-29 | 2002-03-12 | Sharp Corp | 情報提供システム及び情報提供サーバ及び情報受信端末並びに情報提供プログラムを記録した記録媒体 |
US6857007B1 (en) | 2000-08-30 | 2005-02-15 | Bloomfield Enterprises, Llc | Personal digital assistant facilitated communication system |
US20020029226A1 (en) | 2000-09-05 | 2002-03-07 | Gang Li | Method for combining data with maps |
US20020128908A1 (en) | 2000-09-15 | 2002-09-12 | Levin Brian E. | System for conducting user-specific promotional campaigns using multiple communications device platforms |
JP2002099822A (ja) | 2000-09-26 | 2002-04-05 | Minoru Sato | 広告システム、広告方法および情報記憶媒体 |
US6983331B1 (en) | 2000-10-17 | 2006-01-03 | Microsoft Corporation | Selective display of content |
JP2002140359A (ja) | 2000-11-01 | 2002-05-17 | Masayuki Hasegawa | 広告配信システム、広告コンテンツおよび広告配信装置ならびに広告配信方法 |
WO2002101485A2 (en) | 2000-11-10 | 2002-12-19 | In2M Corporation | Methods and systems for electronic coupon issuance transmission and management |
US7376640B1 (en) | 2000-11-14 | 2008-05-20 | At&T Delaware Intellectual Property, Inc. | Method and system for searching an information retrieval system according to user-specified location information |
JP2002169744A (ja) | 2000-12-04 | 2002-06-14 | Ntt Me Corp | 付加情報配信装置及び付加情報配信方法 |
JP2002170027A (ja) | 2000-12-04 | 2002-06-14 | Standard J:Kk | 広告配信事業およびシステム |
US7406434B1 (en) | 2000-12-15 | 2008-07-29 | Carl Meyer | System and method for improving the performance of electronic media advertising campaigns through multi-attribute analysis and optimization |
US6956816B1 (en) | 2001-02-15 | 2005-10-18 | Extreme Networks | Fault tolerant automatic protection switching for distributed routers |
JP2002245048A (ja) | 2001-02-20 | 2002-08-30 | Mitsubishi Electric Corp | 画像検索方法および画像検索装置 |
WO2002076077A1 (en) | 2001-03-16 | 2002-09-26 | Leap Wireless International, Inc. | Method and system for distributing content over a wireless communications system |
JP2002288541A (ja) | 2001-03-28 | 2002-10-04 | Ntt Comware Corp | 広告料課金システム、そのプログラムおよびそのプログラムが記録されたコンピュータ読み取り可能な記録媒体 |
US6993326B2 (en) | 2001-04-02 | 2006-01-31 | Bellsouth Intellectual Property Corporation | System and method for providing short message targeted advertisements over a wireless communications network |
US7698228B2 (en) | 2001-04-27 | 2010-04-13 | Accenture Llp | Tracking purchases in a location-based services system |
US7970648B2 (en) | 2001-04-27 | 2011-06-28 | Accenture Global Services Limited | Advertising campaign and business listing management for a location-based services system |
US8402088B2 (en) | 2001-06-11 | 2013-03-19 | Apple Inc. | Establishing telephone calls at a specified future time using a URI and a web-based telephony application |
US8538803B2 (en) | 2001-06-14 | 2013-09-17 | Frank C. Nicholas | Method and system for providing network based target advertising and encapsulation |
US7089264B1 (en) | 2001-06-22 | 2006-08-08 | Navteq North America, Llc | Geographic database organization that facilitates location-based advertising |
US20030008661A1 (en) | 2001-07-03 | 2003-01-09 | Joyce Dennis P. | Location-based content delivery |
JP2003016348A (ja) | 2001-07-04 | 2003-01-17 | Nec Commun Syst Ltd | 広告配信方法 |
KR100552468B1 (ko) | 2001-07-19 | 2006-02-15 | 삼성전자주식회사 | 음성인식에 따른 오동작을 방지 및 음성인식율을 향상 할수 있는 전자기기 및 방법 |
EP1412874A4 (de) | 2001-07-27 | 2007-10-17 | Quigo Technologies Inc | System und verfahren zur automatisierten verfolgung und analyse der dokumentbenutzung |
JP2003044126A (ja) | 2001-08-02 | 2003-02-14 | Mitsui Eng & Shipbuild Co Ltd | リモートメンテナンスシステムおよび在庫管理システム |
US7043471B2 (en) | 2001-08-03 | 2006-05-09 | Overture Services, Inc. | Search engine account monitoring |
US7243024B2 (en) | 2001-08-11 | 2007-07-10 | Endicott William L | Computer-implemented system and method for wayfinding |
US7120429B2 (en) | 2001-08-13 | 2006-10-10 | Qualcomm Inc. | System and method for licensing applications on wireless devices over a wireless network |
US7920682B2 (en) | 2001-08-21 | 2011-04-05 | Byrne William J | Dynamic interactive voice interface |
US8214342B2 (en) | 2001-08-23 | 2012-07-03 | Michael Meiresonne | Supplier identification and locator system and method |
US7778872B2 (en) | 2001-09-06 | 2010-08-17 | Google, Inc. | Methods and apparatus for ordering advertisements based on performance information and price information |
JP2003122781A (ja) | 2001-10-17 | 2003-04-25 | Super Contents Distrubutions Ltd | 商品情報配信方法 |
KR100794424B1 (ko) * | 2001-11-01 | 2008-01-16 | 엘지노텔 주식회사 | 오디오 패킷 스위칭 시스템 및 방법 |
JP2003223591A (ja) | 2001-11-20 | 2003-08-08 | Matsushita Electric Ind Co Ltd | 電子商取引サービスシステム、電子商取引端末、電子商取引サービスサーバ並びにコンピュータプログラム |
US7295996B2 (en) | 2001-11-30 | 2007-11-13 | Skinner Christopher J | Automated web ranking bid management account system |
KR200269767Y1 (ko) | 2001-12-07 | 2002-03-25 | 김동춘 | 의자 조립용 파이프 연결부재 |
US7016343B1 (en) | 2001-12-28 | 2006-03-21 | Cisco Technology, Inc. | PSTN call routing control features applied to a VoIP |
JP4074106B2 (ja) | 2002-03-07 | 2008-04-09 | 富士通株式会社 | 広告送信方法及び装置 |
US7386318B2 (en) | 2002-03-19 | 2008-06-10 | Pitney Bowes Mapinfo Corporation | Location based service provider |
US7136875B2 (en) | 2002-09-24 | 2006-11-14 | Google, Inc. | Serving advertisements based on content |
US20060149624A1 (en) | 2004-12-30 | 2006-07-06 | Shumeet Baluja | Generating and/or serving local area advertisements, such as advertisements for devices with call functionality |
JP2003337893A (ja) | 2002-05-20 | 2003-11-28 | Sharp Corp | 情報配信装置、情報配信方法、情報配信プログラムおよび情報配信プログラムを記録したコンピュータ読取り可能な記録媒体 |
US8611919B2 (en) | 2002-05-23 | 2013-12-17 | Wounder Gmbh., Llc | System, method, and computer program product for providing location based services and mobile e-commerce |
JP2004032037A (ja) | 2002-06-21 | 2004-01-29 | Hitachi Ltd | 情報受発信システム、それに使用される情報処理装置及び携帯端末 |
US20040044571A1 (en) | 2002-08-27 | 2004-03-04 | Bronnimann Eric Robert | Method and system for providing advertising listing variance in distribution feeds over the internet to maximize revenue to the advertising distributor |
US7617122B2 (en) | 2002-08-28 | 2009-11-10 | International Business Machines Corporation | Targeted online marketing |
US20040059712A1 (en) | 2002-09-24 | 2004-03-25 | Dean Jeffrey A. | Serving advertisements using information associated with e-mail |
US20070088609A1 (en) | 2002-10-25 | 2007-04-19 | Medio Systems, Inc. | Optimizer For Selecting Supplemental Content Based on Content Productivity of a Document |
US7260066B2 (en) | 2002-10-31 | 2007-08-21 | Conexant Systems, Inc. | Apparatus for link failure detection on high availability Ethernet backplane |
US7263086B2 (en) | 2002-11-12 | 2007-08-28 | Nokia Corporation | Method and system for providing location-based services in multiple coverage area environments |
US7818207B1 (en) | 2003-01-10 | 2010-10-19 | Google, Inc. | Governing the serving of advertisements based on a cost target |
US7007014B2 (en) | 2003-04-04 | 2006-02-28 | Yahoo! Inc. | Canonicalization of terms in a keyword-based presentation system |
US7826907B2 (en) | 2003-07-31 | 2010-11-02 | Hewlett-Packard Development Company, L.P. | Fortuitous combinations of ad-hoc available sets of different electronic devices to respond to user jobs |
KR200339736Y1 (ko) | 2003-09-16 | 2004-01-31 | 고재석 | 초음파를 이용한 에너지 활성화 및 수처리 장치 |
WO2005031589A1 (en) | 2003-09-23 | 2005-04-07 | Marchex, Inc. | Performance-based online advertising system and method |
US20050076017A1 (en) | 2003-10-03 | 2005-04-07 | Rein Douglas R. | Method and system for scheduling search terms in a search engine account |
US7120235B2 (en) | 2003-10-06 | 2006-10-10 | Ingenio, Inc. | Method and apparatus to provide pay-per-call performance based advertising |
US20050086104A1 (en) | 2003-10-17 | 2005-04-21 | Mcfadden Jeffrey A. | Delivery of advertising to telephone users |
US20120102020A1 (en) | 2003-12-04 | 2012-04-26 | Mark Pearson | Generating Search Result Listing with Anchor Text Based Description of Website Corresponding to Search Result |
US20050144065A1 (en) | 2003-12-19 | 2005-06-30 | Palo Alto Research Center Incorporated | Keyword advertisement management with coordinated bidding among advertisers |
US20050137939A1 (en) | 2003-12-19 | 2005-06-23 | Palo Alto Research Center Incorporated | Server-based keyword advertisement management |
US20050144069A1 (en) | 2003-12-23 | 2005-06-30 | Wiseman Leora R. | Method and system for providing targeted graphical advertisements |
US8312014B2 (en) | 2003-12-29 | 2012-11-13 | Yahoo! Inc. | Lateral search |
US7707039B2 (en) * | 2004-02-15 | 2010-04-27 | Exbiblio B.V. | Automatic modification of web pages |
US20050187823A1 (en) | 2004-02-23 | 2005-08-25 | Howes Jeffrey V. | Method and system for geographically-targeted internet advertising |
US20050225810A1 (en) | 2004-04-02 | 2005-10-13 | Sun Fang C | Image retrieval and memory-accessing business card scanning device |
US7428529B2 (en) | 2004-04-15 | 2008-09-23 | Microsoft Corporation | Term suggestion for multi-sense query |
US7853255B2 (en) | 2004-04-16 | 2010-12-14 | Broadcom Corporation | Digital personal assistance via a broadband access gateway |
US20060004627A1 (en) | 2004-06-30 | 2006-01-05 | Shumeet Baluja | Advertisements for devices with call functionality, such as mobile phones |
US10032452B1 (en) | 2016-12-30 | 2018-07-24 | Google Llc | Multimodal transmission of packetized data |
US7613637B2 (en) | 2004-12-19 | 2009-11-03 | Bcks | Participant node for a searchable distributed information network |
KR100643326B1 (ko) | 2005-02-22 | 2006-11-10 | 삼성전자주식회사 | 홈 네트워크 시스템 및 그의 컨텐츠 전송 방법 |
US7448023B2 (en) | 2005-02-25 | 2008-11-04 | Microsoft Corporation | Method and system for verifying rule compliance of an application object |
US7720684B2 (en) | 2005-04-29 | 2010-05-18 | Nuance Communications, Inc. | Method, apparatus, and computer program product for one-step correction of voice interaction |
US8099327B2 (en) | 2005-06-01 | 2012-01-17 | Google Inc. | Auctioneer |
US20060287919A1 (en) | 2005-06-02 | 2006-12-21 | Blue Mustard Llc | Advertising search system and method |
US20060274869A1 (en) | 2005-06-07 | 2006-12-07 | Yahoo! Inc. | Dynamically generating content based on capabilities of a mobile device |
FR2887102A1 (fr) | 2005-06-13 | 2006-12-15 | France Telecom | Procede de modification du mode de service demande par un terminal de communication en fonction d'au moins un parametre de configuration et/ou representatif de la qualite de service reseau |
US7672931B2 (en) | 2005-06-30 | 2010-03-02 | Microsoft Corporation | Searching for content using voice search queries |
US20070027760A1 (en) | 2005-07-29 | 2007-02-01 | Collins Robert J | System and method for creating and providing a user interface for displaying advertiser defined groups of advertisement campaign information |
US8195133B2 (en) | 2005-09-14 | 2012-06-05 | Jumptap, Inc. | Mobile dynamic advertisement creation and placement |
US8238888B2 (en) | 2006-09-13 | 2012-08-07 | Jumptap, Inc. | Methods and systems for mobile coupon placement |
US7747614B2 (en) | 2005-10-31 | 2010-06-29 | Yahoo! Inc. | Difference control for generating and displaying a difference result set from the result sets of a plurality of search engines |
US7904505B2 (en) | 2005-11-02 | 2011-03-08 | At&T Intellectual Property I, L.P. | Service to push author-spoken audio content with targeted audio advertising to users |
HRP20050953B1 (en) | 2005-11-08 | 2012-04-30 | T-Mobile Hrvatska D.O.O. | Base station system performance measurement system in a gsm radio communicatioon network |
US7624101B2 (en) | 2006-01-31 | 2009-11-24 | Google Inc. | Enhanced search results |
CA2641853C (en) | 2006-02-10 | 2016-02-02 | Spinvox Limited | A mass-scale, user-independent, device-independent, voice messaging system |
US20080052219A1 (en) | 2006-03-31 | 2008-02-28 | Combinenet, Inc. | System for and method of expressive auctions of user events |
JP4887911B2 (ja) | 2006-05-31 | 2012-02-29 | 船井電機株式会社 | 電子機器 |
US8401726B2 (en) | 2006-07-20 | 2013-03-19 | The Boeing Company | Maintenance interval determination and optimization tool and method |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
JP4188989B2 (ja) | 2006-09-15 | 2008-12-03 | 本田技研工業株式会社 | 音声認識装置、音声認識方法、及び音声認識プログラム |
US8880402B2 (en) | 2006-10-28 | 2014-11-04 | General Motors Llc | Automatically adapting user guidance in automated speech recognition |
US20090013255A1 (en) * | 2006-12-30 | 2009-01-08 | Matthew John Yuschik | Method and System for Supporting Graphical User Interfaces |
US7877384B2 (en) | 2007-03-01 | 2011-01-25 | Microsoft Corporation | Scoring relevance of a document based on image text |
US8843376B2 (en) | 2007-03-13 | 2014-09-23 | Nuance Communications, Inc. | Speech-enabled web content searching using a multimodal browser |
US7974888B2 (en) | 2007-03-30 | 2011-07-05 | Amazon Technologies, Inc. | Services for providing item association data |
US8583592B2 (en) | 2007-03-30 | 2013-11-12 | Innography, Inc. | System and methods of searching data sources |
US20080249855A1 (en) | 2007-04-04 | 2008-10-09 | Yahoo! Inc. | System for generating advertising creatives |
US8041709B2 (en) | 2007-05-25 | 2011-10-18 | Microsoft Corporation | Domain collapsing of search results |
GB2442818B (en) | 2007-06-11 | 2008-11-05 | Cvon Innovations Ltd | Methodologies and systems for determining mobile device capabilities |
US20090006145A1 (en) | 2007-06-27 | 2009-01-01 | Google Inc. | Booking Advertising Campaigns |
US8175914B1 (en) | 2007-07-30 | 2012-05-08 | Google Inc. | Automatic adjustment of advertiser bids to equalize cost-per-conversion among publishers for an advertisement |
US20090210491A1 (en) | 2008-02-20 | 2009-08-20 | Microsoft Corporation | Techniques to automatically identify participants for a multimedia conference event |
US8068604B2 (en) | 2008-12-19 | 2011-11-29 | Computer Product Introductions Corporation | Method and system for event notifications |
US8255224B2 (en) | 2008-03-07 | 2012-08-28 | Google Inc. | Voice recognition grammar selection based on context |
US20090240670A1 (en) | 2008-03-20 | 2009-09-24 | Yahoo! Inc. | Uniform resource identifier alignment |
US8504365B2 (en) | 2008-04-11 | 2013-08-06 | At&T Intellectual Property I, L.P. | System and method for detecting synthetic speaker verification |
US7904460B2 (en) | 2008-04-23 | 2011-03-08 | Microsoft Corporation | Determining computer information from processor properties |
US9978365B2 (en) * | 2008-10-31 | 2018-05-22 | Nokia Technologies Oy | Method and system for providing a voice interface |
US8489599B2 (en) * | 2008-12-02 | 2013-07-16 | Palo Alto Research Center Incorporated | Context and activity-driven content delivery and interaction |
US8145561B1 (en) | 2009-01-05 | 2012-03-27 | Sprint Communications Company L.P. | Phone usage pattern as credit card fraud detection trigger |
US8346709B2 (en) | 2009-02-05 | 2013-01-01 | Google Inc. | Determining conversion probability using session metrics |
US8326637B2 (en) * | 2009-02-20 | 2012-12-04 | Voicebox Technologies, Inc. | System and method for processing multi-modal device interactions in a natural language voice services environment |
US8019746B2 (en) | 2009-03-02 | 2011-09-13 | Yahoo! Inc. | Optimized search result columns on search results pages |
EP2409251A4 (de) | 2009-03-20 | 2015-03-18 | Ad Vantage Networks Llc | Verfahren und und systeme zur durchsuche, auswahl und anzeige von inhalten |
US8176069B2 (en) | 2009-06-01 | 2012-05-08 | Aol Inc. | Systems and methods for improved web searching |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US9431006B2 (en) * | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US20110022460A1 (en) | 2009-07-22 | 2011-01-27 | Yahoo! Inc. | Explicit online advertising exposure terms |
GB2476077A (en) | 2009-12-10 | 2011-06-15 | Skype Ltd | Estimating VoIP call Quality before a call is set up |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US8433672B2 (en) | 2010-02-17 | 2013-04-30 | GM Global Technology Operations LLC | Method and apparatus for vehicle component health prognosis by integrating aging model, usage information and health signatures |
JP5084858B2 (ja) | 2010-03-16 | 2012-11-28 | ヤフー株式会社 | サマリ作成装置、サマリ作成方法及びプログラム |
US8630200B2 (en) | 2010-06-01 | 2014-01-14 | Meltwater News International Holdings, GmbH | Method and apparatus for embedding information in a short URL |
US8429110B2 (en) | 2010-06-10 | 2013-04-23 | Microsoft Corporation | Pattern tree-based rule learning |
US20110320114A1 (en) | 2010-06-28 | 2011-12-29 | Microsoft Corporation | Map Annotation Messaging |
WO2012009672A1 (en) | 2010-07-16 | 2012-01-19 | Altruik, Inc. | System and method for improving webpage indexing and optimization |
US20120030015A1 (en) | 2010-07-29 | 2012-02-02 | Google Inc. | Automatic abstracted creative generation from a web site |
US8583795B2 (en) | 2010-08-09 | 2013-11-12 | Mskynet Inc. | URI service system and method |
US8433800B2 (en) | 2011-02-28 | 2013-04-30 | Mskynet Inc. | Smart link system and method |
KR20120020532A (ko) | 2010-08-30 | 2012-03-08 | 삼성전자주식회사 | 오디오 신호 처리 방법 및 장치 |
MX336363B (es) | 2010-09-17 | 2015-12-18 | Thomson Licensing | Metodo y sistema para determinar la identidad/presencia de un dispositivo movil para el control e interaccion en la distribucion de contenido. |
US8713168B2 (en) | 2010-09-22 | 2014-04-29 | The Nielsen Company (Us), Llc | Methods and apparatus to determine impressions using distributed demographic information |
US8510368B2 (en) | 2010-10-20 | 2013-08-13 | Mskynet Inc. | Short URI payload-status systems and methods |
US20120101776A1 (en) | 2010-10-26 | 2012-04-26 | Brower Alfred N | Embedded prognostic health management system for aeronautical machines and devices and methods thereof |
US9280515B2 (en) | 2010-12-03 | 2016-03-08 | Echostar Technologies L.L.C. | Provision of alternate content in response to QR code |
US9148686B2 (en) | 2010-12-20 | 2015-09-29 | Echostar Technologies, Llc | Matrix code-based user interface |
US10275782B2 (en) | 2010-12-28 | 2019-04-30 | Excalibur Ip, Llc | Variation of minimum advertisement relevance quality threshold based on search query attributes |
WO2012094329A1 (en) | 2011-01-05 | 2012-07-12 | Envidient, Inc. | System and method for managing media content |
US20140019128A1 (en) * | 2011-01-05 | 2014-01-16 | Daniel J. RISKIN | Voice Based System and Method for Data Input |
JP5025808B1 (ja) * | 2011-03-31 | 2012-09-12 | 株式会社東芝 | 情報処理装置及び情報処理プログラム |
US8578143B2 (en) | 2011-05-17 | 2013-11-05 | Apple Inc. | Modifying operating parameters based on device use |
US9230061B2 (en) * | 2011-08-15 | 2016-01-05 | Medcpu, Inc. | System and method for text extraction and contextual decision support |
US10120877B2 (en) | 2011-09-15 | 2018-11-06 | Stephan HEATH | Broad and alternative category clustering of the same, similar or different categories in social/geo/promo link promotional data sets for end user display of interactive ad links, coupons, mobile coupons, promotions and sale of products, goods and services integrated with 3D spatial geomapping and mobile mapping and social networking |
US8762156B2 (en) | 2011-09-28 | 2014-06-24 | Apple Inc. | Speech recognition repair using contextual information |
WO2013069172A1 (ja) * | 2011-11-10 | 2013-05-16 | 三菱電機株式会社 | ナビゲーション装置および方法 |
US20130124606A1 (en) | 2011-11-14 | 2013-05-16 | Boopsie, Inc. | Automatic personalization of downloadable mobile apps |
US20130144720A1 (en) | 2011-12-06 | 2013-06-06 | Yahoo! Inc. | System for Advertisement Display |
US20130191226A1 (en) | 2012-01-20 | 2013-07-25 | Bradley Hopkins Smallwood | Pricing and delivery of advertising based on exposure time |
US8453058B1 (en) | 2012-02-20 | 2013-05-28 | Google Inc. | Crowd-sourced audio shortcuts |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US20130325449A1 (en) | 2012-05-31 | 2013-12-05 | Elwha Llc | Speech recognition adaptation systems based on adaptation data |
US20130339030A1 (en) * | 2012-06-13 | 2013-12-19 | Fluential, Llc | Interactive spoken dialogue interface for collection of structured data |
US9767479B2 (en) | 2012-06-25 | 2017-09-19 | Google Inc. | System and method for deploying ads based on a content exposure interval |
US20140004839A1 (en) * | 2012-06-29 | 2014-01-02 | Frederick P. Block | Proximity based transfer |
US8996299B2 (en) | 2012-08-27 | 2015-03-31 | Place Codes, Inc. | Geographic coordinates coding software product |
US9613160B2 (en) | 2012-09-28 | 2017-04-04 | Disney Enterprises, Inc. | Client-side web site selection according to device capabilities |
JP2014085780A (ja) | 2012-10-23 | 2014-05-12 | Samsung Electronics Co Ltd | 番組推薦装置及び番組推薦プログラム |
US9275637B1 (en) | 2012-11-06 | 2016-03-01 | Amazon Technologies, Inc. | Wake word evaluation |
US8612226B1 (en) | 2013-01-28 | 2013-12-17 | Google Inc. | Determining advertisements based on verbal inputs to applications on a computing device |
DE212014000045U1 (de) | 2013-02-07 | 2015-09-24 | Apple Inc. | Sprach-Trigger für einen digitalen Assistenten |
US9842489B2 (en) | 2013-02-14 | 2017-12-12 | Google Llc | Waking other devices for additional data |
US10133546B2 (en) | 2013-03-14 | 2018-11-20 | Amazon Technologies, Inc. | Providing content on multiple devices |
KR102065045B1 (ko) * | 2013-03-15 | 2020-01-10 | 엘지전자 주식회사 | 이동 단말기 및 그것의 제어 방법 |
US9026176B2 (en) | 2013-05-12 | 2015-05-05 | Shyh-Jye Wang | Message-triggered voice command interface in portable electronic devices |
US9706255B2 (en) | 2013-06-05 | 2017-07-11 | Thomson Licensing | Method and apparatus for content distribution for multiscreen viewing wherein video program and information related to the video program are transmitted to a second device but not to a first device when the distance between the two devices is greater than a predetermined threshold |
US11218434B2 (en) * | 2013-06-12 | 2022-01-04 | Google Llc | Audio data packet status determination |
JP5989604B2 (ja) | 2013-06-14 | 2016-09-07 | 西日本電信電話株式会社 | デジタルサイネージシステム |
KR20150031896A (ko) | 2013-09-17 | 2015-03-25 | 한국전자통신연구원 | 음성인식장치 및 그 동작방법 |
US9443527B1 (en) * | 2013-09-27 | 2016-09-13 | Amazon Technologies, Inc. | Speech recognition capability generation and control |
WO2015054240A1 (en) * | 2013-10-07 | 2015-04-16 | President And Fellows Of Harvard College | Computer implemented method, computer system and software for reducing errors associated with a situated interaction |
US9245527B2 (en) | 2013-10-11 | 2016-01-26 | Apple Inc. | Speech recognition wake-up of a handheld portable electronic device |
US9530416B2 (en) * | 2013-10-28 | 2016-12-27 | At&T Intellectual Property I, L.P. | System and method for managing models for embedded speech and language processing |
CN104683294B (zh) * | 2013-11-27 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 一种数据处理方法和系统 |
US9588635B2 (en) | 2013-12-12 | 2017-03-07 | Microsoft Technology Licensing, Llc | Multi-modal content consumption model |
KR102201634B1 (ko) * | 2013-12-27 | 2021-01-12 | 엘지전자 주식회사 | 단말기 및 그 동작 방법 |
US20180322536A1 (en) | 2014-01-14 | 2018-11-08 | Google Inc. | Resource utilization based cross device transmissions |
US9589564B2 (en) | 2014-02-05 | 2017-03-07 | Google Inc. | Multiple speech locale-specific hotword classifiers for selection of a speech locale |
KR20150092996A (ko) | 2014-02-06 | 2015-08-17 | 삼성전자주식회사 | 디스플레이 장치 및 이를 이용한 전자 장치의 제어 방법 |
EP3739460A1 (de) | 2014-03-03 | 2020-11-18 | Sony Corporation | Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm |
US9153106B1 (en) | 2014-07-10 | 2015-10-06 | Google Inc. | Automatically activated visual indicators on computing device |
WO2016014026A1 (en) | 2014-07-22 | 2016-01-28 | Nuance Communications, Inc. | Systems and methods for speech-based searching of content repositories |
US9747011B2 (en) * | 2014-09-16 | 2017-08-29 | Google Inc. | Continuation of playback of media content by different output devices |
US9424841B2 (en) | 2014-10-09 | 2016-08-23 | Google Inc. | Hotword detection on multiple devices |
US9318107B1 (en) | 2014-10-09 | 2016-04-19 | Google Inc. | Hotword detection on multiple devices |
CN104916285A (zh) * | 2014-10-13 | 2015-09-16 | 江苏华音信息科技有限公司 | 全自动外语语音现场控制汽车驾驶的控制器装置 |
CA2869245A1 (en) | 2014-10-27 | 2016-04-27 | MYLE Electronics Corp. | Mobile thought catcher system |
JP2016111406A (ja) | 2014-12-02 | 2016-06-20 | ソニー株式会社 | 情報処理装置、情報処理方法及びプログラム |
KR101643560B1 (ko) | 2014-12-17 | 2016-08-10 | 현대자동차주식회사 | 음성 인식 장치, 그를 가지는 차량 및 그 방법 |
US9903938B2 (en) | 2015-02-03 | 2018-02-27 | Nokia Technologies Oy | Radio and audio localization |
US9632664B2 (en) | 2015-03-08 | 2017-04-25 | Apple Inc. | Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback |
WO2016157658A1 (ja) | 2015-03-31 | 2016-10-06 | ソニー株式会社 | 情報処理装置、制御方法、およびプログラム |
US10165091B1 (en) | 2015-04-03 | 2018-12-25 | Sprint Communications Company L.P. | User device parameter allocation based on internet protocol version capabilities |
KR20170028628A (ko) | 2015-09-04 | 2017-03-14 | 삼성전자주식회사 | 음성인식장치, 음성인식장치의 구동방법 및 컴퓨터 판독가능 기록매체 |
US20170092278A1 (en) | 2015-09-30 | 2017-03-30 | Apple Inc. | Speaker recognition |
CN106558993A (zh) | 2015-09-30 | 2017-04-05 | 株式会社村田制作所 | Dc/dc转换装置 |
US9542941B1 (en) | 2015-10-01 | 2017-01-10 | Lenovo (Singapore) Pte. Ltd. | Situationally suspending wakeup word to enable voice command input |
US9928840B2 (en) | 2015-10-16 | 2018-03-27 | Google Llc | Hotword recognition |
US9747926B2 (en) | 2015-10-16 | 2017-08-29 | Google Inc. | Hotword recognition |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US9653075B1 (en) | 2015-11-06 | 2017-05-16 | Google Inc. | Voice commands across devices |
US20170289596A1 (en) | 2016-03-31 | 2017-10-05 | Microsoft Technology Licensing, Llc | Networked public multi-screen content delivery |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US20180133900A1 (en) * | 2016-11-15 | 2018-05-17 | JIBO, Inc. | Embodied dialog and embodied speech authoring tools for use with an expressive social robot |
US20180144308A1 (en) * | 2016-11-23 | 2018-05-24 | Dropbox, Inc. | Natural language calendar |
US20180293221A1 (en) * | 2017-02-14 | 2018-10-11 | Microsoft Technology Licensing, Llc | Speech parsing with intelligent assistant |
US11200894B2 (en) * | 2019-06-12 | 2021-12-14 | Sonos, Inc. | Network microphone device with command keyword eventing |
-
2017
- 2017-08-11 US US15/674,838 patent/US10708313B2/en active Active
- 2017-08-31 JP JP2017556912A patent/JP6586470B2/ja active Active
- 2017-08-31 KR KR1020177031603A patent/KR101996574B1/ko active IP Right Grant
- 2017-08-31 CN CN201780001651.4A patent/CN108541312A/zh active Pending
- 2017-08-31 DE DE212017000286.7U patent/DE212017000286U1/de active Active
- 2017-08-31 CN CN202210606342.2A patent/CN115168025B/zh active Active
- 2017-08-31 EP EP21203773.3A patent/EP3961372A1/de active Pending
- 2017-08-31 KR KR1020197018803A patent/KR102068271B1/ko active IP Right Grant
- 2017-08-31 KR KR1020207001011A patent/KR102098847B1/ko active IP Right Grant
- 2017-08-31 DE DE112017000142.0T patent/DE112017000142T5/de active Pending
- 2017-08-31 WO PCT/US2017/049782 patent/WO2018125307A1/en active Application Filing
- 2017-08-31 AU AU2017384996A patent/AU2017384996B2/en active Active
- 2017-08-31 EP EP17768901.5A patent/EP3360041B1/de active Active
-
2019
- 2019-09-06 JP JP2019163135A patent/JP7139295B2/ja active Active
-
2020
- 2020-06-23 US US16/909,375 patent/US11381609B2/en active Active
- 2020-08-12 AU AU2020217377A patent/AU2020217377B2/en active Active
-
2022
- 2022-07-01 US US17/856,636 patent/US11930050B2/en active Active
- 2022-09-06 JP JP2022141325A patent/JP2023002503A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
KR102068271B1 (ko) | 2020-01-20 |
AU2017384996A1 (en) | 2019-05-23 |
KR20190079716A (ko) | 2019-07-05 |
JP7139295B2 (ja) | 2022-09-20 |
WO2018125307A1 (en) | 2018-07-05 |
US20220353303A1 (en) | 2022-11-03 |
US11381609B2 (en) | 2022-07-05 |
US10708313B2 (en) | 2020-07-07 |
AU2017384996B2 (en) | 2020-05-14 |
KR102098847B1 (ko) | 2020-04-08 |
US20200322396A1 (en) | 2020-10-08 |
JP2019510247A (ja) | 2019-04-11 |
EP3961372A1 (de) | 2022-03-02 |
EP3360041A1 (de) | 2018-08-15 |
DE112017000142T5 (de) | 2018-09-13 |
KR20180087836A (ko) | 2018-08-02 |
CN108541312A (zh) | 2018-09-14 |
US11930050B2 (en) | 2024-03-12 |
EP3360041B1 (de) | 2022-02-23 |
KR101996574B1 (ko) | 2019-07-04 |
US20180191788A1 (en) | 2018-07-05 |
KR20200007095A (ko) | 2020-01-21 |
AU2020217377A1 (en) | 2020-09-03 |
AU2020217377B2 (en) | 2021-08-12 |
CN115168025B (zh) | 2023-10-03 |
JP2023002503A (ja) | 2023-01-10 |
JP2020042270A (ja) | 2020-03-19 |
JP6586470B2 (ja) | 2019-10-02 |
CN115168025A (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE212017000286U1 (de) | Multimodale Übertragung von paketierten Daten | |
US11087760B2 (en) | Multimodal transmission of packetized data | |
DE112017000122T5 (de) | Natürliche Sprachverarbeitung für den Sitzungsaufbau mit Serviceprovidern | |
DE112017000202T5 (de) | Datenstruktur-Pooling von sprachaktivierten Datenpaketen | |
DE112017000177T5 (de) | Authentifizierung von paketierten Audiosignalen | |
DE212017000032U1 (de) | Modulation von paketierten Audiosignalen | |
DE112017000131T5 (de) | Rückmeldungssteuerung für Datenübertragungen | |
DE212017000068U1 (de) | Einrichten von audio-basierten Netzwerksitzungen mit nicht registrierten Ressourcen | |
CN110140110B (zh) | 计算设备之间的内容源分配 | |
EP3519981B1 (de) | Erkennung einer doppelübertragung von paketierten daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R207 | Utility model specification | ||
R150 | Utility model maintained after payment of first maintenance fee after three years | ||
R151 | Utility model maintained after payment of second maintenance fee after six years |