DE112017000141T5 - Selektives sensorabfragen - Google Patents

Selektives sensorabfragen Download PDF

Info

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
Application number
DE112017000141.2T
Other languages
English (en)
Inventor
Gaurav Bhaya
Robert Stets
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE112017000141T5 publication Critical patent/DE112017000141T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/103Active monitoring, e.g. heartbeat, ping or trace-route with adaptive polling, i.e. dynamically adapting the polling rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power 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

Es wird ein selektives Sensorabfragesystem für eine sprachaktivierte datenpaketbasierende Computernetzwerkumgebung bereitgestellt. Ein System kann durch ein Mikrofon einer Vorrichtung detektierte Audiosignale empfangen. Das System kann das Audiosignal parsen, um ein Triggerschlüsselwort und eine Anforderung zu identifizieren. Das System kann ein Template für eine Aktionsdatenstruktur mit mehreren Feldern auswählen. Das System kann bestimmen, einen ersten Sensor nach Daten für das erste Feld abzufragen. Das System kann bestimmen, Daten im Speicher zu erlangen, die zuvor durch den zweiten Sensor erfasst wurden. Das System kann die Aktionsdatenstruktur mit den Daten von dem Sensor und dem Speicher erzeugen und senden und die Aktionsdatenstruktur an eine Drittanbietervorrichtung senden.

Description

  • HINTERGRUND
  • Die vorliegende Anmeldung beansprucht den Vorteil und die Priorität der US-Patentanmeldung Nr. 15/395,715 mit dem Titel „SELECTIVE SENSOR POLLING“, eingereicht am 30. Dezember 2016, die hiermit vollständig durch Bezugnahme für alle Zwecke aufgenommen wird.
  • 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 System 100 zum selektiven Abfragen von Sensoren über ein Computernetzwerk. Das System 100 kann eine Inhaltsauswahlinfrastruktur umfassen. Das System 100 kann ein Datenverarbeitungssystem 102 umfassen. Das Datenverarbeitungssystem 102 kann mit einem oder mehreren von einer Inhaltsanbietercomputervorrichtung 106, einer Dienstanbietercomputervorrichtung 108 oder einer Clientcomputervorrichtung 104 über ein Netzwerk 105 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 Netzwerk 105 kann zum Zugreifen auf Informationsressourcen wie Webseiten, Websites, Domänennamen oder Uniform Resource Locators (URLs) verwendet werden, die auf mindestens einer Computervorrichtung 104 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 Netzwerk 105 kann ein Benutzer der Computervorrichtung 104 beispielsweise auf Informationen oder Daten zugreifen, die von einem Dienstanbieter 108 oder einer Inhaltsanbieter 106 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 Netzwerk 105 kann durch das Datenverarbeitungssystem 102 verwendet werden, um auf Informationsressourcen wie Webseiten, Websites, Domänennamen oder URL-Adressen zuzugreifen, die durch die Clientcomputervorrichtung 104 präsentiert, ausgegeben, gerendert oder angezeigt werden können. Über das Netzwerk 105 kann ein Benutzer der Clientcomputervorrichtung 104 beispielsweise auf Informationen oder Daten zugreifen, die durch die Inhaltsanbietercomputervorrichtung 106 oder die Dienstanbietercomputervorrichtung 108 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 Netzwerk 105 kann eine drahtlose Verbindung, wie einen Infrarotkanal oder Satellitenband, umfassen. Die Topologie des Netzwerks 105 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 Datenverarbeitungssystem 102 umfassen. Das Datenverarbeitungssystem 102 kann mindestens eine logische Vorrichtung wie eine Computervorrichtung mit einem Prozessor zur Kommunikation über das Netzwerk 105 z. B. mit der Computervorrichtung 104, der Inhaltsanbietervorrichtung 106 (der Inhaltsanbietercomputervorrichtung 106) oder der Dienstanbietervorrichtung 108 (oder dem Dienstanbieter 108) umfassen. Das Datenverarbeitungssystem 102 kann mindestens eine Berechnungsressource, einen Server, Prozessor oder Speicher umfassen. Das Datenverarbeitungssystem 102 kann zum Beispiel eine Vielzahl von Computerressourcen oder Server umfassen, die sich in mindestens einem Datenzentrum befinden. Das Datenverarbeitungssystem 102 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 Dienstanbietervorrichtung 108 umfassen oder darauf zugreifen oder anderweitig damit interagieren. Die Dienstanbietervorrichtung 108 kann mindestens eine logische Vorrichtung wie eine Computervorrichtung mit einem Prozessor zur Kommunikation über das Netzwerk 105 z. B. mit der Computervorrichtung 104, dem Datenverarbeitungssystem 102 oder dem Inhaltsanbieter 106 umfassen. Die Dienstanbietervorrichtung 108 kann mindestens eine Berechnungsressource, einen Server, Prozessor oder Speicher umfassen. Beispielsweise kann die Dienstanbietervorrichtung 108 mehrere in mindestens einem Datenzentrum lokalisierte Berechnungsressourcen oder Server umfassen. Die Dienstanbietervorrichtung 108 kann eine oder mehrere Komponenten oder Funktionalitäten des Datenverarbeitungssystems 102 umfassen.
  • Die Inhaltsanbietercomputervorrichtung 106 kann audiobasierte Inhaltselemente zum Anzeigen durch die Clientcomputervorrichtung 104 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 Inhaltsanbietercomputervorrichtung 155 kann beispielsweise einen Speicher umfassen, um eine Reihe von Audioinhaltselementen zu speichern, die als Reaktion auf eine sprachbasierte Abfrage bereitgestellt werden können. Die Inhaltsanbietercomputervorrichtung 106 kann auch audiobasierte Inhaltselemente (oder andere Inhaltselemente) an das Datenverarbeitungssystem 102 bereitstellen, wobei diese im Datenbehälter 124 gespeichert werden können. Das Datenverarbeitungssystem 102 kann die Audioinhaltselemente auswählen und die Audioinhaltselemente an die Clientcomputervorrichtung 104 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 Prozessorkomponente 142 eines Dienstanbieters und eine Dienstanbieterschnittstelle 144 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Die Dienstanbietercomputervorrichtung 108 kann mindestens eine natürlichsprachliche Prozessor- (NLP) -Komponente 142 eines Dienstanbieters und mindestens eine Dienstanbieterschnittstelle 144 umfassen. Die Dienstanbieter-NLP-Komponente 142 (oder andere Komponenten wie eine Direktaktions-API der Dienstanbietercomputervorrichtung 108) kann mit der Clientcomputervorrichtung 104 (über das Datenverarbeitungssystem 102 oder durch Umgehen des Datenverarbeitungssystems 102) eingreifen, um eine Hin- und Rück-Echtzeitsprache oder audiobasierte Konversation (z. B. eine Sitzung) zwischen der Clientcomputervorrichtung 104 und der Dienstanbietercomputervorrichtung 108 zu erzeugen. Der Dienstanbieter-NLP 142 kann eine oder mehrere Funktionen oder Merkmale wie die NLP-Komponente 112 des Datenverarbeitungssystems 102 umfassen. Beispielsweise kann die Dienstanbieterschnittstelle 144 Datennachrichten von der Direktaktions-API 116 des Datenverarbeitungssystems 102 empfangen oder an diese bereitstellen. Die Dienstanbietercomputervorrichtung 108 und die Inhaltsanbietercomputervorrichtung 106 können mit der gleichen Einheit verknüpft sein. Die Inhaltsanbietercomputervorrichtung 106 kann beispielsweise Inhaltselemente für einen Fahrgemeinschaftsdienst erzeugen, speichern oder bereitstellen und die Computervorrichtung 108 des Dienstanbieters kann eine Sitzung mit der Clientcomputervorrichtung 106 einrichten, um ein Taxi oder ein Fahrzeug des Carsharing-Dienstes bereitzustellen und den Endbenutzer der Clientcomputervorrichtung 104 abzuholen. Das Datenverarbeitungssystem 102 kann über die Direktaktions-API 116, die NLP-Komponente 112 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 Sensor 134, Wandler 136, Audiotreiber 138 oder Vorprozessor 140 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Der Sensor 134 kann beispielsweise einen Umgebungslichtsensor, Näherungssensor, Temperatursensor, Beschleunigungsmesser, Gyroskop, Bewegungsdetektor, GPS-Sensor, Ortssensor, Mikrofon oder Berührungssensor umfassen. Der Transducer 136 kann einen Lautsprecher oder ein Mikrofon umfassen. Der Audiotreiber 138 kann eine Softwareschnittstelle an den Hardwarewandler 136 bereitstellen. Der Audiotreiber kann die Audiodatei oder andere Befehle ausführen, die durch das Datenverarbeitungssystem 102 bereitgestellt werden, um den Wandler 136 zu steuern, eine entsprechende akustische Welle oder Schallwelle zu erzeugen. Der Vorprozessor 140 kann konfiguriert sein, ein Schlüsselwort zu detektieren und eine Aktion basierend auf dem Schlüsselwort auszuführen. Der Vorprozessor 140 kann einen oder mehrere Begriffe herausfiltern oder die Begriffe vor dem Senden der Begriffe an das Datenverarbeitungssystem 102 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 Netzwerk 105 an das Datenverarbeitungssystem 102 senden. In einigen Fällen kann der Vorprozessor 140 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 Computervorrichtung 104 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 Computervorrichtung 104 ein Mikrofon und ein Lautsprecher sein.
  • Die Clientcomputervorrichtung 104 kann mit einem Endbenutzer verbunden sein, der Sprachabfragen als Audioeingabe in die Clientcomputervorrichtung 104 (über den Sensor 134) eingibt, und eine Audioausgabe in Form einer computergenerierten Stimme empfängt, die von dem Datenverarbeitungssystem 102 (oder der Inhaltsanbietercomputervorrichtung 106 oder der Dienstanbietercomputervorrichtung 108) an die Clientcomputervorrichtung 104 bereitgestellt und vom Wandler 136 (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älter 124 kann Computerdatenspeicher oder -memory umfassen und kann neben anderen Daten einen oder mehrere Parameter 126, eine oder mehrere Richtlinien 128, Inhaltsdaten 130 oder Templates 132 speichern. Die Parameter 126, Richtlinien 128 und Templates 132 können Informationen wie Regeln bezüglich einer sprachbasierten Sitzung zwischen der Clientcomputervorrichtung 104 und dem Datenverarbeitungssystem 102 (oder der Dienstanbietercomputervorrichtung 108) umfassen. Die Inhaltsdaten 130 können Inhaltselemente für eine Audioausgabe oder verknüpfte Metadaten sowie eingegebene Audionachrichten, die Teil von einer oder mehreren Kommunikationssitzungen mit der Clientcomputervorrichtung 104 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 Drittanbietervorrichtung 108, eine Clientcomputervorrichtung, die Inhaltsanbieter-Vorrichtung 106, das Datenverarbeitungssystem 102 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 Datenverarbeitungssystem 102 kann mindestens eine Schnittstelle 110 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens eine natürlichsprachliche Prozessorkomponente 112 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens eine Direktaktionsanwendungsprogrammierschnittstelle („API“) 116 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens einen Sitzungs-Handler 114 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens eine Inhaltsauswahlkomponente 118 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens eine Sensorverwaltungskomponente 120 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens einen Audiosignalerzeuger 122 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Das Datenverarbeitungssystem 102 kann mindestens einen Datenbehälter 124 umfassen, damit eine Schnittstelle bilden oder anderweitig damit kommunizieren. Der mindestens ein Datenbehälter 124 kann in einer oder mehreren Datenstrukturen oder Datenbanken die Parameter 126, Richtlinien 128, Inhaltsdaten 130 oder Templates 132 umfassen oder speichern. Die Parameter 126 können beispielsweise Schwellenwerte, Abstände, Zeitintervalle, Dauer, Punktzahlen oder Gewichte umfassen. Die Inhaltsdaten 130 können zum Beispiel Inhaltskampagneninformationen, Inhaltsgruppen, Inhaltsauswahlkriterien, Inhaltselementobjekte oder andere Informationen umfassen, die von einem Inhaltsanbieter 106 bereitgestellt oder von dem Datenverarbeitungssystem erlangt oder bestimmt werden, um die Inhaltsauswahl zu erleichtern. Die Inhaltsdaten 130 können beispielsweise eine historische Performance einer Inhaltskampagne umfassen.
  • Die Schnittstelle 110, die natürlichsprachliche Prozessorkomponente 112, der Sitzungs-Handler 114, die Direktaktions-API 116, Inhaltsselektorkomponente 118, Sensorverwaltungskomponente 120 oder Audiosignalerzeugerkomponente 122 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 Datenbank 124 zu kommunizieren, umfassen. Die Schnittstelle 110, die natürlichsprachliche Prozessorkomponente 112, der Sitzungs-Handler 114, die Direktaktions-API 116, Inhaltsselektorkomponente 118, Sensorverwaltungskomponente 120, Audiosignalerzeugerkomponente 122 und der Datenbehälter 124 können separate Komponenten, eine einzelne Komponente oder Teil des Datenverarbeitungssystems 102 sein. Das System 100 und seine Komponenten, wie beispielsweise ein Datenverarbeitungssystem 102, 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 Computervorrichtungen 104 verknüpft sind. Ein Benutzer einer Computervorrichtung 104 kann das Datenverarbeitungssystem 102 gezielt dazu autorisieren, Informationen über Netzwerkaktivitäten, die der Computervorrichtung 104 des Benutzers entsprechen, zu erlangen. Das Datenverarbeitungssystem 102 kann beispielsweise den Benutzer der Computervorrichtung 104 zum Zustimmen veranlassen, um eine oder mehrere Informationen über Netzwerkaktivitätsarten zu erlangen. Die Identität des Benutzers der Computervorrichtung 104 kann anonym bleiben und die Computervorrichtung 104 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 Inhaltsdaten 130 im Datenbehälter 124 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 Inhaltsanbieter 106 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. Datenverarbeitungssystem 102 oder Inhaltsanbieter 106) 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 Computervorrichtung 104 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 Clientcomputervorrichtung 104 sichtbar oder über einen Lautsprecher 136 der Computervorrichtung 104 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 Inhaltsanbieter 106 bereitgestellt wird. Der Inhaltsanbieter 106 kann ein oder mehrere Schlüsselwörter zum Anbieten identifizieren und weiter Angebotsbeträge für verschiedene Schlüsselwörter bereitstellen. Der Inhaltsanbieter 106 kann durch das Datenverarbeitungssystem 102 zu verwendende zusätzliche Inhaltsauswahlkriterien bereitstellen, um Inhaltselementobjekte auszuwählen. Mehrere Inhaltsanbieter 106 können mit den gleichen oder unterschiedlichen Schlüsselwörtern ein Angebot machen und das Datenverarbeitungssystem 102 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 Datenverarbeitungssystem 102 bereitstellen. Das Datenverarbeitungssystem 102 kann (z. B. über die Inhaltsauswahlkomponente 118) 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 Datenverarbeitungssystem 102 das Inhaltselementobjekt zum Rendern auf einer Computervorrichtung 104 oder einer Anzeigevorrichtung der Computervorrichtung 104 senden. Rendern kann das Anzeigen des Inhaltselements auf einer Anzeigevorrichtung oder das Abspielen des Inhaltselements über einen Lautsprecher der Computervorrichtung 104 umfassen. Das Datenverarbeitungssystem 102 kann an eine Computervorrichtung 104 Befehle bereitstellen, um das Inhaltselementobjekt zu rendern. Das Datenverarbeitungssystem 102 kann die Computervorrichtung 104 oder einen Audiotreiber 138 der Computervorrichtung 104 anweisen, Audiosignale oder Schallwellen zu erzeugen.
  • Das Datenverarbeitungssystem 102 kann eine Schnittstellenkomponente 110 umfassen, die konzipiert, konfiguriert, aufgebaut oder betriebsfähig ist, Informationen unter Verwendung von beispielsweise Datenpaketen zu empfangen und zu senden. Die Schnittstelle 110 kann Informationen unter Verwendung eines oder mehrerer Protokolle wie einem Netzwerkprotokoll senden und empfangen. Die Schnittstelle 110 kann eine Hardwareschnittstelle, eine Softwareschnittstelle, eine verdrahtete Schnittstelle oder eine drahtlose Schnittstelle umfassen. Die Schnittstelle 110 kann das Übersetzen oder Formatieren von Daten von einem Format in ein anderes erleichtern. Die Schnittstelle 110 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 Clientcomputervorrichtung 104 installiert ist, wie beispielsweise eine Anwendung, um eingegebene Audiosignale an die Schnittstelle 110 des Datenverarbeitungssystems 102 zu kommunizieren, und um Komponenten der Clientcomputervorrichtung anzusteuern, um ausgegebene Audiosignale zu rendern. Das Datenverarbeitungssystem 102 kann Datenpakete oder ein anderes Signal, das ein Audioeingabesignal umfasst oder identifiziert, empfangen. Das Datenverarbeitungssystem 102 kann beispielsweise die NLP-Komponente 112 ausführen, um das Audiosignal zu empfangen oder zu erlangen und das Audiosignal zu parsen. Die NLP-Komponente 112 kann beispielsweise Interaktionen zwischen einem Menschen und einem Computer bereitstellen. Die NLP-Komponente 112 kann mit Techniken zum Verstehen natürlicher Sprache konfiguriert sein und kann dem Datenverarbeitungssystem 102 ermöglichen, eine Bedeutung von einer menschlichen oder natürlichsprachlichen Eingabe abzuleiten. Die NLP-Komponente 112 kann Technik, die auf Maschinenlernen wie statistischem Maschinenlernen basiert, umfassen oder damit konfiguriert sein. Die NLP-Komponente 112 kann Entscheidungsbäume, statistische Modelle oder Wahrscheinlichkeitsmodelle verwenden, um das eingegebene Audiosignal zu parsen. Die NLP-Komponente 112 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älter 124) und Auswählen der größten Übereinstimmungen in erkannten Text um. Die Reihe von Audiowellenformen kann im Datenbehälter 124 oder einer anderen Datenbank gespeichert sein, die dem Datenverarbeitungssystem 102 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-Komponente 112 den Text mit Worten in Übereinstimmung, die beispielsweise via Training über Benutzer oder durch manuelle Spezifikation mit Aktionen verknüpft sind, die das Datenverarbeitungssystem 102 bereitstellen kann.
  • Das Audioeingabesignal kann durch den Sensor 134 oder den Wandler 136 (z. B. ein Mikrofon) von der Clientcomputervorrichtung 104 detektiert werden. Die Clientcomputervorrichtung 104 kann über den Wandler 136, den Audiotreiber 138 oder über andere Komponenten das Audioeingabesignal an das Datenverarbeitungssystem 102 (z. B. über das Netzwerk 105) bereitstellen, wo es empfangen (z. B. durch die Schnittstelle 110) und an die NLP-Komponente 112 bereitgestellt oder im Datenbehälter 124 gespeichert werden kann.
  • Die NLP-Komponente 112 kann das Eingabeaudiosignal erlangen. Von dem Eingabeaudiosignal kann die NLP-Komponente 112 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-Komponente 112 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-Komponente 112 kann zum Beispiel eine semantische Verarbeitungstechnik auf das Eingabeaudiosignal anwenden, um das Triggerschlüsselwort oder die Anforderung zu identifizieren. Die NLP-Komponente 112 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-Komponente 112 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-Komponente 112 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-Komponente 112 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-Komponente 112 kann bestimmen, dass dies eine einzelne Anforderung für einen Dienstanbieter ist, der sowohl Wäschereidienste als auch Trockenreinigungsdienste bereitstellen kann. Die NLP-Komponente 112 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-Komponente 112 die mehreren bestimmten Anforderungen in eine einzelne Anforderung kombinieren und die einzelne Anforderung an eine Inhaltsanbietervorrichtung 108 senden. In einigen Fällen kann die NLP-Komponente 112 die individuellen Anforderungen an entsprechende Inhaltsanbietervorrichtungen 108 senden oder beide Anforderungen separat an die gleiche Inhaltsanbietervorrichtung 108 senden.
  • Das Datenverarbeitungssystem 102 kann eine Direktaktions-API 116 umfassen, die konzipiert und ausgelegt ist, basierend auf dem Triggerschlüsselwort eine Aktionsdatenstruktur als Reaktion auf die Anforderung zu erzeugen. Prozessoren des Datenverarbeitungssystemes 102 können die Direktaktions-API 116 aufrufen, um Skripte auszuführen, die eine Datenstruktur für eine Dienstanbietervorrichtung 108 erzeugen, um einen Dienst oder Produkt anzufordern oder zu bestellen, wie beispielsweise ein Fahrzeug von einem Carsharing-Dienst. Die Direktaktions-API 116 kann Daten vom Datenbehälter 124 sowie Daten, die mit Endbenutzerzustimmung von der Clientcomputervorrichtung 104 empfangen werden, erlangen, um Ort, Zeit, Benutzerkonten, logistische oder andere Informationen zu bestimmen und zu ermöglichen, dass die Dienstanbietervorrichtung 108 eine Operation ausführt, wie beispielsweise ein Fahrzeug vom Carsharing-Dienst zu reservieren. Unter Verwendung der Direktaktions-API 116 kann das Datenverarbeitungssystem 102 auch mit der Dienstanbietervorrichtung 108 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 Datenverarbeitungssystem 102 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älter 124 nachschlagen, wie der Name eines Heimautomatisierungdienstes, oder er kann eine Audioausgabe zum Rendern in der Clientcomputervorrichtung 104 bereitstellen, um dem Endbenutzer Fragen zu stellen, wie beispielsweise über den beabsichtigten Bestimmungsort eines angeforderten Taxis. Die Direktaktions-API 116 kann erforderliche Parameter bestimmen und die Informationen in eine Aktionsdatenstruktur packen, die dann zur Erfüllung an eine andere Komponente wie die Inhaltsselektorkomponente 118 oder an die Dienstanbietercomputervorrichtung 108 gesendet werden kann.
  • Die Direktaktions-API 116 kann eine Anweisung oder einen Befehl von der NLP-Komponente 112 oder einer anderen Komponente des Datenverarbeitungssystems 102 empfangen, um die Aktionsdatenstruktur zu erzeugen oder zu erstellen. Die Direktaktions-API 116 kann eine Aktionsart bestimmen, um ein Template aus dem Templatebehälter 132, das im Datenbehälter 124 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älter 132 zugreifen. Templates können Felder in einem strukturierten Datensatz umfassen, die durch die Direktaktions-API 116 gefüllt werden können, um die Operation, die von der Dienstanbietervorrichtung 108 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-API 116 kann ein Nachschlagen im Templatebehälter 132 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 Datenverarbeitungssystem 102 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-API 116 kann die Felder mit Werten füllen. Um die Felder mit Werten zu füllen, kann die Direktaktions-API 116 Informationen von einem oder mehreren Sensoren 134 der Computervorrichtung 104 oder einer Benutzerschnittstelle der Vorrichtung 104 pingen, abfragen oder anderweitig erlangen.
  • Abfragen kann auf das aktive Sampeln von Informationen einer externen Vorrichtung, wie den Sensor 134, durch das Datenverarbeitungssystem 102 oder durch die Computervorrichtung 104 als Reaktion auf einen Befehl des Datenverarbeitungssystems 102 verweisen. Abfragen kann eine synchrone Aktivität sein. Während des Abfragens kann das Datenverarbeitungssystem 102 auf den Sensor 134 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 Sensor 134 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 Computervorrichtung 104 verweisen, die erfasst, gemessen, detektiert oder anderweitig mindestens teilweise unter Verwendung eines oder mehrerer Sensoren 134 bestimmt wurden.
  • Beispielsweise kann der Direktaktions-API 116 die Ortung unter Verwendung eines Ortssensors, wie einem GPS-Sensor detektieren. Die Direktaktions-API 116 kann weiter Informationen durch Senden einer Umfrage, Eingabeaufforderung oder Frage an den Endbenutzer der Computervorrichtung 104 erlangen. Die Direktaktions-API kann die Umfrage, Eingabeaufforderung oder Frage über die Schnittstelle 110 des Datenverarbeitungssystems 102 und eine Benutzerschnittstelle der Computervorrichtung 104 (z. B. Audioschnittstelle, sprachbasierte Benutzerschnittstelle, Anzeige oder Touchscreen) senden. Daher kann die Direktaktions-API 116 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 Sensoren 134 detektiert oder über eine Benutzerschnittstelle erlangt wurden, auswählen und die Aktionsdatenstruktur erzeugen, schaffen oder anderweitig erstellen, um die Performance einer Operation durch die Dienstanbietervorrichtung 108 zu erleichtern.
  • Das Datenverarbeitungssystem 102 kann das Template basierend von der Templatedatenstruktur 132 basierend auf verschiedenen Faktoren einschließlich beispielsweise ein oder mehr von dem Triggerschlüsselwort, der Anforderung, Drittanbietervorrichtung 108, Art der Drittanbietervorrichtung 108, einer Kategorie, in die die Drittanbietervorrichtung 108 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-API 116) ein Nachschlagen oder eine andere Abfrageoperation an der Templatedatenbank 132 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 Templatedatenbank 132 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 Drittanbietervorrichtung 108 verarbeiten kann, um eine Kommunikationssitzung einzurichten.
  • In einigen Fällen kann das Datenverarbeitungssystem 102 eine Drittanbietervorrichtung 108 basierend auf dem Triggerschlüsselwort identifizieren. Um die dritte Partei 108 basierend auf dem Triggerschlüsselwort zu identifizieren, kann das Datenverarbeitungssystem 102 ein Nachschlagen im Datenbehälter 124 ausführen, um eine Drittanbietervorrichtung 108 zu identifizieren, die mit dem Triggerschlüsselwort übereinstimmt. Wenn beispielsweise das Triggerschlüsselwort „Fahrt“ oder „um zu gehen“ umfasst, dann kann das Datenverarbeitungssystem 102 (z. B. über die Direktaktions-API 116) die Drittanbietervorrichtung 108 als dem Taxidienstunternehmen A entsprechen identifizieren. Das Datenverarbeitungssystem 102 kann das Template aus der Templatedatenbank 132 unter Verwendung der identifizieren Drittanbietervorrichtung 108 auswählen. Die Templatedatenbank 132 kann beispielsweise ein Zuordnen oder eine Korrelation zwischen den Drittanbietervorrichtungen 108 oder Einheiten zu Templates umfassen, die konfiguriert sind, eine Aktionsdatenstruktur als Reaktion auf das Triggerschlüsselwort zu erzeugen, welche die Drittanbietervorrichtung 108 verarbeiten kann, um eine Kommunikationssitzung einzurichten. In einigen Fällen kann das Template für die Drittanbietervorrichtung 108 oder für eine Kategorie von Drittanbietervorrichtungen 108 angepasst sein. Das Datenverarbeitungssystem 102 kann die Aktionsdatenstruktur basierend auf dem Template für den Drittanbieter 108 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 Datenverarbeitungssystem 102 kann die Werte für die Felder durch Ausführen eines Nachschlagens oder einer anderen Abfrageoperation an dem Datenbehälter 124 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älter 124 nicht vorhanden sind. Das Datenverarbeitungssystem 102 kann bestimmen, dass die Informationen oder Werte, die im Datenbehälter 124 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-Komponente 112 geeignet sind (z. B. kann der Ort der Clientcomputervorrichtung 104 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 Datenverarbeitungssystems 102 auf die Werte oder Informationen für das Feld des Templates hat, kann das Datenverarbeitungssystem 102 die Werte oder Informationen erlangen. Das Datenverarbeitungssystem 102 kann die Informationen durch Abfragen oder Polling von einem oder mehreren verfügbaren Sensoren der Clientcomputervorrichtung 104, Fragen des Endbenutzers der Clientcomputervorrichtung 104 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 Clientcomputervorrichtung 104 hat, der ein erforderliches Feld des Templates sein kann. Das Datenverarbeitungssystem 102 kann die Clientcomputervorrichtung 104 nach den Ortsinformationen abfragen. Das Datenverarbeitungssystem 102 kann die Clientcomputervorrichtung 104 anfordern, die Ortsinformationen unter Verwendung eines oder mehrerer Ortssensoren 134, 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 Sensorverwaltungskomponente 120 anfordern. Das Datenverarbeitungssystem 102 kann eine Sensorverwaltungskomponente 120 umfassen. Die Sensorverwaltungskomponente 120 kann auf dem Datenverarbeitungssystem 102 separat oder unabhängig von der Clientcomputervorrichtung 104 ausgeführt werden. In einigen Fällen kann die Sensorverwaltungskomponente 120 ein oder mehrere Agenten, Skripte und ablauffähige Programme umfassen, die auf der Computervorrichtung 104 konfiguriert sind, um mit der Sensorverwaltungskomponente 120, die auf dem Datenverarbeitungssystem 102 ausgeführt wird, zu verbinden.
  • Die Sensorverwaltungskomponente 120 kann Hardware oder Software zur Messung der Charakteristik der Kommunikationssitzung umfassen. Beispielsweise kann die Direktaktions-API 116 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-API 116 die Sensorverwaltungskomponente 120 abfragen, davon anfordern, aufrufen oder anderweitig damit verbinden. Die Sensorverwaltungskomponente 120 kann die Informationen für die Felder durch Reduzieren der Ressourcennutzung durch die Sensoren 134 oder Computervorrichtungen 104, die mit den Sensoren 134 verknüpft sind, erlangen. Die Sensorverwaltungskomponente 120 kann beispielsweise mehrere verfügbare Sensoren 134 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 120 kann einen Status von jedem von den mehreren Sensoren bestimmen. Die Sensorverwaltungskomponente 120 kann den ersten Sensor der mehreren Sensoren basierend auf dem Status auswählen. Die Sensorverwaltungskomponente 120 kann den ersten Sensor nach Daten abfragen, die dem ersten Feld entsprechen. Die Direktaktions-API 116 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 Sensoren 134 identifizieren. Die Sensorverwaltungskomponente 120 kann in dem Datenbehälter 124 eine Liste von Sensoren 134 speichern, die für ein Endbenutzerkonto verfügbar sind, das mit einer Computervorrichtung 104 verknüpft ist. Die Sensoren 134 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 Sensor 134 verfügbar sein, selbst wenn er offline ist, wenn die Computervorrichtung 104 angewiesen werden kann, den Sensor 134 online zu bringen. Der Status des Sensors 134 kann nicht verfügbar sein, wenn der Sensor 134 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 Sensorverwaltungskomponente 120 übertragen. In einigen Fällen kann die Sensorverwaltungskomponente 120 eine Anforderung an die Clientcomputervorrichtung 104 oder eine oder mehrere Clientcomputervorrichtungen 104, die mit der Kontokennung für eine Liste verfügbarer Sensoren 134 verknüpft sind, senden. Die Sensorverwaltungskomponente 120 kann eine Reihe von einer oder mehreren Computervorrichtungen 104 basierend auf einer Nähe der Computervorrichtungen zueinander oder basierend auf einer Netzwerkaktivität, die mit der einen oder den mehreren Computervorrichtungen 104 verbunden ist, identifizieren (z. B. kann der Endbenutzer aktiv die eine oder die mehreren Computervorrichtungen 104 verwenden, um mit dem Datenverarbeitungssystem 102 oder einer Komponente davon zu interagieren). In einigen Fällen kann das Datenverarbeitungssystem 102 alle zuvor bekannten Sensoren 134, 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 Datenverarbeitungssystem 102 kann bestimmen, einen Sensor abzufragen, der mit der Computervorrichtung 104 nicht gekoppelt ist, die das Eingabeaudiosignal bereitgestellt hat. Ein Endbenutzer kann beispielsweise eine erste Computervorrichtung 104 verwenden, um das Eingabeaudiosignal bereitzustellen. Die erste Computervorrichtung 104 kann einen ersten Sensor 134 umfassen, der mit der ersten Computervorrichtung 104 gekoppelt ist. Das Datenverarbeitungssystem kann bestimmen, dass es eine zweite Computervorrichtung 104 gibt, die auch mit dem Endbenutzerkonto verbunden ist (z. B. dass sowohl die ersten und zweiten Computervorrichtungen 104 erfolgreich einen Handshakeprozess mit dem Datenverarbeitungssystem 102 ausgeführt haben). Die zweite Computervorrichtung 104 kann sich nahe der ersten Computervorrichtung 104 befinden oder das Datenverarbeitungssystem 102 kann anderweitig bestimmen, dass die zweite Computervorrichtung 104 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 102 kann bestimmen, den zweiten Sensor 134, der mit der zweiten Computervorrichtung 104 gekoppelt ist, zu verwenden, anstatt des ersten Sensors 134, der mit der ersten Computervorrichtung gekoppelt ist, selbst wenn die erste Computervorrichtung 104 die Kommunikation mit dem Datenverarbeitungssystem 102 aufgerufen, initiiert oder eingerichtet hat. Das Datenverarbeitungssystem 102 kann eine Ressourcenreduzierungsrichtlinie verwenden, um zu bestimmen, den zweiten Sensor 134 zu verwenden, der mit der zweiten Computervorrichtung gekoppelt ist, anstatt des ersten Sensors 134, der mit der ersten Computervorrichtung 104 gekoppelt ist, die das Eingabeaudiosignal an die NLP-Komponente 110 bereitgestellt hat. Das Datenverarbeitungssystem 102 kann bestimmen, die zweite Computervorrichtung 104 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 Sensorverwaltungskomponente 120 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 Computervorrichtung 104 erlangt, die dem zweiten Feld entsprechen. Die zweiten Daten können im Speicher der Computervorrichtung 104 gespeichert werden, bevor das Datenverarbeitungssystem 102 die zweiten Daten anfordert. Die Sensorverwaltungskomponente 120 kann als Reaktion auf die Anforderung von Daten vom zweiten Sensor, die von der Direktaktions-API 116 empfangen wurden, den zweiten Sensor 134 nicht abfragen. Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 kann beispielsweise bestimmen, den ersten Sensor nach Ortsinformationen abzufragen, da die letzten Ortsdaten, die durch das Datenverarbeitungssystem 102 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 Datenverarbeitungssystem 102 kann Daten aus einem Speicher für den zweiten Sensor erlangen, da der zweite Sensor ein Temperatursensor sein kann, und das Datenverarbeitungssystem 102 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 Sensorverwaltungskomponente 120 kann beispielsweise eine Abtastrate, ein Abtastintervall oder eine Abtastdauer für den Sensor anpassen. Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Richtliniendatenstruktur 128 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 Sensorverwaltungskomponente 120 kann einen Sensor basierend auf oder als Reaktion auf eine Charakteristik von Daten, die durch den Sensor erfasst wurden, deaktivieren. Die Sensorverwaltungskomponente 120 kann vorübergehend oder dauerhaft den Sensor oder deaktivieren. Das Deaktivieren des Sensors 134 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 Computervorrichtung 102 aufhören, den Sensor nach Daten abzufragen und die Daten zu erfassen und zu speichern, als Reaktion auf einen Befehl von der Sensorverwaltungskomponente 120, den Sensor 134 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 Sensorverwaltungskomponente 120 den Sensor 134 für einen Zeitraum deaktivieren. Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Vorrichtung 104 deaktivieren. Bei einem weiteren Beispiel kann ein Temperatursensor anzeigen, dass sich die Vorrichtung überhitzt, und als Reaktion darauf kann die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 kann bestimmen, dass ein Sensor 134 verfügbar ist, wenn der Sensor 134 richtig arbeitet, kann auf Datenanforderungen ansprechen oder kann detektierte Daten an eine Computervorrichtung 104 übermitteln, die mit dem Netzwerk 104 verbunden ist, um die Daten zum Datenverarbeitungssystem 102 zu routen. Die Sensorverwaltungskomponente 120 kann bestimmen, dass der Sensor 134 verfügbar ist, wenn er sich nahe dem Endbenutzer der Computervorrichtung 104 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 Computervorrichtung 104 verknüpft sind. Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Computervorrichtungen 104 konfiguriert sein, die sich beide nahe dem Endbenutzer befinden, wie beispielsweise ein Smartphone und eine Smartwatch. Die Sensorverwaltungskomponente 120 kann einen Batteriestatus der zwei unterschiedlichen Computervorrichtungen 104 bestimmen und einen der zwei Sensoren, die auf einer Computervorrichtung 104 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 Computervorrichtung 104 bei der gegenwärtigen Verwendung versorgen kann (z. B. Prozessor- oder Speicherverwendung, Sensorverwendung, Netzwerkschnittstellenverwendung). Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 angefordert hat. Die Sensorverwaltungskomponente 120 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 Sensorverwaltungskomponente 120 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 Clientvorrichtung 104 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 Sensor 134 erfasst werden, den Ressourcenverbrauch reduzieren. Die Clientvorrichtung 104 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 Netzwerk 104; eingeschaltet werden; oder sich im Empfangsbereich eines GPS-Satelliten befinden). In einigen Fällen kann die Sensorverwaltungskomponente 120 die Computervorrichtung 104 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 Computervorrichtung 104 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 Sensorverwaltungskomponente 120 empfangen wurden, als Reaktion auf die Abfrage des ersten Sensors füllen. Die Direktaktions-API 116 kann das zweite Feld mit den Daten füllen, die durch die Sensorverwaltungskomponente 120 von dem Speicher der Clientvorrichtung empfangen wurden, um den Ressourcenverbrauch zu reduzieren. Die Direktaktions-API 116 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 Dienstanbietervorrichtung 108) senden, um zu bewirken, dass die Drittanbietervorrichtung 108 eine Operationssitzung aufruft. Eine Operationssitzung kann bezeichnen oder umfassen, dass die Drittanbietervorrichtung 108 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 Drittanbietervorrichtung 108 und der Clientcomputervorrichtung 104 einzurichten. Ansprechend auf das Einrichten der Operationssitzung oder Kommunikationssitzung zwischen der Dienstanbietervorrichtung 108 und der Clientcomputervorrichtung 1004 kann die Dienstanbietervorrichtung 108 Datenpakete direkt an die Clientcomputervorrichtung 104 über das Netzwerk 105 senden. In einigen Fällen kann die Dienstanbietervorrichtung 108 Datenpakete an die Clientcomputervorrichtung 104 über das Datenverarbeitungssystem 102 und das Netzwerk 105 senden.
  • Das Datenverarbeitungssystem 102 kann von der Drittanbietervorrichtung 108 einen Hinweis empfangen, dass die Drittanbietervorrichtung 108 die Operationssitzung mit der Clientvorrichtung 104 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 Datenverarbeitungssystem 102 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 Drittanbieters 108 oder einen Preis umfasst. Die Operationsdatenstruktur kann unter Verwendung eines Templates von der Templatedatenstruktur 132 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-API 142 ausführen. Die Drittanbietervorrichtung 108 kann beispielsweise bestimmte Aspekte der Kommunikationssitzung oder Arten von Abfragen behandeln. Die Drittanbietervorrichtung 108 kann die durch das Datenverarbeitungssystem 102 ausgeführte NLP-Komponente 112 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 Datenverarbeitungssystem 102 die Gesprächs-API 142 umfassen, die für den Drittanbieter 108 konfiguriert ist. In einigen Fällen routet das Datenverarbeitungssystem Datenpakete zwischen der Clientcomputervorrichtung und der Drittanbieteranbietervorrichtung, um die Kommunikationssitzung herzustellen. Das Datenverarbeitungssystem 102 kann von der Drittanbietervorrichtung 108 einen Hinweis empfangen, dass die Drittanbietervorrichtung die Kommunikationssitzung mit der Clientvorrichtung 104 eingerichtet hat. Der Hinweis kann eine Kennung der Clientcomputervorrichtung 104, 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 Datenverarbeitungssystem 102 eine Sitzungs-Handlerkomponente 114 umfassen, um eine Operationssitzung oder Kommunikationssitzung zu verwalten, und eine Sensorverwaltungskomponente 120, um Sensoren zu verwalten oder auszuwählen, von denen Daten erfasst werden sollen.
  • Das Datenverarbeitungssystem 102 kann eine Sitzungs-Handlerkomponente 114 umfassen, ausführen, darauf zugreifen oder anderweitig damit kommunizieren, um eine Kommunikationssitzung zwischen der Clientvorrichtung 104 und dem Datenverarbeitungssystem 102 einzurichten. Die Kommunikationssitzung kann eine oder mehrere Datenübertragungen zwischen der Clientvorrichtung 104 und dem Datenverarbeitungssystem 102 bezeichnen, was das Eingabeaudiosignal umfasst, das durch einen Sensor 134 der Clientvorrichtung 104 detektiert wird, und dass das Ausgabesignal durch das Datenverarbeitungssystem 102 an die Clientvorrichtung 104 gesendet wird. Das Datenverarbeitungssystem 102 kann (z. B. über die Sitzungs-Handlerkomponente 114) die Kommunikationssitzung (z. B. Operationssitzung) als Reaktion auf das Empfangen des Eingabeaudiosignals einrichten. Das Datenverarbeitungssystem 102 kann eine Dauer für die Kommunikationssitzung einstellen. Das Datenverarbeitungssystem 102 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 Datenverarbeitungssystem 102 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 Clientvorrichtung 104 und dem Datenverarbeitungssystem 102 ü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 Clientvorrichtung 104 und dem Datenverarbeitungssystem 102 übertragen werden, die sich auf einen Wäscherei- und Trockenreinigungsdienst beziehen. Bei diesem Beispiel kann das Datenverarbeitungssystem 102 bestimmen, dass sich der Kontext der Audiosignale unterscheidet (z. B. über die NLP-Komponente 112) 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 Datenverarbeitungssystem 102 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 Inhaltsauswahlkomponente 118 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-API 116 die Aktionsdatenstruktur an die Inhaltsselektorkomponente 118 senden, um den Echtzeitinhaltsauswahlprozess auszuführen und eine Kommunikationssitzung zwischen der Inhaltsanbietervorrichtung 106 (oder einer Drittanbietervorrichtung 108) und der Clientcomputervorrichtung 104 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 Computervorrichtung 104 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 Clientcomputervorrichtung 104 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 Clientcomputervorrichtung 104 oder innerhalb eines Zeitintervalls, nachdem die Kommunikationssitzung beendet wurde, ausgeführt werden.
  • Das Datenverarbeitungssystem 102 kann beispielsweise eine Inhaltsauswahlkomponente 118 umfassen, die konzipiert, aufgebaut, konfiguriert oder betriebsfähig ist, Inhaltselementobjekte auszuwählen. Um Inhaltselement zum Anzeigen in einer sprachbasierten Umgebung auszuwählen, kann das Datenverarbeitungssystem 102 (z. B. über die NLP-Komponente 112) 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 Inhaltsselektorkomponente 118 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 Clientcomputervorrichtung 104 detektiert wurde. Die Inhaltsauswahlkomponente 118 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 Inhaltsauswahlkomponente 118 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 Inhaltsanbieter 106 kann Informationen auf der Inhaltskampagnen- oder Inhaltsgruppenebene bereitstellen, welche die Inhaltsauswahlkomponente 118 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 Inhaltsauswahlkomponente 118 kann basierend auf in der Datenstruktur der Inhaltskampagnendatenstruktur im Datenbehälter 124 gespeicherten Informationen Informationen über die Inhaltsanbietercomputervorrichtung 106 bestimmen.
  • Das Datenverarbeitungssystem 102 kann über ein Computernetzwerk eine Anforderung von Inhalt für die Präsentation auf einer Computervorrichtung 104 empfangen. Das Datenverarbeitungssystem 102 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älter 124 oder einer mit dem Inhaltsanbieter 106 verknüpften Datenbank auswählen und das Inhaltselement zum Präsentieren über die Computervorrichtung 104 über das Netzwerk 105 bereitstellen. Das Inhaltselementobjekt kann durch eine Inhaltsanbietervorrichtung 108, 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 Computervorrichtung 104 kann mit dem Inhaltselementobjekt interagieren. Die Computervorrichtung 104 kann eine Audioantwort bezüglich des Inhaltselements empfangen. Die Computervorrichtung 104 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 Computervorrichtung 104 den Dienstanbieter 108 identifiziert, einen Dienst von dem Dienstanbieter 108 anfordert, den Dienstanbieter 108 anweist, einen Dienst auszuführen, Informationen an den Dienstanbieter 108 sendet oder die Dienstanbietervorrichtung 108 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 Inhaltsselektorkomponente 118 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 Audiosignalerzeugerkomponente 122 den ersten Teil des Ausgabesignals basierend auf einem oder mehreren Werten erzeugen, die in die Felder der Aktionsdatenstruktur durch die Direktaktions-API 116 gefüllt werden. Bei einem Taxidienstbeispiel können die Werte für die Felder beispielsweise Hauptstraße 123 für den Abholungsort, Hauptstraße 1234 für den Zielort, 2 für die Passagierzahl und Economy für das Dienstleistungsniveau umfassen. Die Audiosignalerzeugerkomponente 122 kann den ersten Teil des Ausgabesignals erzeugen, um zu bestätigen, dass der Endbenutzer der Computervorrichtung 104 mit dem Senden der Anforderung an den Dienstanbieter 108 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ße 123 abzuholen und an Hauptstraße 1234 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 Datenverarbeitungssystem 102 kann beispielsweise (z. B. über die Direktaktions-API 116) die Aktionsdatenstruktur an den Dienstanbieter 108 senden, bevor der Dienstanbieter 108 angewiesen wird, die Operation auszuführen. Stattdessen kann das Datenverarbeitungssystem 102 die Dienstanbietervorrichtung 108 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 Dienstanbietervorrichtung 108 kann die vorläufigen Informationen an das Datenverarbeitungssystem 102 oder direkt an die Clientcomputervorrichtung 104 über das Netzwerk 104 zurückgeben. Das Datenverarbeitungssystem 102 kann das vorläufige Endergebnis von der Dienstanbietervorrichtung 108 in das Ausgabesignal einbeziehen und das Ausgabesignal an die Computervorrichtung 104 senden. Das Ausgabesignal kann beispielsweise „Taxidienstunternehmen A kann Sie für $10 an Hauptstraße 123 in 10 Minuten abholen und Sie an Hauptstraße 1234 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 Inhaltsselektorkomponente 118 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 Sensor 134 der Clientcomputervorrichtung 104 detektiert wurde, wohingegen der zweite Teil ein Inhaltselement umfassen kann, das durch eine Inhaltsselektorkomponente 104 ausgewählt wird, die indirekt für die Aktionsdatenstruktur relevant sein oder gesponserten Inhalt umfassen kann, der durch die Inhaltsanbieter-Vorrichtung 106 bereitgestellt wird. Der Endbenutzer der Computervorrichtung 104 kann beispielsweise ein Taxi von dem Taxidienstunternehmen A anfordern. Das Datenverarbeitungssystem 102 kann den ersten Teil des Ausgabesignals erzeugen, sodass er Informationen über das Taxi von dem Taxidienstunternehmen A umfasst. Das Datenverarbeitungssystem 102 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 Datenverarbeitungssystem 102 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ße 123 in 2 Minuten abholen und Sie an Hauptstraße 1234 um 8:52 Uhr absetzen. Möchten Sie diese Fahrt stattdessen?“ Der Endbenutzer der Computervorrichtung 104 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 Inhaltsselektorkomponente 118) ausgewählt wurde. Das Datenverarbeitungssystem 102 kann jedoch beschränkten Zugriff auf unterschiedliche Arten von Schnittstellen aufweisen, um die Benachrichtigung an den Endbenutzer der Computervorrichtung 104 bereitzustellen. Die Computervorrichtung 104 kann beispielsweise keine Anzeigevorrichtung umfassen oder die Anzeigevorrichtung kann deaktiviert oder ausgeschaltet sein. Die Anzeigevorrichtung der Computervorrichtung 104 kann größere Ressourcen verbrauchen als der Lautsprecher der Computervorrichtung 104, sodass es weniger effizient sein kann, um die Anzeigevorrichtung der Computervorrichtung 104 einzuschalten, verglichen mit dem Verwenden des Lautsprechers der Computervorrichtung 104, um die Benachrichtigung zu übermitteln. Daher kann in einigen Fällen das Datenverarbeitungssystem 102 die Effizienz und die Effektivität der Informationsübertragung zwischen einer oder mehreren Schnittstellen oder einer oder mehreren Arten von Computernetzwerken verbessern. Das Datenverarbeitungssystem 102 kann beispielsweise (z. B. über die Audiosignalerzeugerkomponente 122) 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 Schnittstelle 110 und das Netzwerk 105) kann Datenpakete senden, die das Ausgabesignal umfassen, das durch die Audiosignalerzeugerkomponente 122 erzeugt wurde. Das Ausgabesignal kann bewirken, dass die Audiotreiberkomponente 138 von der Clientvorrichtung 104 oder die durch diese ausgeführt wird, einen Lautsprecher (z. B. Transducer 136) von der Clientvorrichtung 104 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 in 1 dargestellten Systems 100 umfassen. Die NLP-Komponente 112 kann durch eine Computervorrichtung detektierte Audiosignale empfangen und parsen. Die NLP-Komponente 112 kann bei HANDLUNG 202 Informationen an die Direktaktions-API 116 weitergeben. Die Direktaktions-API 116 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-Komponente 112 geparst werden.
  • Bei HANDLUNG 204 kann die Direktaktions-API die Sensorinformation von der Sensorverwaltungskomponente 120 anfordern. Die Sensorverwaltungskomponente 120 kann eine Sensordatenerfassungssitzung 206 mit mehreren Computervorrichtungen (z. B. erste, zweite und dritte Computervorrichtungen 104) einrichten. Die Sensorverwaltungskomponente 120 kann eine oder mehrere von den Computervorrichtungen 104 bei HANDLUNG 206 abfragen. Die Sensorverwaltungskomponente 120 kann bestimmen, nur eine der Computervorrichtungen 104 nach Sensordaten abzufragen, um aggregierten Ressourcenverbrauch unter den mehreren Computervorrichtungen 104 zu reduzieren, die mit dem Endbenutzer in Zusammenhang stehen, oder die ähnliche Informationen bereitstellen. Die Sensorverwaltungskomponente 120 kann eine oder mehrere von den Computervorrichtungen 104 anweisen, die Sensoren 134 abzufragen.
  • Bei HANDLUNG 208 kann eine oder mehrere der Computervorrichtungen 104 den Sensor 134 abfragen, freigeben, aktivieren, aufrufen oder anderweitig veranlassen, Sensordaten zu erfassen und die Sensordaten an die Computervorrichtung 104 bereitzustellen, um diese an die Sensorverwaltungskomponente 120 oder das Datenverarbeitungssystem 102 bereitzustellen. Die Sensorverwaltungskomponente 120 kann bei HANDLUNG 210 die erfassten Sensordaten an die Direktaktions-API 116 bereitstellen. Daher kann die Sensorverwaltungskomponente 120 die Sensorverwendung optimieren, um den aggregierten Ressourcenverbrauch unter den mehreren Computervorrichtungen 104, 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 Verfahren 300 kann durch eine oder mehrere Komponenten, Systeme oder Elemente des Systems 100 oder Systems 400 ausgeführt werden. Das Verfahren 300 kann ein Datenverarbeitungssystem umfassen, das ein Eingabeaudiosignal empfängt (HANDLUNG 305). 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 Verfahren 300 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ße 1234 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 Computervorrichtung 104 nicht gekoppelt ist, die das Eingabeaudiosignal bereitgestellt hat. Ein Endbenutzer kann beispielsweise eine erste Computervorrichtung 104 verwenden, um das Eingabeaudiosignal bereitzustellen. Die erste Computervorrichtung 104 kann einen mit der ersten Computervorrichtung gekoppelten ersten Sensor umfassen. Das Datenverarbeitungssystem kann bestimmen, dass es eine zweite Computervorrichtung 104 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 Computervorrichtung 104 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 Datenverarbeitungssystem 102 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 Computersystems 400. Das Computersystem oder die Computervorrichtung 400 kann das System 100 oder seine Komponenten wie das Datenverarbeitungssystem 102 umfassen oder es kann verwendet werden, um diese zu implementieren. Das Datenverarbeitungssystem 102 kann einen intelligenten persönlichen Assistenten oder einen sprachbasierten digitalen Assistenten umfassen. Das Computersystem 400 umfasst einen Bus 405 oder eine andere Kommunikationskomponente zur Kommunikation von Informationen und einen Prozessor 410 oder eine Verarbeitungsschaltung, die mit dem Bus 405 zum Verarbeiten von Informationen gekoppelt ist. Das Computersystem 400 kann außerdem einen oder mehrere Prozessoren 410 oder Verarbeitungsschaltungen umfassen, die mit dem Bus zum Verarbeiten von Informationen gekoppelt sind. Das Computersystem 400 umfasst außerdem den Hauptspeicher 415 wie z.B. einen Random-Access-Memory (RAM) oder eine andere dynamische Speichervorrichtung, die mit dem Bus 405 gekoppelt ist, um Informationen zu speichern, und Befehle, die vom Prozessor 410 ausgeführt werden sollen. Der Hauptspeicher 415 kann der Datenbehälter 145 sein oder diesen umfassen. Der Hauptspeicher 415 kann auch zum Speichern von Positionsinformationen, temporären Variablen oder anderen Zwischeninformationen während einer Befehlsausführung durch den Prozessor 410 verwendet werden. Das Computersystem 400 kann weiter einen Read-Only-Memory (ROM) 420 oder eine andere statische Speichervorrichtung umfassen, die mit dem Bus 405 gekoppelt ist, um statische Informationen und Befehle für den Prozessor 410 zu speichern. Eine Speichervorrichtung 425 wie eine Halbleitervorrichtung, Magnetplatte oder optische Disk, kann mit dem Bus 405 gekoppelt sein, um ständig Informationen und Befehle zu speichern. Die Speichervorrichtung 425 kann den Datenbehälter 145 umfassen oder ein Teil davon sein.
  • Das Computersystem 400 kann über den Bus 405 mit einer Anzeige 435 wie einer Flüssigkristallanzeige (LCD) oder einer aktiven Matrixanzeige zum Anzeigen von Informationen an einen Benutzer gekoppelt sein. Eine Eingabevorrichtung 430 wie z.B. eine Tastatur mit alphanumerischen und anderen Tasten kann mit dem Bus 405 gekoppelt sein, um Informationen und Befehlsauswahlen an den Prozessor 410 zu kommunizieren. Die Eingabevorrichtung 430 kann eine Touchscreenanzeige 435 umfassen. Die Eingabevorrichtung 430 kann außerdem eine Cursorsteuerung wie eine Maus, einen Trackball oder Pfeiltasten auf der Tastatur umfassen, um Richtungsinformationen und Befehlsauswahlen an den Prozessor 410 zu kommunizieren und Bewegungen des Cursors auf der Anzeige 435 zu steuern. Die Anzeige 435 kann beispielsweise ein Teil des Datenverarbeitungssystems 102, der Clientcomputervorrichtung 150 oder einer anderen Komponente von 1 sein.
  • Die hierin beschriebenen Prozesse, Systeme und Verfahren können vom Computersystem 400 als Reaktion darauf, dass der Prozessor 410 einen im Hauptspeicher 415 enthaltenen Befehlssatz ausführt, implementiert werden. Diese Befehle können von einem anderen computerlesbaren Medium, wie z. B. der Speichervorrichtung 425 in den Hauptspeicher 415 gelesen werden. Die Ausführung des im Hauptspeicher 415 enthaltenen Anweisungssatzes veranlasst das Computersystem 400 dazu, die hierin beschriebenen veranschaulichten Prozesse auszuführen. Außerdem können in einer Multiprozessoranordnung ein oder mehrere Prozessoren dazu genutzt werden, die im Hauptspeicher 415 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-Komponente 112 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 System 400, kann Clients und Server umfassen. Ein Client und ein Server befinden sich generell entfernt voneinander und interagieren typischerweise durch ein Kommunikationsnetzwerk (z. B. das Netzwerk 165). 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 Datenverarbeitungssystem 102 von der Computervorrichtung 150 oder der Inhaltsanbietercomputervorrichtung 155 oder der Dienstanbietercomputervorrichtung 160).
  • 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 Inhaltsselektorkomponente 125 oder die Sensorverwaltungskomponente 120 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 Datenverarbeitungssystems 102 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 Aktion 215) basierend teilweise auf Daten von einer vorausgehenden Aktion in der Folge von Aktionen des Threads 200 auswählen, wie beispielsweise Daten von der zweiten Aktion 210, die anzeigen, dass die zweite Aktion 210 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)

  1. 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.
  2. System nach Anspruch 1, umfassend das Datenverarbeitungssystem zum: Empfangen eines Hinweises, dass eine Operation während der Operationssitzung ausgeführt wurde.
  3. System nach Anspruch 1, umfassend das Datenverarbeitungssystem zum: Anpassen einer Konfiguration des ersten Sensors, um Daten basierend auf einem Datentyp zu erfassen.
  4. System nach Anspruch 1, wobei die Konfiguration mindestens eines von einer Abtastrate und einem Abtastintervall umfasst.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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.
  10. System nach Anspruch 1, umfassend das Datenverarbeitungssystem zum: Empfangen, von der Clientvorrichtung, einer Liste von Anwendungen, die auf der Clientvorrichtung installiert sind.
  11. 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.
  12. Verfahren nach Anspruch 11, umfassend: Empfangen, durch das Datenverarbeitungssystem, eines Hinweises, dass eine Operation während der Operationssitzung ausgeführt wurde.
  13. Verfahren nach Anspruch 11, umfassend: Anpassen, durch das Datenverarbeitungssystem, einer Konfiguration des ersten Sensors, um Daten basierend auf einem Datentyp zu erfassen.
  14. Verfahren nach Anspruch 11, wobei die Konfiguration mindestens eines von einer Abtastrate und einem Abtastintervall umfasst.
  15. 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.
  16. 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.
  17. 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.
  18. 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.
  19. 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.
  20. Verfahren nach Anspruch 11, umfassend: Empfangen, von der Clientvorrichtung, einer Liste von Anwendungen, die auf der Clientvorrichtung installiert sind.
DE112017000141.2T 2016-12-30 2017-08-31 Selektives sensorabfragen Pending DE112017000141T5 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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