DE112017000141T5 - Selektives sensorabfragen - Google Patents
Selektives sensorabfragen Download PDFInfo
- Publication number
- DE112017000141T5 DE112017000141T5 DE112017000141.2T DE112017000141T DE112017000141T5 DE 112017000141 T5 DE112017000141 T5 DE 112017000141T5 DE 112017000141 T DE112017000141 T DE 112017000141T DE 112017000141 T5 DE112017000141 T5 DE 112017000141T5
- Authority
- DE
- Germany
- Prior art keywords
- sensor
- processing system
- data processing
- data
- sensors
- 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.)
- Pending
Links
- 230000009471 action Effects 0.000 claims abstract description 157
- 230000005236 sound signal Effects 0.000 claims abstract description 81
- 238000012545 processing Methods 0.000 claims description 280
- 238000000034 method Methods 0.000 claims description 81
- 230000004044 response Effects 0.000 claims description 42
- 230000009467 reduction Effects 0.000 claims description 5
- 238000007726 management method Methods 0.000 description 85
- 238000004891 communication Methods 0.000 description 43
- 230000008569 process Effects 0.000 description 28
- 238000004590 computer program Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 238000005108 dry cleaning Methods 0.000 description 10
- 238000005070 sampling Methods 0.000 description 9
- 238000013515 script Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000002405 diagnostic procedure Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005094 computer simulation Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 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
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004140 cleaning 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
- 238000003066 decision tree Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 230000037081 physical activity Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/103—Active monitoring, e.g. heartbeat, ping or trace-route with adaptive polling, i.e. dynamically adapting the polling rate
-
- 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
- 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/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- 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
-
- 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
-
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0212—Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
-
- 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/26—Speech to text systems
-
- 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
-
- 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
- G10L2015/223—Execution procedure of a spoken command
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Acoustics & Sound (AREA)
- Artificial Intelligence (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Cardiology (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- User Interface Of Digital Computer (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Selective Calling Equipment (AREA)
Abstract
Description
- HINTERGRUND
- Die vorliegende Anmeldung beansprucht den Vorteil und die Priorität der
US-Patentanmeldung Nr. 15/395,715 - HINTERGRUND
- Paketbasierte oder anderweitige exzessive Netzwerkübertragungen von Netzwerkverkehrsdaten zwischen Computervorrichtungen können eine Computervorrichtung daran hindern, die Netzwerkverkehrsdaten richtig zu verarbeiten, eine Operation, die mit den Netzwerkverkehrsdaten verbunden ist, abzuschließen oder zeitgerecht auf die Netzwerkverkehrsdaten anzusprechen. Die exzessiven Netzwerkübertragungen von Netzwerkverkehrsdaten können auch ein Datenrouting verkomplizieren oder die Qualität der Antwort verschlechtern, wenn sich die ansprechende Computervorrichtung an oder über ihrer Verarbeitungskapazität befindet, was in einer ineffizienten Bandbreitennutzung resultieren kann. Die Steuerung von Netzwerkübertragungen, die Inhaltselementobjekten entsprechen, kann durch die große Anzahl von Inhaltselementobjekten verkompliziert werden, die Netzwerkübertragungen von Netzwerkverkehrsdaten zwischen Computervorrichtungen initiieren können.
- KURZDARSTELLUNG
- Die vorliegende Offenbarung ist generell an das selektive Abfragen von Sensoren über ein Computernetzwerk gerichtet. Beispielsweise können Computersysteme Zugriff auf Mehrsensorensysteme haben, die auf mehreren Computervorrichtungen konfiguriert sind, welche die gleichen oder ähnliche Arten von Informationen detektieren können. Es kann jedoch ressourcenintensiv sein, die gleichen oder ähnliche Arten von Informationen von mehreren Sensoren anzufordern, die entweder auf der gleichen Computervorrichtung oder einer Gruppe von Computervorrichtungen in unmittelbarer Nähe zueinander konfiguriert sind, sodass die detektierten Informationen ähnlich sind. Bestimmte Sensoren oder Computervorrichtungen, bei denen der Sensor konfiguriert ist, können des Weiteren verglichen mit anderen Sensoren oder Computervorrichtungen größere Ressourcen (z. B. Energie, Batteriestrom, Prozessorauslastung oder Bandbreite) verbrauchen. Daher können die Systeme und Verfahren der vorliegenden Offenbarung selektiv einen oder mehrere Sensoren abfragen, um Informationen auf eine Weise zu erlangen, die einen Ressourcenverbrauch reduziert.
- Die Systeme und Verfahren der vorliegenden Offenbarung richten sich im Allgemeinen an ein Datenverarbeitungssystem, das selektiv Sensoren über ein Computernetzwerk abfragt. Das Datenverarbeitungssystem kann sprachbasierte Eingaben unter Verwendung von Sprachmodellen verarbeiten, die bezüglich aggregierter Spracheingabe trainiert und mit einer Endbenutzerspracheingabe erweitert wurden. Das Datenverarbeitungssystem kann ein Template für eine Aktionsdatenstruktur basierend auf einer Anforderung und einem Triggerschlüsselwort in der Spracheingabe identifizieren. Das Datenverarbeitungssystem kann bestimmen, ein oder mehrere Felder in dem Template mit Daten zu füllen, um die Aktionsdatenstruktur zu erzeugen. Um die Felder zu füllen, kann sich das Datenverarbeitungssystem mit einer Sensorverwaltungskomponente verbinden, um Sensoren von einer oder mehreren Computervorrichtungen selektiv abzufragen, die mit dem Endbenutzer verbunden sind, der die Spracheingabe bereitgestellt hat. Die Sensorverwaltungskomponente kann eine Richtlinie oder eine Reihe von Regeln anwenden, um einen oder mehrere Sensoren zu identifizieren, die verfügbar sind und die Werte bereitstellen können, die verwendet werden, um die Felder des Templates zu füllen und die Aktionsdatenstruktur zu erzeugen. Das Datenverarbeitungssystem kann die Werte von den ausgewählten Sensoren empfangen, die Aktionsdatenstruktur erzeugen und die Datenstruktur an eine Drittanbietervorrichtung senden. Das Datenverarbeitungssystem kann dann einen Hinweis von der Drittanbietervorrichtung empfangen, dass die Operation, die der Aktionsdatenstruktur entspricht, initiiert wurde.
- Mindestens ein Aspekt ist an ein System zum selektiven Abfragen von Sensoren gerichtet. Das System kann ein Datenverarbeitungssystem umfassen. Das Datenverarbeitungssystem kann eine natürlichsprachliche Prozessor- („NLP“) -Komponente, eine Direktaktionsanwendungsprogrammierschnittstelle („API“) und eine Sensorverwaltungskomponente ausführen. Die NLP-Komponente kann über eine Schnittstelle des Datenverarbeitungssystems Datenpakete empfangen, die ein durch ein Mikrofon einer Clientvorrichtung detektiertes Eingabeaudiosignal umfassen. Der NLP kann das Eingabeaudiosignal parsen, um eine Anforderung und ein Triggerschlüsselwort zu identifizieren, das der Anforderung entspricht. Die Direktaktions-API kann als Reaktion auf die Anforderung basierend auf dem Triggerschlüsselwort ein Template für eine Aktionsdatenstruktur auswählen. Das Template kann ein erstes Feld umfassen. Die Sensorverwaltungskomponente kann mehrere verfügbare Sensoren identifizieren, die konfiguriert sind, Informationen für das erste Feld zu erlangen. Die mehreren verfügbaren Sensoren können einen ersten Sensor und einen zweiten Sensor umfassen. Die Sensorverwaltungskomponente kann einen Status von jedem der mehreren Sensoren bestimmen. Die Sensorverwaltungskomponente kann den ersten Sensor der mehreren Sensoren basierend auf dem Status auswählen. Die Sensorverwaltungskomponente kann den ersten Sensor nach Daten abfragen, die dem ersten Feld entsprechen. Die Direktaktions-API kann das erste Feld mit den Daten, die durch die Sensorverwaltungskomponente empfangen wurden, als Reaktion auf die Abfrage des ersten Sensors füllen. Die Direktaktions-API kann die Aktionsdatenstruktur basierend auf dem ersten Feld des Templates erzeugen. Die Direktaktions-API kann die Aktionsdatenstruktur an eine Drittanbietervorrichtung senden, um eine Drittanbietervorrichtung zu veranlassen, eine Operationssitzung zwischen der Drittanbietervorrichtung und der Clientvorrichtung aufzurufen. Das Datenverarbeitungssystem kann von der Drittanbietervorrichtung einen Hinweis empfangen, dass die Drittanbietervorrichtung die Operationssitzung mit der Clientvorrichtung eingerichtet hat.
- Mindestens ein Aspekt ist an ein Verfahren zum selektiven Abfragen von Sensoren gerichtet. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem über eine Schnittstelle Datenpakete empfängt, die ein durch ein Mikrofon einer Clientvorrichtung detektiertes Eingabeaudiosignal umfassen. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem das Eingabeaudiosignal parst, um eine Anforderung und ein Triggerschlüsselwort zu identifizieren, das der Anforderung entspricht. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem basierend auf dem Triggerschlüsselwort ein Template für eine Aktionsdatenstruktur als Reaktion auf die Anforderung auswählt. Das Template kann ein erstes Feld umfassen. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem mehrere verfügbare Sensoren identifiziert, die konfiguriert sind, Informationen für das erste Feld zu erlangen. Die mehreren verfügbaren Sensoren können einen ersten Sensor und einen zweiten Sensor umfassen. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem einen Status von jedem von den mehreren Sensoren bestimmt.
- Das Verfahren kann umfassen, dass das Datenverarbeitungssystem den ersten Sensor der mehreren Sensoren basierend auf dem Status auswählt. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem den ersten Sensor nach Daten abfragt, die dem ersten Feld entsprechen. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem das erste Feld basierend auf den Daten, die durch die Sensorverwaltungskomponente empfangen wurden, als Reaktion auf die Abfrage des ersten Sensors mit Daten füllt. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem durch die Direktaktions-API die Aktionsdatenstruktur basierend auf dem ersten Feld des Templates erzeugt. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem die Aktionsdatenstruktur zu einer Drittanbietervorrichtung sendet. Das Verfahren kann umfassen, dass das Datenverarbeitungssystem von der Drittanbietervorrichtung einen Hinweis empfängt, dass die Drittanbietervorrichtung die Operationssitzung mit der Clientvorrichtung eingerichtet hat.
- Diese und andere Aspekte und Implementierungen werden nachfolgend im Detail beschrieben. Die vorstehenden Informationen und die folgende ausführliche Beschreibung umfassen veranschaulichende Beispiele von verschiedenen Aspekten und Implementierungen und stellen eine Übersicht oder ein Gerüst zum Verständnis der Art und des Charakters der beanspruchten Aspekte und Implementierungen bereit. Die Zeichnungen stellen eine Veranschaulichung und ein weitergehendes Verständnis der verschiedenen Aspekte und Implementierungen bereit und sind in diese Patentschrift einbezogen und bilden einen Teil davon.
- Figurenliste
- Die begleitenden Zeichnungen sollen nicht maßstäblich sein. Gleiche Bezugsnummern und Bezeichnungen in den verschiedenen Zeichnungen verweisen auf ähnliche Elemente. Zum Zwecke der Übersichtlichkeit kann nicht jede Komponente in jeder Zeichnung bezeichnet sein. In den Zeichnungen:
-
1 ist eine Veranschaulichung eines Systems zum selektiven Abfragen von Sensoren über ein Computernetzwerk. -
2 ist eine Veranschaulichung einer Systemoperation zum selektiven Abfragen von Sensoren über ein Computernetzwerk. -
3 ist eine Veranschaulichung eines Verfahrens zum selektiven Abfragen von Sensoren über ein Computernetzwerk. -
4 ist 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, die Verfahren, Vorrichtungen und Systeme zum selektiven Abfragen von Sensoren über ein Computernetzwerk betreffen, und von Implementierungen davon. Die verschiedenen Konzepte, die vorstehend vorgestellt wurden und nachstehend ausführlicher erörtert werden, können in irgendeiner von zahlreichen Arten implementiert werden.
- Die vorliegende Offenbarung ist generell an das selektive Abfragen von Sensoren über ein Computernetzwerk gerichtet. Beispielsweise können Computersysteme Zugriff auf Mehrsensorensysteme haben, die auf mehreren Computervorrichtungen konfiguriert sind, welche die gleichen oder ähnliche Arten von Informationen detektieren können. Es kann jedoch ressourcenintensiv sein, die gleichen oder ähnliche Arten von Informationen von mehreren Sensoren anzufordern, die entweder auf der gleichen Computervorrichtung oder einer Gruppe von Computervorrichtungen in unmittelbarer Nähe zueinander konfiguriert sind, sodass die detektierten Informationen ähnlich sind. Bestimmte Sensoren oder Computervorrichtungen, bei denen der Sensor konfiguriert ist, können des Weiteren verglichen mit anderen Sensoren oder Computervorrichtungen größere Ressourcen (z. B. Energie, Batteriestrom, Prozessorauslastung oder Bandbreite) verbrauchen. Daher können die Systeme und Verfahren der vorliegenden Offenbarung selektiv einen oder mehrere Sensoren abfragen, um Informationen auf eine Weise zu erlangen, die einen Ressourcenverbrauch reduziert.
- Die Systeme und Verfahren der vorliegenden Offenbarung richten sich im Allgemeinen an ein Datenverarbeitungssystem, das selektiv Sensoren über ein Computernetzwerk abfragt. Das Datenverarbeitungssystem kann sprachbasierte Eingaben unter Verwendung von Sprachmodellen verarbeiten, die bezüglich aggregierter Spracheingabe trainiert und mit einer Endbenutzerspracheingabe erweitert wurden. Das Datenverarbeitungssystem kann ein Template für eine Aktionsdatenstruktur basierend auf einer Anforderung und einem Triggerschlüsselwort in der Spracheingabe identifizieren. Das Datenverarbeitungssystem kann bestimmen, ein oder mehrere Felder in dem Template mit Daten zu füllen, um die Aktionsdatenstruktur zu erzeugen. Um die Felder zu füllen, kann sich das Datenverarbeitungssystem mit einer Sensorverwaltungskomponente verbinden, um Sensoren von einer oder mehreren Computervorrichtungen selektiv abzufragen, die mit dem Endbenutzer verbunden sind, der die Spracheingabe bereitgestellt hat. Die Sensorverwaltungskomponente kann eine Richtlinie oder eine Reihe von Regeln anwenden, um einen oder mehrere Sensoren zu identifizieren, die verfügbar sind und die Werte bereitstellen können, die verwendet werden, um die Felder des Templates zu füllen und die Aktionsdatenstruktur zu erzeugen. Das Datenverarbeitungssystem kann die Werte von den ausgewählten Sensoren empfangen, die Aktionsdatenstruktur erzeugen und die Datenstruktur an eine Drittanbietervorrichtung senden. Das Datenverarbeitungssystem kann dann einen Hinweis von der Drittanbietervorrichtung empfangen, dass die Operation, die der Aktionsdatenstruktur entspricht, initiiert wurde.
- Das Datenverarbeitungssystem kann beispielsweise generell die Sensorauswahl verbessern und Sensorkonfigurationen für das Erfassen von Daten zur Verwendung durch ein sprachbasiertes System optimieren. Das Datenverarbeitungssystem kann einen Datenabgleich oder einen Batch-Upload ausführen, wenn eine Vorrichtung von einem Offline-Status in einen Online-Status eintritt. Das Datenverarbeitungssystem kann Sensoren basierend auf Charakteristiken, die mit den Daten, die erfasst werden, dem Benutzer oder der Task verknüpft sind, aktivieren oder deaktivieren. Das Datenverarbeitungssystem kann Sensoren basierend auf einer Richtlinie, welche die Datenqualität verbessert, während die Ressourcennutzung reduziert wird, selektiv freigeben. Das Datenverarbeitungssystem kann beispielsweise bestimmen, dass der Benutzer mehrere Vorrichtungen mit Ortssensoren bei sich trägt. Das Datenverarbeitungssystem kann bestimmen, welche Vorrichtung den größten verbleibenden Strom aufweist, und nur den Ort von dieser Vorrichtung anfordern. Bei einem weiteren Beispiel kann das Datenverarbeitungssystem bestimmen, dass eine erste Vorrichtung bereits Ortsinformationen (z. B. über eine Navigationsanwendung) erlangt, und kann diese Ortsdaten Huckepack übernehmen.
-
1 veranschaulicht ein beispielhaftes System100 zum selektiven Abfragen von Sensoren über ein Computernetzwerk. Das System100 kann eine Inhaltsauswahlinfrastruktur umfassen. Das System100 kann ein Datenverarbeitungssystem102 umfassen. Das Datenverarbeitungssystem102 kann mit einem oder mehreren von einer Inhaltsanbietercomputervorrichtung106 , einer Dienstanbietercomputervorrichtung108 oder einer Clientcomputervorrichtung104 über ein Netzwerk105 kommunizieren. Das Netzwerk 105 kann Computernetzwerke wie das Internet, Local-, Wide-, Metro- oder andere Area Networks, Intranets, Satellitennetzwerke oder andere Kommunikationsnetzwerke wie mobile Sprach- oder Datenmobiltelefonnetze umfassen. Das Netzwerk105 kann zum Zugreifen auf Informationsressourcen wie Webseiten, Websites, Domänennamen oder Uniform Resource Locators (URLs) verwendet werden, die auf mindestens einer Computervorrichtung104 wie einem Laptop, Desktop, Tablet, persönlichen digitalen Assistenten, Smartphone, tragbaren Computern oder einem Lautsprecher präsentiert, ausgegeben, gerendert oder angezeigt werden können. Über das Netzwerk105 kann ein Benutzer der Computervorrichtung104 beispielsweise auf Informationen oder Daten zugreifen, die von einem Dienstanbieter108 oder einer Inhaltsanbieter106 bereitgestellt werden. - Das Netzwerk
105 kann ein Anzeigenetzwerk, wie z. B. eine im Internet verfügbare Untergruppe von Informationsquellen, umfassen oder bilden, die mit einem Inhaltsanordnungs- oder Suchmaschinenergebnissystem verknüpft sind, oder die auswählbar sind, sodass sie Drittanbieterinhaltselemente als Teil einer Inhaltselementeanordnungskampagne umfassen. Das Netzwerk105 kann durch das Datenverarbeitungssystem102 verwendet werden, um auf Informationsressourcen wie Webseiten, Websites, Domänennamen oder URL-Adressen zuzugreifen, die durch die Clientcomputervorrichtung104 präsentiert, ausgegeben, gerendert oder angezeigt werden können. Über das Netzwerk105 kann ein Benutzer der Clientcomputervorrichtung104 beispielsweise auf Informationen oder Daten zugreifen, die durch die Inhaltsanbietercomputervorrichtung106 oder die Dienstanbietercomputervorrichtung108 bereitgestellt werden. - Das Netzwerk
105 kann eine beliebige Art oder Form von Netzwerk sein und irgendwelche der folgenden umfassen: ein Point-to-Point-Netzwerk, ein Broadcast-Netzwerk, ein Wide Area Network, ein Local Area Network, ein Telekommunikationsnetzwerk, ein Datenkommunikationsnetzwerk, ein Computernetzwerk, ein ATM-(Asynchronous Transfer Mode) -Netzwerk, ein SONET- (Synchronous Optical Network) -Netzwerk, ein SDH-(Synchronous Digital Hierarchy) -Netzwerk, ein Drahtlosnetzwerk und ein drahtgebundenes Netzwerk. Das Netzwerk105 kann eine drahtlose Verbindung, wie einen Infrarotkanal oder Satellitenband, umfassen. Die Topologie des Netzwerks105 kann eine Bus-, Stern- oder Ringnetzwerktopologie umfassen. Das Netzwerk kann mobile Telefonnetzwerke unter Verwendung von einem beliebigen Protokoll oder beliebigen Protokollen umfassen, die zur Kommunikation mit mobilen Vorrichtungen geeignet sind, darunter 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 System
100 kann mindestens ein Datenverarbeitungssystem102 umfassen. Das Datenverarbeitungssystem102 kann mindestens eine logische Vorrichtung wie eine Computervorrichtung mit einem Prozessor zur Kommunikation über das Netzwerk105 z. B. mit der Computervorrichtung104 , der Inhaltsanbietervorrichtung106 (der Inhaltsanbietercomputervorrichtung106 ) oder der Dienstanbietervorrichtung108 (oder dem Dienstanbieter108 ) umfassen. Das Datenverarbeitungssystem102 kann mindestens eine Berechnungsressource, einen Server, Prozessor oder Speicher umfassen. Das Datenverarbeitungssystem102 kann zum Beispiel eine Vielzahl von Computerressourcen oder Server umfassen, die sich in mindestens einem Datenzentrum befinden. Das Datenverarbeitungssystem102 kann mehrere logisch gruppierte Server umfassen und verteilte Berechnungstechniken erleichtern. Die logische Gruppe von Servern kann als ein Rechenzentrum, eine Serverfarm oder eine Computerfarm bezeichnet werden. Die Server können auch auf verschiedene Standorte verteilt sein. Ein Datenzentrum oder eine Computerfarm kann als eine einzelne Entität verwaltet werden oder die Computerfarm kann eine Vielzahl von Computerfarmen umfassen. 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. - Server in der Computerfarm können in Rack-Systemen hoher Dichte zusammen mit zugehörigen Speichersystemen aufbewahrt werden und sich in einem Enterprise-Datenzentrum befinden. Wenn Server auf diese Weise konsolidiert werden, lassen sich zum Beispiel die Systemverwaltung, Datensicherheit, physische Sicherheit des Systems sowie die Systemperformance verbessern, indem Server und Hochleistungsspeichersysteme in lokalisierten Hochleistungsnetzwerken vorgesehen werden. Die Zentralisierung aller oder einiger der Datenverarbeitungssystem-
102 -Komponenten einschließlich Server und Speichersysteme und das Koppeln dieser mit verbesserten Systemmanagementwerkzeugen ermöglicht eine effizientere Verwendung von Serverressourcen, was Strom- und Verarbeitungsanforderungen spart und die Bandbreitenverwendung reduziert. - Das System
100 kann mindestens eine Dienstanbietervorrichtung108 umfassen oder darauf zugreifen oder anderweitig damit interagieren. Die Dienstanbietervorrichtung108 kann mindestens eine logische Vorrichtung wie eine Computervorrichtung mit einem Prozessor zur Kommunikation über das Netzwerk105 z. B. mit der Computervorrichtung 104, dem Datenverarbeitungssystem102 oder dem Inhaltsanbieter106 umfassen. Die Dienstanbietervorrichtung108 kann mindestens eine Berechnungsressource, einen Server, Prozessor oder Speicher umfassen. Beispielsweise kann die Dienstanbietervorrichtung108 mehrere in mindestens einem Datenzentrum lokalisierte Berechnungsressourcen oder Server umfassen. Die Dienstanbietervorrichtung108 kann eine oder mehrere Komponenten oder Funktionalitäten des Datenverarbeitungssystems102 umfassen. - Die Inhaltsanbietercomputervorrichtung
106 kann audiobasierte Inhaltselemente zum Anzeigen durch die Clientcomputervorrichtung104 als ein Audioausgabeinhaltselement bereitstellen. Das Inhaltselement kann ein Angebot für eine Ware oder einen Dienst wie eine sprachbasierte Nachricht umfassen, die besagt: „Möchten Sie, dass ich Ihnen ein Taxi bestelle?“ Die Inhaltsanbietercomputervorrichtung155 kann beispielsweise einen Speicher umfassen, um eine Reihe von Audioinhaltselementen zu speichern, die als Reaktion auf eine sprachbasierte Abfrage bereitgestellt werden können. Die Inhaltsanbietercomputervorrichtung106 kann auch audiobasierte Inhaltselemente (oder andere Inhaltselemente) an das Datenverarbeitungssystem102 bereitstellen, wobei diese im Datenbehälter124 gespeichert werden können. Das Datenverarbeitungssystem102 kann die Audioinhaltselemente auswählen und die Audioinhaltselemente an die Clientcomputervorrichtung104 bereitstellen (oder die Inhaltsanbietercomputervorrichtung 104 anweisen, diese bereitzustellen). Die audiobasierten Inhaltselemente können ausschließlich Audio sein oder sie können mit Text-, Bild- oder Videodaten kombiniert sein. - Die Dienstanbietervorrichtung
108 kann mindestens eine natürlichsprachliche Prozessorkomponente142 eines Dienstanbieters und eine Dienstanbieterschnittstelle144 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Die Dienstanbietercomputervorrichtung108 kann mindestens eine natürlichsprachliche Prozessor- (NLP) -Komponente 142 eines Dienstanbieters und mindestens eine Dienstanbieterschnittstelle144 umfassen. Die Dienstanbieter-NLP-Komponente142 (oder andere Komponenten wie eine Direktaktions-API der Dienstanbietercomputervorrichtung 108) kann mit der Clientcomputervorrichtung104 (über das Datenverarbeitungssystem102 oder durch Umgehen des Datenverarbeitungssystems102 ) eingreifen, um eine Hin- und Rück-Echtzeitsprache oder audiobasierte Konversation (z. B. eine Sitzung) zwischen der Clientcomputervorrichtung104 und der Dienstanbietercomputervorrichtung108 zu erzeugen. Der Dienstanbieter-NLP142 kann eine oder mehrere Funktionen oder Merkmale wie die NLP-Komponente112 des Datenverarbeitungssystems102 umfassen. Beispielsweise kann die Dienstanbieterschnittstelle144 Datennachrichten von der Direktaktions-API116 des Datenverarbeitungssystems102 empfangen oder an diese bereitstellen. Die Dienstanbietercomputervorrichtung108 und die Inhaltsanbietercomputervorrichtung106 können mit der gleichen Einheit verknüpft sein. Die Inhaltsanbietercomputervorrichtung106 kann beispielsweise Inhaltselemente für einen Fahrgemeinschaftsdienst erzeugen, speichern oder bereitstellen und die Computervorrichtung108 des Dienstanbieters kann eine Sitzung mit der Clientcomputervorrichtung106 einrichten, um ein Taxi oder ein Fahrzeug des Carsharing-Dienstes bereitzustellen und den Endbenutzer der Clientcomputervorrichtung104 abzuholen. Das Datenverarbeitungssystem102 kann über die Direktaktions-API116 , die NLP-Komponente112 oder andere Komponenten auch die Sitzung mit der Clientcomputervorrichtung einrichten, welche die Computervorrichtung des Dienstanbieters 104 einschließt oder umgeht, um beispielsweise ein Taxi oder ein Fahrzeug des Carsharing-Dienstes bereitzustellen. - Die Computervorrichtung
104 kann mindestens einen Sensor134 , Wandler136 , Audiotreiber138 oder Vorprozessor140 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Der Sensor134 kann beispielsweise einen Umgebungslichtsensor, Näherungssensor, Temperatursensor, Beschleunigungsmesser, Gyroskop, Bewegungsdetektor, GPS-Sensor, Ortssensor, Mikrofon oder Berührungssensor umfassen. Der Transducer136 kann einen Lautsprecher oder ein Mikrofon umfassen. Der Audiotreiber138 kann eine Softwareschnittstelle an den Hardwarewandler136 bereitstellen. Der Audiotreiber kann die Audiodatei oder andere Befehle ausführen, die durch das Datenverarbeitungssystem102 bereitgestellt werden, um den Wandler136 zu steuern, eine entsprechende akustische Welle oder Schallwelle zu erzeugen. Der Vorprozessor140 kann konfiguriert sein, ein Schlüsselwort zu detektieren und eine Aktion basierend auf dem Schlüsselwort auszuführen. Der Vorprozessor140 kann einen oder mehrere Begriffe herausfiltern oder die Begriffe vor dem Senden der Begriffe an das Datenverarbeitungssystem102 für ein weiteres Verarbeiten modifizieren. Der Vorprozessor 140 kann die analogen Audiosignale, die durch das Mikrofon detektiert werden, in ein digitales Audiosignal umwandeln und ein oder mehrere Datenpakete, die das digitale Audiosignal transportieren, über das Netzwerk105 an das Datenverarbeitungssystem102 senden. In einigen Fällen kann der Vorprozessor140 Datenpakete, die einige oder alle der eingegebenen Audiosignale übertragen, als Reaktion auf das Detektieren eines Befehls eine solche Übertragung auszuführen, übertragen. Der Befehl kann beispielsweise ein Triggerschlüsselwort oder ein anderes Schlüsselwort oder eine Genehmigung umfassen, Datenpakete, die das eingegebene Audiosignal umfassen, an das Datenverarbeitungssystem 102 zu senden. Die Computervorrichtung104 kann eine Anzeige umfassen oder auch nicht; beispielsweise kann die Computervorrichtung begrenzte Arten von Benutzerschnittstellen wie ein Mikrofon und einen Lautsprecher umfassen. In einigen Fällen kann die primäre Benutzerschnittstelle der Computervorrichtung104 ein Mikrofon und ein Lautsprecher sein. - Die Clientcomputervorrichtung
104 kann mit einem Endbenutzer verbunden sein, der Sprachabfragen als Audioeingabe in die Clientcomputervorrichtung104 (über den Sensor 134) eingibt, und eine Audioausgabe in Form einer computergenerierten Stimme empfängt, die von dem Datenverarbeitungssystem102 (oder der Inhaltsanbietercomputervorrichtung 106 oder der Dienstanbietercomputervorrichtung108 ) an die Clientcomputervorrichtung104 bereitgestellt und vom Wandler136 (z. B. einem Lautsprecher) ausgegeben werden kann. Die computergenerierte Sprache kann Aufzeichnungen von einer wirklichen Person oder von einer computergenerierten Sprache umfassen. - Der Datenbehälter
124 kann eine oder mehrere lokale oder verteilte Datenbanken umfassen und kann ein Datenbankmanagementsystem umfassen. Der Datenbehälter124 kann Computerdatenspeicher oder -memory umfassen und kann neben anderen Daten einen oder mehrere Parameter126 , eine oder mehrere Richtlinien128 , Inhaltsdaten130 oder Templates 132 speichern. Die Parameter126 , Richtlinien128 und Templates132 können Informationen wie Regeln bezüglich einer sprachbasierten Sitzung zwischen der Clientcomputervorrichtung 104 und dem Datenverarbeitungssystem102 (oder der Dienstanbietercomputervorrichtung 108) umfassen. Die Inhaltsdaten130 können Inhaltselemente für eine Audioausgabe oder verknüpfte Metadaten sowie eingegebene Audionachrichten, die Teil von einer oder mehreren Kommunikationssitzungen mit der Clientcomputervorrichtung104 sein können, umfassen. Die Kommunikationssitzung kann eine Operationssitzung umfassen oder als eine solche bezeichnet werden. In einigen Fällen kann eine Operationssitzung auf eine Kommunikationssitzung verweisen, in der eine oder mehrere Operationen durch die Drittanbietervorrichtung108 , eine Clientcomputervorrichtung, die Inhaltsanbieter-Vorrichtung106 , das Datenverarbeitungssystem102 oder eine andere Komponente oder Einheit ausgeführt werden. - Das Datenverarbeitungssystem
102 kann ein Inhaltsplatzierungssystem umfassen, das mindestens eine Rechenressource oder einen Server aufweist. Das Datenverarbeitungssystem102 kann mindestens eine Schnittstelle110 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens eine natürlichsprachliche Prozessorkomponente112 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem102 kann mindestens eine Direktaktionsanwendungsprogrammierschnittstelle („API“) 116 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens einen Sitzungs-Handler114 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem102 kann mindestens eine Inhaltsauswahlkomponente118 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem102 kann mindestens eine Sensorverwaltungskomponente120 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem102 kann mindestens einen Audiosignalerzeuger122 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem102 kann mindestens einen Datenbehälter124 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Der mindestens ein Datenbehälter124 kann in einer oder mehreren Datenstrukturen oder Datenbanken die Parameter126 , Richtlinien128 , Inhaltsdaten130 oder Templates132 umfassen oder speichern. Die Parameter126 können beispielsweise Schwellenwerte, Abstände, Zeitintervalle, Dauer, Punktzahlen oder Gewichte umfassen. Die Inhaltsdaten130 können zum Beispiel Inhaltskampagneninformationen, Inhaltsgruppen, Inhaltsauswahlkriterien, Inhaltselementobjekte oder andere Informationen umfassen, die von einem Inhaltsanbieter106 bereitgestellt oder von dem Datenverarbeitungssystem erlangt oder bestimmt werden, um die Inhaltsauswahl zu erleichtern. Die Inhaltsdaten130 können beispielsweise eine historische Performance einer Inhaltskampagne umfassen. - Die Schnittstelle
110 , die natürlichsprachliche Prozessorkomponente112 , der Sitzungs-Handler114 , die Direktaktions-API116 , Inhaltsselektorkomponente118 , Sensorverwaltungskomponente120 oder Audiosignalerzeugerkomponente122 kann jeweils mindestens eine Verarbeitungseinheit oder eine andere Logikvorrichtung wie eine programmierbare logische Anordnung-Engine oder ein Modul, das konfiguriert ist, mit dem Datenbankrepositorium oder der Datenbank124 zu kommunizieren, umfassen. Die Schnittstelle110 , die natürlichsprachliche Prozessorkomponente112 , der Sitzungs-Handler 114, die Direktaktions-API116 , Inhaltsselektorkomponente118 , Sensorverwaltungskomponente120 , Audiosignalerzeugerkomponente122 und der Datenbehälter124 können separate Komponenten, eine einzelne Komponente oder Teil des Datenverarbeitungssystems102 sein. Das System100 und seine Komponenten, wie beispielsweise ein Datenverarbeitungssystem102 , können Hardwareelemente wie einen oder mehrere Prozessoren, logische Vorrichtungen oder Schaltungen umfassen. - Das Datenverarbeitungssystem
102 kann anonyme Informationen über Computernetzwerkaktivitäten erlangen, die mit mehreren Computervorrichtungen104 verknüpft sind. Ein Benutzer einer Computervorrichtung104 kann das Datenverarbeitungssystem102 gezielt dazu autorisieren, Informationen über Netzwerkaktivitäten, die der Computervorrichtung104 des Benutzers entsprechen, zu erlangen. Das Datenverarbeitungssystem102 kann beispielsweise den Benutzer der Computervorrichtung104 zum Zustimmen veranlassen, um eine oder mehrere Informationen über Netzwerkaktivitätsarten zu erlangen. Die Identität des Benutzers der Computervorrichtung104 kann anonym bleiben und die Computervorrichtung104 kann mit einer eindeutigen Kennung (z. B. einer eindeutigen Kennung für den Benutzer oder die Computervorrichtung, die durch das Datenverarbeitungssystem oder einen Benutzer der Computervorrichtung bereitgestellt ist) verknüpft sein. Das Datenverarbeitungssystem kann jede Beobachtung mit einer entsprechenden eindeutigen Kennung verknüpfen. - Ein Inhaltsanbieter
106 kann eine elektronische Inhaltskampagne einrichten. Die elektronische Inhaltskampagne kann als Inhaltsdaten130 im Datenbehälter124 gespeichert werden. Eine elektronische Inhaltskampagne kann sich auf eine oder mehrere Inhaltsgruppen beziehen, die einem gemeinsamen Thema entsprechen. Eine Inhaltskampagne kann eine hierarchische Datenstruktur umfassen, die Inhaltsgruppen, Inhaltselementdatenobjekte und Inhaltsauswahlkriterien umfasst. Um eine Inhaltskampagne zu erzeugen, kann die der Inhaltsanbieter106 Werte für Kampagnenebenenparameter der Inhaltskampagne spezifizieren. Die Kampagnenebenenparameter können zum Beispiel umfassen: einen Kampagnennamen, ein bevorzugtes Inhaltsnetzwerk für die Platzierung von Inhaltselementobjekten, einen Wert für Ressourcen zur Verwendung für die Inhaltskampagne, Start- und Enddaten für die Inhaltskampagne, eine Dauer der Inhaltskampagne, einen Zeitplan für die Platzierung von Inhaltselementobjekten, Sprache, geografische Standorte und die Art von Computervorrichtungen, auf denen Inhaltselementobjekte bereitgestellt werden sollen. In einigen Fällen kann ein Eindruck darauf verweisen, wann ein Inhaltselementobjekt von seiner Quelle (z. B. Datenverarbeitungssystem102 oder Inhaltsanbieter106 ) abgeholt wird und zählbar ist. In einigen Fällen können angesichts der Möglichkeit von betrügerischen Klicks robotische Aktivitäten gefiltert und als ein Eindruck ausgeschlossen werden. Daher kann sich in manchen Fällen ein Eindruck auf eine Messung von Antworten von einem Webserver hinsichtlich einer Seitenabfrage durch einen Browser beziehen, der von automatischer Aktivität und Fehlercodes gefiltert und an einem Punkt so nah wie möglich an einer Gelegenheit aufgezeichnet wird, das Inhaltselementobjekt zur Anzeige auf der Computervorrichtung104 zu rendern. In einigen Fällen kann sich ein Eindruck auf einen sichtbaren oder hörbaren Eindruck beziehen; z. B. ist das Inhaltselementobjekt zumindest teilweise (z.B. 20 %, 30 %, 30 %, 40 %, 50 %, 60 %, 70 % oder mehr) auf einer Anzeigevorrichtung der Clientcomputervorrichtung104 sichtbar oder über einen Lautsprecher136 der Computervorrichtung104 hörbar. Ein Klick oder eine Auswahl kann sich auf eine Benutzerinteraktion mit dem Inhaltselementobjekt beziehen, wie beispielsweise auf eine Sprachantwort auf einen hörbaren Eindruck, einen Mausklick, eine Berührungsinteraktion, eine Geste, ein Schütteln, eine Audiointeraktion oder einen Tastaturklick. Eine Konversation kann sich auf einen Benutzer beziehen, der hinsichtlich des Inhaltselementobjekts eine gewünschte Aktion ausführt (z. B. Kauf eines Produkts oder Service, Teilnahme an einer Umfrage, Besuch eines physischen Geschäfts, das dem Inhaltselement entspricht, oder Abschließen einer elektronischen Transaktion). - Der Inhaltsanbieter
106 kann außerdem eine oder mehrere Inhaltsgruppen für eine Inhaltskampagne einrichten. Eine Inhaltsgruppe umfasst ein oder mehrere Inhaltselementobjekte und entsprechende Inhaltsauswahlkriterien, wie Schlüsselwörter, Worte, Begriffe, Ausdrücke, geografische Orte, Computervorrichtungstyp, Tageszeit, Interesse, Thema oder Vertikale. Inhaltsgruppen unter der gleichen Inhaltskampagne können die gleichen Kampagnenebenenparameter teilen, können aber maßgeschneiderte Spezifikationen für bestimmte Inhaltsgruppenebenenparameter aufweisen, wie beispielsweise Schlüsselwörter, negative Schlüsselwörter (z. B. diese Anordnung des Blocks des Inhaltselements in Gegenwart des negativen Schlüsselworts bei Hauptinhalt), Angebote für Schlüsselwörter oder Parameter, die mit dem Angebot oder der Inhaltskampagne verbunden sind. - Um eine neue Inhaltsgruppe zu erzeugen, kann der Inhaltsanbieter Werte für die Inhaltsgruppenebenenparameter der Inhaltsgruppe bereitstellen. Die Inhaltsgruppenebenenparameter umfassen beispielsweise einen Inhaltsgruppennamen oder ein Inhaltsgruppenthema und Angebote für unterschiedliche Inhaltsplatzierungsmöglichkeiten (z. B. automatische Anordnung oder verwaltete Anordnung) oder Ergebnisse (z. B. Klicks, Eindrücke oder Konvertierungen). Ein Inhaltsgruppenname oder Inhaltsgruppenthema kann ein oder mehrere Begriffe sein, das der Inhaltsanbieter
106 verwenden kann, um ein Thema oder Gegenstand zu erfassen, für die Inhaltselementobjekte der Inhaltsgruppe zum Anzeigen auszuwählen sind. Ein Autohaus kann beispielsweise eine unterschiedliche Inhaltsgruppe für jede Fahrzeugmarke erzeugen, die es führt, und kann weiter eine unterschiedliche Inhaltsgruppe für jedes Modell eines Fahrzeugs erzeugen, das es führt. Beispiele der Inhaltsgruppenthemen, die das Autohaus verwenden kann, umfassen beispielsweise „Rennwagen Marke A“, „Rennwagen Marke B“, „Sedan Marke C“, „Lastwagen Marke C“, „Hybrid Marke C“ oder „Hybrid Marke D“. Ein beispielhaftes Inhaltskampagnenthema kann „Hybrid“ sein und es kann beispielsweise Inhaltsgruppen sowohl für den „Hybrid Marke C“ als auch für den „Hybrid Marke D“ umfassen. - Der Inhaltsanbieter
106 kann ein oder mehrere Schlüsselwörter und Inhaltselementobjekte für jede Inhaltsgruppe bereitstellen. Schlüsselwörter können Begriffe beinhalten, die für das Produkt oder die Dienstleistungen relevant sind, das oder die mit dem Inhaltselementobjekt verknüpft sind oder von diesem identifiziert werden. Ein Schlüsselwort kann ein oder mehrere Begriffe oder Phrasen umfassen. Das Autohaus kann beispielsweise „Rennwagen“, „Sechszylinder-V-Motor“, „Vierradantrieb“, „Kraftstoffeffizienz“ als Schlüsselwörter für eine Inhaltsgruppe oder Inhaltskampagne umfassen. In einigen Fällen können negative Schlüsselwörter durch den Inhaltsanbieter spezifiziert werden, um eine Inhaltsplatzierung bei bestimmten Begriffen oder Schlüsselwörtern zu vermeiden, zu verhindern, zu blockieren oder zu deaktivieren. Der Inhaltsanbieter kann einen Typ der Übereinstimmung festlegen (z. B. genaue Übereinstimmung, Phrasenübereinstimmung oder allgemeine Übereinstimmung), der zur Auswahl von Inhaltselementobjekten verwendet wird. - Der Inhaltsanbieter
106 kann ein oder mehrere von dem Datenverarbeitungssystem 102 zu verwendende Schlüsselwörter bereitstellen, um ein Inhaltselementobjekt auszuwählen, das durch den Inhaltsanbieter106 bereitgestellt wird. Der Inhaltsanbieter106 kann ein oder mehrere Schlüsselwörter zum Anbieten identifizieren und weiter Angebotsbeträge für verschiedene Schlüsselwörter bereitstellen. Der Inhaltsanbieter106 kann durch das Datenverarbeitungssystem102 zu verwendende zusätzliche Inhaltsauswahlkriterien bereitstellen, um Inhaltselementobjekte auszuwählen. Mehrere Inhaltsanbieter106 können mit den gleichen oder unterschiedlichen Schlüsselwörtern ein Angebot machen und das Datenverarbeitungssystem102 kann einen Inhaltsauswahlprozess oder eine Werbeauktion als Reaktion auf das Empfangen eines Hinweises auf ein Schlüsselwort einer elektronischen Nachricht ausführen. - Der Inhaltsanbieter
106 kann ein oder mehrere Inhaltselementobjekte zur Auswahl durch das Datenverarbeitungssystem102 bereitstellen. Das Datenverarbeitungssystem102 kann (z. B. über die Inhaltsauswahlkomponente118 ) die Inhaltselementobjekte auswählen, wenn eine Inhaltsplatzierungsmöglichkeit verfügbar wird, die mit der Ressourcenzuordnung, dem Inhaltszeitplan, den maximalen Angeboten, Schlüsselwörtern und anderen Auswahlkriterien übereinstimmt, die für die Inhaltsgruppe spezifiziert sind. Unterschiedliche Arten von Inhaltselementobjekten können in eine Inhaltsgruppe eingeschlossen werden, wie beispielsweise ein Sprachinhaltselement, Audioinhaltselement, ein Textinhaltselement, ein Bildinhaltselement, Videoinhaltselement, Multimediainhaltselement oder ein Inhaltselementlink. Nach dem Auswählen eines Inhaltselements kann das Datenverarbeitungssystem102 das Inhaltselementobjekt zum Rendern auf einer Computervorrichtung104 oder einer Anzeigevorrichtung der Computervorrichtung104 senden. Rendern kann das Anzeigen des Inhaltselements auf einer Anzeigevorrichtung oder das Abspielen des Inhaltselements über einen Lautsprecher der Computervorrichtung104 umfassen. Das Datenverarbeitungssystem102 kann an eine Computervorrichtung104 Befehle bereitstellen, um das Inhaltselementobjekt zu rendern. Das Datenverarbeitungssystem102 kann die Computervorrichtung104 oder einen Audiotreiber 138 der Computervorrichtung104 anweisen, Audiosignale oder Schallwellen zu erzeugen. - Das Datenverarbeitungssystem
102 kann eine Schnittstellenkomponente110 umfassen, die konzipiert, konfiguriert, aufgebaut oder betriebsfähig ist, Informationen unter Verwendung von beispielsweise Datenpaketen zu empfangen und zu senden. Die Schnittstelle110 kann Informationen unter Verwendung eines oder mehrerer Protokolle wie einem Netzwerkprotokoll senden und empfangen. Die Schnittstelle110 kann eine Hardwareschnittstelle, eine Softwareschnittstelle, eine verdrahtete Schnittstelle oder eine drahtlose Schnittstelle umfassen. Die Schnittstelle110 kann das Übersetzen oder Formatieren von Daten von einem Format in ein anderes erleichtern. Die Schnittstelle110 kann beispielsweise eine Anwendungsprogrammierschnittstelle umfassen, die Definitionen zum Kommunizieren zwischen verschiedenen Komponenten wie Softwarekomponenten umfasst. - Das Datenverarbeitungssystem
102 kann eine Anwendung, ein Skript oder ein Programm umfassen, das auf der Clientcomputervorrichtung104 installiert ist, wie beispielsweise eine Anwendung, um eingegebene Audiosignale an die Schnittstelle110 des Datenverarbeitungssystems102 zu kommunizieren, und um Komponenten der Clientcomputervorrichtung anzusteuern, um ausgegebene Audiosignale zu rendern. Das Datenverarbeitungssystem102 kann Datenpakete oder ein anderes Signal, das ein Audioeingabesignal umfasst oder identifiziert, empfangen. Das Datenverarbeitungssystem 102 kann beispielsweise die NLP-Komponente112 ausführen, um das Audiosignal zu empfangen oder zu erlangen und das Audiosignal zu parsen. Die NLP-Komponente112 kann beispielsweise Interaktionen zwischen einem Menschen und einem Computer bereitstellen. Die NLP-Komponente112 kann mit Techniken zum Verstehen natürlicher Sprache konfiguriert sein und kann dem Datenverarbeitungssystem102 ermöglichen, eine Bedeutung von einer menschlichen oder natürlichsprachlichen Eingabe abzuleiten. Die NLP-Komponente112 kann Technik, die auf Maschinenlernen wie statistischem Maschinenlernen basiert, umfassen oder damit konfiguriert sein. Die NLP-Komponente112 kann Entscheidungsbäume, statistische Modelle oder Wahrscheinlichkeitsmodelle verwenden, um das eingegebene Audiosignal zu parsen. Die NLP-Komponente112 kann beispielsweise Funktionen ausführen wie Eigennamenerkennung (z. B. bei einem gegebenen Text-Stream zu bestimmen, welche Elemente im Text Eigennamen wie Personen oder Orte abbilden und von welcher Art ein jeder solcher Name ist, wie beispielsweise Person, Ort oder Organisation), natürlichsprachliche Erzeugung (z. B. Informationen von Computerdatenbanken oder semantische Absichten in verständliche menschliche Sprache umzuwandeln), Verstehen von natürlicher Sprache (z. B. Text in förmlichere Darstellungen wie Prädikatenlogikstrukturen, die ein Computermodul manipulieren kann, umzuwandeln), Maschinenübersetzung (z. B. automatisch Text von einer menschlichen Sprache in eine andere zu übersetzen), morphologisches Segmentieren (z. B. Worte in individuelle Morpheme zu trennen und die Klasse der Morpheme zu identifizieren, was basierend auf der Komplexität der Morphologie oder dem Wortaufbau der betrachteten Sprache eine Herausforderung sein kann), das Beantworten von Fragen (z. B. das Bestimmen einer Antwort auf eine humansprachliche Frage, die spezifisch oder offen sein kann), semantisches Verarbeiten (z. B. das Verarbeiten, das nach dem Identifizieren eines Wortes und der Codierung seiner Bedeutung erfolgen kann, um das identifizierte Wort mit anderen Worten mit ähnlichen Bedeutungen in Beziehung zu setzen). - Die NLP-Komponente
112 wandelt das Audioeingabesignal durch Vergleichen des Eingabesignals mit einer gespeicherten repräsentativen Reihe von Audiowellenformen (z. B. im Datenbehälter124 ) und Auswählen der größten Übereinstimmungen in erkannten Text um. Die Reihe von Audiowellenformen kann im Datenbehälter124 oder einer anderen Datenbank gespeichert sein, die dem Datenverarbeitungssystem102 zugänglich ist. Die repräsentativen Wellenformen werden über eine große Menge von Benutzern erzeugt und können dann mit Sprachproben vom Benutzer erweitert werden. Nachdem das Audiosignal in erkannten Text umgewandelt wurde, bringt die NLP-Komponente112 den Text mit Worten in Übereinstimmung, die beispielsweise via Training über Benutzer oder durch manuelle Spezifikation mit Aktionen verknüpft sind, die das Datenverarbeitungssystem102 bereitstellen kann. - Das Audioeingabesignal kann durch den Sensor
134 oder den Wandler136 (z. B. ein Mikrofon) von der Clientcomputervorrichtung104 detektiert werden. Die Clientcomputervorrichtung104 kann über den Wandler136 , den Audiotreiber138 oder über andere Komponenten das Audioeingabesignal an das Datenverarbeitungssystem102 (z. B. über das Netzwerk105 ) bereitstellen, wo es empfangen (z. B. durch die Schnittstelle110 ) und an die NLP-Komponente112 bereitgestellt oder im Datenbehälter124 gespeichert werden kann. - Die NLP-Komponente
112 kann das Eingabeaudiosignal erlangen. Von dem Eingabeaudiosignal kann die NLP-Komponente112 mindestens eine Anforderung oder mindestens ein Triggerschlüsselwort identifizieren, das der Anforderung entspricht. Die Anforderung kann Absicht oder Gegenstand des Eingabeaudiosignals anzeigen. Das Triggerschlüsselwort kann eine Aktionsart anzeigen, die wahrscheinlich vorzunehmen ist. Die NLP-Komponente112 kann beispielsweise das Eingabeaudiosignal parsen, um mindestens eine Anforderung zu identifizieren, am Abend für ein Abendessen und einen Film wegzugehen. Das Triggerschlüsselwort kann mindestens ein Wort, einen Ausdruck, eine Wortwurzel oder ein partielles Wort oder eine Ableitung umfassen, das bzw. die eine vorzunehmende Aktion anzeigen. Das Triggerschlüsselwort „gehen“ oder „gehen zu“ von dem Eingabeaudiosignal kann beispielsweise eine Notwendigkeit für Transport anzeigen. Bei diesem Beispiel drückt das Eingabeaudiosignal (oder die identifizierte Anforderung) nicht direkt eine Absicht für einen Transport aus, das Triggerschlüsselwort zeigt jedoch an, dass ein Transport eine Zusatzaktion für mindestens eine andere Aktion ist, die durch die Anforderung angezeigt wird. - Die NLP-Komponente
112 kann das Eingabeaudiosignal parsen, um die Anforderung und das Triggerschlüsselwort zu identifizieren, zu bestimmen, abzurufen oder anderweitig zu erlangen. Die NLP-Komponente112 kann zum Beispiel eine semantische Verarbeitungstechnik auf das Eingabeaudiosignal anwenden, um das Triggerschlüsselwort oder die Anforderung zu identifizieren. Die NLP-Komponente112 kann die semantische Verarbeitungstechnik auf das Eingabeaudiosignal anwenden, um einen Triggerausdruck zu identifizieren, der ein oder mehrere Triggerschlüsselwörter wie ein erstes Triggerschlüsselwort und ein zweites Triggerschlüsselwort umfasst. Das Eingabeaudiosignal kann beispielsweise den Satz „Ich brauche jemanden, um meine Wäsche und meine Trockenreinigung zu machen“ umfassen. Die NLP-Komponente112 kann eine semantische Verarbeitungstechnik oder eine andere natürlichsprachliche Verarbeitungstechnik auf die Datenpakete anwenden, die den Satz umfassen, um die Triggerausdrücke „meine Wäsche machen“ und „meine Trockenreinigung machen“ zu identifizieren. Die NLP-Komponente 112 kann weiter mehrere Triggerschlüsselwörter, wie Wäsche und Trockenreinigung, identifizieren. Die NLP-Komponente112 kann beispielsweise bestimmen, dass der Triggerausdruck das Triggerschlüsselwort und ein zweites Triggerschlüsselwort umfasst. - Die NLP-Komponente
112 kann das Eingabeaudiosignal filtern, um das Triggerschlüsselwort zu identifizieren. Beispielsweise können die Datenpakete, die das Eingabeaudiosignal übertragen, „Es wäre großartig, wenn ich jemanden finden könnte, der mir helfen könnte, zum Flughafen zu gelangen“ umfassen, wobei in diesem Fall die NLP-Komponente 112 einen oder mehrere Begriffe wie folgt herausfiltern kann: „es“, „wäre“, „großartig“, „wenn“, „ich“, „jemanden“, „finden“, „der“, „könnte“ oder „helfen“. Durch Herausfiltern dieser Begriffe kann die NLP-Komponente112 genauer und zuverlässiger die Triggerschlüsselwörter wie „zum Flughafen gelangen“ identifizieren und bestimmen, dass dies eine Anforderung für ein Taxi oder einen Fahrgemeinschaftsdienst ist. - In einigen Fällen kann die NLP-Komponente bestimmen, dass die Datenpakete, die das Eingabeaudiosignal übertragen, eine oder mehrere Anforderungen umfassen. Das Eingabeaudiosignal kann beispielsweise den Satz „Ich brauche jemanden, um meine Wäsche und meine Trockenreinigung zu machen“ umfassen. Die NLP-Komponente
112 kann bestimmen, dass dies eine Anforderung eines Wäschereidienstes und eines Trockenreinigungsdienstes ist. Die NLP-Komponente112 kann bestimmen, dass dies eine einzelne Anforderung für einen Dienstanbieter ist, der sowohl Wäschereidienste als auch Trockenreinigungsdienste bereitstellen kann. Die NLP-Komponente112 kann bestimmen, dass dies zwei Anforderungen sind; eine erste Anforderung für einen Dienstanbieter, der Wäschereidienste ausführt, und eine zweite Anforderung für einen Dienstanbieter, der Trockenreinigungsdienste ausführt. In einigen Fällen kann die NLP-Komponente112 die mehreren bestimmten Anforderungen in eine einzelne Anforderung kombinieren und die einzelne Anforderung an eine Inhaltsanbietervorrichtung108 senden. In einigen Fällen kann die NLP-Komponente112 die individuellen Anforderungen an entsprechende Inhaltsanbietervorrichtungen108 senden oder beide Anforderungen separat an die gleiche Inhaltsanbietervorrichtung108 senden. - Das Datenverarbeitungssystem
102 kann eine Direktaktions-API116 umfassen, die konzipiert und ausgelegt ist, basierend auf dem Triggerschlüsselwort eine Aktionsdatenstruktur als Reaktion auf die Anforderung zu erzeugen. Prozessoren des Datenverarbeitungssystemes102 können die Direktaktions-API116 aufrufen, um Skripte auszuführen, die eine Datenstruktur für eine Dienstanbietervorrichtung108 erzeugen, um einen Dienst oder Produkt anzufordern oder zu bestellen, wie beispielsweise ein Fahrzeug von einem Carsharing-Dienst. Die Direktaktions-API116 kann Daten vom Datenbehälter124 sowie Daten, die mit Endbenutzerzustimmung von der Clientcomputervorrichtung104 empfangen werden, erlangen, um Ort, Zeit, Benutzerkonten, logistische oder andere Informationen zu bestimmen und zu ermöglichen, dass die Dienstanbietervorrichtung108 eine Operation ausführt, wie beispielsweise ein Fahrzeug vom Carsharing-Dienst zu reservieren. Unter Verwendung der Direktaktions-API116 kann das Datenverarbeitungssystem102 auch mit der Dienstanbietervorrichtung108 kommunizieren, um in diesem Beispiel die Konversation abzuschließen, indem der Wagen zu einer Sharing-Abholreservierung gemacht wird. - Die Direktaktions-API
116 kann eine spezifizierte Aktion ausführen, um die Absicht des Endbenutzers wie durch das Datenverarbeitungssystem102 bestimmt zu erfüllen. Abhängig von der Aktion, die in ihren Eingaben spezifiziert ist, kann die Direktaktions-API 116 Code oder ein Dialogskript ausführen, das die Parameter identifiziert, die erforderlich sind, um eine Benutzeranforderung zu erfüllen. Ein derartiger Code kann zusätzliche Informationen z. B. im Datenbehälter124 nachschlagen, wie der Name eines Heimautomatisierungdienstes, oder er kann eine Audioausgabe zum Rendern in der Clientcomputervorrichtung104 bereitstellen, um dem Endbenutzer Fragen zu stellen, wie beispielsweise über den beabsichtigten Bestimmungsort eines angeforderten Taxis. Die Direktaktions-API116 kann erforderliche Parameter bestimmen und die Informationen in eine Aktionsdatenstruktur packen, die dann zur Erfüllung an eine andere Komponente wie die Inhaltsselektorkomponente118 oder an die Dienstanbietercomputervorrichtung108 gesendet werden kann. - Die Direktaktions-API
116 kann eine Anweisung oder einen Befehl von der NLP-Komponente112 oder einer anderen Komponente des Datenverarbeitungssystems102 empfangen, um die Aktionsdatenstruktur zu erzeugen oder zu erstellen. Die Direktaktions-API116 kann eine Aktionsart bestimmen, um ein Template aus dem Templatebehälter132 , das im Datenbehälter124 gespeichert ist, auszuwählen. Arten von Aktionen können beispielsweise Dienste, Produkte, Reservierungen oder Tickets umfassen. Arten von Aktionen können weiter Arten von Diensten oder Produkten umfassen. Arten von Diensten können beispielsweise Carsharing-Dienst, Lebensmittellieferdienst, Wäschereidienst, Zimmerreinigung, Reparaturleistungen oder Haushaltsdienstleistungen umfassen. Arten von Produkten können beispielsweise Kleidung, Schuhe, Kinderspielzeug, Elektronik, Computer, Bücher oder Schmuck umfassen. Arten von Reservierungen können beispielsweise Mittagessenreservierungen oder Friseursalontermine umfassen. Arten von Tickets können beispielsweise Kinokarten, Sportstättentickets oder Flugtickets umfassen. In einigen Fällen können die Arten von Diensten, Produkte, Reservierungen oder Tickets basierend auf Preis, Ort, Art des Versands, Verfügbarkeit oder anderen Attributen kategorisiert sein. - Die Direktaktions-API
116 , kann nach dem Identifizieren der Art von Anforderung auf das entsprechende Template vom Templatebehälter132 zugreifen. Templates können Felder in einem strukturierten Datensatz umfassen, die durch die Direktaktions-API116 gefüllt werden können, um die Operation, die von der Dienstanbietervorrichtung108 angefordert wurde, weiterzuführen (wie die Operation, ein Taxi zu senden, um einen Endbenutzer an einem Abholort abzuholen und den Endbenutzer zu einem Zielort zu bringen). Die Direktaktions-API116 kann ein Nachschlagen im Templatebehälter132 ausführen, um das Template auszuwählen, das mit einer oder mehreren Charakteristiken des Triggerschlüsselwortes und der Anforderung übereinstimmt. Wenn die Anforderung beispielsweise einer Anforderung für ein Fahrzeug oder eine Fahrt zu einem Ziel entspricht, kann das Datenverarbeitungssystem102 ein Fahrgemeinschaftsdiensttemplate auswählen. Das Fahrgemeinschaftsdiensttemplate kann eines oder mehrere von den folgenden Feldern umfassen: Vorrichtungskennung, Abholungsort, Zielort, Passagierzahl oder Art der Dienstleistung. Die Direktaktions-API116 kann die Felder mit Werten füllen. Um die Felder mit Werten zu füllen, kann die Direktaktions-API116 Informationen von einem oder mehreren Sensoren134 der Computervorrichtung104 oder einer Benutzerschnittstelle der Vorrichtung104 pingen, abfragen oder anderweitig erlangen. - Abfragen kann auf das aktive Sampeln von Informationen einer externen Vorrichtung, wie den Sensor
134 , durch das Datenverarbeitungssystem102 oder durch die Computervorrichtung104 als Reaktion auf einen Befehl des Datenverarbeitungssystems102 verweisen. Abfragen kann eine synchrone Aktivität sein. Während des Abfragens kann das Datenverarbeitungssystem102 auf den Sensor134 warten, um seine Bereitschaft und seinen Zustand zu überprüfen, einen Umgebungszustand zu detektieren oder um irgendeine andere Funktion oder Aktivität auszuführen, für die der Sensor134 konfiguriert ist (z. B. Erfassen und Aufzeichnen eines Temperaturmesswerts; Detektieren der Intensität des Umgebungslichts; Bestimmen eines Orts; Bestimmen von Druck; Bestimmen von Höhe; Bestimmen der Geschwindigkeit von Bewegung; oder Bestimmen der Richtung von Bewegung). In einigen Fällen kann das Abfragen auf das Anfordern von Daten von der Computervorrichtung104 verweisen, die erfasst, gemessen, detektiert oder anderweitig mindestens teilweise unter Verwendung eines oder mehrerer Sensoren134 bestimmt wurden. - Beispielsweise kann der Direktaktions-API
116 die Ortung unter Verwendung eines Ortssensors, wie einem GPS-Sensor detektieren. Die Direktaktions-API116 kann weiter Informationen durch Senden einer Umfrage, Eingabeaufforderung oder Frage an den Endbenutzer der Computervorrichtung104 erlangen. Die Direktaktions-API kann die Umfrage, Eingabeaufforderung oder Frage über die Schnittstelle110 des Datenverarbeitungssystems102 und eine Benutzerschnittstelle der Computervorrichtung104 (z. B. Audioschnittstelle, sprachbasierte Benutzerschnittstelle, Anzeige oder Touchscreen) senden. Daher kann die Direktaktions-API116 ein Template für die Aktionsdatenstruktur basierend auf dem Triggerschlüsselwort oder der Anforderung auswählen, ein oder mehrere Felder in dem Template mit Informationen, die durch einen oder mehrere Sensoren134 detektiert oder über eine Benutzerschnittstelle erlangt wurden, auswählen und die Aktionsdatenstruktur erzeugen, schaffen oder anderweitig erstellen, um die Performance einer Operation durch die Dienstanbietervorrichtung108 zu erleichtern. - Das Datenverarbeitungssystem
102 kann das Template basierend von der Templatedatenstruktur132 basierend auf verschiedenen Faktoren einschließlich beispielsweise ein oder mehr von dem Triggerschlüsselwort, der Anforderung, Drittanbietervorrichtung108 , Art der Drittanbietervorrichtung108 , einer Kategorie, in die die Drittanbietervorrichtung108 fällt (z. B. Taxidienst, Wäschereidienst, Blumendienst oder Lebensmittellieferung), Ort oder anderen Sensorinformationen auswählen. - Um das Template basierend auf dem Triggerschlüsselwort auszuwählen, kann das Datenverarbeitungssystem
102 (z. B. über die Direktaktions-API116 ) ein Nachschlagen oder eine andere Abfrageoperation an der Templatedatenbank132 unter Verwendung des Triggerschlüsselwortes ausführen, um eine Templatedatenstruktur zu identifizieren, die mit dem Triggerschlüsselwort übereinstimmt oder anderweitig entspricht. Jedes Template in der Templatedatenbank132 kann beispielsweise mit einem oder mehreren Triggerschlüsselwörtern verknüpft sein, um anzuzeigen, dass das Template konfiguriert ist, als Reaktion auf das Triggerschlüsselwort eine Aktionsdatenstruktur zu erzeugen, welche die Drittanbietervorrichtung108 verarbeiten kann, um eine Kommunikationssitzung einzurichten. - In einigen Fällen kann das Datenverarbeitungssystem
102 eine Drittanbietervorrichtung108 basierend auf dem Triggerschlüsselwort identifizieren. Um die dritte Partei108 basierend auf dem Triggerschlüsselwort zu identifizieren, kann das Datenverarbeitungssystem102 ein Nachschlagen im Datenbehälter124 ausführen, um eine Drittanbietervorrichtung108 zu identifizieren, die mit dem Triggerschlüsselwort übereinstimmt. Wenn beispielsweise das Triggerschlüsselwort „Fahrt“ oder „um zu gehen“ umfasst, dann kann das Datenverarbeitungssystem102 (z. B. über die Direktaktions-API116 ) die Drittanbietervorrichtung108 als dem Taxidienstunternehmen A entsprechen identifizieren. Das Datenverarbeitungssystem102 kann das Template aus der Templatedatenbank132 unter Verwendung der identifizieren Drittanbietervorrichtung108 auswählen. Die Templatedatenbank132 kann beispielsweise ein Zuordnen oder eine Korrelation zwischen den Drittanbietervorrichtungen108 oder Einheiten zu Templates umfassen, die konfiguriert sind, eine Aktionsdatenstruktur als Reaktion auf das Triggerschlüsselwort zu erzeugen, welche die Drittanbietervorrichtung108 verarbeiten kann, um eine Kommunikationssitzung einzurichten. In einigen Fällen kann das Template für die Drittanbietervorrichtung108 oder für eine Kategorie von Drittanbietervorrichtungen108 angepasst sein. Das Datenverarbeitungssystem102 kann die Aktionsdatenstruktur basierend auf dem Template für den Drittanbieter108 erzeugen. - Um die Aktionsdatenstruktur zu erstellen oder zu erzeugen, kann das Datenverarbeitungssystem
102 ein oder mehre Felder in dem ausgewählten Template identifizieren, um sie mit Werten zu füllen. Die Felder können mit numerischen Werten, Zeichenfolgen, Unicodewerten, Boolescher Logik, binären Werten, Hexadezimalwerten, Kennungen, Ortskoordinaten, geografischen Bereichen, Zeitstempeln oder anderen Werten gefüllt werden. Die Felder oder die Datenstruktur selbst können verschlüsselt oder maskiert sein, um die Datensicherheit aufrechtzuerhalten. - Nach dem Bestimmen der Felder in dem Template kann das Datenverarbeitungssystem
102 die Werte für die Felder identifizieren, um die Felder des Templates zu füllen und die Aktionsdatenstruktur zu erzeugen. Das Datenverarbeitungssystem102 kann die Werte für die Felder durch Ausführen eines Nachschlagens oder einer anderen Abfrageoperation an dem Datenbehälter124 erlangen, abrufen, bestimmen oder anderweitig identifizieren. - In einigen Fällen kann das Datenverarbeitungssystem
102 bestimmen, dass die Informationen oder Werte für die Felder im Datenbehälter124 nicht vorhanden sind. Das Datenverarbeitungssystem102 kann bestimmen, dass die Informationen oder Werte, die im Datenbehälter124 gespeichert sind, abgelaufen, veraltet oder anderweitig nicht für den Zweck des Erstellens der Aktionsdatenstruktur als Reaktion auf das Triggerschlüsselwort und die Anforderung identifiziert durch die NLP-Komponente112 geeignet sind (z. B. kann der Ort der Clientcomputervorrichtung104 der alte Ort sein und nicht der gegenwärtige Ort sein; ein Konto kann abgelaufen sein; das Zielrestaurant kann an einen neuen Ort umgezogen sein; Informationen körperlicher Betätigung; oder Beförderungsart). - Wenn das Datenverarbeitungssystem
102 bestimmt, dass es gegenwärtig keinen Zugriff im Speicher des Datenverarbeitungssystems102 auf die Werte oder Informationen für das Feld des Templates hat, kann das Datenverarbeitungssystem102 die Werte oder Informationen erlangen. Das Datenverarbeitungssystem102 kann die Informationen durch Abfragen oder Polling von einem oder mehreren verfügbaren Sensoren der Clientcomputervorrichtung104 , Fragen des Endbenutzers der Clientcomputervorrichtung104 nach den Informationen oder Zugreifen auf eine online webbasierte Ressource unter Verwendung eines HTTP-Protokolls erlangen oder erhalten. Das Datenverarbeitungssystem 102 kann beispielsweise bestimmen, dass es nicht den gegenwärtigen Ort der Clientcomputervorrichtung104 hat, der ein erforderliches Feld des Templates sein kann. Das Datenverarbeitungssystem102 kann die Clientcomputervorrichtung104 nach den Ortsinformationen abfragen. Das Datenverarbeitungssystem102 kann die Clientcomputervorrichtung104 anfordern, die Ortsinformationen unter Verwendung eines oder mehrerer Ortssensoren134 , wie ein Globales Positionsbestimmungssystem-Sensor, WIFI-Triangulation, Mobilfunkmast-Triangulation, Bluetooth-Beacons, IP-Adresse oder eine andere Ortssensortechnik, bereitzustellen. - In einigen Fällen kann die Direktaktions-API
116 Sensorinformation von einer Sensorverwaltungskomponente120 anfordern. Das Datenverarbeitungssystem102 kann eine Sensorverwaltungskomponente120 umfassen. Die Sensorverwaltungskomponente120 kann auf dem Datenverarbeitungssystem102 separat oder unabhängig von der Clientcomputervorrichtung104 ausgeführt werden. In einigen Fällen kann die Sensorverwaltungskomponente120 ein oder mehrere Agenten, Skripte und ablauffähige Programme umfassen, die auf der Computervorrichtung104 konfiguriert sind, um mit der Sensorverwaltungskomponente120 , die auf dem Datenverarbeitungssystem102 ausgeführt wird, zu verbinden. - Die Sensorverwaltungskomponente
120 kann Hardware oder Software zur Messung der Charakteristik der Kommunikationssitzung umfassen. Beispielsweise kann die Direktaktions-API116 basierend auf dem Triggerschlüsselwort ein Template für eine Aktionsdatenstruktur auswählen, die der Anforderung entspricht oder darauf anspricht. Das Template kann ein oder mehrere Felder umfassen, die zu füllen sind, wie beispielsweise ein erstes Feld und ein zweites Feld. Um diese Felder zu füllen, kann die Direktaktions-API116 die Sensorverwaltungskomponente120 abfragen, davon anfordern, aufrufen oder anderweitig damit verbinden. Die Sensorverwaltungskomponente120 kann die Informationen für die Felder durch Reduzieren der Ressourcennutzung durch die Sensoren134 oder Computervorrichtungen104 , die mit den Sensoren134 verknüpft sind, erlangen. Die Sensorverwaltungskomponente120 kann beispielsweise mehrere verfügbare Sensoren134 identifizieren, die konfiguriert sind, Informationen für das erste Feld zu erlangen. Die mehreren verfügbaren Sensoren können einen ersten Sensor und einen zweiten Sensor umfassen. Die Sensorverwaltungskomponente120 kann einen Status von jedem von den mehreren Sensoren bestimmen. Die Sensorverwaltungskomponente120 kann den ersten Sensor der mehreren Sensoren basierend auf dem Status auswählen. Die Sensorverwaltungskomponente120 kann den ersten Sensor nach Daten abfragen, die dem ersten Feld entsprechen. Die Direktaktions-API116 kann das erste Feld mit den Daten, die durch die Sensorverwaltungskomponente empfangen wurden, als Reaktion auf die Abfrage des ersten Sensors füllen. - Die Sensorverwaltungskomponente
120 kann mehrere verfügbare Sensoren134 identifizieren. Die Sensorverwaltungskomponente120 kann in dem Datenbehälter124 eine Liste von Sensoren134 speichern, die für ein Endbenutzerkonto verfügbar sind, das mit einer Computervorrichtung104 verknüpft ist. Die Sensoren134 können einen Status als verfügbar aufweisen. Verfügbar kann darauf verweisen, dass der Sensor online, aktiv, im Bereitschaftsmodus oder im Energiesparmodus ist. Ein Sensor kann verfügbar sein, wenn er einen Diagnosetest oder -prozess besteht. In einigen Fällen kann ein Sensor134 verfügbar sein, selbst wenn er offline ist, wenn die Computervorrichtung104 angewiesen werden kann, den Sensor134 online zu bringen. Der Status des Sensors134 kann nicht verfügbar sein, wenn der Sensor134 offline ist, nicht zeitgerecht auf einen Ping anspricht, nicht funktioniert, fehlerhafte oder inkonsistente Werte bereitstellt oder bei einem Diagnosetest oder Prozess versagt. - In einigen Fällen kann die Clientcomputervorrichtung
104 Sensorstatusinformationen nach dem Einrichten einer Kommunikationssitzung an die Sensorverwaltungskomponente120 übertragen. In einigen Fällen kann die Sensorverwaltungskomponente120 eine Anforderung an die Clientcomputervorrichtung104 oder eine oder mehrere Clientcomputervorrichtungen104 , die mit der Kontokennung für eine Liste verfügbarer Sensoren134 verknüpft sind, senden. Die Sensorverwaltungskomponente 120 kann eine Reihe von einer oder mehreren Computervorrichtungen104 basierend auf einer Nähe der Computervorrichtungen zueinander oder basierend auf einer Netzwerkaktivität, die mit der einen oder den mehreren Computervorrichtungen104 verbunden ist, identifizieren (z. B. kann der Endbenutzer aktiv die eine oder die mehreren Computervorrichtungen104 verwenden, um mit dem Datenverarbeitungssystem102 oder einer Komponente davon zu interagieren). In einigen Fällen kann das Datenverarbeitungssystem102 alle zuvor bekannten Sensoren134 , die durch die Sensorverwaltungskomponente verwendet wurden, basierend auf einem Zeitintervall abfragen. - Daher kann das Datenverarbeitungssystem
102 mehrere Sensoren identifizieren, die fähig sind und verfügbar sind, die Daten bereitzustellen, um das erste Feld des Templates zu füllen. Das Datenverarbeitungssystem kann dann einen (oder eine Untergruppe) von den Sensoren auswählen, von dem Daten empfangen werden sollen. Das Datenverarbeitungssystem102 kann bestimmen, einen Sensor abzufragen, der mit der Computervorrichtung104 nicht gekoppelt ist, die das Eingabeaudiosignal bereitgestellt hat. Ein Endbenutzer kann beispielsweise eine erste Computervorrichtung104 verwenden, um das Eingabeaudiosignal bereitzustellen. Die erste Computervorrichtung104 kann einen ersten Sensor134 umfassen, der mit der ersten Computervorrichtung104 gekoppelt ist. Das Datenverarbeitungssystem kann bestimmen, dass es eine zweite Computervorrichtung104 gibt, die auch mit dem Endbenutzerkonto verbunden ist (z. B. dass sowohl die ersten und zweiten Computervorrichtungen104 erfolgreich einen Handshakeprozess mit dem Datenverarbeitungssystem102 ausgeführt haben). Die zweite Computervorrichtung104 kann sich nahe der ersten Computervorrichtung104 befinden oder das Datenverarbeitungssystem 102 kann anderweitig bestimmen, dass die zweite Computervorrichtung104 auch die Daten mit ausreichender Qualität bereitstellen kann, um das erste Feld des Templates zu füllen (z. B., dass die Ortsinformationen, die durch die zwei Sensoren bereitgestellt werden würden, sich innerhalb einer Toleranzgrenze, wie 25 Meter, 50 Meter, 75 Meter oder 100 Meter, befinden). Das Datenverarbeitungssystem102 kann bestimmen, den zweiten Sensor134 , der mit der zweiten Computervorrichtung104 gekoppelt ist, zu verwenden, anstatt des ersten Sensors134 , der mit der ersten Computervorrichtung gekoppelt ist, selbst wenn die erste Computervorrichtung104 die Kommunikation mit dem Datenverarbeitungssystem102 aufgerufen, initiiert oder eingerichtet hat. Das Datenverarbeitungssystem102 kann eine Ressourcenreduzierungsrichtlinie verwenden, um zu bestimmen, den zweiten Sensor134 zu verwenden, der mit der zweiten Computervorrichtung gekoppelt ist, anstatt des ersten Sensors134 , der mit der ersten Computervorrichtung104 gekoppelt ist, die das Eingabeaudiosignal an die NLP-Komponente110 bereitgestellt hat. Das Datenverarbeitungssystem102 kann bestimmen, die zweite Computervorrichtung104 zu verwenden, weil diese mehr verbleibende Batterie aufweisen, eine größere Ressourcenverfügbarkeit aufweisen kann oder konfiguriert ist, Daten höherer Qualität oder die genauer sind bereitzustellen, die in geringeren anschließenden Anforderungen von Sensorinformation resultieren können. - In einigen Fällen kann die Sensorverwaltungskomponente
120 die Ressourcennutzung reduzieren, indem ein erster Sensor einen ersten Umgebungszustand (z. B. Ort, Geschwindigkeit, Temperatur, Umgebungslicht, Umgebungston usw.) detektiert, während sie aus dem Speicher einen zweiten Umgebungszustand abruft, der zuvor durch einen zweiten Sensor detektiert wurde. Anstatt den zweiten Sensor anzuweisen, Online zu gehen oder sich zu aktivieren, um den Umgebungszustand zu detektieren, kann die Sensorverwaltungskomponente120 den zuvor detektierten Wert aus dem Speicher abrufen, um die Ressourcennutzung zu reduzieren. Beispielsweise kann die Sensorverwaltungskomponente einen ersten Sensor nach Daten abfragen, die dem ersten Feld entsprechen, während sie Daten vom Speicher der Computervorrichtung104 erlangt, die dem zweiten Feld entsprechen. Die zweiten Daten können im Speicher der Computervorrichtung 104 gespeichert werden, bevor das Datenverarbeitungssystem102 die zweiten Daten anfordert. Die Sensorverwaltungskomponente120 kann als Reaktion auf die Anforderung von Daten vom zweiten Sensor, die von der Direktaktions-API116 empfangen wurden, den zweiten Sensor134 nicht abfragen. Die Sensorverwaltungskomponente120 kann bestimmen, den ersten Sensor nach Daten abzufragen, die dem ersten Feld entsprechen, aber nicht den zweiten Sensor nach Daten abzufragen, die dem zweiten Feld entsprechen. Die Sensorverwaltungskomponente120 kann eine Richtlinie, eine Logik oder Reihe von Regeln verwenden, um zu bestimmen, ob ein oder mehrere Sensoren abzufragen sind oder nicht. Die Richtlinie, Logik oder Reihe von Regeln kann beispielsweise bedingte Regeln, if/then-Bedingungen, Triggerereignisse, Toleranzen, Schwellenwerte, Zeitintervalle, Orte, geografischen Eingrenzungen oder Arten von Tätigkeiten umfassen oder darauf basieren. Die Sensorverwaltungskomponente120 kann beispielsweise bestimmen, den ersten Sensor nach Ortsinformationen abzufragen, da die letzten Ortsdaten, die durch das Datenverarbeitungssystem102 empfangen wurden, basierend auf einem Zeitintervall (z. B. 10 Sekunden, 5 Sekunden, 20 Sekunden, 30 Sekunden, 1 Minute oder mehr) abgelaufen sein können. Das Datenverarbeitungssystem102 kann Daten aus einem Speicher für den zweiten Sensor erlangen, da der zweite Sensor ein Temperatursensor sein kann, und das Datenverarbeitungssystem102 kann bestimmen, dass der Zeitstempel dessen, wann die letzte Temperaturmessung detektiert und im Speicher gespeichert wurde, ein Zeitintervall (z. B. 1 Minute, 2 Minuten, 3 Minuten, 5 Minuten, 10 Minuten, 20 Minuten, 30 Minuten oder mehr) erfüllen kann. - Die Sensorverwaltungskomponente
120 kann eine Konfiguration eines Sensors anpassen, um Daten basierend auf einem Datentyp zu erfassen. Die Sensorverwaltungskomponente120 kann beispielsweise eine Abtastrate, ein Abtastintervall oder eine Abtastdauer für den Sensor anpassen. Die Sensorverwaltungskomponente120 kann die Abtastrate erhöhen oder verringern. Die Abtastrate kann die Anzahl an während eines Messzeitintervalls genommene Proben bezeichnen. Die Abtastrate kann beispielsweise 0,005 Hz, 0,01 Hz, 0,015 Hz, 0,02 Hz, 0,05 Hz, 0,1 Hz, 0,2 Hz, 0,5 Hz, 0,7 Hz, 1 Hz, 2 Hz, 3 Hz, 5 Hz, 10 Hz oder eine andere Abtastrate umfassen, die Daten bereitstellt, um die Aktionsdatenstruktur während des Optimierens der Sensorressourcennutzung zu erzeugen (z. B. sind Daten innerhalb einer Toleranzgrenze, um eine Operation ohne eine übermäßige Datenerfassung auszuführen). - Die Sensorverwaltungskomponente
120 kann ein Abtastintervall anpassen. Das Abtastintervall kann einen Zeitraum dafür bezeichnen, wann der Sensor eingeschaltet ist oder aktiv Sensordaten erfasst. Die Abtastdauer kann bezeichnen, wie lange der Sensor eingeschaltet ist, um bei der Abtastrate aktiv Daten zu erfassen. Die Sensorverwaltungskomponente120 kann beispielsweise den Sensor anweisen oder diesem befehlen, sich alle 5 Minuten (z. B. Abtastintervall) einzuschalten, um Sensordaten bei 1 Hz (z. B. Abtastrate) für eine Dauer von 30 Sekunden (z. B. Abtastdauer) zu erfassen. Die in der Richtliniendatenstruktur128 gespeicherten Richtlinien können basierend auf der Art von Sensor, der Art der Aktivität oder anderen Charakteristiken unterschiedliche Werte für die Abtastrate, das Abtastintervall oder die Dauer umfassen. - In einigen Fällen kann die Sensorverwaltungskomponente
120 einen oder mehrere Sensoren deaktivieren. Die Sensorverwaltungskomponente120 kann einen Sensor basierend auf oder als Reaktion auf eine Charakteristik von Daten, die durch den Sensor erfasst wurden, deaktivieren. Die Sensorverwaltungskomponente120 kann vorübergehend oder dauerhaft den Sensor oder deaktivieren. Das Deaktivieren des Sensors134 kann verhindern, dass der Sensor Sensordaten erfasst oder detektiert oder andere Messungen vornimmt. In einigen Fällen kann das Deaktivieren des Sensors das Deaktivieren oder Ausschalten elektronischer Hardware oder einer API, die den Sensor steuert oder damit verbunden ist, bezeichnen. Beispielsweise kann die Computervorrichtung102 aufhören, den Sensor nach Daten abzufragen und die Daten zu erfassen und zu speichern, als Reaktion auf einen Befehl von der Sensorverwaltungskomponente120 , den Sensor134 zu deaktivieren. - Die Sensorverwaltungskomponente
120 kann eine Ressourcennutzungsreduzierungsrichtlinie auf eine Charakteristik von Daten anwenden, durch den ersten Sensor erfasst wurden, um den ersten Sensor zu deaktivieren. Die Charakteristik der Daten kann eine Qualität der Daten, Quantität der Daten, Daten, die eine Leistung des Sensors angeben, oder Daten, die eine Verfügbarkeit von Computerressource oder Batteriestrom zum Fortsetzen des Datenerfassens angeben, umfassen oder bezeichnen. Die Daten können beispielsweise anzeigen, dass der Sensor nicht funktioniert, nicht kalibriert ist oder anderweitig fehlerhafte Daten erfasst. Um das Erfassen weiterer fehlerhafter Daten und Ressourcenverschwendung (z. B. Batteriestrom, Verarbeitungsleistung oder Bandbreite) zu verhindern, kann die Sensorverwaltungskomponente120 den Sensor134 für einen Zeitraum deaktivieren. Die Sensorverwaltungskomponente120 kann den Sensor nach dem Zeitraum abfragen und die Daten zu dieser Zeit beurteilen. Wenn die Daten erneut unbefriedigend sind (z. B. nicht konsistent mit Daten, die durch andere Sensoren erfasst werden, historische Daten, Datentyp, Format der Daten), dann kann die Sensorverwaltungskomponente120 den Sensor für ein Zeitintervall, das länger als das erste Zeitintervall oder permanent sein kann, erneut deaktivieren, bis der Sensor repariert ist. - In einigen Fällen können von einem ersten Sensor erfasste Daten durch die Sensorverwaltungskomponente
120 analysiert werden, um einen zweiten Sensor der gleichen Computervorrichtung oder einer anderen Computervorrichtung zu deaktivieren. Ein Batteriesensor kann beispielsweise anzeigen, dass es eine Batterie schwach ist (z. B. 20 % Batterie verbleibend) und dann einen oder mehrere Sensoren der Vorrichtung104 deaktivieren. Bei einem weiteren Beispiel kann ein Temperatursensor anzeigen, dass sich die Vorrichtung überhitzt, und als Reaktion darauf kann die Sensorverwaltungskomponente120 einen Ortssensor oder einen anderen Sensor deaktivieren. - In einigen Fällen kann das Datenverarbeitungssystem mehrere verfügbare Sensoren
134 identifizieren, die konfiguriert sind, eine gleiche oder ähnliche Informationsart (z. B. Ortsinformationen, Aktivitätsinformationen, Geschwindigkeit, Temperatur, Umgebungslicht oder Umgebungston) zu erlangen. Die Sensorverwaltungskomponente120 kann bestimmen, dass ein Sensor134 verfügbar ist, wenn der Sensor134 richtig arbeitet, kann auf Datenanforderungen ansprechen oder kann detektierte Daten an eine Computervorrichtung104 übermitteln, die mit dem Netzwerk104 verbunden ist, um die Daten zum Datenverarbeitungssystem102 zu routen. Die Sensorverwaltungskomponente120 kann bestimmen, dass der Sensor134 verfügbar ist, wenn er sich nahe dem Endbenutzer der Computervorrichtung104 befindet oder sich anderweitig an einem Ort befindet oder konfiguriert ist, dazugehörige Daten zu erfassen, die verwendet werden, um die Aktionsdatenstruktur zu erzeugen. - Die Sensorverwaltungskomponente
120 kann beispielsweise bestimmen, dass es zwei Sensoren gibt, die konfiguriert sind, Ortsinformationen zu sammeln, die beide mit einem Konto eines Endbenutzers der Computervorrichtung104 verknüpft sind. Die Sensorverwaltungskomponente120 kann bestimmen, dass sich beide Sensoren nahe dem Endbenutzer befinden, da sie beide ähnliche Ortsinformationen sammeln, basierend auf einem Vergleich der Daten, die durch die zwei Sensoren erfasst wurden. Die Sensorverwaltungskomponente120 kann bei Anwenden einer Richtlinie bestimmen, nur einen der Sensoren für Ortsdaten abzufragen und den anderen Sensor zu deaktivieren, um den Ressourcenverbrauch verglichen damit, dass beide Sensoren arbeiten, zu reduzieren. Die zwei Sensoren können beispielsweise auf zwei unterschiedlichen Computervorrichtungen104 konfiguriert sein, die sich beide nahe dem Endbenutzer befinden, wie beispielsweise ein Smartphone und eine Smartwatch. Die Sensorverwaltungskomponente120 kann einen Batteriestatus der zwei unterschiedlichen Computervorrichtungen104 bestimmen und einen der zwei Sensoren, die auf einer Computervorrichtung104 konfiguriert sind, mit größerem verbleibendem Batteriestrom auswählen. Der verbleibende Batteriestrom kann ein Prozentsatz des verbleibenden Stroms, ein absolut verbleibender Strom oder ein geschätzter Betrag an Zeit sein, den die Batterie die Computervorrichtung104 bei der gegenwärtigen Verwendung versorgen kann (z. B. Prozessor- oder Speicherverwendung, Sensorverwendung, Netzwerkschnittstellenverwendung). Die Sensorverwaltungskomponente120 kann daher einen der Sensoren deaktivieren, um den Batterieverbrauch zu reduzieren, und die Ortsinformationen von dem aktiven Sensor anfordern. - In einigen Fällen kann die Sensorverwaltungskomponente
120 zuvor erfasste Informationen Huckepack übernehmen. Die Sensorverwaltungskomponente kann beispielsweise bestimmen, dass es mehrere verfügbare Sensoren gibt, die sich nahe dem Endbenutzer befinden, die konfiguriert sind, Ortsinformationen zu erlangen. Die mehreren verfügbaren Sensoren können einen ersten Sensor, einen zweiten Sensor oder einen dritten Sensor umfassen. Die Sensorverwaltungskomponente120 kann bestimmen, dass der erste Sensor gegenwärtige Ortsinformationen des Endbenutzers erfasst hat (z. B. innerhalb einer Schwellenzeit wie 1 Sekunde, 2 Sekunden, 3 Sekunden oder mehr). Diese Informationen können erfasst worden sein, bevor die Direktaktions-API die Sensorinformationen von der Sensorverwaltungskomponente120 angefordert hat. Die Sensorverwaltungskomponente120 kann weiter bestimmen, dass der dritte Sensor in einem Offline-Zustand ist und keine gegenwärtigen Ortsinformationen aufweist. Anstatt dem dritten Sensor zu befehlen, in einen Online-Status einzutreten und Ressourcen zu verbrauchen, kann die Sensorverwaltungskomponente120 daher bestimmen, die Informationen von dem ersten Sensor zu verwenden oder den ersten Sensor abzufragen, um aktualisierte Ortsinformationen zu erfassen, während der dritte Sensor im Offline- oder Niedrigstromzustand belassen wird. - In einigen Fällen kann die Sensorverwaltungskomponente
120 die Clientvorrichtung104 anweisen, einen Batch-Upload von erfassten Sensordaten auszuführen. Ein Batch-Upload von erfassten Sensordaten kann verglichen mit individuellem Hochladen oder Streamen von Daten, während die Daten durch den Sensor134 erfasst werden, den Ressourcenverbrauch reduzieren. Die Clientvorrichtung104 kann als Reaktion auf das Eintreten in einen Online-Status von einem Offline-Zustand einen Batch-Upload ausführen (z. B. Wiedererlangen einer Verbindung zu dem Netzwerk104 ; eingeschaltet werden; oder sich im Empfangsbereich eines GPS-Satelliten befinden). In einigen Fällen kann die Sensorverwaltungskomponente120 die Computervorrichtung104 anweisen, basierend auf einem Ort einen Batch-Upload auszuführen, wie beispielsweise Eintreten in oder Verlassen eines Geofence (z. B. ein Einzelhandelsstandort oder ein anderer physischer Ort oder Bereich). In einigen Fällen kann die Computervorrichtung eine Liste von Anwendungen hochladen, die auf der Computervorrichtung104 installiert sind (z. B. durch Zugreifen auf eine Registrierung der Computervorrichtung oder eine andere Datenbank, die installierte Anwendungen speichert). - Die Direktaktions-API
116 kann das eine oder die mehreren Felder (z. B. das erste Feld) mit Daten, die durch die Sensorverwaltungskomponente120 empfangen wurden, als Reaktion auf die Abfrage des ersten Sensors füllen. Die Direktaktions-API116 kann das zweite Feld mit den Daten füllen, die durch die Sensorverwaltungskomponente120 von dem Speicher der Clientvorrichtung empfangen wurden, um den Ressourcenverbrauch zu reduzieren. Die Direktaktions-API116 kann dann eine Aktionsdatenstruktur basierend auf dem ersten Feld und dem zweiten Feld des Templates erzeugen. - Die Direktaktions-API
116 kann die Aktionsdatenstruktur an eine Drittanbietervorrichtung (z. B. die Dienstanbietervorrichtung108 ) senden, um zu bewirken, dass die Drittanbietervorrichtung108 eine Operationssitzung aufruft. Eine Operationssitzung kann bezeichnen oder umfassen, dass die Drittanbietervorrichtung108 eine Operation mit oder basierend auf der Aktionsdatenstruktur durchführt, wie beispielsweise den angeforderten Dienst auszuführen, das angeforderte Produkt zu kaufen oder eine Gesprächsanwendungsprogrammierschnittstelle (z. B. die Dienstanbieter-NLP-Komponente 142) aufzurufen, um eine Operationssitzung oder eine Kommunikationssitzung zwischen der Drittanbietervorrichtung108 und der Clientcomputervorrichtung104 einzurichten. Ansprechend auf das Einrichten der Operationssitzung oder Kommunikationssitzung zwischen der Dienstanbietervorrichtung108 und der Clientcomputervorrichtung1004 kann die Dienstanbietervorrichtung108 Datenpakete direkt an die Clientcomputervorrichtung104 über das Netzwerk105 senden. In einigen Fällen kann die Dienstanbietervorrichtung108 Datenpakete an die Clientcomputervorrichtung104 über das Datenverarbeitungssystem102 und das Netzwerk105 senden. - Das Datenverarbeitungssystem
102 kann von der Drittanbietervorrichtung108 einen Hinweis empfangen, dass die Drittanbietervorrichtung108 die Operationssitzung mit der Clientvorrichtung104 eingerichtet hat. Der Hinweis kann beispielsweise die Art der Operation identifizieren, die ausgeführt wird (z. B. Bereitstellen eines Dienstes wie eines Taxidienstes; Kaufen eines Produkts; Ansprechen auf eine Abfrage). Das Datenverarbeitungssystem102 kann weiter einen Hinweis empfangen, dass eine Operation während der Operationssitzung ausgeführt wurde (z. B. ein Taxi den Endbenutzer abgeholt und den Endbenutzer zum Zielort gebracht hat). Der Hinweis, dass die Operation ausgeführt wurde, kann über eine Operationsdatenstruktur bereitgestellt werden, die beispielsweise eine Kennung des Endbenutzers, einen Zeitstempel, die Art der Operation, eine Kennung des Drittanbieters108 oder einen Preis umfasst. Die Operationsdatenstruktur kann unter Verwendung eines Templates von der Templatedatenstruktur132 gebildet werden. Das Template kann für alle Operationen ein Standard sein oder basierend auf einer Operationsart angepasst werden. - In einigen Fällen kann die Drittanbietervorrichtung
108 mindestens einen Teil der Gesprächs-API142 ausführen. Die Drittanbietervorrichtung108 kann beispielsweise bestimmte Aspekte der Kommunikationssitzung oder Arten von Abfragen behandeln. Die Drittanbietervorrichtung108 kann die durch das Datenverarbeitungssystem102 ausgeführte NLP-Komponente112 nutzen, um das Verarbeiten der Audiosignale, die mit der Kommunikationssitzung verbunden sind, und das Erzeugen von Antworten zu Abfragen zu erleichtern. In einigen Fällen kann das Datenverarbeitungssystem102 die Gesprächs-API142 umfassen, die für den Drittanbieter108 konfiguriert ist. In einigen Fällen routet das Datenverarbeitungssystem Datenpakete zwischen der Clientcomputervorrichtung und der Drittanbieteranbietervorrichtung, um die Kommunikationssitzung herzustellen. Das Datenverarbeitungssystem102 kann von der Drittanbietervorrichtung108 einen Hinweis empfangen, dass die Drittanbietervorrichtung die Kommunikationssitzung mit der Clientvorrichtung104 eingerichtet hat. Der Hinweis kann eine Kennung der Clientcomputervorrichtung104 , einen entsprechenden Zeitstempel, wann die Kommunikationssitzung hergestellt wurde, oder andere mit der Kommunikationssitzung verknüpfte Informationen wie die mit der Kommunikationssitzung verknüpfte Aktionsdatenstruktur umfassen. In einigen Fällen kann das Datenverarbeitungssystem102 eine Sitzungs-Handlerkomponente114 umfassen, um eine Operationssitzung oder Kommunikationssitzung zu verwalten, und eine Sensorverwaltungskomponente120 , um Sensoren zu verwalten oder auszuwählen, von denen Daten erfasst werden sollen. - Das Datenverarbeitungssystem
102 kann eine Sitzungs-Handlerkomponente114 umfassen, ausführen, darauf zugreifen oder anderweitig damit kommunizieren, um eine Kommunikationssitzung zwischen der Clientvorrichtung104 und dem Datenverarbeitungssystem102 einzurichten. Die Kommunikationssitzung kann eine oder mehrere Datenübertragungen zwischen der Clientvorrichtung104 und dem Datenverarbeitungssystem102 bezeichnen, was das Eingabeaudiosignal umfasst, das durch einen Sensor134 der Clientvorrichtung104 detektiert wird, und dass das Ausgabesignal durch das Datenverarbeitungssystem102 an die Clientvorrichtung104 gesendet wird. Das Datenverarbeitungssystem102 kann (z. B. über die Sitzungs-Handlerkomponente114 ) die Kommunikationssitzung (z. B. Operationssitzung) als Reaktion auf das Empfangen des Eingabeaudiosignals einrichten. Das Datenverarbeitungssystem102 kann eine Dauer für die Kommunikationssitzung einstellen. Das Datenverarbeitungssystem102 kann einen Zeitgeber oder einen Zähler für die für die Kommunikationssitzung eingestellte Dauer einstellen. Als Reaktion auf den Ablauf des Zeitgebers kann das Datenverarbeitungssystem102 die Kommunikationssitzung beenden. - Die Kommunikationssitzung kann eine netzwerkbasierte Kommunikationssitzung bezeichnen, in der die Clientvorrichtung
104 authentifizierende Information oder Anmeldedaten bereitstellt, um die Sitzung herzustellen. In einigen Fällen bezeichnet die Kommunikationssitzung ein Thema oder einen Kontext von Audiosignalen, die durch Datenpakete während der Sitzung übertragen werden. Eine erste Kommunikationssitzung kann beispielsweise Audiosignale bezeichnen, die zwischen der Clientvorrichtung104 und dem Datenverarbeitungssystem102 übertragen werden, die sich auf ein Rezept beziehen (z. B. Schlüsselwörter, Aktionsdatenstrukturen oder Inhaltselementobjekte umfassen); ein Taxidienst und eine zweite Kommunikationssitzung können Audiosignale bezeichnen, die zwischen der Clientvorrichtung104 und dem Datenverarbeitungssystem102 übertragen werden, die sich auf einen Wäscherei- und Trockenreinigungsdienst beziehen. Bei diesem Beispiel kann das Datenverarbeitungssystem102 bestimmen, dass sich der Kontext der Audiosignale unterscheidet (z. B. über die NLP-Komponente112 ) und die zwei Reihen von Audiosignalen in unterschiedliche Kommunikationssitzungen trennen. Der Sitzungs-Handler 114 kann die erste Sitzung beenden, die mit dem Fahrtdienst in Zusammenhang steht, als Reaktion auf das Identifizieren von einem oder mehreren Audiosignalen, die mit der Trockenreinigungs- und Wäschereidienstleistung in Zusammenhang stehen. Daher kann das Datenverarbeitungssystem102 die zweite Sitzung für die Audiosignale, die mit der Trockenreinigungs- und Wäschereidienstleistung verbunden sind, als Reaktion auf das Detektieren des Kontextes der Audiosignale initiieren oder einrichten. - Das Datenverarbeitungssystem
102 kann eine Inhaltsauswahlkomponente118 umfassen, ausführen oder anderweitig damit kommunizieren, um das Triggerschlüsselwort zu empfangen, das durch den natürlichsprachlichen Prozessor identifiziert wird, und basierend auf dem Triggerschlüsselwort ein Inhaltselement über einen Echtzeitinhaltsauswahlprozess auswählen. In einigen Fällen kann die Direktaktions-API116 die Aktionsdatenstruktur an die Inhaltsselektorkomponente118 senden, um den Echtzeitinhaltsauswahlprozess auszuführen und eine Kommunikationssitzung zwischen der Inhaltsanbietervorrichtung106 (oder einer Drittanbietervorrichtung108 ) und der Clientcomputervorrichtung104 einzurichten. - Der Inhaltsauswahlprozess kann auf das Auswählen finanzierter Inhaltselementobjekte, die durch dritte Inhaltsanbieter
106 bereitgestellt werden, verweisen oder diese umfassen. Der Inhaltsauswahlprozess kann einen Dienst umfassen, bei dem durch mehrere Inhaltsanbieter bereitgestellte Inhaltselemente geparst, verarbeitet, gewichtet oder abgeglichen werden, um ein oder mehrere an die Computervorrichtung104 bereitzustellende Inhaltselemente auszuwählen. Der Inhaltsauswahlprozess kann in Echtzeit oder offline ausgeführt werden. Das Ausführen des Inhaltsauswahlprozesses in Echtzeit kann das Ausführen des Inhaltsauswahlprozesses als Reaktion auf die Inhaltsanforderung, der über die Clientcomputervorrichtung104 empfangen wurde, bezeichnen. Der Echtzeitinhaltsauswahlprozess kann innerhalb eines Zeitintervalls ausgeführt (z. B. initiiert oder abgeschlossen) werden, in dem die Anforderung (z. B. 5 Sekunden, 10 Sekunden, 20 Sekunden, 30 Sekunden, 1 Minute, 2 Minuten, 3 Minuten, 5 Minuten, 10 Minuten oder 20 Minuten) empfangen wird. Der Echtzeitinhaltsauswahlprozess kann während einer Kommunikationssitzung mit der Clientcomputervorrichtung104 oder innerhalb eines Zeitintervalls, nachdem die Kommunikationssitzung beendet wurde, ausgeführt werden. - Das Datenverarbeitungssystem
102 kann beispielsweise eine Inhaltsauswahlkomponente118 umfassen, die konzipiert, aufgebaut, konfiguriert oder betriebsfähig ist, Inhaltselementobjekte auszuwählen. Um Inhaltselement zum Anzeigen in einer sprachbasierten Umgebung auszuwählen, kann das Datenverarbeitungssystem102 (z. B. über die NLP-Komponente112 ) das Eingabeaudiosignal parsen, um Schlüsselwörter (z. B. ein Triggerschlüsselwort) zu identifizieren und die Schlüsselwörter zu verwenden, um ein übereinstimmendes Inhaltselement basierend auf einer breiten Übereinstimmung, genauen Übereinstimmung oder Phrasenübereinstimmung auszuwählen. Die Inhaltsselektorkomponente118 kann beispielsweise den Gegenstand von Kandidateninhaltselementen analysieren, parsen oder anderweitig verarbeiten, um zu bestimmen, ob der Gegenstand der Kandidateninhaltselemente dem Gegenstand der Schlüsselwörter oder den Ausdrücken des Eingabeaudiosignals entspricht, das durch das Mikrofon der Clientcomputervorrichtung104 detektiert wurde. Die Inhaltsauswahlkomponente118 kann Sprache, Audio, Begriffe, Zeichen, Text, Symbole oder Bilder der Kandidateninhaltselemente unter Verwendung einer Bildverarbeitungstechnik, Schrifterkennungstechnik, natürlichsprachlichen Verarbeitungstechnik oder von Datenbanknachschlagevorgängen identifizieren, analysieren oder erkennen. Die Kandidateninhaltselemente können auf den Gegenstand der Kandidateninhaltselemente hinweisende Metadaten umfassen, wobei in diesem Fall die Inhaltsauswahlkomponente118 die Metadaten verarbeiten kann, um zu bestimmen, ob der Gegenstand des Kandidateninhaltselements dem eingegebenen Audiosignal entspricht. - Die Inhaltsanbieter
106 können bei der Einrichtung einer Inhaltskampagne, die Inhaltselemente beinhaltet, zusätzliche Indikatoren bereitstellen. Der Inhaltsanbieter106 kann Informationen auf der Inhaltskampagnen- oder Inhaltsgruppenebene bereitstellen, welche die Inhaltsauswahlkomponente118 identifizieren kann, indem sie unter Verwendung von Informationen über das Kandidateninhaltselement einen Nachschlagevorgang ausführt. Das Kandidateninhaltselement kann zum Beispiel eine eindeutige Kennung umfassen, die einer Inhaltsgruppe, einer Inhaltskampagne oder einem Inhaltsanbieter zugeordnet sein kann. Die Inhaltsauswahlkomponente118 kann basierend auf in der Datenstruktur der Inhaltskampagnendatenstruktur im Datenbehälter124 gespeicherten Informationen Informationen über die Inhaltsanbietercomputervorrichtung106 bestimmen. - Das Datenverarbeitungssystem
102 kann über ein Computernetzwerk eine Anforderung von Inhalt für die Präsentation auf einer Computervorrichtung104 empfangen. Das Datenverarbeitungssystem102 kann die Anforderung durch Verarbeiten eines Eingabeaudiosignals identifizieren, das durch ein Mikrofon der Clientcomputervorrichtung 104 detektiert wird. Die Anfrage kann Auswahlkriterien der Anfrage beinhalten, wie beispielsweise den Vorrichtungstyp, Standort und ein mit der Anforderung verknüpftes Schlüsselwort. Die Anforderung kann die Aktionsdatenstruktur oder Aktionsdatenstruktur umfassen. - Als Reaktion auf die Anfrage kann das Datenverarbeitungssystem
102 ein Inhaltselementobjekt aus dem Datenbehälter124 oder einer mit dem Inhaltsanbieter106 verknüpften Datenbank auswählen und das Inhaltselement zum Präsentieren über die Computervorrichtung104 über das Netzwerk105 bereitstellen. Das Inhaltselementobjekt kann durch eine Inhaltsanbietervorrichtung108 , die sich von der Dienstanbietervorrichtung 108 unterscheidet, bereitgestellt werden. Das Inhaltselement kann einer Dienstleistungsart entsprechen, die sich von einer Dienstleistungsart der Aktionsdatenstruktur unterscheidet (z. B. ein Taxidienst gegenüber einem Lebensmittellieferservice). Die Computervorrichtung104 kann mit dem Inhaltselementobjekt interagieren. Die Computervorrichtung104 kann eine Audioantwort bezüglich des Inhaltselements empfangen. Die Computervorrichtung104 kann einen Hinweis empfangen, einen Hyperlink oder eine andere Schaltfläche auszuwählen, die mit dem Inhaltselementobjekt verknüpft ist, die bewirkt oder ermöglicht, dass die Computervorrichtung104 den Dienstanbieter108 identifiziert, einen Dienst von dem Dienstanbieter108 anfordert, den Dienstanbieter108 anweist, einen Dienst auszuführen, Informationen an den Dienstanbieter108 sendet oder die Dienstanbietervorrichtung108 anderweitig abfragt. - Das Datenverarbeitungssystem
102 kann eine Audiosignalerzeugerkomponente 122 umfassen, ausführen oder damit kommunizieren, um ein Ausgabesignal zu erzeugen. Das Ausgabesignal kann einen oder mehrere Teile umfassen. Das Ausgabesignal kann beispielsweise einen ersten Teil und einen zweiten Teil umfassen. Der erste Teil des Ausgabesignals kann der Aktionsdatenstruktur entsprechen. Der zweite Teil des Ausgabesignals kann dem Inhaltselement entsprechen, das durch die Inhaltsselektorkomponente118 während des Echtzeitinhaltsauswahlprozesses ausgewählt wurde. - Die Audiosignalerzeugerkomponente
122 kann das Ausgabesignal mit einem ersten Teil erzeugen, der Ton aufweist, welcher der ersten Datenstruktur entspricht. Beispielsweise kann die Audiosignalerzeugerkomponente122 den ersten Teil des Ausgabesignals basierend auf einem oder mehreren Werten erzeugen, die in die Felder der Aktionsdatenstruktur durch die Direktaktions-API116 gefüllt werden. Bei einem Taxidienstbeispiel können die Werte für die Felder beispielsweise Hauptstraße123 für den Abholungsort, Hauptstraße1234 für den Zielort, 2 für die Passagierzahl und Economy für das Dienstleistungsniveau umfassen. Die Audiosignalerzeugerkomponente122 kann den ersten Teil des Ausgabesignals erzeugen, um zu bestätigen, dass der Endbenutzer der Computervorrichtung104 mit dem Senden der Anforderung an den Dienstanbieter108 fortfahren möchte. Der erste Teil kann die Ausgabe umfassen „Möchten Sie ein Economy-Auto von Taxidienstanbieter A anfordern, um zwei Personen von Hauptstraße123 abzuholen und an Hauptstraße1234 abzusetzen?“ - In einigen Fällen kann der erste Teil Informationen umfassen, die von der Dienstanbietervorrichtung
108 empfangen wurden. Die von der Dienstanbietervorrichtung 108 empfangenen Informationen können für die Aktionsdatenstruktur angepasst oder maßgeschneidert werden. Das Datenverarbeitungssystem102 kann beispielsweise (z. B. über die Direktaktions-API116 ) die Aktionsdatenstruktur an den Dienstanbieter108 senden, bevor der Dienstanbieter108 angewiesen wird, die Operation auszuführen. Stattdessen kann das Datenverarbeitungssystem102 die Dienstanbietervorrichtung108 anweisen, ein anfängliches oder vorläufiges Verarbeiten an der Aktionsdatenstruktur auszuführen, um vorläufige Informationen über die Operation zu erzeugen. Im Beispiel des Taxidienstes kann das vorläufige Verarbeiten an der Aktionsdatenstruktur das Identifizieren von verfügbaren Taxis, die dem Dienstleistungsanforderungsniveau entsprechen und sich in der Nähe des Abholorts befinden, das Abschätzen einer Zeitdauer, die das naheste verfügbare Taxi benötigt, um den Abholort zu erreichen, das Abschätzen einer Ankunftszeit am Ziel und das Abschätzen eines Preises für den Taxidienst umfassen. Die abgeschätzten vorläufigen Werte können einen Festwert, eine Abschätzung, die basierend auf verschiedenen Bedingungen der Änderung unterliegt, oder einen Wertebereich umfassen. Die Dienstanbietervorrichtung108 kann die vorläufigen Informationen an das Datenverarbeitungssystem102 oder direkt an die Clientcomputervorrichtung104 über das Netzwerk104 zurückgeben. Das Datenverarbeitungssystem102 kann das vorläufige Endergebnis von der Dienstanbietervorrichtung108 in das Ausgabesignal einbeziehen und das Ausgabesignal an die Computervorrichtung104 senden. Das Ausgabesignal kann beispielsweise „Taxidienstunternehmen A kann Sie für $10 an Hauptstraße123 in 10 Minuten abholen und Sie an Hauptstraße1234 um 9:00 Uhr absetzen. Möchten Sie diese Fahrt bestellen?“ umfassen. Dies kann den ersten Teil des Ausgabesignals bilden. - In einigen Fällen kann das Datenverarbeitungssystem
102 einen zweiten Teil des Ausgabesignals bilden. Der zweite Teil des Ausgabesignals kann ein Inhaltselement umfassen, das durch die Inhaltsselektorkomponente118 während eines Echtzeitinhaltsauswahlprozesses ausgewählt wurde. Der erste Teil kann sich vom zweiten Teil unterscheiden. Der erste Teil kann beispielsweise Informationen umfassen, die der Aktionsdatenstruktur entsprechen, die direkt auf die Datenpakete anspricht, die das Eingabeaudiosignal übertragen, das durch den Sensor134 der Clientcomputervorrichtung104 detektiert wurde, wohingegen der zweite Teil ein Inhaltselement umfassen kann, das durch eine Inhaltsselektorkomponente104 ausgewählt wird, die indirekt für die Aktionsdatenstruktur relevant sein oder gesponserten Inhalt umfassen kann, der durch die Inhaltsanbieter-Vorrichtung106 bereitgestellt wird. Der Endbenutzer der Computervorrichtung104 kann beispielsweise ein Taxi von dem Taxidienstunternehmen A anfordern. Das Datenverarbeitungssystem102 kann den ersten Teil des Ausgabesignals erzeugen, sodass er Informationen über das Taxi von dem Taxidienstunternehmen A umfasst. Das Datenverarbeitungssystem102 kann jedoch den zweiten Teil des Ausgabesignals derart erzeugen, dass er ein Inhaltselement umfasst, das basierend auf den Schlüsselwörtern „Taxi-Dienst“ und Informationen, die in der Aktionsdatenstruktur enthalten sind, für die sich der Endbenutzer interessieren kann, ausgewählt ist. Der zweite Teil kann beispielsweise ein Inhaltselement oder Informationen umfassen, die von einem unterschiedlichen Taxidienstunternehmen wie dem Taxidienstunternehmen B bereitgestellt werden. Während der Benutzer nicht speziell das Taxidienstunternehmen B angefordert hat, kann das Datenverarbeitungssystem102 nichtsdestotrotz ein Inhaltselement von dem Taxidienstunternehmen B bereitstellen, da der Benutzer wählen kann, einen Vorgang mit dem Taxidienstunternehmen B auszuführen. - Das Datenverarbeitungssystem
102 kann Informationen von der Aktionsdatenstruktur an das Taxidienstunternehmen B senden, um eine Abholzeit, eine Zielankunftszeit und einen Preis für die Fahrt zu bestimmen. Das Datenverarbeitungssystem 102 kann diese Informationen empfangen und den zweiten Teil des Ausgabesignals wie folgt erzeugen: „Das Taxidienstunternehmen B kann Sie für $15 an Hauptstraße123 in 2 Minuten abholen und Sie an Hauptstraße1234 um 8:52 Uhr absetzen. Möchten Sie diese Fahrt stattdessen?“ Der Endbenutzer der Computervorrichtung104 kann dann die Fahrt, die von dem Taxidienstleistungsunternehmen A bereitgestellt wird, oder die Fahrt, die von dem Taxidienstleistungsunternehmen B bereitgestellt wird, auswählen. - Im zweiten Teil des Ausgabesignals kann vor dem Bereitstellen des gesponserten Inhaltselements, das dem Dienst entspricht, der von dem Taxidienstleistungsunternehmen B bereitgestellt wird, das Datenverarbeitungssystem
102 die Endbenutzercomputervorrichtung benachrichtigen, dass der zweite Teil einem Inhaltselementobjekt entspricht, das während eines Echtzeitinhaltsauswahlprozesses (z. B. durch die Inhaltsselektorkomponente118 ) ausgewählt wurde. Das Datenverarbeitungssystem102 kann jedoch beschränkten Zugriff auf unterschiedliche Arten von Schnittstellen aufweisen, um die Benachrichtigung an den Endbenutzer der Computervorrichtung104 bereitzustellen. Die Computervorrichtung104 kann beispielsweise keine Anzeigevorrichtung umfassen oder die Anzeigevorrichtung kann deaktiviert oder ausgeschaltet sein. Die Anzeigevorrichtung der Computervorrichtung104 kann größere Ressourcen verbrauchen als der Lautsprecher der Computervorrichtung104 , sodass es weniger effizient sein kann, um die Anzeigevorrichtung der Computervorrichtung 104 einzuschalten, verglichen mit dem Verwenden des Lautsprechers der Computervorrichtung104 , um die Benachrichtigung zu übermitteln. Daher kann in einigen Fällen das Datenverarbeitungssystem102 die Effizienz und die Effektivität der Informationsübertragung zwischen einer oder mehreren Schnittstellen oder einer oder mehreren Arten von Computernetzwerken verbessern. Das Datenverarbeitungssystem102 kann beispielsweise (z. B. über die Audiosignalerzeugerkomponente122 ) den Teil des ausgegebenen Audiosignals modulieren, der das Inhaltselement umfasst, um den Hinweis oder die Benachrichtigung an den Endbenutzer bereitzustellen, dass dieser Teil des Ausgabesignals das gesponserte Inhaltselement umfasst. - Das Datenverarbeitungssystem
102 (z. B. über die Schnittstelle110 und das Netzwerk105 ) kann Datenpakete senden, die das Ausgabesignal umfassen, das durch die Audiosignalerzeugerkomponente122 erzeugt wurde. Das Ausgabesignal kann bewirken, dass die Audiotreiberkomponente138 von der Clientvorrichtung104 oder die durch diese ausgeführt wird, einen Lautsprecher (z. B. Transducer136 ) von der Clientvorrichtung104 ansteuert, um eine Schallwelle zu erzeugen, die dem Ausgabesignal entspricht. -
2 ist eine Veranschaulichung einer Systemoperation zum selektiven Abfragen von Sensoren über ein Computernetzwerk. Das System kann eine oder mehr Komponente des in1 dargestellten Systems100 umfassen. Die NLP-Komponente112 kann durch eine Computervorrichtung detektierte Audiosignale empfangen und parsen. Die NLP-Komponente 112 kann bei HANDLUNG202 Informationen an die Direktaktions-API116 weitergeben. Die Direktaktions-API116 kann bestimmen, Sensorinformation zu erfassen, um ein oder mehrere Felder eines Template zu füllen und eine Aktionsdatenstruktur zu erzeugen, als Reaktion auf die Audiosignale, die durch die NLP-Komponente112 geparst werden. - Bei HANDLUNG
204 kann die Direktaktions-API die Sensorinformation von der Sensorverwaltungskomponente120 anfordern. Die Sensorverwaltungskomponente120 kann eine Sensordatenerfassungssitzung206 mit mehreren Computervorrichtungen (z. B. erste, zweite und dritte Computervorrichtungen104 ) einrichten. Die Sensorverwaltungskomponente120 kann eine oder mehrere von den Computervorrichtungen 104 bei HANDLUNG206 abfragen. Die Sensorverwaltungskomponente120 kann bestimmen, nur eine der Computervorrichtungen104 nach Sensordaten abzufragen, um aggregierten Ressourcenverbrauch unter den mehreren Computervorrichtungen104 zu reduzieren, die mit dem Endbenutzer in Zusammenhang stehen, oder die ähnliche Informationen bereitstellen. Die Sensorverwaltungskomponente120 kann eine oder mehrere von den Computervorrichtungen104 anweisen, die Sensoren134 abzufragen. - Bei HANDLUNG
208 kann eine oder mehrere der Computervorrichtungen104 den Sensor134 abfragen, freigeben, aktivieren, aufrufen oder anderweitig veranlassen, Sensordaten zu erfassen und die Sensordaten an die Computervorrichtung104 bereitzustellen, um diese an die Sensorverwaltungskomponente120 oder das Datenverarbeitungssystem102 bereitzustellen. Die Sensorverwaltungskomponente120 kann bei HANDLUNG210 die erfassten Sensordaten an die Direktaktions-API116 bereitstellen. Daher kann die Sensorverwaltungskomponente120 die Sensorverwendung optimieren, um den aggregierten Ressourcenverbrauch unter den mehreren Computervorrichtungen104 , die mit dem Endbenutzer verknüpft sind (oder sich nahe bei dem Endbenutzer befinden, der die angeforderten Sensorinformationen bereitstellen kann), zu reduzieren, indem ein oder mehrere Sensoren oder eine Untergruppe von Sensoren zur Abfrage ausgewählt werden. -
3 ist eine Veranschaulichung eines beispielhaften Verfahrens zum selektiven Abfragen von Sensoren. Das Verfahren300 kann durch eine oder mehrere Komponenten, Systeme oder Elemente des Systems100 oder Systems400 ausgeführt werden. Das Verfahren300 kann ein Datenverarbeitungssystem umfassen, das ein Eingabeaudiosignal empfängt (HANDLUNG305 ). Das Datenverarbeitungssystem kann das Eingabeaudiosignal von einer Clientcomputervorrichtung empfangen. Eine durch das Datenverarbeitungssystem ausgeführte natürlichsprachliche Prozessorkomponente kann beispielsweise das Eingabeaudiosignal von einer Clientcomputervorrichtung über eine Schnittstelle des Datenverarbeitungssystems empfangen. Das Datenverarbeitungssystem kann Datenpakete empfangen, die das Eingabeaudiosignal tragen oder umfassen, das durch einen Sensor der Clientcomputervorrichtung (oder Clientvorrichtung) detektiert wird. - Bei HANDLUNG
310 kann das Verfahren300 umfassen, dass das Datenverarbeitungssystem das Eingabeaudiosignal parst. Die natürlichsprachliche Prozessorkomponente kann das Eingabeaudiosignal parsen, um eine Anforderung und ein Triggerschlüsselwort, das der Anforderung entspricht, zu identifizieren. Das durch die Clientvorrichtung detektierte Audiosignal kann beispielsweise „Okay Vorrichtung, ich brauche eine Fahrt von einem Taxidienstunternehmen A, um zur Hauptstraße1234 zu gelangen“ umfassen. In diesem Audiosignal kann das anfängliche Triggerschlüsselwort „Okay Vorrichtung“ umfassen, das der Clientvorrichtung anzeigen kann, ein Eingabeaudiosignal an das Datenverarbeitungssystem zu senden. Ein Vorprozessor der Clientvorrichtung kann die Begriffe „Okay Vorrichtung“ vor dem Senden des verbleibenden Audiosignals an das Datenverarbeitungssystem herausfiltern. In einigen Fällen kann die Clientvorrichtung zusätzliche Begriffe herausfiltern oder Schlüsselwörter erzeugen, die zum Datenverarbeitungssystem für weiteres Verarbeiten zu senden sind. - Das Datenverarbeitungssystem kann ein Triggerschlüsselwort im Eingabeaudiosignal identifizieren. Das Triggerschlüsselwort kann beispielsweise „um zu gelangen“ oder „Fahrt“ oder Variationen dieser Begriffe umfassen. Das Triggerschlüsselwort kann eine Art von Dienstleistung oder Produkt anzeigen. Das Datenverarbeitungssystem kann eine Anforderung im Eingabeaudiosignal identifizieren. Die Anforderung kann basierend auf den Begriffen „ich benötige“ bestimmt werden. Das Triggerschlüsselwort und die Anforderung können unter Verwendung einer semantischen Verarbeitungstechnik oder einer anderen natürlichsprachlichen Verarbeitungstechnik bestimmt werden.
- Bei HANDLUNG
315 kann das Datenverarbeitungssystem ein Template für eine Aktionsdatenstruktur auswählen. Das Template kann auf das Triggerschlüsselwort, die Anforderung oder einen identifizierten Drittanbieter ansprechen. Das Template kann ein oder mehrere Felder wie ein erstes Feld umfassen. - Bei HANDLUNG
320 kann das Datenverarbeitungssystem einen oder mehrere Sensoren abfragen oder eine Computervorrichtung anweisen, einen Sensor abzufragen. Während das Datenverarbeitungssystem mehrere Sensoren identifizieren kann, die fähig sind, die Daten bereitzustellen, um das erste Feld zu füllen, kann das Datenverarbeitungssystem einen Sensor zur Abfrage auswählen. Das Datenverarbeitungssystem kann bestimmen, einen Sensor abzufragen, der mit der Computervorrichtung104 nicht gekoppelt ist, die das Eingabeaudiosignal bereitgestellt hat. Ein Endbenutzer kann beispielsweise eine erste Computervorrichtung104 verwenden, um das Eingabeaudiosignal bereitzustellen. Die erste Computervorrichtung104 kann einen mit der ersten Computervorrichtung gekoppelten ersten Sensor umfassen. Das Datenverarbeitungssystem kann bestimmen, dass es eine zweite Computervorrichtung104 gibt, die auch mit dem Endbenutzerkonto verknüpft ist. Die zweite Computervorrichtung kann sich nahe der ersten Computervorrichtung befinden oder das Datenverarbeitungssystem kann anderweitig bestimmen, dass die zweite Computervorrichtung auch die Daten mit ausreichender Qualität bereitstellen kann, um das erste Feld des Templates zu füllen (z. B. dass die Ortsinformationen, die durch die zwei Sensoren bereitgestellt werden würden, sich innerhalb einer Toleranzgrenze, wie 25 Meter, 50 Meter, 75 Meter oder 100 Meter befinden). Das Datenverarbeitungssystem kann bestimmen, den zweiten Sensor, der mit der zweiten Computervorrichtung104 gekoppelt ist, zu verwenden, anstatt des ersten Sensors, der mit der ersten Computervorrichtung gekoppelt ist, selbst wenn die erste aufgerufene Computervorrichtung, die Kommunikation mit dem Datenverarbeitungssystem102 initiiert oder eingerichtet hat. Das Datenverarbeitungssystem kann eine Ressourcenreduzierungsrichtlinie verwenden, um zu bestimmen, den mit der zweiten Computervorrichtung gekoppelten zweiten Sensor zu verwenden. Die zweite Computervorrichtung kann beispielsweise mehr verbleibende Batterie oder eine größere Ressourcenverfügbarkeit aufweisen oder am Strom angeschlossen sein. - In einigen Fällen kann das Datenverarbeitungssystem bestimmen, aus dem Speicher Daten abzurufen, die zuvor durch einen Sensor detektiert wurden. Das Datenverarbeitungssystem kann beispielsweise bestimmen, einen Sensor abzufragen, während kein zweiter Sensor abgefragt wird, selbst wenn die Informationen von dem zweiten Sensor erforderlich sind, um das zweite Feld zu füllen. Das Datenverarbeitungssystem kann beispielsweise bestimmen, den Ressourcenverbrauch unter Verwendung zuvor erfasster Informationen (z. B. vor einer Anforderung von Sensordaten) zu reduzieren. Das Datenverarbeitungssystem kann daher den ersten Sensor abfragen und gespeicherte Daten von dem zweiten Sensor verwenden. Das Datenverarbeitungssystem kann bestimmen, dies basierend auf Regeln oder Richtlinien oder durch Analysieren der gespeicherten Daten zu tun, um zu bestimmen, dass diese einen Zustand oder einen Schwellenwert erfüllen (die z. B. innerhalb eines Zeitintervalls erfasst wurden).
- Bei HANDLUNG
325 kann das Datenverarbeitungssystem eine Aktionsdatenstruktur mit den Sensordaten erzeugen. Das Datenverarbeitungssystem kann die Aktionsdatenstruktur basierend auf dem Triggerschlüsselwort, einer Anforderung, Drittanbietervorrichtung oder anderen Informationen erzeugen. Die Aktionsdatenstruktur kann auf die Anforderung ansprechen. Wenn der Endbenutzer der Clientcomputervorrichtung beispielsweise ein Taxi von dem Taxidienstunternehmen A anfordert, kann die Aktionsdatenstruktur Informationen umfassen, um einen Taxidienst von dem Taxidienstunternehmen A anzufordern. Das Datenverarbeitungssystem kann ein Template für das Taxidienstunternehmen A auswählen und Felder in dem Template mit Werten füllen, die von einem oder mehreren Sensoren oder einem Speicher erlangt wurden, um dem Taxidienstunternehmen A zu ermöglichen, dem Benutzer der Clientcomputervorrichtung ein Taxi zu senden, um den Benutzer abzuholen und den Benutzer zu dem angeforderten Ziel zu bringen. - Bei HANDLUNG
330 kann das Datenverarbeitungssystem von der Drittanbietervorrichtung einen Hinweis empfangen, dass die Drittanbietervorrichtung die Operationssitzung mit der Clientvorrichtung eingerichtet hat. Der Hinweis kann anzeigen, dass die Operation initiiert wurde, aussteht, im Prozess oder abgeschlossen ist. Der Hinweis kann eine Datenstruktur mit zusätzlichen Informationen über die Operation umfassen. -
4 ist ein Blockdiagramm eines beispielhaften Computersystems400 . Das Computersystem oder die Computervorrichtung400 kann das System100 oder seine Komponenten wie das Datenverarbeitungssystem102 umfassen oder es kann verwendet werden, um diese zu implementieren. Das Datenverarbeitungssystem102 kann einen intelligenten persönlichen Assistenten oder einen sprachbasierten digitalen Assistenten umfassen. Das Computersystem400 umfasst einen Bus405 oder eine andere Kommunikationskomponente zur Kommunikation von Informationen und einen Prozessor 410 oder eine Verarbeitungsschaltung, die mit dem Bus405 zum Verarbeiten von Informationen gekoppelt ist. Das Computersystem400 kann außerdem einen oder mehrere Prozessoren410 oder Verarbeitungsschaltungen umfassen, die mit dem Bus zum Verarbeiten von Informationen gekoppelt sind. Das Computersystem400 umfasst außerdem den Hauptspeicher415 wie z.B. einen Random-Access-Memory (RAM) oder eine andere dynamische Speichervorrichtung, die mit dem Bus405 gekoppelt ist, um Informationen zu speichern, und Befehle, die vom Prozessor410 ausgeführt werden sollen. Der Hauptspeicher 415 kann der Datenbehälter145 sein oder diesen umfassen. Der Hauptspeicher415 kann auch zum Speichern von Positionsinformationen, temporären Variablen oder anderen Zwischeninformationen während einer Befehlsausführung durch den Prozessor410 verwendet werden. Das Computersystem400 kann weiter einen Read-Only-Memory (ROM) 420 oder eine andere statische Speichervorrichtung umfassen, die mit dem Bus405 gekoppelt ist, um statische Informationen und Befehle für den Prozessor410 zu speichern. Eine Speichervorrichtung425 wie eine Halbleitervorrichtung, Magnetplatte oder optische Disk, kann mit dem Bus405 gekoppelt sein, um ständig Informationen und Befehle zu speichern. Die Speichervorrichtung425 kann den Datenbehälter145 umfassen oder ein Teil davon sein. - Das Computersystem
400 kann über den Bus405 mit einer Anzeige435 wie einer Flüssigkristallanzeige (LCD) oder einer aktiven Matrixanzeige zum Anzeigen von Informationen an einen Benutzer gekoppelt sein. Eine Eingabevorrichtung430 wie z.B. eine Tastatur mit alphanumerischen und anderen Tasten kann mit dem Bus405 gekoppelt sein, um Informationen und Befehlsauswahlen an den Prozessor410 zu kommunizieren. Die Eingabevorrichtung430 kann eine Touchscreenanzeige435 umfassen. Die Eingabevorrichtung430 kann außerdem eine Cursorsteuerung wie eine Maus, einen Trackball oder Pfeiltasten auf der Tastatur umfassen, um Richtungsinformationen und Befehlsauswahlen an den Prozessor410 zu kommunizieren und Bewegungen des Cursors auf der Anzeige435 zu steuern. Die Anzeige435 kann beispielsweise ein Teil des Datenverarbeitungssystems102 , der Clientcomputervorrichtung150 oder einer anderen Komponente von1 sein. - Die hierin beschriebenen Prozesse, Systeme und Verfahren können vom Computersystem
400 als Reaktion darauf, dass der Prozessor410 einen im Hauptspeicher 415 enthaltenen Befehlssatz ausführt, implementiert werden. Diese Befehle können von einem anderen computerlesbaren Medium, wie z. B. der Speichervorrichtung425 in den Hauptspeicher415 gelesen werden. Die Ausführung des im Hauptspeicher415 enthaltenen Anweisungssatzes veranlasst das Computersystem400 dazu, die hierin beschriebenen veranschaulichten Prozesse auszuführen. Außerdem können in einer Multiprozessoranordnung ein oder mehrere Prozessoren dazu genutzt werden, die im Hauptspeicher415 enthaltenen Befehle auszuführen. Fest verdrahtete Schaltungen können anstelle von oder in Kombination mit Softwarebefehlen 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 beispielhaftes Computersystem in
4 beschrieben wurde, kann der Gegenstand, einschließlich der in dieser Patentschrift beschriebenen Vorgänge, in anderen Arten von digitalen elektronischen Schaltungen oder in Computersoftware, -firmware oder - hardware implementiert werden, einschließlich der in dieser Patentschrift offenbarten Strukturen und ihrer strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer davon. - Für Situationen, in denen die Systeme, die hier besprochen werden, persönliche Informationen über Benutzer sammeln, oder persönliche Informationen nutzen können, kann für die Benutzer eine Möglichkeit der Kontrolle bereitgestellt werden, 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 der Standort eines Benutzers), oder um zu kontrollieren, ob und/oder wie Inhalt von einem Inhaltsserver oder einem anderen Datenverarbeitungssystem empfangen wird, der für den Benutzer relevanter sein kann. Außerdem können bestimmte Daten auf eine oder mehrere Arten anonymisiert werden, bevor sie gespeichert oder verwendet werden, sodass personenbezogene Informationen entfernt wurden, wenn Parameter erzeugt werden. Eine Benutzeridentität kann beispielsweise anonymisiert werden, sodass keine persönlichen identifizierbaren Informationen für den Benutzer bestimmt werden können, oder ein Standort des Benutzers kann verallgemeinert werden, wobei Standortinformationen entnommen werden (wie beispielsweise eine Stadt, Postleitzahl oder Bundesland), sodass ein bestimmter Standort eines Benutzers nicht festgestellt werden kann. Daher kann der Benutzer Kontrolle darüber haben, wie Informationen über ihn gesammelt und von dem Inhaltsserver benutzt werden.
- Der in dieser Patentschrift beschriebene Gegenstand sowie die Operationen können in digitalen elektronischen Schaltungen oder in Computersoftware, -firmware oder -hardware implementiert werden, einschließlich der in dieser Patentschrift offenbarten Strukturen und ihrer strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer davon. Der in dieser Patentschrift beschriebene Gegenstand kann als ein oder mehrere Computerprogramme, wie z. B. eine oder mehrere Schaltungen von Computerprogrammbefehlen, die auf einem oder mehreren Computerspeichermedien zur Ausführung durch Datenverarbeitungsvorrichtungen codiert sind, oder um die Operation davon zu steuern, implementiert sein. Alternativ oder ergänzend dazu können die Programmbefehle auf einem künstlich erzeugten sich ausbreitenden Signal, wie beispielsweise einem maschinenerzeugten elektrischen, optischen oder elektromagnetischen Signal codiert werden, das erzeugt wird, um Informationen zur Übertragung an eine geeignete Empfängervorrichtung zu codieren, die dann von einer Datenverarbeitungsvorrichtung ausgeführt werden. Ein Computerspeichermedium kann eine computerlesbare Speichervorrichtung, ein computerlesbares Speichersubstrat, ein frei adressierbares oder serielles Zugriffsspeicher-Array oder -Gerät oder eine Kombination daraus sein oder darin beinhaltet sein. Obwohl ein Computerspeichermedium kein sich verbreitendes Signal ist, kann ein Computerspeichermedium jedoch eine Quelle oder ein Ziel von Computerprogrammbefehlen sein, die in einem künstlich erzeugten verbreiteten Signal codiert sind. Das Computerspeichermedium kann auch eine oder mehrere separate Komponenten oder Medien sein (z. B. mehrere CDs, Datenträger oder andere Speichervorrichtungen) oder darin eingeschlossen sein. Die in dieser Patentschrift beschriebenen Vorgänge können als Vorgänge implementiert werden, die durch eine Datenverarbeitungsvorrichtung an Daten ausgeführt werden, die auf einer oder mehreren computerlesbaren Speichervorrichtungen gespeichert oder von anderen Quellen empfangen werden.
- Die Begriffe „Datenverarbeitungssystem“, „Computervorrichtung“, „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. Das Gerät kann eine Speziallogikschaltung, wie z. B. eine FPGA (feldprogrammierbare Universalschaltung) oder eine ASIC (anwendungsspezifische integrierte Schaltung) umfassen. Die Vorrichtung kann auch zusätzlich zu Hardware Code umfassen, der eine Ausführungsumgebung für das betreffende Computerprogramm erzeugt, wie z. B. Code, der Prozessorfirmware, einen Protokollstapel, ein Datenbankmanagementsystem, ein Betriebssystem, eine plattformübergreifende Laufzeitumgebung, eine virtuelle Maschine oder eine Kombination aus einem oder mehreren davon bildet. Die Vorrichtung und die Ausführungsumgebung können verschiedene Computermodellinfrastrukturen, wie z. B. Webdienste, sowie verteilte Rechen- und räumlich verteilte Rechen-Infrastrukturen realisieren. Die Direktaktions-API 116, die Inhaltsauswahlkomponente
118 oder die NLP-Komponente112 und andere Datenverarbeitungssystem-102 -Komponenten können beispielsweise eine oder mehrere Datenverarbeitungsvorrichtungen, Systeme, Computervorrichtungen oder Prozessoren umfassen oder teilen. - Ein Computerprogramm (auch bekannt als ein Programm, Software, Softwareanwendung, App, Skript oder Code) kann in irgendeiner Form von Programmiersprache, einschließlich kompilierter Sprachen oder Interpretersprachen, deklarative oder prozedurale Sprachen geschrieben sein, und es kann in irgendeiner Form eingesetzt werden, einschließlich als ein Einzelprogramm oder als ein Modul, eine Komponente, ein Unterprogramm, ein 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 (z. B. ein oder mehrere Scripts, die in einem Dokument in Auszeichnungssprache gespeichert sind), in einer einzelnen Datei speziell für das betreffende Programm oder in mehreren koordinierten Dateien (z. B. Dateien, die ein oder mehrere Module, Unterprogramme oder Teile von Code speichern). Ein Computerprogramm kann derart eingesetzt werden, dass es auf einem Computer oder auf mehreren Computern ausgeführt wird, die sich an einem Standort oder verteilt über mehrere Standorte befinden und miteinander durch ein Kommunikationsnetzwerk verbunden sind.
- Die in dieser Patentschrift beschriebenen Prozesse und Logikabläufe können durch einen oder mehrere programmierbare Prozessoren ausgeführt werden, die ein oder mehrere Computerprogramme (z. B. Komponenten des Datenverarbeitungssystems
102 ) ausführen, um Aktionen durch Verarbeiten von eingegebenen Daten und Erzeugen von Ausgaben auszuführen. Die Prozesse und Logikabläufe können auch als, Speziallogikschaltungen, wie z. B. ein FPGA (feldprogrammierbares Gate-Array) oder eine ASIC (anwendungsspezifische integrierte Schaltung), implementiert werden und Vorrichtungen können auch als diese implementiert werden. Vorrichtungen, die zum Speichern von Computerprogrammbefehlen und Daten geeignet sind, umfassen alle Formen von nicht flüchtigem Speicher, Medien und Speichervorrichtungen, einschließlich beispielsweise Halbleiterspeichervorrichtungen, wie z. B. EPROM, EEPROM und Flash-Speichervorrichtungen; Magnetplatten, wie z. B. eingebaute Plattenlaufwerke oder Wechselplatten; magnetooptische Platten; und CD-ROMs und DVD-ROMs. Der Prozessor und der Speicher können mit Logikschaltungen für einen besonderen Zweck ergänzt werden oder darin integriert sein. - Der hierin beschriebene Gegenstand kann in einem Computersystem implementiert sein, das eine Backendkomponente, wie z. B. als einen Datenserver, umfasst, oder das eine Middlewarekomponente, wie z. B. einen Anwendungsserver umfasst, oder das eine Frontendkomponente, wie z. B. einen Clientcomputer umfasst, der eine grafische Benutzerschnittstelle oder einen Webbrowser aufweist, durch den ein Benutzer mit einer in dieser Patentschrift beschriebenen Implementierung des Gegenstandes interagieren kann, oder jede Kombination aus einer oder mehreren von solchen Backend-, Middleware- oder Frontendkomponenten. 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 umfassen 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 beispielsweise das System
100 oder das System400 , kann Clients und Server umfassen. Ein Client und ein Server befinden sich generell entfernt voneinander und interagieren typischerweise durch ein Kommunikationsnetzwerk (z. B. das Netzwerk165 ). Die Beziehung zwischen Client und Server entsteht aufgrund von Computerprogrammen, die auf den jeweiligen Computern laufen und die eine Client-Server-Beziehung zueinander aufweisen. Bei einigen Implementierungen sendet ein Server Daten (z.B. ein Inhaltselement darstellende Datenpakete) an eine Clientvorrichtung (z.B. zu Zwecken des Anzeigens von Daten und Empfangens von Benutzereingaben von einem Benutzer, der mit der Clientvorrichtung interagiert). In der Clientvorrichtung generierte Daten (z. B. ein Ergebnis der Benutzerinteraktion) können von der Clientvorrichtung am Server empfangen werden (z. B. empfangen durch das Datenverarbeitungssystem102 von der Computervorrichtung150 oder der Inhaltsanbietercomputervorrichtung155 oder der Dienstanbietercomputervorrichtung160 ). - 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, und es ist 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 bei sämtlichen Implementierungen und die beschriebenen Programmkomponenten können in einem einzigen Hardware- oder Softwareprodukt beinhaltet sein. Die NLP-Komponente
110 , die Inhaltsselektorkomponente125 oder die Sensorverwaltungskomponente120 kann eine einzelne Komponente, eine App oder Programm oder eine Logikvorrichtung mit einer oder mehreren Verarbeitungsschaltungen oder ein Teil von einem oder mehreren Servern des Datenverarbeitungssystems102 sein. - Nachdem nunmehr einige veranschaulichende Implementierungen beschrieben wurden, ist es offensichtlich, dass das Vorstehende veranschaulichend und nicht einschränkend ist und auf beispielhafte Art und Weise präsentiert wurde. Insbesondere können, obgleich viele der hierin präsentierten Beispiele spezifische Kombinationen von Verfahrensvorgängen oder Systemelementen umfassen, diese Vorgänge und Elemente auf andere Weisen kombiniert werden, um die gleichen Ziele zu erreichen. Vorgänge, Elemente und Merkmale, die im Zusammenhang mit einer Implementierung beschrieben sind, sollen nicht von einer ähnlichen Rolle in anderen Implementierungen oder von Implementierungen ausgeschlossen sein.
- Die hier verwendete Ausdrucksweise und Terminologie dient dem Zweck der Beschreibung und sollte nicht als beschränkend 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 Element, Äquivalente derselben und zusätzliche Elemente sowie alternative Implementierungen, die ausschließlich aus den danach aufgelisteten Elementen bestehen, enthalten sind. Bei einer Implementierung bestehen die hierin beschriebenen Systeme und Verfahren aus einem, aus jeder Kombination von mehr als einer 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 im Singular verwiesen wird, können auch Implementierungen umfassen, die eine Vielzahl dieser Elemente einschließen, während jegliche Bezugnahmen auf eine Implementierung oder ein Element oder eine Wirkungsweise beliebiger Art, auf die hierin im Plural verwiesen wird, auch Implementierungen umfassen können, die nur ein einzelnes Element einschließen. Bezugnahmen auf die Singular- oder die Pluralform sind nicht dazu gedacht, um die vorliegend offengelegten Systeme und Verfahren, ihre Komponenten, ihre 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 umfassen, 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 offengelegten Aspekten und Implementierungen im Einklang steht, mit jeder anderen Implementierung kombiniert werden.
- Bezüge auf „oder“ können als inklusiv ausgelegt werden, sodass sich alle Begriffe, die mit „oder“ beschrieben werden, auf einen, mehr als einen oder jeden der beschriebenen Begriffe beziehen können. Eine Bezugnahme auf „mindestens eines von ’A‘ und ’B‘“ kann beispielsweise nur ‚A‘, nur ‚B‘ sowie sowohl ‚A‘ und ‚B‘ umfassen. Diese Bezugnahmen, die in Verbindung mit „umfassend“ oder anderer offener Terminologie verwendet werden, können zusätzliche Elemente umfassen.
- Wenn technischen Merkmalen in den Zeichnungen, der detaillierten Beschreibung oder einem beliebigen Anspruch Bezugszeichen folgen, wurden diese eingebunden, um die Verständlichkeit der Zeichnungen, detaillierten 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. Das Datenverarbeitungssystem
102 kann beispielsweise ein Inhaltselement für eine anschließende Aktion (z. B. für die dritte Aktion215 ) basierend teilweise auf Daten von einer vorausgehenden Aktion in der Folge von Aktionen des Threads200 auswählen, wie beispielsweise Daten von der zweiten Aktion210 , die anzeigen, dass die zweite Aktion210 komplett ist oder dabei ist, zu beginnen. Die vorhergehenden Implementierungen sind veranschaulichend anstatt einschränkend für die hierin beschriebenen Systeme und Verfahren. Der Geltungsbereich der hierin beschriebenen Systeme und Verfahren wird daher durch die beigefügten Ansprüche angegeben anstatt durch die vorangehende Beschreibung, und Änderungen, die innerhalb der Bedeutungen und des Bereichs der Äquivalenz der Ansprüche fallen, sind daher darin eingeschlossen. - ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Patentliteratur
-
- US 15395715 [0001]
Claims (20)
- System zum selektiven Abfragen von Sensoren über ein Computernetzwerk, umfassend: eine durch ein Datenverarbeitungssystem ausgeführte natürlichsprachliche Prozessorkomponente, um über eine Schnittstelle des Datenverarbeitungssystems Datenpakete zu empfangen, die ein durch ein Mikrofon einer Clientvorrichtung detektiertes Eingabeaudiosignal umfassen; wobei die natürlichsprachliche Prozessorkomponente das Eingabeaudiosignal parst, um eine Anforderung und ein Triggerschlüsselwort, das der Anforderung entspricht, zu identifizieren; eine Direktaktionsanwendungsprogrammierschnittstelle („API“) des Datenverarbeitungssystems basierend auf dem Triggerschlüsselwort ein Template für eine Aktionsdatenstruktur als Reaktion auf die Anforderung auswählt und das Template ein erstes Feld umfasst; eine Sensorverwaltungskomponente des Datenverarbeitungssystems zum: Identifizieren mehrerer verfügbarer Sensoren, die konfiguriert sind, Informationen für das erste Feld zu erlangen, wobei die mehreren verfügbaren Sensoren einen ersten Sensor und einen zweiten Sensor umfassen; Bestimmen eines Status von jedem von den mehreren Sensoren; Auswählen des ersten Sensors der mehreren Sensoren basierend auf dem Status; und Abfragen des ersten Sensors nach Daten, die dem ersten Feld entsprechen; wobei die Direktaktions-API das erste Feld mit den Daten, die von der Sensorverwaltungskomponente empfangen wurden, als Reaktion auf das Abfragen des ersten Sensors füllt, und die Aktionsdatenstruktur basierend auf dem ersten Feld des Templates erzeugt; die Direktaktions-API die Aktionsdatenstruktur an eine Drittanbietervorrichtung sendet, um die Drittanbietervorrichtung zu veranlassen, eine Operationssitzung zwischen der Drittanbietervorrichtung und der Clientvorrichtung aufzurufen; und das Datenverarbeitungssystem von der Drittanbietervorrichtung einen Hinweis empfängt, dass die Drittanbietervorrichtung die Operationssitzung mit der Clientvorrichtung eingerichtet hat.
- System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Empfangen eines Hinweises, dass eine Operation während der Operationssitzung ausgeführt wurde. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Anpassen einer Konfiguration des ersten Sensors, um Daten basierend auf einem Datentyp zu erfassen. - System nach
Anspruch 1 , wobei die Konfiguration mindestens eines von einer Abtastrate und einem Abtastintervall umfasst. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Bestimmen, ob die Clientvorrichtung in einen Online-Status eingetreten ist; und Befehlen, dass die Clientvorrichtung einen Batch-Upload der erfassten Daten als Reaktion auf den Online-Status ausführt. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Deaktivieren, als Reaktion auf eine Charakteristik von Daten, die durch den ersten Sensor erfasst wurden, des ersten Sensors, um zu verhindern, dass der erste Sensor Daten erfasst. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Anwenden einer Ressourcennutzungsreduzierungsrichtlinie auf eine Charakteristik von Daten, die durch den ersten Sensor erfasst wurden, um den ersten Sensor zu deaktivieren. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Identifizieren zweiter mehrerer verfügbarer Sensoren, die konfiguriert sind, Ortsinformationen zu erlangen, wobei die zweiten mehreren verfügbaren Sensoren den ersten Sensor, den zweiten Sensor und einen dritten Sensor umfassen; Bestimmen eines Batteriestatus von jedem der mehreren Sensoren; Auswählen des ersten Sensors der mehreren Sensoren basierend darauf, dass der erste Sensor einen größeren Batteriestrom aufweist als der zweite Sensor und der dritte Sensor; Deaktivieren des dritten Sensors, um Batterieverbrauch zu sparen; und Anfordern der Ortsinformationen von dem ersten Sensor. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Identifizieren zweiter mehrerer verfügbarer Sensoren, die konfiguriert sind, Ortsinformationen zu erlangen, wobei die zweiten mehreren verfügbaren Sensoren den ersten Sensor und einen dritten Sensor umfassen; Bestimmen, dass der erste Sensor gegenwärtige Ortsinformationen der Clientvorrichtung detektiert hat, vor einer Anforderung für Ortsinformationen von dem Datenverarbeitungssystem; Bestimmen, dass der dritte Sensor in einem Offline-Zustand ist und ihm die gegenwärtigen Ortsinformationen fehlen; und Erlangen der gegenwärtigen Ortsinformationen von dem ersten Sensor, wobei der dritte Sensor im Offline-Zustand ist. - System nach
Anspruch 1 , umfassend das Datenverarbeitungssystem zum: Empfangen, von der Clientvorrichtung, einer Liste von Anwendungen, die auf der Clientvorrichtung installiert sind. - Verfahren zum selektiven Abfragen von Sensoren über ein Computernetzwerk, umfassend: Empfangen, durch eine natürlichsprachliche Prozessorkomponente, die durch ein Datenverarbeitungssystem ausgeführt wird, über eine Schnittstelle des Datenverarbeitungssystems, von Datenpaketen, die ein durch ein Mikrofon einer Clientvorrichtung detektiertes Eingabeaudiosignal umfassen; Parsen, durch die natürlichsprachliche Prozessorkomponente, des Eingabeaudiosignals, um eine Anforderung und ein Triggerschlüsselwort zu identifizieren, das der Anforderung entspricht; Auswählen, durch eine Direktaktionsanwendungsprogrammierschnittstelle („API“) des Datenverarbeitungssystems basierend auf dem Triggerschlüsselwort, eines Templates für eine Aktionsdatenstruktur als Reaktion auf die Anforderung, wobei das Template ein erstes Feld umfasst; Identifizieren, durch eine Sensorverwaltungskomponente des Datenverarbeitungssystems, mehrerer verfügbarer Sensoren, die konfiguriert sind, Informationen für das erste Feld zu erlangen, wobei die mehreren verfügbaren Sensoren einen ersten Sensor und einen zweiten Sensor umfassen; Bestimmen, durch die Sensorverwaltungskomponente, eines Status von jedem der mehreren Sensoren; Auswählen, durch die Sensorverwaltungskomponente, des ersten Sensors der mehreren Sensoren basierend auf dem Status; Abfragen, durch die Sensorverwaltungskomponente, des ersten Sensors nach Daten, die dem ersten Feld entsprechen; Füllen, durch die Direktaktions-API, des ersten Felds basierend auf den Daten, die durch die Sensorverwaltungskomponente empfangen wurden, als Reaktion auf das Abfragen des ersten Sensors; Erzeugen, durch die Direktaktions-API, der Aktionsdatenstruktur basierend auf dem ersten Feld des Templates; und Senden, durch die Direktaktions-API, der Aktionsdatenstruktur an eine Drittanbietervorrichtung; und Empfangen, durch das Datenverarbeitungssystem, von der Drittanbietervorrichtung, eines Hinweises, dass die Drittanbietervorrichtung die Operationssitzung mit der Clientvorrichtung eingerichtet hat.
- Verfahren nach
Anspruch 11 , umfassend: Empfangen, durch das Datenverarbeitungssystem, eines Hinweises, dass eine Operation während der Operationssitzung ausgeführt wurde. - Verfahren nach
Anspruch 11 , umfassend: Anpassen, durch das Datenverarbeitungssystem, einer Konfiguration des ersten Sensors, um Daten basierend auf einem Datentyp zu erfassen. - Verfahren nach
Anspruch 11 , wobei die Konfiguration mindestens eines von einer Abtastrate und einem Abtastintervall umfasst. - Verfahren nach
Anspruch 11 , umfassend: Bestimmen, durch das Datenverarbeitungssystem, dass die Clientvorrichtung in einen Online-Status eingetreten ist; und Befehlen, durch das Datenverarbeitungssystem, dass die Clientvorrichtung einen Batch-Upload der erfassten Daten als Reaktion auf den Online-Status ausführt. - Verfahren nach
Anspruch 11 , umfassend: Deaktivieren, durch das Datenverarbeitungssystem, als Reaktion auf eine Charakteristik von Daten, die durch den ersten Sensor erfasst wurden, des ersten Sensors, um zu verhindern, dass der erste Sensor Daten erfasst. - Verfahren nach
Anspruch 11 , umfassend: Anwenden, durch das Datenverarbeitungssystem, einer Ressourcennutzungsreduzierungsrichtlinie auf eine Charakteristik von Daten, die durch den ersten Sensor erfasst wurden, um den ersten Sensor zu deaktivieren. - Verfahren nach
Anspruch 11 , umfassend: Identifizieren, durch das Datenverarbeitungssystem, zweiter mehrerer verfügbarer Sensoren, die konfiguriert sind, Ortsinformationen zu erlangen, wobei die zweiten mehreren verfügbaren Sensoren den ersten Sensor, den zweiten Sensor und einen dritten Sensor umfassen; Bestimmen eines Batteriestatus von jedem der zweiten mehreren Sensoren; Auswählen des ersten Sensors der zweiten mehreren Sensoren basierend darauf, dass der erste Sensor einen größeren Batteriestrom aufweist als der zweite Sensor und der dritte Sensor; Deaktivieren des dritten Sensors, um Batterieverbrauch zu sparen; und Anfordern der Ortsinformationen von dem ersten Sensor. - Verfahren nach
Anspruch 11 , umfassend: Identifizieren zweiter mehrerer verfügbarer Sensoren, die konfiguriert sind, Ortsinformationen zu erlangen, wobei die zweiten mehreren verfügbaren Sensoren den ersten Sensor und einen dritten Sensor umfassen; Bestimmen, dass der erste Sensor gegenwärtige Ortsinformationen der Clientvorrichtung detektiert hat, vor einer Anforderung für Ortsinformationen von dem Datenverarbeitungssystem; Bestimmen, dass der dritte Sensor in einem Offline-Zustand ist und die gegenwärtigen Ortsinformationen davon fehlen; und Erlangen der gegenwärtigen Ortsinformationen von dem ersten Sensor, wobei der dritte Sensor im Offline-Zustand ist. - Verfahren nach
Anspruch 11 , umfassend: Empfangen, von der Clientvorrichtung, einer Liste von Anwendungen, die auf der Clientvorrichtung installiert sind.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/395,715 US10924376B2 (en) | 2016-12-30 | 2016-12-30 | Selective sensor polling |
US15/395,715 | 2016-12-30 | ||
PCT/US2017/049779 WO2018125305A1 (en) | 2016-12-30 | 2017-08-31 | Selective sensor polling |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112017000141T5 true DE112017000141T5 (de) | 2018-09-13 |
Family
ID=59901583
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112017000141.2T Pending DE112017000141T5 (de) | 2016-12-30 | 2017-08-31 | Selektives sensorabfragen |
DE212017000329.4U Active DE212017000329U1 (de) | 2016-12-30 | 2017-08-31 | Selektives Sensorabfragen |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE212017000329.4U Active DE212017000329U1 (de) | 2016-12-30 | 2017-08-31 | Selektives Sensorabfragen |
Country Status (8)
Country | Link |
---|---|
US (3) | US10924376B2 (de) |
EP (3) | EP3588918B1 (de) |
JP (3) | JP6629882B2 (de) |
KR (3) | KR102125991B1 (de) |
CN (2) | CN108513705B (de) |
DE (2) | DE112017000141T5 (de) |
GB (2) | GB2572316B (de) |
WO (1) | WO2018125305A1 (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11627186B2 (en) * | 2012-05-17 | 2023-04-11 | Digi International, Inc. | Wireless network of environmental sensor units |
US10924376B2 (en) | 2016-12-30 | 2021-02-16 | Google Llc | Selective sensor polling |
US10405137B2 (en) | 2017-03-13 | 2019-09-03 | Kevin R. Imes | Mobile application and system for associating actions with independent geographic locations |
US10303181B1 (en) | 2018-11-29 | 2019-05-28 | Eric John Wengreen | Self-driving vehicle systems and methods |
US11073838B2 (en) | 2018-01-06 | 2021-07-27 | Drivent Llc | Self-driving vehicle systems and methods |
US10299216B1 (en) * | 2018-01-06 | 2019-05-21 | Eric John Wengreen | Self-driving vehicle actions in response to a low battery |
WO2019235100A1 (ja) * | 2018-06-08 | 2019-12-12 | 株式会社Nttドコモ | 対話装置 |
US11461863B2 (en) | 2018-08-24 | 2022-10-04 | Bright Marbles, Inc. | Idea assessment and landscape mapping |
US11189267B2 (en) * | 2018-08-24 | 2021-11-30 | Bright Marbles, Inc. | Intelligence-driven virtual assistant for automated idea documentation |
US11081113B2 (en) | 2018-08-24 | 2021-08-03 | Bright Marbles, Inc. | Idea scoring for creativity tool selection |
US11164065B2 (en) | 2018-08-24 | 2021-11-02 | Bright Marbles, Inc. | Ideation virtual assistant tools |
US10493952B1 (en) | 2019-03-21 | 2019-12-03 | Drivent Llc | Self-driving vehicle systems and methods |
US10479319B1 (en) | 2019-03-21 | 2019-11-19 | Drivent Llc | Self-driving vehicle systems and methods |
US10471804B1 (en) | 2018-09-18 | 2019-11-12 | Drivent Llc | Self-driving vehicle systems and methods |
US10282625B1 (en) | 2018-10-01 | 2019-05-07 | Eric John Wengreen | Self-driving vehicle systems and methods |
US11221622B2 (en) | 2019-03-21 | 2022-01-11 | Drivent Llc | Self-driving vehicle systems and methods |
US10794714B2 (en) | 2018-10-01 | 2020-10-06 | Drivent Llc | Self-driving vehicle systems and methods |
US11644833B2 (en) | 2018-10-01 | 2023-05-09 | Drivent Llc | Self-driving vehicle systems and methods |
US10832569B2 (en) | 2019-04-02 | 2020-11-10 | Drivent Llc | Vehicle detection systems |
US10900792B2 (en) | 2018-10-22 | 2021-01-26 | Drivent Llc | Self-driving vehicle systems and methods |
US10481606B1 (en) | 2018-11-01 | 2019-11-19 | Drivent Llc | Self-driving vehicle systems and methods |
US10377342B1 (en) | 2019-02-04 | 2019-08-13 | Drivent Technologies Inc. | Self-driving vehicle systems and methods |
US10744976B1 (en) | 2019-02-04 | 2020-08-18 | Drivent Llc | Self-driving vehicle systems and methods |
US20200333868A1 (en) * | 2019-04-22 | 2020-10-22 | Ecolink Intelligent Technology, Inc. | Power-saving sensor |
EP3916571A4 (de) * | 2019-04-26 | 2022-08-31 | Siemens Aktiengesellschaft | System und verfahren zur datenerfassung |
CN112269607A (zh) * | 2020-11-17 | 2021-01-26 | 北京百度网讯科技有限公司 | 小程序的控制方法、系统、服务器以及终端设备 |
US11842229B2 (en) * | 2021-01-06 | 2023-12-12 | Prama, Inc. | System and method for designing and developing application programming interface |
EP4102804A1 (de) * | 2021-06-10 | 2022-12-14 | Juniper Networks, Inc. | Metrische erfassung basierend auf vorrichtungscharakteristikinformationen |
US11516067B1 (en) | 2021-06-10 | 2022-11-29 | Juniper Networks, Inc. | Collecting metric information by sensors based on device characteristic information |
GB2608634A (en) * | 2021-07-08 | 2023-01-11 | Vodafone Group Services Ltd | Device data validity |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
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 |
US6857007B1 (en) | 2000-08-30 | 2005-02-15 | Bloomfield Enterprises, Llc | Personal digital assistant facilitated communication system |
JP2002215670A (ja) * | 2001-01-15 | 2002-08-02 | Omron Corp | 音声応答装置、音声応答方法、音声応答プログラム、音声応答プログラムを記録した記録媒体および予約システム |
US7853255B2 (en) | 2004-04-16 | 2010-12-14 | Broadcom Corporation | Digital personal assistance via a broadband access gateway |
US8195133B2 (en) | 2005-09-14 | 2012-06-05 | Jumptap, Inc. | Mobile dynamic advertisement creation and placement |
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 |
EP2523443B1 (de) | 2006-02-10 | 2014-01-29 | Nuance Communications, Inc. | Benutzerunabhängiges, vorrichtungsunabhängiges Multiskala-Sprachnachrichten-zu-Text-Umwandlungssystem |
EP2054804B1 (de) * | 2006-04-07 | 2017-05-17 | Qualcomm Incorporated | Sensorschnittstelle und verfahren und vorrichtungen in bezug darauf |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8145561B1 (en) | 2009-01-05 | 2012-03-27 | Sprint Communications Company L.P. | Phone usage pattern as credit card fraud detection trigger |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US8276159B2 (en) | 2009-09-23 | 2012-09-25 | Microsoft Corporation | Message communication of sensor and other data |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
AU2012316484A1 (en) * | 2011-09-30 | 2014-04-17 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
EP3200185A1 (de) * | 2011-09-30 | 2017-08-02 | Apple Inc. | Verwendung von kontextinformationen zur erleichterung der verarbeitung von befehlen bei einem virtuellen assistenten |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9230560B2 (en) | 2012-10-08 | 2016-01-05 | Nant Holdings Ip, Llc | Smart home automation systems and methods |
KR102179811B1 (ko) * | 2012-12-03 | 2020-11-17 | 엘지전자 주식회사 | 포터블 디바이스 및 음성 인식 서비스 제공 방법 |
CN113470640B (zh) * | 2013-02-07 | 2022-04-26 | 苹果公司 | 数字助理的语音触发器 |
US20140358472A1 (en) * | 2013-05-31 | 2014-12-04 | Nike, Inc. | Dynamic sampling |
US9946985B2 (en) * | 2014-04-15 | 2018-04-17 | Kofax, Inc. | Touchless mobile applications and context-sensitive workflows |
US9547363B2 (en) * | 2014-07-16 | 2017-01-17 | Mediatek Inc. | Power-saving method and associated electronic device |
US9602349B2 (en) * | 2014-08-18 | 2017-03-21 | Qualcomm Incorporated | Multi-device sensor subsystem joint optimization |
US20160077892A1 (en) | 2014-09-12 | 2016-03-17 | Microsoft Corporation | Automatic Sensor Selection Based On Requested Sensor Characteristics |
US9769564B2 (en) * | 2015-02-11 | 2017-09-19 | Google Inc. | Methods, systems, and media for ambient background noise modification based on mood and/or behavior information |
CN106164814A (zh) * | 2015-03-13 | 2016-11-23 | (株)未来百乐 | 用于由移动设备控制传感器的移动设备和方法 |
US10267661B2 (en) * | 2015-03-23 | 2019-04-23 | Incoming Pty Ltd | Energy efficient mobile context collection |
WO2016157642A1 (ja) * | 2015-03-27 | 2016-10-06 | ソニー株式会社 | 情報処理装置、情報処理方法、およびプログラム |
US20160322044A1 (en) | 2015-04-01 | 2016-11-03 | Elwha Llc | Networked User Command Recognition |
US10383568B2 (en) * | 2015-09-30 | 2019-08-20 | Apple Inc. | Confirming sleep based on secondary indicia of user activity |
US20170092278A1 (en) | 2015-09-30 | 2017-03-30 | Apple Inc. | Speaker recognition |
US9747926B2 (en) | 2015-10-16 | 2017-08-29 | Google Inc. | Hotword recognition |
US9928840B2 (en) | 2015-10-16 | 2018-03-27 | Google Llc | Hotword recognition |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10572524B2 (en) * | 2016-02-29 | 2020-02-25 | Microsoft Technology Licensing, Llc | Content categorization |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10659921B2 (en) * | 2016-09-23 | 2020-05-19 | Qualcomm Incorporated | Measurement batching |
US10924376B2 (en) | 2016-12-30 | 2021-02-16 | Google Llc | Selective sensor polling |
-
2016
- 2016-12-30 US US15/395,715 patent/US10924376B2/en active Active
-
2017
- 2017-08-31 WO PCT/US2017/049779 patent/WO2018125305A1/en active Application Filing
- 2017-08-31 CN CN201780001587.XA patent/CN108513705B/zh active Active
- 2017-08-31 EP EP19188032.7A patent/EP3588918B1/de active Active
- 2017-08-31 KR KR1020197034136A patent/KR102125991B1/ko active IP Right Grant
- 2017-08-31 KR KR1020197016186A patent/KR102049036B1/ko active IP Right Grant
- 2017-08-31 GB GB1803228.4A patent/GB2572316B/en active Active
- 2017-08-31 KR KR1020177031461A patent/KR101988610B1/ko active IP Right Grant
- 2017-08-31 GB GB2200233.1A patent/GB2601252B/en active Active
- 2017-08-31 DE DE112017000141.2T patent/DE112017000141T5/de active Pending
- 2017-08-31 DE DE212017000329.4U patent/DE212017000329U1/de active Active
- 2017-08-31 EP EP17768899.1A patent/EP3360310B1/de active Active
- 2017-08-31 CN CN202110121741.5A patent/CN112885349A/zh active Pending
- 2017-08-31 EP EP21208337.2A patent/EP3979604A1/de active Pending
- 2017-08-31 JP JP2017556887A patent/JP6629882B2/ja active Active
-
2019
- 2019-12-05 JP JP2019220480A patent/JP6828124B2/ja active Active
-
2021
- 2021-01-19 US US17/152,246 patent/US11627065B2/en active Active
- 2021-01-19 JP JP2021006464A patent/JP7136941B2/ja active Active
-
2023
- 2023-04-10 US US18/298,034 patent/US20230246936A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3360310A1 (de) | 2018-08-15 |
EP3588918A1 (de) | 2020-01-01 |
CN112885349A (zh) | 2021-06-01 |
JP6629882B2 (ja) | 2020-01-15 |
GB2601252A (en) | 2022-05-25 |
US11627065B2 (en) | 2023-04-11 |
EP3979604A1 (de) | 2022-04-06 |
GB2601252B (en) | 2022-11-16 |
CN108513705A (zh) | 2018-09-07 |
DE212017000329U1 (de) | 2019-12-20 |
GB2572316B (en) | 2022-02-23 |
KR20180091706A (ko) | 2018-08-16 |
GB201803228D0 (en) | 2018-04-11 |
EP3588918B1 (de) | 2021-12-22 |
JP2019506758A (ja) | 2019-03-07 |
US20230246936A1 (en) | 2023-08-03 |
US10924376B2 (en) | 2021-02-16 |
JP6828124B2 (ja) | 2021-02-10 |
JP2020064308A (ja) | 2020-04-23 |
KR101988610B1 (ko) | 2019-06-12 |
KR102125991B1 (ko) | 2020-06-23 |
WO2018125305A1 (en) | 2018-07-05 |
KR102049036B1 (ko) | 2019-11-26 |
CN108513705B (zh) | 2021-05-18 |
US20180191596A1 (en) | 2018-07-05 |
US20210144079A1 (en) | 2021-05-13 |
GB2572316A (en) | 2019-10-02 |
KR20190132557A (ko) | 2019-11-27 |
JP7136941B2 (ja) | 2022-09-13 |
JP2021064011A (ja) | 2021-04-22 |
KR20190066087A (ko) | 2019-06-12 |
EP3360310B1 (de) | 2019-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112017000141T5 (de) | Selektives sensorabfragen | |
DE112017000122T5 (de) | Natürliche Sprachverarbeitung für den Sitzungsaufbau mit Serviceprovidern | |
DE112017000139T5 (de) | Modulation von paketierten Audiosignalen | |
DE112017000131T5 (de) | Rückmeldungssteuerung für Datenübertragungen | |
DE212017000042U1 (de) | Datenstruktur-Pooling von sprachaktivierten Datenpaketen | |
DE112017000169T5 (de) | Gerätekennungsabhängige vorgangsverarbeitung von paketbasierter datenkommunikation | |
DE102017131378A1 (de) | Modifikation einer audiobasierten Computerprogrammausgabe | |
DE212017000068U1 (de) | Einrichten von audio-basierten Netzwerksitzungen mit nicht registrierten Ressourcen | |
DE112017000104T5 (de) | Sequenzabhängige datennachrichtenkonsolidierung in einer sprachaktivierten computernetzwerkumgebung | |
DE112017000177T5 (de) | Authentifizierung von paketierten Audiosignalen | |
DE102017131382A1 (de) | Ausgleichen von Modifikationen einer audiobasierten Computerprogrammausgabe | |
DE102017131383A1 (de) | Ausgleichen von Modifikationen einer audiobasierten Computerprogrammausgabe | |
DE102017131381A1 (de) | Validieren der Modifikation einer audiobasierten Computerprogrammausgabe | |
DE102017201173A1 (de) | Latenzreduzierung bei der feedbackbasierten ermittlung einer systemperformance | |
DE102015008607B4 (de) | Adaptives Anpassen von Netzwerk-Anforderungen auf Client-Anforderungen in digitalen Netzwerken |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06Q0050100000 Ipc: G07C0011000000 |
|
R082 | Change of representative |
Representative=s name: KASTEL, STEFAN, DIPL.-PHYS.UNIV., DE Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KASTEL, STEFAN, DIPL.-PHYS.UNIV., DE Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, NL |