JP2018508058A - モノのインターネットデバイスデータに基づくブラウザ提案の生成 - Google Patents

モノのインターネットデバイスデータに基づくブラウザ提案の生成 Download PDF

Info

Publication number
JP2018508058A
JP2018508058A JP2017532726A JP2017532726A JP2018508058A JP 2018508058 A JP2018508058 A JP 2018508058A JP 2017532726 A JP2017532726 A JP 2017532726A JP 2017532726 A JP2017532726 A JP 2017532726A JP 2018508058 A JP2018508058 A JP 2018508058A
Authority
JP
Japan
Prior art keywords
information
user
recommended
web browser
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017532726A
Other languages
English (en)
Other versions
JP6595598B2 (ja
JP2018508058A5 (ja
Inventor
ジェイ. パッテン,マイケル
ジェイ. パッテン,マイケル
カパディア,リティカ
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2018508058A publication Critical patent/JP2018508058A/ja
Publication of JP2018508058A5 publication Critical patent/JP2018508058A5/ja
Application granted granted Critical
Publication of JP6595598B2 publication Critical patent/JP6595598B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

ユーザのデバイス内に含まれる組み込みシステムによって生成されるデータを収集しかつ解析して、ユーザのウェブブラウザの枠の中でユーザに提示するための推奨を生成するシステム、方法、およびコンピュータプログラム製品が本明細書に記載される。推奨は、例えば、提案された情報リソースおよび/または検索クエリを含むことができる。このような推奨は、新しいタブページの一部として、または、ウェブブラウザのグラフィカルユーザインターフェースのアドレスバー内にユーザに対して提示されてよい。さらなる実施形態によると、ユーザデバイスデータは、検索エンジンによって、検索結果、および/または検索結果のランク付けを生成するために使用される。

Description

[0001] ウェブブラウザは、ワールドワイドウェブ上の情報リソースを取り出す、提示する、およびトラバースするために一般的に使用されるソフトウェアアプリケーションである。それぞれの情報リソースは、統一資源ロケータ(URL)によって特定され、かつ、ウェブページ、画像、ビデオ、または他のコンテンツであってよい。情報リソースに存在するハイパーリンクは、ユーザが、関連した情報リソースに対して自身のウェブブラウザを容易にナビゲートできるようにする。現代のウェブブラウザの例は、限定はされないが、ワシントン州レドモンドのマイクロソフト社によって発表されたINTERNET EXPLORER(登録商標)、カリフォルニア州マウンテンビューのGoogle社によって発表されたCHROME(商標)、カリフォルニア州マウンテンビューのMozilla Foundationによって発表されたFIREFOX(登録商標)、および、カリフォルニア州クパチーノのApple社によって発表されたSAFARI(登録商標)を含む。ウェブブラウザは主に、ワールドワイドウェブをナビゲートすることを目的としているが、プライベートネットワークにおけるウェブサーバまたはファイルシステムにおけるファイルによって提供される情報にアクセスするためにも使用可能である。
[0002] ウェブブラウザは典型的には、情報が求められた時点で単にユーザによって提供される入力に基づいて情報を得る。例えば、ユーザは、ウェブブラウザのユーザインターフェース(UI)のアドレスバーにリソースのURLをタイピングすることによって特定の情報リソースへウェブブラウザを誘導することができる。別の例として、ユーザは、ウェブブラウザを介してインターネット検索エンジンにアクセス後、ウェブブラウザの枠の中で提示される検索エンジンのUIに検索クエリをタイピングすることによって情報を得ることができる。どちらの場合でも、ユーザは、有用な情報を提供する情報リソースのURL、または検索エンジンに有用な情報を含む情報リソースを特定させることになる精確なキーワードのセットのどちらかを知っていなければならないため、ユーザにとって有用な情報を見つけることは困難な場合がある。
[0003] いくつかのウェブブラウザは、ユーザが、容易にアクセスするためのお気に入りのまたはブックマークしたウェブページのリストを維持することを可能にする。いくつかのウェブブラウザは、アドレスバー、または新しいタブページなどを介して、頻繁にアクセスしたまたは最近アクセスしたURLをユーザに提示することもできる。このような特徴は、該ブラウザによって、ユーザが過去にアクセスした情報リソースをナビゲート可能とだけできる点に限定されており、ユーザが新しい情報のソースを見つける助けとはならない。さらに、いくつかの検索エンジンは、ユーザの前の検索履歴に基づいて、または検索エンジンの他のユーザの中で現在トレンドになっている検索クエリに基づいて推奨される検索クエリをユーザに提示することができる。しかしながら、このような推奨される検索クエリは、有用な情報を必要な時点で得る際にユーザを支援するという点では役に立たないことが多い。
[0004] ユーザのデバイス(例えば、ユーザのIotデバイス)内に含まれる組み込みシステムによって生成されるデータを収集しかつ解析して、ユーザのウェブブラウザの枠の中でユーザに提示するための推奨を作成するシステム、方法、およびコンピュータプログラム製品が本明細書に記載される。推奨は、例えば、提案された情報リソース(例えば、ウェブページまたはビデオなど)および/または提案された検索クエリを含むことができる。このような推奨は、新しいタブページの一部として、または、ウェブブラウザのグラフィカルユーザインターフェース(GUI)のアドレスバー内にユーザに対して提示されてよい。実施形態は、ユーザ自身のデバイスから収集されているデータに基づいて(および、いくつかの実施形態では、他が所有する同じデバイスの他のインスタンスから)推奨を生成するため、該推奨は、ユーザに関係がある可能性がある。また、実施形態はユーザデバイスデータを迅速に収集しかつ解析することができるため、推奨は、ユーザが推奨された情報を所望する可能性がある時に生成できる。他の実施形態によると、ユーザデバイスデータは、検索エンジンによって、より関係がある検索結果、および/または検索結果の改善されたランク付けを提供するために使用される。
[0005] この(発明の概要)は(発明を実施するための形態)においてさらに後述される選抜した概念を簡略化された形で紹介するために提供される。この(発明の概要)は、特許請求される主題の重要な特徴または本質的な特徴を特定するように意図するものでもなく、特許請求される主題の範囲を限定するために使用されることを意図するものでもない。また、特許請求される主題は、(発明を実施するための形態)および/または本書の他の節に記載される特有の実施形態に限定されないことは留意されたい。このような実施形態は例示の目的としてのみ本明細書に提示される。本明細書に包含される教示に基づいて追加の実施形態が当業者には明らかとなるであろう。
[0006] 本明細書に組み込まれ、かつ明細書の一部を形成する添付の図面は、本発明の実施形態を示し、その記載と共に、さらに、本発明の原理を説明し、かつ、当業者が、本発明を製作し使用することができるようにするのに役立つ。
[0007]ウェブブラウザが、このユーザに、ユーザのIoTデバイスから得られたデータに基づいて自動的に生成された情報リソース提案を提供できるようにする例示的なシステムのブロック図である。 [0008]一実施形態による例示的な新しいタブページサービスのブロック図である。 [0009]一実施形態による例示的な推奨エンジンのブロック図である。 [0010]一実施形態によるユーザのIoTデバイスから得られたデータに基づいて1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報をウェブブラウザに提供するための推奨エンジンによって行われる方法のフローチャートである。 [0011]一実施形態によるウェブブラウザによって、このユーザに、ユーザのIoTデバイスから得られたデータに基づいて1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報を提供するために行われる方法のフローチャートである。 [0012]一実施形態による新しいタブページ内でユーザに、ユーザ自身のIoTデバイスデータから得られたデータに基づいている情報リソース推奨を表示する例示的なウェブブラウザGUIを示す図である。 [0013]ウェブブラウザが、このユーザに、ユーザ自身のIoTデバイスから得られたデータに基づいて自動的に生成された情報リソース提案および検索クエリ提案を提供できるようにする例示的なシステムのブロック図である。 [0014]一実施形態による例示的なアドレスバーサービスのブロック図である。 [0015]一実施形態による例示的な推奨エンジンのブロック図である。 [0016]一実施形態によるユーザのIoTデバイスから得られたデータに基づいて1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースおよび/または1つまたは複数の推奨される検索クエリについての情報をウェブブラウザに提供するための推奨エンジンによって行われる方法のフローチャートである。 [0017]一実施形態によるウェブブラウザによって、このユーザに、ユーザのIoTデバイスから得られたデータに基づいて1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースおよび/または1つまたは複数の推奨される検索クエリについての情報を提供するために行われる方法のフローチャートである。 [0018]一実施形態によるアドレスバードロップダウンメニュー内でユーザに、ユーザ自身のIoTデバイスデータに基づいている、情報リソース推奨および/または検索クエリ推奨を表示する例示的なウェブブラウザGUIを示す図である。 [0019]一実施形態による、ユーザの代わりに検索結果を生成するために、および/またはユーザの代わりに検索結果をランク付けするために、ユーザIoTデバイスデータが検索エンジンによって使用されるシステムのブロック図である。 [0020]一実施形態によるユーザのIoTデバイスから得られたデータに基づいてユーザに対して検索結果を生成するために検索エンジンによって行われる方法のフローチャートである。 [0021]さまざまな実施形態を実施するために使用可能である例示的なモバイルデバイスのブロック図である。 [0022]さまざまな実施形態を実施するために使用可能である例示的なプロセッサベースのコンピュータシステムのブロック図である。
[0023] 本発明の特徴および利点は、図面と併せると、以下に示される詳細な説明からより明らかになるであろう。該図面において、同様の参照記号は全体を通して相当する要素を特定する。図面において、同様の参照番号は概して、同一の、機能的に同様の、および/または構造的に同様の要素を指示する。ある要素が初めて現れる図面は、相当する参照番号における最左の数字によって指示される。
[0024] I.概論
以下の詳細な説明は、本発明の例示的な実施形態を示す添付の図面に言及する。しかしながら、本発明の範囲はこれらの実施形態に限定されず、むしろ、添付の特許請求の範囲によって定義される。そのため、示される実施形態の修正版など、添付の図面に示されるもの以上の実施形態は、それにもかかわらず、本発明に包括的に含まれてよい。
[0025] 本明細書において、「1つの実施形態」、「一実施形態」、「例示的な実施形態」などへの言及は、説明される実施形態が特定の特徴、構造、または特性を含むことができるが、実施形態全てが必ずしも特定の特徴、構造、または特性を含むことができるわけではないことを指示する。また、このような文言は、必ずしも同じ実施形態に言及しているわけではない。さらに、特定の特徴、構造、または特性が一実施形態に関連して説明される時、明示的に説明されるか否かに関わらず、他の実施形態に関連してこのような特徴、構造、または特性を実装することは当業者の知識の範囲内であることが提起される。
[0026] ユーザのデバイス内に含まれる組み込みシステムによって出力されるデータを収集しかつ解析して、ユーザのウェブブラウザの枠の中でユーザに提示するための推奨を生成するシステム、方法、およびコンピュータプログラム製品が本明細書に記載される。推奨は、例えば、提案された情報リソース(例えば、ウェブページまたはビデオなど)および/または提案された検索クエリを含むことができる。このような推奨は、新しいタブページの一部として、または、ウェブブラウザのGUIのアドレスバー内にユーザに対して提示されてよい。実施形態は、ユーザ自身のデバイスから収集されているデータに基づいて(および、いくつかの実施形態では、他が所有する同じデバイスの他のインスタンスから)推奨を生成するため、該推奨は、ユーザに関係がある可能性がある。また、実施形態はユーザデバイスデータを迅速に収集しかつ解析することができるため、このような実施形態は、ユーザが推奨された情報を所望する可能性がある時に推奨を生成できる。他の実施形態によると、ユーザデバイスデータは、検索エンジンによって、より関係がある検索結果、および/または検索結果の改善されたランク付けを提供するために使用される。
[0027] ウェブブラウザは、新しい情報を求めているユーザによって最も一般的に使用されるアプリケーションの1つである。ユーザはそれらウェブブラウザを頼りにして、教育、娯楽、他との通信を行い、生産性に関するタスクを行う。
[0028] モノのインターネット(IoT)の進化に伴って、ますます多くのデバイスがインターネットに接続されている。このようなデバイスの例は、主要な家庭電化製品(洗濯機、ドライヤ、食洗機、冷蔵庫、ストーブ、空調機、または給湯器など)、小型家電製品(コーヒーメーカー、電子レンジ、テレビ、CDおよびDVDプレーヤ、ビデオゲーム機、カムコーダ、カメラ、時計、または目覚まし時計など)、電源出力、警報機、住宅照明および商業用照明、個人向けフィットネスデバイス、自動車用デバイス、健康管理デバイス、製造用デバイス、エネルギー管理デバイス、ならびにリテールデバイスを含むがこれらに限定されない。
[0029] 本明細書に記載される実施形態は、ますます多くのデバイスがインターネットに接続されるため、これらのデバイスによって出力される情報はウェブブラウザユーザのための推奨を生成するために使用でき、それによって、このようなユーザは、探しているコンテンツにアクセスすることが容易になるという認識を前提とする。本明細書に記載される実施形態は、ユーザが所有するデバイスおよび/またはこのようなデバイスの現在の状態に基づいてユーザにコンテンツを推奨することによってこれを実現する。
[0030] 実施形態によると、ウェブブラウザはユーザに、自動的に生成される情報リソース(例えばウェブページ)提案および/または検索クエリ提案を提供し、この場合、情報リソース提案および/または検索クエリ提案は少なくともユーザ自身のIoTデバイスから収集されたデータに基づいて生成される。このような自動的に生成される提案は、新しいタブページおよびアドレスバーを含む、さまざまな異なるウェブブラウザGUIコンポーネントまたは「サーフェス」を介して提示されてよい。これらの提案の提示は、ユーザが、有用な情報を提供する情報リソースの識別子(例えばURL)、または検索エンジンに有用な情報を含む情報リソースを特定させることになる精確なキーワードのセットを知らない時でも所望の情報にアクセスすることを容易にする。
[0031] さまざまな実施形態によると、ユーザの普段のデバイスによって生成される情報は、1つまたは複数のネットワークベースの通信チャネルを介して推奨エンジンに提供される。この情報はその後、推奨エンジンによって、ユーザのウェブブラウザの枠の中で、提案されたコンテンツおよび検索をユーザに直接提供するために使用されることで、ユーザが、自身のデバイスについて知らなければならない、かつ、(例えば、推測の検索用語のセットで入力することによって)手動で検索を行わなければならない必要性を排除する。例えば、ユーザの製氷機のフィルタを取り換える時になると、ユーザのウェブブラウザは、ウェブブラウザの新しいタブページ(または他の所)における関係がある提案を、新しいフィルタの購入場所、およびフィルタの取り換え方法についての手順に対するリンクと共に提供することができる。
[0032] さらなる実施形態によると、ユーザのIoTデバイスデータは、検索エンジンによって、ユーザにとってより関係がある検索結果、および/またはユーザに対する検索結果の改善されたランク付けを生成するために使用される。
[0033] ユーザが、ウェブページなど、所望されるネットワークアクセスが可能な情報をより迅速に捜し出すことができるようにすることによって、本明細書に記載される実施形態は、例えば、電力消費、プロセッサ利用、およびデバイスによるネットワーク利用を低減することによって、ウェブブラウザを稼働させているユーザコンピューティングデバイスの性能を改善することができる。このことは、所望の情報を得るために閲覧に費やさなければならない時間が少なくなることに起因する。また、ユーザが所望されるネットワークアクセスが可能な情報をより迅速に捜し出すことができるようにすることによって、本明細書に記載される実施形態は、ウェブブラウザおよび検索エンジンをサポートするバックエンドリソースと通信することが必要とされるネットワークリソースの利用の低減のみならず、バックエンドリソース自体の利用の低減が可能である。
[0034] 以下の節では、先に述べたシステム、方法、およびコンピュータプログラム製品の実施形態についてさらに詳しく説明する。特に、第II節では、ウェブブラウザがこのユーザに、ユーザ自身のIoTデバイスから得られるデータに基づく、自動的に生成される情報リソース提案および/または検索クエリ提案を提供できるようにするシステム、方法、およびコンピュータプログラム製品について説明する。第III節では、検索エンジンが、ユーザ自身のIoTデバイスから得られるデータに基づいて、ユーザにとってより関係がある検索結果、および/またはユーザに対する検索結果の改善されたランク付けを返すことを可能にするシステム、方法、およびコンピュータプログラム製品について説明する。第IV節では、さまざまな実施形態を実施するために使用可能である例示的なモバイルデバイスについて説明する。第V節では、さまざまな実施形態を実施するために使用可能である例示的なプロセッサベースのコンピュータシステムについて説明する。第VI節では、いくつかの追加の例示的な実施形態について説明する。第VII節では、いくつかの結論を提供する。
[0035] II.ユーザにIoTデバイスデータに基づく推奨を提供する
図1は、ウェブブラウザが、このユーザに、ユーザ自身のIoTデバイスから得られたデータに基づいて自動的に生成された情報リソース提案を提供できるようにする例示的なシステム100のブロック図である。図1に示される実施形態では、情報リソース提案はウェブブラウザの新しいタブページに表示される。図1に示されるように、システム100は、複数のユーザIoTデバイス102、IoT接続ハブ114、インテリジェントシステムサービス(ISS)116、検索エンジンサービス118、推奨エンジン120、新しいタブページサービス122、およびウェブブラウザ126を実行するユーザコンピューティングデバイス124を含む。システム100のこれらの要素のそれぞれについてここで説明する。
[0036] ユーザIoTデバイス102は、ユーザが所有する、ユーザによってアクセス可能である、またはその他の場合ユーザに関連付けられるデバイスを表すことを目的としている。ユーザIoTデバイス102のそれぞれは、ワイヤードまたはワイヤレス接続を介して少なくとも1つの他のエンティティに情報を通信可能である少なくとも1つの組み込みシステムを含む。本明細書において使用されるように、「組み込みシステム」という用語は、複雑な組み込みコンピュータのみならず簡易なセンサを含むデバイス内に配設できる任意のタイプの自動化機能性を広く包括的に含むことを目的としている。ユーザIoTデバイス102内のそれぞれの組み込みシステムは、(例えば、デジタル回路および/またはアナログ回路を使用する)ハードウェアにおいて、ソフトウェア(例えば、1つまたは複数の汎用プロセッサおよび/または専用プロセッサによって実行されるソフトウェア)において、または、ハードウェアおよびソフトウェアの組合せとして、実装可能である。
[0037] ユーザIoTデバイス102は、限定はされないが、主要な家庭電化製品(洗濯機、ドライヤ、食洗機、冷蔵庫、ストーブ、空調機、または給湯器など)、小型家電製品(コーヒーメーカー、電子レンジ、テレビ、CDおよびDVDプレーヤ、ビデオゲーム機、カムコーダ、カメラ、時計、または目覚まし時計など)、電源出力、警報機、住宅照明および商業用照明、個人向けフィットネスデバイス、自動車用デバイス、健康管理デバイス、製造用デバイス、エネルギー管理デバイス、ならびにリテールデバイスを含む多種多様な異なるタイプのデバイスを含むことができる。
[0038]ユーザIoTデバイス102のいくつかの特有の例が図1に示される。特に、図1に示されるように、ユーザIoTデバイス102は、フィットネスデバイス104(例えば、マイクロソフトのMICROSOFT BAND(商標)、またはFitbitのFITBIT(登録商標)アクティビティ追跡デバイスの任意のもの)、デジタルビデオリコーダー(DVR)106、ランプ108、アラーム110、および電気器具112を含む。これらのデバイスは、例としてのみ提示され、限定することを意図するものではない。IoTの進化に伴って、他のエンティティと自動的に通信する能力を有する組み込みシステムは、ますます多くのタイプのデバイスにおいて一体化されることになる。
[0039] 上に記されるように、ユーザIoTデバイス102内に配設される組み込みシステムのそれぞれは、ワイヤードまたはワイヤレス接続を介して少なくとも1つの他のエンティティに情報を通信するように動作可能である。特定の組み込みシステムによって通信可能である情報のタイプはデバイスまたはデバイスタイプによって変えることができる。例えば、フィットネスデバイス104内の組み込みシステムは、ユーザアクティビティレベル、紫外線(UV)暴露、または心拍数などに関連する情報を通信することができる。対照的に、DVR106内の組み込みシステムは、デバイス状態(例えば、オン/オフ、記録している/記録していないなど)、記憶されたプログラム、将来記録することがスケジューリングされたプログラム、または未使用の記憶領域量などに関連する情報を通信可能である。別の例として、ランプ108内の組み込みシステムは、オン/オフ状態、または電球が取り換えられてからの期間などの情報を通信可能である。
[0040] ユーザIoTデバイス102内の特定の組み込みシステムによって出力される情報は、特定のスキーマに従ってフォーマット可能である。このようなスキーマは、特定のブランドまたはモデルのデバイス(例えば、特定のブランドまたはモデルの洗濯機)と、または、あるクラスのデバイスタイプ(例えば全ての洗濯機)と関連付けられてよい。デバイスに関連付けられるスキーマは、デバイスによって出力されるデータ内に含まれる情報要素のタイプ、およびこのような要素が所与の通信ペイロード内で捜し出される場所の両方を指示することができる。該スキーマは、例えば、拡張マークアップ言語(XML)スキーマ、JavaScript(登録商標) Object Notation(JSON)スキーマ、またはある他のタイプのスキーマを含むことができる。
[0041] ユーザIoTデバイス102におけるそれぞれの組み込みシステムが外部エンティティと通信するやり方は変えてもよい。例えば、組み込みシステムは、外部エンティティとワイヤレスに通信するためにBLUETOOTH(登録商標)またはIEEE802.11(「WiFi」)プロトコルなどの通信プロトコルを利用することができる。しかしながら、これらは例に過ぎず、他の無線周波数(RF)通信プロトコルまたは赤外線(IR)通信プロトコルはワイヤレス通信を行うために使用可能である。いくつかの実施形態では、組み込みシステムは、外部エンティティと通信するためにワイヤード接続を利用する。ワイヤード接続上の通信は、シリアル通信プロトコル(例えば、ユニバーサルシリアルバス(USB)プロトコル)または他の適した通信プロトコルを使用して行われてよい。ワイヤード接続は、例えば、屋内電力線ネットワークまたは家庭用電話回線ネットワークを含むこともできる。
[0042] 図1に示されるシステムにおいて、ユーザIoTデバイス102のそれぞれにおけるそれぞれの組み込みシステムは、IoTデバイスデータをIoT接続ハブ114に通信するように動作可能である。このような通信は矢印130によっておおまかに表される。このような通信が生じる時間および頻度は、ユーザIoTデバイス102によって変えてよい。さらに、異なるユーザIoTデバイス102は、異なる通信媒体およびプロトコルを使用してIoTデバイスデータをIoT接続ハブ114に通信してよい。所与の通信は、特定のユーザIoTデバイス102によって自動的にトリガされてよい、または、IoT接続ハブ114からのリクエストに応答して行われてよい。
[0043] IoT接続ハブ114は、ユーザIoTデバイス102内で一体化される組み込みシステムのそれぞれからIoTデバイスデータを受信することができるデバイスを表すことを目的としている。1つの実施形態では、IoT接続ハブ114は、ホームオートメーションハブ(カリフォルニア州アーバインのSmartlabs社によって販売されているINSTEON(登録商標)ホームオートメーションハブなど)を含むが、これは一例に過ぎない。IoT接続ハブ114がホームオートメーションハブを含む一実施形態では、IoT接続ハブ114は、ユーザIoTデバイス102のそれぞれと通信して、ユーザにこのようなデバイスに対する集中監視および/または制御を提供することができる。
[0044] ユーザは、サポートされるユーザIoTデバイスをIoT接続ハブ114に接続するためにある特定のステップを踏むことを要求される場合があり、この場合、踏むべきステップは、ハブタイプおよび/またはIoTデバイスタイプによって変えることができる。
[0045] IoT接続ハブ114は、ユーザIoTデバイス102における組み込みシステムのそれぞれからIoTデバイスデータを集めるように、および、かかるIoTデバイスデータをインターネットなどワイドエリアネットワーク(WAN)上でISSサービス116に渡すようにさらに動作可能である。このようなデータを渡すことは、図1の矢印132によって表される。新しいIoTデバイスデータは、IoT接続ハブ114からISS116に継続的に渡されてよいが、かかるデータが渡される時間およびかかるデータが渡される頻度は、実装形態ごとに変えてよい。IoT接続ハブ114からISS116に渡されるIoTデバイスデータは、ユーザIoTデバイス102に関連付けられるユーザの識別子(ID)を含む。1つの実施形態では、ユーザのIDは、マイクロソフト管理サービスアカウント(MSA)IDなどのアカウントIDを含む。
[0046] 図1において、ユーザIoTデバイス102における組み込みシステムによって生成されるIoTデバイスデータ全ては、IoT接続ハブ114を介してISS166に渡される。よって、IoT接続ハブ114は、ユーザIoTデバイス102における組み込みシステムとインターネットとの間の橋渡しの役をする。このような橋渡しは、組み込みシステムがワイヤードまたはワイヤレス媒体上で通信可能とすることができるが十分なインターネットスタックをサポートしない恐れがあるため、必要な場合がある。当然ながら、組み込みシステムが十分なインターネットスタックをサポートするインスタンスでは、組み込みシステムがIoTデバイスデータをISS116に直接通信可能とすることができる。
[0047] ISS116は、インターネットを介してマシン生成データを安全に収集し、管理し、および報告するためのクラウドベースのサービスのセットを表す。これらのサービスは、1つまたは複数のプロセッサベースのコンピューティングデバイス(例えばサーバ)上で実行される。1つの実施形態では、ISS116は、ワシントン州レドモンドのマイクロソフト社によって発表されたMicrosoft AZURE(商標)インテリジェントシステムサービスを含む。しかしながら、これは一例に過ぎず、ISS116は、IoT接続ハブ114およびインターネット上の他のエンティティからIoTデバイスデータを収集可能である任意のサービスを含むことができる。ISS116は、IoT接続ハブ114から(および、限定はされないが他のIoT接続ハブを含む他のエンティティから)受信されたIoTデバイスデータのデータフィード134を検索エンジンサービス118に提供するように動作する。
[0048] 検索エンジンサービス118は、検索エンジン(例えば、マイクロソフトのBING(登録商標)検索エンジン)をサポートするための、およびその他の場合、ユーザが自身のコンピューティングデバイスを介して所望の情報を得る際に支援するためのサービスのセットを含む。これらのサービスは、1つまたは複数のプロセッサベースのコンピューティングデバイス(例えばサーバ)上で実行される。図1に図示される実施形態では、データフィード134は検索エンジンサービス118によって推奨エンジン120に渡されることで、推奨エンジン120は該データフィードに含まれるデータを使用して、新しいタブページサービス122からのリクエストに応答してユーザに対して情報リソース推奨を生成することができる。検索エンジンサービス118のように、推奨エンジン120および新しいタブページサービス122はそれぞれ、1つまたは複数のプロセッサベースのコンピューティングデバイス(例えばサーバ)上で実行される。IoTデバイスデータを検索エンジンサービス118から推奨エンジン120に渡すことは、図1の矢印136によって表される。
[0049] IoTデバイスデータを受信すると、推奨エンジン120は、情報要素(例えば、デバイスID、デバイスタイプ、デバイスモデル、デバイス状態情報、またはデバイスエラーコードなど)を、ユーザにとって関心があるかもしれない情報リソースを特定するために使用できるデータから抽出するように動作する。特に、推奨エンジン120は、適切なスキーマを使用してデータを復号することによってIoTデバイスデータから情報要素を抽出する。例えば、推奨エンジン120は、洗濯機から得られたIoTデータから情報要素を抽出するために洗濯機についてのスキーマを利用することができる。推奨エンジン120はその後、ユーザにとって関心があるかもしれないネットワークアクセスが可能なコンテンツ(例えば、ウェブページ、ビデオ、または画像など)を検索するために抽出された情報要素を使用することができる。
[0050] 実装形態によっては、推奨エンジン120は、IoTデバイスデータから情報要素を単に抽出後、IoTデバイスデータを具備するユーザIDと関連して情報要素を記憶することができる。その後、リクエストが新しいタブページサービス122から受信されて、1つまたは複数の推奨される情報リソースをユーザIDによって特定されたユーザに提供する時、推奨エンジン120は、情報要素を利用してその検索を行うことができる。代替的な実装形態では、推奨エンジン120は、新しいタブページサービス122から任意のリクエストを受信する前に情報要素を使用して推奨される情報リソースについての検索を行ってよい。このような代替的な実装形態によると、推奨エンジン120は、その後、ユーザIDと関連した検索によって発見された情報リソースの識別子(例えばURL)を記憶することができる。このような識別子は、後に、新しいタブページサービス122からのリクエストに応答して迅速にアクセス可能である。
[0051] さらに図1のシステム100によると、ユーザIoTデバイス102に関連付けられたユーザは、ユーザコンピューティングデバイス124上で実行しているウェブブラウザ126と対話する。ユーザコンピューティングデバイス124は、ウェブブラウザを実行することが可能である任意のデバイスを含むことができる。限定ではなく例として、ユーザコンピューティングデバイス124は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ネットブック、スマートフォン、ゲーム機、またはスマートTVなどを含んでよい。
[0052] ウェブブラウザ126と対話する間、ユーザは、新しいタブページをウェブブラウザ126のGUI内に表示させる。例えば、ユーザは、新しいタブページを、ウェブブラウザを立ち上げることによって、または、ウェブブラウザ126の「新しいタブ」のGUIコンポーネントをクリックすることによって表示させることができる。これが生じる時、新しいタブページは新しいタブページコンテンツ138についてのリクエストをインターネット上で新しいタブページサービス122に送る。リクエスト138は、ユーザのユーザID(例えばMSA ID)を含むか、その他の場合これに関連付けられる。ウェブブラウザ126は、例えば、ユーザが自身のユーザIDを使用してウェブブラウザ126を介して自身のアカウントにログオンした場合があるため、このユーザIDにアクセスすることができる。
[0053] リクエスト138を受信すると、新しいタブページサービス122はクエリ140を推奨エンジン120に送る。クエリ140は、新しいタブページに含まれる推奨される情報リソースのリストについてのリクエストを含む。クエリ140はユーザのユーザIDを含む。
[0054] クエリ140の受信に応答して、推奨エンジン120は推奨される情報リソースのリストを生成する。1つの実施形態では、推奨エンジン120は、クエリ140に含まれるユーザIDを使用して、ユーザIDによって特定されるユーザと関連付けられたIoTデバイスデータ情報要素のセットにアクセスする。推奨エンジン120はその後、情報要素を使用して、ユーザにとって関心があるかもしれない情報リソース(例えば、ウェブページ、ビデオ、または画像など)についての検索を行う。情報リソース識別子(例えばURL)のリストを含む場合がある検索の結果は、次いで、クエリ応答142の一部として新しいタブページサービス122に提供される。代替的な実施形態では、このような検索は、前もって行われてよく、その結果は、推奨エンジン120によってユーザIDと関連して記憶される。このような実施形態によると、推奨エンジン120は、クエリ140に含まれるユーザIDを使用して、推奨される情報リソースの先に記憶されたリストにアクセスし、かつ、そのリストをクエリ応答142の一部として返す。
[0055] 推奨される情報リソースのリストを含むクエリ応答142を受信後、新しいタブページサービス122は新しいタブページのコンテンツを動的にビルドする。新しいタブページのコンテンツは、クエリ応答142からの推奨される情報リソースについての情報を含み、このような推奨される情報リソースそれぞれの識別子(例えばURL)を含むことができる。新しいタブページサービスは次いで、新しいタブページ144のコンテンツをウェブブラウザ126に返す。ウェブブラウザ126はその後、ユーザによって開かれていた新しいタブページ内の新しいタブページのコンテンツを表示する。
[0056] 図2は、一実施形態による例示的な新しいタブページサービス200のブロック図である。新しいタブページサービス200は、図1の新しいタブページサービス122の例示的な実装形態を含むことができる。図2に示されるように、新しいタブページサービス200は、ウェブブラウザインターフェース202、推奨エンジンクエリロジック204、および新しいタブページコンテンツビルダー206を含む。これらのコンポーネントのそれぞれは、ソフトウェア(例えば、1つまたは複数の汎用プロセッサおよび/または専用プロセッサによって実行されるソフトウェア)において、(例えば、デジタル回路および/またはアナログ回路を使用する)ハードウェアにおいて、または、ソフトウェアおよびハードウェアの組合せとして、実装可能である。1つの実施形態では、コンポーネントの1つまたは複数は1つまたは複数のサーバコンピュータ上に実装される。
[0057] ウェブブラウザインターフェース202は、ユーザコンピューティングデバイス124上で実行しているウェブブラウザ126などのクライアントデバイス上で実行しているウェブブラウザから新しいタブページコンテンツについてのリクエストを受信するように、かつ、かかるリクエストに対する応答をこのようなクライアントデバイスに送り返すように動作可能であるロジックを含む。該応答は、ウェブブラウザのGUIの新しいタブページ部分に含めるコンテンツを含む。
[0058] 推奨エンジンクエリロジック204は、ウェブブラウザインターフェース202を介して新しいタブコンテンツページについてのクライアントリクエストの受信に応答して、推奨エンジン120などの推奨エンジンに対してクエリを生成しかつ送るように動作可能であるロジックを含む。一実施形態では、クエリは、1つまたは複数の推奨される情報リソースのリストについてのリクエストを含む。クエリはまた、特定のユーザIDを含むかこれに関連付けられてよい。推奨エンジンクエリロジック204は、推奨エンジンから1つまたは複数の推奨される情報リソースのリストを受信するように、かつ、新しいタブページコンテンツビルダー206のリストを提供するように動作可能であるロジックをさらに含む。
[0059] 新しいタブページコンテンツビルダー206は、ウェブブラウザインターフェース202を介して新しいタブコンテンツページについてのクライアントリクエストの受信に応答して、新しいタブページコンテンツを動的にビルドするように動作可能であるロジックを含む。このようなコンテンツは、推奨エンジンクエリロジック204から受信される推奨される情報リソースについての情報を含むことができ、かかる推奨される情報リソースそれぞれの識別子(例えばURL)を含むことができる。新しいタブページコンテンツビルダー206によって生成される新しいタブページコンテンツは、コンテンツをリクエストしたウェブブラウザに送信されるようにウェブブラウザインターフェース202に提供される。
[0060] 図3は、一実施形態による例示的な推奨エンジン300のブロック図である。推奨エンジン300は図1の推奨エンジン120の例示的な実装形態を含むことができる。図3に示されるように、推奨エンジン300は、IoTデータ受信機302、IoT情報要素抽出部304、情報リソース識別子306、およびクエリ応答ロジック308を含む。これらのコンポーネントのそれぞれは、ソフトウェア(例えば、1つまたは複数の汎用プロセッサおよび/または専用プロセッサによって実行されるソフトウェア)において、(例えば、デジタル回路および/またはアナログ回路を使用する)ハードウェアにおいて、または、ソフトウェアおよびハードウェアの組合せとして、実装可能である。1つの実施形態では、コンポーネントの1つまたは複数は1つまたは複数のサーバコンピュータ上に実装される。
[0061] IoTデータ受信機302は、さまざまなユーザに関連付けられたデバイス内に配設される組み込みシステムから生じるIoTデバイスデータを受信するように動作可能であるロジックを含む。このようなIoTデバイスデータは、(図1のIoT接続ハブ114などの)任意の数のIoT接続ハブによって収集され、かつ、(図1のISSサービス116などの)ISSサービスに伝達されることによって、次いで、ISSサービスから(図1の検索エンジンサービス118などの)検索エンジンサービスに伝達可能である。検索エンジンサービスはIoTデバイスデータを推奨エンジン300に提供する。しかしながら、IoTデータ受信機302は他のやり方でもIoTデバイスデータを受信可能である。一実施形態では、IoTデータ受信機302はいくらかのユーザに対するIoTデバイスデータを受信し、特定のユーザに対するIoTデバイスデータはこのようなIoTデバイスデータに関連付けられるユーザIDによって特定される。
[0062] IoT情報要素抽出部304は、IoTデバイスデータから情報要素(例えば、デバイスID、デバイスタイプ、デバイスモデル、デバイス状態情報、またはデバイスエラーコードなど)を抽出するように動作可能であるロジックを含む。特に、IoT情報要素抽出部304は、適切なスキーマを使用してデータを復号することによってIoTデバイスデータから情報要素を抽出するように動作可能である。IoT情報要素抽出部304は、特定のユーザIDと関連してIoTデバイスデータの特定のセットについて抽出された情報要素を記憶可能である。
[0063] 情報リソース識別子306は、特定のユーザIDによって特定されるユーザに対して1つまたは複数の推奨される情報リソースについての検索を行うために特定のユーザIDに関連付けられた情報要素を利用するように動作可能であるロジックを含む。例えば、情報リソース識別子306は、ネットワークアクセスが可能な情報リソースのインデックスの検索における検索用語として情報要素を利用することができる。一実施形態では、情報リソース識別子306は、ユーザIDを含むかその他の場合これに関連付けられる新しいタブページサービス(図1の新しいタブページサービス122など)からのクエリの受信に応答してこのような検索を行うように動作可能である。別の実施形態では、情報リソース識別子306は、新しいタブページサービスからの任意のリクエストを受信する前にユーザIDに関連付けられた情報要素を使用して特定のユーザIDに対して推奨される情報リソースについての検索を行うことができる。かかる実施形態によると、情報リソース識別子306はユーザIDに関連した検索によって発見された推奨される情報リソースの識別子(例えばURL)を記憶してよい。かかる識別子は後に、新しいタブページサービスからのリクエストに応答して迅速にアクセス可能である。
[0064] クエリ応答ロジック308は新しいタブページサービス(例えば、図1の新しいタブページサービス122または図2の新しいタブページサービス200)からクエリを受信するように、かつ、情報リソース識別子306によって生成される推奨される情報リソースのリストを提供することによってかかるクエリに応答するように動作可能であるロジックを含む。一実施形態では、新しいタブページサービスから受信されたそれぞれのクエリはユーザIDを含み、クエリ応答ロジック308は、情報リソース識別子306が特定のユーザIDによって特定されるユーザに対する推奨される情報リソースのリストを生成できるように、ユーザIDを情報リソース識別子306に提供するように動作する。1つの実施形態では、クエリ応答ロジック308によって新しいタブページサービスに返される推奨される情報リソースのリストは、推奨される情報リソースのURLのリストを含む。
[0065] 図4は、一実施形態によるユーザのIoTデバイスから得られたデータに基づいて推奨されるネットワークアクセスが可能な情報リソースのリストをウェブブラウザに提供するための推奨エンジンによって行われる方法のフローチャート400である。フローチャート400の方法は、例えば、図1の推奨エンジン120によって、または図3の推奨エンジン300によって実施されてよい。しかしながら、方法はそれらの実施形態に限定されない。
[0066] 図4に示されるように、フローチャート400の方法は情報が受信されるステップ402で始める。該情報は、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる。一実施形態では、情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。一実施形態では、ステップ402は推奨エンジン300のIoTデータ受信機302によって行われる。
[0067] ステップ404では、1つまたは複数の情報要素はステップ402の間に受信される情報から抽出される。一実施形態では、このステップは、受信された情報の少なくとも一部分が生じたデバイスに関連付けられたデバイスタイプおよび/またはデバイスモデルを特定することを含む。次いで、デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマは、受信された情報の少なくとも一部分に適用されて、1つまたは複数の情報要素の少なくとも1つを特定する。さらにかかる実施形態によると、所定のスキーマはXMLスキーマまたはJSONスキーマを含むことができるが、これらは例に過ぎない。一実施形態では、ステップ404は推奨エンジン300のIoT情報要素抽出部304によって行われる。
[0068] ステップ406では、ステップ404の間に抽出される1つまたは複数の情報要素は、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために利用される。ネットワークアクセスが可能な情報リソースそれぞれは、限定ではなく例として、ウェブサイト、ウェブページ、画像、またはビデオなどを含むことができる。1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために1つまたは複数の情報要素を利用することは、例えば、ネットワークアクセスが可能な情報リソースのインデックスに対して行われるクエリにおける検索用語として1つまたは複数の情報要素を利用することを含むことができる。一実施形態では、ステップ406は推奨エンジン300の情報リソース識別子306によって行われる。
[0069] ステップ408では、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子は、ユーザに関連付けられるウェブブラウザに配信するために提供される。このステップは、例えば、ウェブブラウザに配信するために新しいタブページコンテンツを動的に構築する新しいタブページサービスに1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を提供することを含むことができる。新しいタブページコンテンツは、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれについての情報を含む。ステップ408は、例えば、ウェブブラウザからの新しいタブページコンテンツについてのリクエストの受信に応答して行われてよい。一実施形態では、ステップ408は、推奨エンジン300のクエリ応答ロジック308によって行われる。
[0070] 図5は、一実施形態によるウェブブラウザによって、このユーザに、ユーザのIoTデバイスから得られたデータに基づいて推奨されるネットワークアクセスが可能な情報リソースのリストを提供するために行われる方法のフローチャート500を図示する。フローチャート500の方法は、例えば、図1のウェブブラウザ126によって実施可能である。しかしながら、方法はその実施形態に限定されない。
[0071] 図5に示されるように、フローチャート500の方法はステップ502で開始する。ここでウェブブラウザはユーザの識別子(ID)に関連したリクエストを送る。ユーザIDは、例えば、先に説明されたマイクロソフトのMSA ID、または、特定のユーザを特定するのに適した任意の他のIDを含むことができる。リクエストは、例えば、図1の新しいタブページサービス122、または図2の新しいタブページサービス200などの新しいタブページサービスに送られてよい。
[0072] ステップ504では、リクエストに応答して、ウェブブラウザは、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を受信する。1つまたは複数のネットワークアクセスが可能な情報リソースは、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる少なくとも情報に基づいて選択される。一実施形態では、情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。ステップ504の間に受信される識別子は、例えば、図1の新しいタブページサービス122または図2の新しいタブページサービス200などの新しいタブページサービスから受信可能である。
[0073] ステップ506では、ウェブブラウザは、ウェブブラウザのUI内に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報を表示する。例えば、ウェブブラウザは、ウェブブラウザのGUIの新しいタブページ部分内に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報を表示することができる。
[0074] 図6は、新しいタブページ内でユーザに情報リソース推奨を表示する例示的なウェブブラウザGUI600を示す。この情報リソース推奨はユーザ自身のIoTデバイスデータに基づく。図6に示されるように、GUI600は、ユーザがポインタ604でクリックした(タブの形状の)新しいタブページアクティブ化コンポーネント602を含む。ポインタ604はマウスなどのユーザ入力デバイスによって制御可能である。当然ながら、コンポーネント602と対話する他の方法が可能である。例えば、ウェブブラウザがタッチスクリーンを有するデバイス上で稼働している一実施形態では、ユーザはコンポーネント602の上のタッチスクリーンの一部分をタッチすることによってコンポーネント602と対話することができる。いずれの場合でも、コンポーネント602と対話することによって、ユーザはウェブブラウザに新しいタブページコンテンツについてのリクエストを(図1の新しいタブページサービス122または図2の新しいタブページサービス200などの)新しいタブページサービスに送らせる。新しいタブページコンテンツは次いで、新しいタブページサービスによって、GUI600内のコンテンツを表示するウェブブラウザに返される。
[0075] 図6にさらに示されるように、新しいタブページサービスから返される新しいタブページコンテンツは、推奨される情報リソースについての情報を含む。ここで、それぞれの推奨される情報リソースは情報のセット606〜606によって表される。図6に示される例示的なGUIにおいて、情報セットそれぞれは、推奨される情報リソースを表すサムネイル画像、および推奨される情報リソースの識別子(例えばURL)を含む。例えば、情報のセット606はサムネイル画像608および識別子610を含む。一実施形態では、サムネイル画像または識別子のどちらかをクリックすることによって、ウェブブラウザは、関連付けられる推奨される情報リソースをナビゲートすることになる。
[0076] 先に説明されたように、情報がGUI600に表示されるそれぞれの情報リソースは、有利には、ユーザによって所有されるまたはその他の場合ユーザに関連付けられる1つまた複数のデバイスから得られるIoTデバイスデータに基づいて推奨されてよい。よって、例えば、ユーザの洗濯機が誤作動しており、特定のエラーコードを報告しているシナリオでは、推奨される情報リソースの1つまたは複数は、洗濯機が特定のエラーコードを報告している時にユーザが所有する洗濯機のモデルの修理に対処する情報リソースを含むことができる。例えば、推奨される情報リソースは、洗濯機製造業者のウェブサイト、洗濯機の修理方法を論じるウェブページ、エラーコードの意味を記載するウェブページ、洗濯機の修理についてのハウツービデオ、または地域の洗濯機修理サービスに関連付けられたウェブページなどを含むことができる。情報リソース提案を進めるためにユーザIoTデバイスデータをどのように使用可能とするかを説明する追加の例示的なシナリオについて、本明細書で説明する。
[0077]図7は、ウェブブラウザが、このユーザに、ユーザ自身のIoTデバイスから得られたデータに基づいて自動的に生成された情報リソース提案および検索クエリ提案を提供できるようにする例示的なシステム700のブロック図である。図7に示される実施形態では、情報リソース提案および検索クエリ提案は、ウェブブラウザのアドレスバードロップダウンメニューに表示される。図7に示されるように、システム700は、複数のユーザIoTデバイス702、IoT接続ハブ714、ISS716、検索エンジンサービス718、推奨エンジン720、アドレスバーサービス722、およびウェブブラウザ726を実行するユーザコンピューティングデバイス724を含む。システム700のこれらの要素のそれぞれについてここで説明する。
[0078] (フィットネスデバイス704、DVR706、ランプ708、アラーム710、および電気器具712を含む)ユーザIoTデバイス702、IoT接続ハブ714、ISS716、検索エンジンサービス718、ユーザコンピューティングデバイス724、およびウェブブラウザ726は、それぞれ、図1の(フィットネスデバイス104、DVR106、ランプ108、アラーム110、および電気器具112を含む)ユーザIoTデバイス102、IoT接続ハブ114、ISS116、検索エンジンサービス118、ユーザコンピューティングデバイス124、およびウェブブラウザ126と実質的に同様に実装され、実質的に同様の機能を行うよう動作する。それ故に、それらコンポーネントの広範な説明は簡潔にするために本明細書に提供されない。
[0079] ユーザIoTデバイス702のそれぞれにおけるそれぞれの組み込みシステムは、IoTデバイスデータをIoT接続ハブ714に通信するように動作可能である。このような通信は図7で矢印730によっておおまかに表される。IoT接続ハブ714は、ユーザIoTデバイス702における組み込みシステムのそれぞれからIoTデバイスデータを集めるように、および、かかるIoTデバイスデータをインターネットまたは他のネットワーク上のISSサービス716に渡すように動作可能である。このようなデータを渡すことは、図7の矢印732によって表される。IoT接続ハブ714からISS716に渡されるIoTデバイスデータは、ユーザIoTデバイス702に関連付けられたユーザのIDを含む。
[0080] ISS716は、IoT接続ハブ714から(および、限定はされないが、他のIoT接続ハブを含む他のエンティティから)受信されるIoTデバイスデータのフィード734を検索エンジンサービス718に提供するように動作する。検索エンジンサービス718は、IoTデバイスデータを推奨エンジン720に渡すことで、推奨エンジン720は、このようなデータを使用して、アドレスバーサービス722からのリクエストに応答してユーザに対する情報リソース推奨および/または検索クエリ推奨を生成することができる。推奨エンジン720およびアドレスバーサービス722はそれぞれ、1つまたは複数のプロセッサベースのコンピューティングデバイス(例えばサーバ)上で実行される。IoTデバイスデータを検索エンジンサービス718から推奨エンジン720に渡すことは、図7の矢印736によって表される。
[0081] IoTデバイスデータを受信すると、推奨エンジン720は、情報要素(例えば、デバイスID、デバイスタイプ、デバイスモデル、デバイス状態情報、またはデバイスエラーコードなど)を、ユーザにとって関心があるかもしれない情報リソースを特定するために使用できるデータから抽出するように、および/または、ユーザに対する推奨される検索クエリを生成するように動作する。特に、推奨エンジン720は、適切なスキーマを使用してデータを復号することによってIoTデバイスデータから情報要素を抽出する。例えば、推奨エンジン720は、洗濯機から得られたIoTデータから情報要素を抽出するために洗濯機についてのスキーマを利用することができる。推奨エンジン720はその後、ユーザにとって関心があるかもしれないネットワークアクセスが可能なコンテンツ(例えば、ウェブページ、ビデオ、または画像など)を検索するために、および/または、ユーザに対する推奨される検索クエリを生成するために、抽出された情報要素を使用することができる。
[0082] 実装形態によっては、推奨エンジン720は、IoTデバイスデータから情報要素を単に抽出後、IoTデバイスデータを具備するユーザIDと関連して情報要素を記憶することができる。その後、リクエストがアドレスバーサービス722から受信されて、1つまたは複数の推奨される情報リソース、および/または、ユーザIDによって特定されるユーザに対する1つまたは複数の推奨される検索クエリを提供する時、推奨エンジン720は、情報要素を利用してこのような情報リソースについての検索を行うこと、および/または、このような検索クエリを生成することが可能である。代替的な実装形態では、推奨エンジン720は、アドレスバーサービス722から任意のリクエストを受信する前に情報要素を使用して推奨される情報リソースについての検索を行うこと、および/または、推奨される検索クエリを生成することが可能である。このような代替的な実装形態によると、推奨エンジン720は、その後、検索によって発見された情報リソースの識別子(例えばURL)、および/または、生成された検索クエリをユーザIDと関連して記憶することができる。このような識別子および/または検索クエリは、後に、アドレスバーサービス722からのリクエストに応答して迅速にアクセス可能である。
[0083] さらに図7のシステム700によると、ユーザIoTデバイス702に関連付けられたユーザは、ユーザコンピューティングデバイス724上で実行しているウェブブラウザ726と対話する。ウェブブラウザ726と対話する間に、ユーザは、ウェブブラウザ726のGUI内に表示されるアドレスバーと対話することができる。例えば、ユーザは、単にアドレスバーをクリックすることによって、または1つまたは複数の文字をアドレスバーに入力することによって、アドレスバーと対話できる。これが行われる時、ウェブブラウザ726は、アドレスバー推奨についてのリクエスト738をインターネット上でアドレスバーサービス722に送る。リクエスト738は、ユーザのユーザID(例えば、MSA ID)を含むかその他の場合これに関連付けられる。ウェブブラウザ726は、例えば、ユーザが自身のユーザIDを使用してウェブブラウザ726を介して自身のアカウントにログオンした場合があるため、このユーザIDにアクセスすることができる。
[0084] リクエスト738を受信すると、アドレスサービス722はクエリ740を推奨エンジン720に送る。クエリ740は、アドレスバーに表示されるべき推奨される情報リソースおよび/または推奨される検索クエリのリストについてのリクエストを含む。クエリ740はユーザのユーザIDを含む。一実施形態では、ユーザが既にアドレスバーにおけるタイピングを開始している場合、クエリ740は、ユーザが既にテキストバーにタイプしたテキストを含むこともできる。
[0085] クエリ740の受信に応答して、推奨エンジン720は、推奨される情報リソースおよび/または推奨される検索クエリのリストを生成する。1つの実施形態では、推奨エンジン720は、クエリ740に含まれるユーザIDを使用して、ユーザIDによって特定されるユーザと関連付けられたIoTデバイスデータ情報要素のセットにアクセスする。推奨エンジン720はその後、情報要素を使用して、ユーザにとって関心があるかもしれない情報リソース(例えば、ウェブページ、ビデオ、または画像など)についての検索を行う、および/または、ユーザに対して推奨される検索クエリを生成する。情報リソース識別子(例えばURL)および/または推奨される検索クエリのリストを含む場合がある検索の結果は、次いで、クエリ応答742の一部としてアドレスバーサービス722に提供される。代替的な実施形態では、情報リソースについての検索および/または検索クエリの生成は、前もって行われてよく、その結果は、推奨エンジン720によってユーザIDと関連して記憶される。このような実施形態によると、推奨エンジン720は、クエリ740に含まれるユーザIDを使用して、推奨される情報リソースおよび/または検索クエリの先に記憶されたリストにアクセスし、かつ、そのリストをクエリ応答742の一部として返す。ある特定の実施形態では、推奨エンジン720は、ユーザが既に、推奨される情報リソースまたは推奨される検索クエリを選択時にアドレスバーにタイプしたいずれのテキストも検討する。
[0086] 推奨される情報リソースおよび/または推奨される検索クエリのリストを含むクエリ応答742を受信後、アドレスバー722は、ウェブブラウザ726のアドレスバードロップダウンメニューで表示されるコンテンツを動的にビルドする。コンテンツは、それぞれの推奨される情報リソースの識別子(例えばURL)および/または1つもしくは複数の推奨される検索クエリを含むことができる。アドレスバーサービス722はその後、ウェブブラウザ726にコンテンツを返す。ウェブブラウザ726は次いで、アドレスバードロップダウンメニュー内にコンテンツを表示する。
[0087] 図8は、一実施形態による例示的なアドレスバーサービス800のブロック図である。アドレスバーサービス800は、図7のアドレスバーサービス722の例示的な実装形態を含んでよい。図8に示されるように、アドレスバーサービス800は、ウェブブラウザインターフェース802、推奨エンジンクエリロジック804、およびアドレスバーコンテンツビルダー806を含む。これらのコンポーネントのそれぞれは、ソフトウェア(例えば、1つまたは複数の汎用プロセッサおよび/または専用プロセッサによって実行されるソフトウェア)において、(例えば、デジタル回路および/またはアナログ回路を使用する)ハードウェアにおいて、または、ソフトウェアおよびハードウェアの組合せとして、実装可能である。1つの実施形態では、コンポーネントの1つまたは複数は1つまたは複数のサーバコンピュータ上に実装される。
[0088] ウェブブラウザインターフェース802は、ユーザコンピューティングデバイス724上で実行しているウェブブラウザ726など、クライアントデバイス上で実行しているウェブブラウザからアドレスバーコンテンツについてのリクエストを受信するように、および、このようなリクエストに対する応答をこのようなクライアントデバイスに送り返すように動作可能であるロジックを含む。この応答は、ウェブブラウザのGUIのアドレスバードロップダウンメニューに含めるコンテンツを含む。
[0089] 推奨エンジンクエリロジック804は、ウェブブラウザインターフェース802を介してアドレスバーコンテンツページについてのクライアントリクエストの受信に応答して、推奨エンジン720などの推奨エンジンに対してクエリを生成しかつ送るように動作可能であるロジックを含む。一実施形態では、クエリは、1つまたは複数の推奨される情報リソースおよび/または1つまたは複数の推奨される検索クエリのリストについてのリクエストを含む。クエリはまた、特定のユーザIDを含むかその他の場合これに関連付けられてよい。クエリはさらにまた、ユーザがアドレスバーに既にタイプしているテキストを含むことができる。推奨エンジンクエリロジック804は、推奨エンジンから1つまたは複数の推奨される情報リソースおよび/または1つまたは複数の推奨される検索クエリのリストを受信するように、かつ、アドレスバーコンテンツビルダー806へリストを提供するように動作可能であるロジックをさらに含む。
[0090] アドレスバーコンテンツビルダー806は、ウェブブラウザインターフェース802を介してアドレスバーコンテンツページについてのクライアントリクエストの受信に応答して、アドレスバーコンテンツを動的にアセンブルするように動作可能であるロジックを含む。このようなコンテンツは、推奨エンジンクエリロジック804から受信される推奨される情報リソースおよび/または推奨される検索クエリについての情報を含むことができる。アドレスバーコンテンツビルダー806によって生成されるアドレスバーコンテンツは、コンテンツをリクエストしたウェブブラウザに送信されるようにウェブブラウザインターフェース802に提供される。
[0091] 図9は、一実施形態による例示的な推奨エンジン900のブロック図である。推奨エンジン900は、図7の推奨エンジン720の例示的な実装形態を含むことができる。図9に示されるように、推奨エンジン900は、IoTデータ受信機902、IoT情報要素抽出部904、情報リソース識別子906、検索クエリ生成部908、およびクエリ応答ロジック910を含む。これらのコンポーネントのそれぞれは、ソフトウェア(例えば、1つまたは複数の汎用プロセッサおよび/または専用プロセッサによって実行されるソフトウェア)において、(例えば、デジタル回路および/またはアナログ回路を使用する)ハードウェアにおいて、または、ソフトウェアおよびハードウェアの組合せとして、実装可能である。1つの実施形態では、コンポーネントの1つまたは複数は1つまたは複数のサーバコンピュータ上に実装される。
[0092] IoTデータ受信機902は、さまざまなユーザに関連付けられたデバイス内に配設される組み込みシステムから生じるIoTデバイスデータを受信するように動作可能であるロジックを含む。このようなIoTデバイスデータは、(図7のIoT接続ハブ714などの)任意の数のIoT接続ハブによって収集され、かつ、(図7のISSサービス716などの)ISSサービスに伝達されることによって、次いで、ISSサービスから(図7の検索エンジンサービス718などの)検索エンジンサービスに伝達可能である。検索エンジンサービスはIoTデバイスデータを推奨エンジン900に提供する。しかしながら、IoTデータ受信機902は他のやり方でもIoTデバイスデータを受信可能である。一実施形態では、IoTデータ受信機902はいくらかのユーザに対するIoTデバイスデータを受信し、特定のユーザに対するIoTデバイスデータはこのようなIoTデバイスデータに関連付けられるユーザIDによって特定される。
[0093] IoT情報要素抽出部904は、IoTデバイスデータから情報要素(例えば、デバイスID、デバイスタイプ、デバイスモデル、デバイス状態情報、またはデバイスエラーコードなど)を抽出するように動作可能であるロジックを含む。特に、IoT情報要素抽出部904は、適切なスキーマを使用してデータを復号することによってIoTデバイスデータから情報要素を抽出するように動作可能である。IoT情報要素抽出部904は、特定のユーザIDと関連してIoTデバイスデータの特定のセットについて抽出された情報要素を記憶可能である。
[0094] 情報リソース識別子906は、特定のユーザIDによって特定されるユーザに対して1つまたは複数の推奨される情報リソースについての検索を行うために特定のユーザIDに関連付けられた情報要素を利用するように動作可能であるロジックを含む。例えば、情報リソース識別子906は、ネットワークアクセスが可能な情報リソースのインデックスの検索における検索用語として情報要素を利用することができる。一実施形態では、情報リソース識別子906は、ユーザIDを含むかその他の場合これに関連付けられるアドレスバーサービス(図7のアドレスバーサービス722など)からのクエリの受信に応答してこのような検索を行うように動作可能である。別の実施形態では、情報リソース識別子906は、アドレスバーサービスからの任意のリクエストを受信する前にユーザIDに関連付けられた情報要素を使用して特定のユーザIDに対して推奨される情報リソースについての検索を行うことができる。かかる実施形態によると、情報リソース識別子906はユーザIDに関連した検索によって発見された推奨される情報リソースの識別子(例えばURL)を記憶してよい。かかる識別子は後に、アドレスバーサービスからのリクエストに応答して迅速にアクセス可能である。
[0095] 検索クエリ生成部908は、特定のユーザIDに関連付けられた情報要素を利用して、特定のユーザIDによって特定されるユーザに対して1つまたは複数の推奨される検索クエリを生成するように動作可能であるロジックを含む。例えば、検索クエリ生成部908は、推奨される検索クエリのコンポーネントとして、または推奨される検索クエリについての検索時に使用されるキーワードとして、情報要素を利用可能である。一実施形態では、検索クエリ生成部908は、ユーザIDを含むかその他の場合これに関連付けられるアドレスバーサービス(図7のアドレスバーサービス722など)からのクエリの受信に応答して、1つまたは複数の推奨される検索クエリを生成するように動作可能である。別の実施形態では、検索クエリ生成部908は、アドレスバーサービスからの任意のリクエストを受信する前に、ユーザIDに関連付けられる情報要素を使用して特定のユーザIDに対して推奨される検索クエリを生成可能である。かかる実施形態によると、検索クエリ生成部908は、ユーザIDに関連して推奨される検索クエリを記憶することができる。かかる識別子は後に、アドレスバーサービスからのリクエストに応答して迅速にアクセス可能である。
[0096] クエリ応答ロジック910はアドレスバーサービス(例えば、図7のアドレスバーサービス)からクエリを受信するように、かつ、情報リソース識別子906によって生成される推奨される情報リソースのリストおよび/また検索クエリ生成部908によって生成される推奨される検索クエリのリストを提供することによってかかるクエリに応答するように動作可能であるロジックを含む。一実施形態では、アドレスバーサービスから受信されたそれぞれのクエリはユーザIDを含み、クエリ応答ロジック910は、ユーザIDを情報リソース識別子906に提供することで、情報リソース識別子906が特定のユーザIDによって特定されるユーザに対する推奨される情報リソースのリストを生成できるように動作する。1つの実施形態では、クエリ応答ロジック910によってアドレスバーサービスに返される推奨される情報リソースのリストは、推奨される情報リソースのURLのリストを含む。クエリ応答ロジック910は、ユーザIDを検索クエリ生成部908に提供することで、検索クエリ生成部908は特定のユーザIDによって特定されるユーザに対して推奨される検索クエリのリストを生成できるようにさらに動作可能である。
[0097] 図10は、一実施形態によるユーザのIoTデバイスから得られたデータに基づいて推奨されるネットワークアクセスが可能な情報リソースのリストおよび/または推奨される検索クエリのリストをウェブブラウザに提供するための推奨エンジンによって行われる方法のフローチャート1000を図示する。フローチャート1000の方法は、例えば、図7の推奨エンジン720によって、または図9の推奨エンジン900によって実施可能である。しかしながら、該方法はそれら実施形態に限定されない。
[0098] 図10に示されるように、フローチャート1000の方法は情報が受信されるステップ1002で始める。該情報は、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる。一実施形態では、情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。一実施形態では、ステップ1002は推奨エンジン900のIoTデータ受信機902によって行われる。
[0099] ステップ1004では、1つまたは複数の情報要素はステップ1002の間に受信される情報から抽出される。一実施形態では、このステップは、受信された情報の少なくとも一部分が生じたデバイスに関連付けられたデバイスタイプおよび/またはデバイスモデルを特定することを含む。次いで、デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマは、受信された情報の少なくとも一部分に適用されて、1つまたは複数の情報要素の少なくとも1つを特定する。さらにかかる実施形態によると、所定のスキーマはXMLスキーマまたはJSONスキーマを含むことができるが、これらは例に過ぎない。一実施形態では、ステップ1004は推奨エンジン900のIoT情報要素抽出部904によって行われる。
[00100] ステップ1006では、ステップ1004の間に抽出される1つまたは複数の情報要素は、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために、および/または、1つまたは複数の推奨される検索クエリを生成するために利用される。ネットワークアクセスが可能な情報リソースそれぞれは、限定ではなく例として、ウェブサイト、ウェブページ、画像、またはビデオなどを含むことができる。1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために1つまたは複数の情報要素を利用することは、例えば、ネットワークアクセスが可能な情報リソースのインデックスに対して行われるクエリにおける検索用語として1つまたは複数の情報要素を利用することを含むことができる。1つまたは複数の推奨される検索クエリを生成するために1つまたは複数の情報要素を利用することは、例えば、推奨される検索クエリのコンポーネントとして、または推奨される検索クエリについての検索時に使用されるキーワードとして、1つまたは複数の情報要素を利用することを含むことができる。一実施形態では、ステップ1006は推奨エンジン900の情報リソース識別子906および/または検索クエリ生成部908によって行われる。
[00101] ステップ1008では、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子および/または1つまたは複数の推奨される検索クエリは、ユーザに関連付けられるウェブブラウザに配信するために提供される。このステップは、例えば、ウェブブラウザに配信するためにアドレスバーコンテンツを動的にアセンブルするアドレスバーサービスに1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子および/または1つまたは複数の推奨される検索クエリを提供することを含むことができる。ステップ1008は、例えば、ウェブブラウザからのアドレスバーコンテンツについてのリクエストの受信に応答して行われてよい。一実施形態では、ステップ1008は、推奨エンジン900のクエリ応答ロジック910によって行われる。
[00102] 図11は、ウェブブラウザによって、このユーザに、一実施形態によるユーザのIoTデバイスから得られたデータに基づいて推奨されるネットワークアクセスが可能な情報リソースのリストおよび/または推奨される検索クエリのリストを提供するために行われる方法のフローチャート1100を図示する。フローチャート1100の方法は、例えば、図7のウェブブラウザ726によって実施可能である。しかしながら、該方法はその実施形態に限定されない。
[00103] 図11に示されるように、フローチャート1100の方法はステップ1102で始める。ここで、ウェブブラウザはユーザの識別子(ID)に関連したリクエストを送る。ユーザIDは例えば、先に説明されたマイクロソフトのMSA ID、または、特定のユーザを特定するのに適した任意の他のIDを含むことができる。リクエストは、例えば、図7のアドレスバーサービス722、または図8のアドレスバーサービス800などのアドレスバーサービスに送られてよい。
[00104] ステップ1104では、リクエストに応答して、ウェブブラウザは、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子および/または1つまたは複数の推奨される検索クエリを受信する。1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースおよび/または1つまたは複数の推奨される検索クエリは、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる少なくとも情報に基づいて選択される。一実施形態では、情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。ステップ1104の間に受信される1つまたは複数の識別子および/または1つまたは複数の検索クエリは、例えば、図7のアドレスバーサービス722、または図8のアドレスバーサービス800などのアドレスバーサービスから受信可能である。
[00105] ステップ1106では、ウェブブラウザは、ウェブブラウザのUI内に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースおよび/または1つまたは複数の推奨される検索クエリについての情報を表示する。例えば、ウェブブラウザは、ウェブブラウザのGUIのアドレスバードロップダウンメニュー内に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースおよび/または1つまたは複数の推奨される検索クエリについての情報を表示することができる。
[00106] 図12は、アドレスバードロップダウンメニュー内でユーザに、ユーザ自身のIoTデバイスデータに基づいている、情報リソース推奨および/または検索クエリ推奨を表示する例示的なウェブブラウザGUI1200を示す。図12に示されるように、GUI1200はアドレスバー1202を含む。ユーザがアドレスバー1202と(例えば、これをクリックすることによって、またはこれにテキストをタイプし始めることによって)対話する時、ユーザはウェブブラウザにアドレスバーコンテンツについてのリクエストを(図7のアドレスバーサービス722、または図8のアドレスバーサービス800などの)アドレスバーサービスに送らせる。アドレスバーコンテンツは次いで、アドレスバーサービスによってウェブブラウザに返され、このウェブブラウザはそのコンテンツをGUI1200内に表示する。
[00107] 特に、ウェブブラウザはGUI1200のアドレスバードロップダウンメニュー1204内にコンテンツを表示する。アドレスバーコンテンツは、推奨される情報リソースの1つまたは複数の識別子(例えばURL)、および/または1つまたは複数の推奨される検索クエリを含むことができる。アドレスバードロップダウンメニュー1204内の情報リソース識別子をクリックするまたはその他の場合これと対話することによって、ユーザはウェブブラウザに対応する情報リソースをナビゲートさせる。アドレスバードロップダウンメニュー1204内の検索クエリをクリックするまたはその他の場合これと対話することによって、ユーザはウェブブラウザに、選択された検索クエリを使用してコンテンツについて検索するために検索エンジンを呼び出させ、かつ、その後ウェブブラウザによって表示される検索結果を返させる。
[00108] 先に記載されるように、アドレスバードロップダウンメニュー1204において特定されるそれぞれの情報リソース、およびアドレスバードロップダウンメニュー1204において表示されるそれぞれの検索クエリは、有利には、所有されるまたはその他の場合ユーザに関連付けられる1つまた複数のデバイスから得られるIoTデバイスデータに基づいて推奨されてよい。よって、例えば、ユーザの洗濯機が誤作動しており、特定のエラーコードを報告しているシナリオでは、アドレスバードロップダウンメニュー1204において特定される1つまたは複数の情報リソースは、洗濯機が特定のエラーコードを報告している時にユーザが所有する洗濯機のモデルの修理に対処する情報リソースを含むことができる。例えば、情報リソースは、洗濯機製造業者のウェブサイト、洗濯機の修理方法を論じるウェブページ、エラーコードの意味を記載するウェブページ、洗濯機の修理についてのハウツービデオ、または地域の洗濯機修理サービスに関連付けられたウェブページなどを含むことができる。さらに、アドレスバードロップダウンメニュー1204において表示される検索クエリは、特定のエラーを報告する時の洗濯機の修理についての有用な情報を返すように念入りに作られてよい。例えば、推奨される検索クエリは、洗濯機の名称、モデル、または他の識別子、およびエラーコードを含むことができる。
[00109] 前述の例において、新しいタブページ内にまたはウェブブラウザGUIのアドレスバードロップダウンメニューにおいて、推奨される情報リソースおよび/または推奨される検索クエリについての情報が提示されるが、本明細書に記載される技法が、かかる情報をウェブブラウザGUIの他の部分に提示させるために使用可能であることは理解されたい。さらに推奨される情報リソースおよび/または推奨される検索クエリは、他のGUI(例えば、デジタルパーソナルアシスタントのGUI)を介して、または非グラフィカルUIを介してユーザに提示可能である。
[00110] 情報リソース提案および検索クエリ提案を進めるためにどのようにユーザIoTデバイスデータは使用可能であるかを説明する追加の例示的なシナリオをここで説明する。
[00111] ユーザは、自分の車で家に帰り、チェックエンジンランプが点灯する。車内の組み込みシステムは、チェックエンジンコンディションを報告し、このデータは図1または図7の先に記載されたインフラストラクチャを介して、推奨される情報リソースを特定するおよび/または検索クエリを生成する推奨エンジンに伝達されて、ウェブブラウザを介して提示する。家に着くと、ユーザは自身のウェブブラウザを開いて、チェックエンジンランプについての情報の検索を開始する。ウェブブラウザは、推奨エンジンと通信状態にある新しいタブページサービスまたはアドレスバーサービスをコールする。該サービスによって、推奨される情報リソースおよび/または検索クエリについての情報はユーザのウェブブラウザ内に表示される。よって、例えば、ブラウザは、ユーザを支援するための瞬時の返答を提供するような特有のウェブサイトまたはクエリを提案することができる。このようにユーザによって得られる場合がある情報の例は、地域のサービスセンターの名称、住所、および連絡情報、ならびにチェックエンジンの状況、標準的な原因、および提案される改善法(例えば、ガソリンタンクのキャップが確実にしっかり閉められているかをチェックする)についての詳細な情報を含むことができる。ユーザは、自身の車についてのいずれの細目も提供することなく、この有用な情報を得ることができる。例えば、1つの実施形態では、ユーザに必要とされるのは、提供されるべき関係がある情報リソースまたは検索クエリについて、アドレスバー(または他のデータ入力インターフェースコンポーネント)に「チェックエン…」とタイプし始めることだけである。代替的な実施形態では、このような情報リソースまたは検索クエリへのリンクは、ユーザがいずれの情報を入力しなくても提供可能である。
[00112] 別の例示的なシナリオでは、ユーザの食洗機は誤作動しており、デバイスのパネル上にエラーコードを表示している。食洗機内の組み込みシステムは、誤作動を報告し、エラーコードおよびこのデータは図1または図7の先に記載されたインフラストラクチャを介して、推奨される情報リソースを特定するおよび/または検索クエリを生成する推奨エンジンに伝達されて、ウェブブラウザを介して提示する。ユーザは、自身のウェブブラウザを開始して、そのエラーについての情報を検索する。ユーザがウェブブラウザを開始する時、ウェブブラウザの新しいタブページは、推奨エンジンと通信状態にある新しいタブページサービスをコールする。該サービスによって、推奨される情報リソースについての情報はユーザの新しいタブページ内に表示される。推奨される情報リソースは、食洗機上のエラーコードに具体的に関連するウェブサイトを含む。よって、1回のクリックで、ユーザは、エラーコード、サービスセンターの情報、および提案される改善法についての詳細な情報を得ることができる。
[00113] さらに別の例示的なシナリオでは、ユーザの冷蔵庫の製氷機フィルタを取り換える必要がある。冷蔵庫内の組み込みシステムはこのコンディションを報告し、そのデータは、図1または図7の先に記載されたインフラストラクチャを介して、推奨される情報リソースを特定するおよび/または検索クエリを生成する推奨エンジンに伝達されて、ウェブブラウザを介して提示する。次回ユーザが自身のウェブブラウザを開始する時に、新しいタブページは推奨エンジンと通信状態にある新しいタブページサービスをコールする。該サービスによって、推奨される情報リソースについての情報は新しいタブページ内に表示される。よって新しいタブページは、フィルタ状態についての詳細および新しいフィルタを購入するためのリンクを提供できる。
[00114] さらに別の例示的なシナリオでは、ユーザはフィットネスデバイスを着用しており、3マイルのランニングから戻る。フィットネスデバイス内の組み込みシステムはランニング中に収集されたデータを報告し、このデータは、図1または図7の先に記載されたインフラストラクチャを介して、推奨される情報リソースを特定するおよび/または検索クエリを生成する推奨エンジンに伝達されて、ウェブブラウザを介して提示する。次回ユーザが自身のウェブブラウザを開始する時に、新しいタブページは推奨エンジンと通信状態にある新しいタブページサービスをコールする。該サービスによって、推奨される情報リソースについての情報は新しいタブページ内に表示される。例えば、推奨される情報リソースは、フィットネス関連商品、健康に良いレシピ、およびフィットネス機器についての情報を含むことができる。ユーザが運動し続けて自身の健康を改善するように、ウェブブラウザによって提供される提案を具体的にユーザに合わせることができる。
[00115] 追加の例示的なシナリオでは、ユーザの衣類乾燥機における組み込みシステムは、ユーザに代わって大量の洗濯物を乾燥させる時に乾燥時間がどんどん長くなっていることを報告する。このデータは、図1または図7の先に記載されたインフラストラクチャを介して、推奨される情報リソースを特定するおよび/または検索クエリを生成する推奨エンジンに伝達されて、ウェブブラウザを介して提示する。次回ユーザが自身のウェブブラウザを開始する時に、新しいタブページは推奨エンジンと通信状態にある新しいタブページサービスをコールする。該サービスによって、推奨される情報リソースについての情報は新しいタブページ内に表示される。例えば、該サービスは、乾燥機の性能を改善する方法についてのウェブサイト、商品、およびビデオへのリンクをもたらすことができる。
[00116] 前述の例の多くにおいて、単一のIoTデバイスから得られたデータは、ウェブブラウザ推奨を進めるために使用される。しかしながら、ある特定の実施形態では、異種のデバイスタイプ内の複数の組み込みシステムから得られたデータはまた、特定の情報リソースまたは検索クエリの推奨を進めるために使用可能である。例えば、ユーザの洗濯機が誤作動を報告しており、ユーザの家の別のセンサが床上の水を報告する場合、推奨エンジンは、このようなIoTデバイスデータを解析して、洗濯機が漏れ出したことを推断することが可能であり、その推断に基づいて推奨を生成できる。別の例として、ユーザの煙探知器が、煙が検出されていることを報告しており、ユーザのオーブンが誤作動を報告している場合、推奨エンジンはこのようなIoTデバイスデータを解析して、ユーザのオーブンが煙を出していると推断し、その推断に基づいて推奨を生成できる。さらに別の例として、暖房炉およびストーブ両方共が、ガス供給が利用できないことを報告している場合、推奨エンジンは、このようなIoTデバイスデータを解析して、ユーザの家へのガス供給が止められていることを推断し、その推断に基づいて推奨を生成できる。さらに別の例として、ユーザの冷却システムは、これに関連付けられたエアフィルタがしばらく変えられていないことを報告する場合があり、ユーザの家の2階の部屋のサーモスタットが異常に高温になっていることを報告している場合がある。推奨エンジンはこのようなIoTデバイスデータを解析して、エアフィルタが即刻変えられるべきであることを推断し、その推断に基づいて推奨を生成できる。
[00117] またさらなる実施形態では、異なるユーザが所有する同じデバイスタイプのインスタンス内の複数の組み込みシステムから得られるデータは、特定の情報リソースまたは検索クエリの推奨を進めるために使用されてよい。例えば、特定のブランドの多数の洗濯機が同様のエラーコードまたは問題を報告している場合、エラーコードまたは問題に関する推奨は、ユーザの洗濯機がまだエラーコードまたは問題を経験していない場合でも、洗濯機を所有するそのユーザを対象とすることができる。よって、推奨または提案は、デバイスを所有するユーザ全てに対してなされ得る。このように、ユーザにはデバイスの問題が生じる前に警告される可能性がある。例えば、推奨エンジンはある特定の情報リソースまたは検索クエリをユーザのデバイスの寿命に基づいて、および、異なるユーザが所有する同じデバイスの他のインスタンスから生成されるデータに基づいて、ユーザに対して自身のブラウザにおいて提示させることができる。
[00118] 追加の実施形態では、1つまたは複数の各デバイス内の1つまたは複数の組み込みシステムから得られるデータは、ウェブブラウザのユーザに対して、特定の情報リソース、検索クエリ、または他の情報の推奨を進めるために使用可能である。この場合、他のユーザはその各デバイスのいずれも所有しない。例えば、ユーザデバイスから得られたデータを使用して、検索エンジンを作動させ、かつ、デバイスを所有しないユーザに対しても返答を与えることができる。例として、シアトルにおける平均室内温度、ある特定の人口がテレビを見る時間数、ある特定の家庭ではどれくらいの時間家にいないのかなどの情報の項目が収集され、かつ、ウェブブラウザまたは検索エンジン内でユーザに対する情報の配信を進めるために使用可能である。かかるシナリオでは、データの全てはユーザのプライバシーを保護するために匿名にされる。
[00119] III.ユーザIoTデバイスデータに基づく検索結果の生成および/またはランク付け
図13は、ユーザの代わりにより関係がある検索結果を生じさせる助けとなるように、および/またはユーザの代わりに検索結果をランク付けするために、ユーザIoTデバイスデータが検索エンジンによって使用されるシステム1300のブロック図である。図13に示されるように、システム1300はユーザコンピューティングデバイス1302、および、ユーザコンピューティングデバイス1302が通信可能に接続される検索エンジン1304を含む。
[00120] ユーザコンピューティングデバイス1302は、ウェブブラウザを実行可能である任意のデバイスを含むことができる。限定ではなく例として、ユーザコンピューティングデバイス1302は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ネットブック、スマートフォン、ゲーム機、またはスマートTVなどを含んでよい。検索エンジン1304は、1つまたは複数のプロセッサベースのコンピューティングデバイス(例えばサーバ)上で実行している1つまたは複数のコンピュータプログラムを含む。ユーザコンピューティングデバイス1302は、限定はされないが、インターネットなどのネットワークを介して検索エンジン1304に通信可能に接続される。
[00121] ユーザは、検索クエリ1308を検索エンジン1304にサブミットするために、ユーザコンピューティングデバイス1302上で実行しているウェブブラウザ1306と対話する。検索クエリ1308の受信に応答して、検索エンジン1304は、検索クエリ1308に関係している1つまたは情報リソース(例えば、ウェブサイト、ウェブページ、ビデオ、または画像など)を見つけるために検索を実行する。検索エンジン1304は、1つまたは複数の情報リソースの識別子を、検索結果ページ1310の一部としてウェブブラウザ1306に返す。
[00122] 検索エンジン1304は、そのクエリをサブミットしたユーザに関連付けられたIoTデバイスデータ1312を受信する。このIoTデバイスデータ1312は、例えば、図1または図7に示されるものと同様のインフラストラクチャを使用して受信されて、データフィード134または734をそれぞれ生じさせることができる。検索エンジン1304は、検索クエリ1308およびIoTデバイスデータ1312両方共を利用して、関係する情報リソースについての検索を行うことができる。検索エンジン1304は、IoTデバイスデータ1312と関連付けられたユーザIDをクエリ1308と関連付けられたユーザIDに適合させることによって、クエリ1308をサブミットしたユーザにIoTデバイスデータ1312を相関できるようにしてよい。
[00123] 検索クエリ1308と併せてIoTデバイスデータ1312を利用することによって、検索エンジン1304によって実施される検索アルゴリズムは、ユーザに対する特定の関連性を有する情報リソースを見つけることができる場合がある。例えば、ユーザの洗濯機が壊れており、「壊れた洗濯機」というキーワードを含む検索クエリ1308をサブミットすると仮定する。ただし、IoTデバイスデータ1312が、特有のエラーコードを含むユーザの洗濯機からのデータを含むとさらに仮定する。そして、この場合、検索エンジン1304は、ユーザの検索クエリだけでなく、洗濯機自体によって報告されるエラーコードも考慮する検索結果1310を返すことができる。よって、検索結果1310は、ユーザの洗濯機が経験している特定の問題に直接対処する情報リソースを含むことができる。
[00124] 別の例として、ユーザの洗濯機が壊れており、「壊れた洗濯機」というキーワードを含む検索クエリをサブミットすると再び仮定する。ユーザが特定のブランドの洗濯機を有することをIoTデバイスデータ1312が指示するとさらに仮定する。その洗濯機の全てが同じ欠陥に悩まされていることを指示する、他のユーザが所有する同じ洗濯機の多数の他のインスタンスからIoTデバイスデータを検索エンジン1304が受信するとさらにまた仮定する。そして、この場合、検索エンジン1304は、ユーザの検索クエリだけでなく、ユーザの洗濯機のブランドが特定の欠陥に悩まされていることで知られている事実も考慮する結果1310を返すことができる。よって、検索結果1310は、ユーザの洗濯機のブランドに共通する特定の欠陥に対処する情報リソースを含むことができる。
[00125] IoTデバイスデータ1312を使用してより関係がある検索結果を返すことに加えて、検索エンジン1304は、検索結果をランク付けするためにIoTデバイスデータ1312を使用することもできる。例えば、「壊れた洗濯機」という検索クエリに基づいて特定される情報リソースは、ユーザの洗濯機から得られるIoTデバイスデータ1312内のある特定の情報要素を包含するかまたはこれと同様と見なされるかどうかを判断するために解析されてよい。情報要素に十分に相関しているそれらの情報リソースは、より関係があると見なされるため、検索結果内でより高くランク付けされる場合がある。さらに他の方法は、IoTデバイスデータ1312に基づいて検索結果をランク付けするために使用可能である。
[00126] 図14は、一実施形態によるユーザのIoTデバイスから得られたデータに基づいてユーザに対して検索結果を生成するために検索エンジンによって行われる方法のフローチャート1400を図示する。フローチャート1400の方法は、例えば、図13の検索エンジン1304によって実施されてよい。しかしながら、該方法はその実施形態に限定されない。
[00127] 図14に示されるように、フローチャート1400の方法は情報が受信されるステップ1402で始める。該情報は、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる。一実施形態では、情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。
[00128] ステップ1404では、1つまたは複数の情報要素はステップ1402の間に受信される情報から抽出される。一実施形態では、このステップは、受信された情報の少なくとも一部分が生じたデバイスに関連付けられたデバイスタイプおよび/またはデバイスモデルを特定することを含む。次いで、デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマは、受信された情報の少なくとも一部分に適用されて、1つまたは複数の情報要素の少なくとも1つを特定する。さらにかかる実施形態によると、所定のスキーマはXMLスキーマまたはJSONスキーマを含むことができるが、これらは例に過ぎない。
[00129] ステップ1406では、検索クエリはユーザから受信される。例えば、検索クエリはウェブブラウザを介してユーザから受信可能である。
[00130] ステップ1408では、1つまたは複数のネットワークアクセスが可能な情報リソースは、検索クエリ、およびステップ1404の間に抽出される1つまたは複数の情報要素に基づいて特定される。ネットワークアクセスが可能な情報リソースそれぞれは、限定ではなく例として、ウェブサイト、ウェブページ、画像、またはビデオなどを含むことができる。
[00131] ステップ1410では、1つまたは複数のネットワークアクセスが可能な情報リソースについての情報をユーザに対して提示させる。例えば、このステップは、(それぞれに対するリンクを含むことができる)1つまたは複数のネットワークアクセスが可能なリソースについての情報を含む検索結果ページを生成することと、次いで、検索結果ページをユーザに表示するためにウェブブラウザに送ることとを含むことができる。
[00132] フローチャート1400の前述の方法は、ステップ1404の間に抽出される1つまたは複数の情報要素に基づいて1つまたは複数のネットワークアクセスが可能な情報リソースをランク付けすることをさらに含むことができる。
[00133] 上述される検索エンジンは、異種のデバイスタイプ内の複数の組み込みシステムから生じる検索クエリおよび情報要素に基づいて特定のネットワークアクセスが可能な情報リソースを特定できることに留意されたい。さらに、上述される検索エンジンは、異なるユーザが所有する同じデバイスタイプのインスタンス内の複数の組み込みシステムから生じる検索クエリおよび情報要素に基づいて特定のネットワークアクセスが可能な情報リソースを特定できる。
[00134] IV.例示的なモバイルデバイス実装形態
図15は、本明細書に記載される実施形態を実施可能である例示的なモバイルデバイス1502のブロック図である。例えば、モバイルデバイス1502は、図1のユーザコンピューティングデバイス124、図7のユーザコンピューティングデバイス724、または図13のユーザコンピューティングデバイス1302のいずれかを実装するために使用可能である。図15に示されるように、モバイルデバイス1502はさまざまなオプションのハードウェアコンポーネントおよびソフトウェアコンポーネントを含む。モバイルデバイス1502における任意のコンポーネントは、任意の他のコンポーネントと通信できるが、例示を容易にするために全ての接続部が示されているわけではない。モバイルデバイス1502は、さまざまなコンピューティングデバイス(例えば、携帯電話、スマートフォン、ハンドヘルドコンピュータ、携帯情報端末(PDA)など)のいずれかとすることができ、セルラーネットワークまたは衛星ネットワークなどの1つまたは複数の通信ネットワーク1504、または、ローカルエリアネットワークもしくはワイドエリアネットワークとのワイヤレス双方向通信を可能にすることができる。
[00135] 例示されるモバイルデバイス1502は、信号符号化、データ処理、入力/出力処理、電力制御、および/または他の機能などのタスクを行うためのコントローラまたはプロセッサ1510(例えば、信号プロセッサ、マイクロプロセッサ、ASIC、または他の制御器、および処理ロジック回路構成)を含むことができる。オペレーティングシステム1512は、モバイルデバイス1502のコンポーネントの割り当ておよび使用を制御し、かつ、1つまたは複数のアプリケーションプログラム1514(「アプリケーション」または「アプリ」とも言う)に対するサポートを行うことができる。アプリケーションプログラム1514は一般的なモバイルコンピューティングアプリケーション(例えば、電子メールアプリケーション、カレンダー、連絡先マネージャ、ウェブブラウザ、メッセージングアプリケーション)、および任意の他のコンピューティングアプリケーション(例えば、ワード処理アプリケーション、マッピングアプリケーション、メディアプレーヤアプリケーション)を含むことができる。
[00136] 例示されるモバイルデバイス1502はメモリ1520を含むことができる。メモリ1520は取り外し不可能なメモリ1522および/または取り外し可能なメモリ1524を含むことができる。取り外し不可能なメモリ1522は、RAM、ROM、フラッシュメモリ、ハードディスク、または他の周知のメモリデバイスもしくは技術を含むことができる。取り外し可能なメモリ1524は、フラッシュメモリ、もしくはGSM(登録商標)通信システムで周知の加入者識別モジュール(SIM)カード、または「スマートカード」などの他の周知のメモリデバイスもしくは技術を含むことができる。メモリ1520は、オペレーティングシステム1512およびアプリケーション1514を稼働させるためのデータおよび/またはコードを記憶するために使用可能である。例示的なデータは、ウェブページ、テキスト、画像、サウンドファイル、ビデオデータ、または、1つまたは複数のワイヤードもしくはワイヤレスネットワークを介して1つまたは複数のネットワークサーバもしくは他のデバイスとの間で送受信される他のデータを含むことができる。メモリ1520は、国際モバイル加入者識別(IMSI)などの加入者識別子、および国際モバイル機器識別子(IMEI)などの機器識別子を記憶するために使用可能である。このような識別子は、ユーザおよび機器を特定するために、ネットワークサーバに送信できる。
[00137] モバイルデバイス1502は、タッチ画面1532、マイクロホン1534、カメラ1536、物理キーボード1538、および/またはトラックボール1540などの1つまたは複数の入力デバイス1530、ならびにスピーカ1552および表示部1554などの1つまたは複数の出力デバイス1550をサポートすることができる。タッチ画面1532などのタッチ画面は種々のやり方で入力を検出することができる。例えば、容量性タッチ画面は、オブジェクト(例えば指先)が表面を横切る電流を歪ませるまたは遮断する時のタッチ入力を検出する。別の例として、タッチ画面は、光センサからのビームが遮断される時のタッチ入力を検出する光センサを使用することができる。画面の表面との物理的接触は、いくつかのタッチ画面によって検出されるべき入力にとって必要ではない。
[00138] 他の可能な出力デバイス(図示せず)は、圧電型または他の触覚出力デバイスを含むことができる。いくつかのデバイスは、複数の入力/出力機能を果たすことができる。例えば、タッチ画面1532および表示部1554は、単一の入力/出力デバイスに組合せ可能である。入力デバイス1530は、Natural User Interface(NUI)を含むことができる。
[00139] ワイヤレスモデム1560は、アンテナ(図示せず)に連結可能であり、当技術分野ではよく理解されるように、プロセッサ1510と外部デバイスとの間の双方向通信をサポートすることができる。モデム1560は、おおまかに示されており、モバイル通信ネットワーク1504および/または他の無線ベースのモデム(例えば、Bluetooth1564、および/またはWi−Fi1562)と通信するためのセルラーモデム1566を含むことができる。ワイヤレスモデム1560のうちの少なくとも1つは、典型的には、単一のセルラーネットワーク内、セルラーネットワーク間、またはモバイルデバイスと公衆交換電話網(PSTN)との間のデータおよび音声通信用のGSMネットワークといった、1つまたは複数のセルラーネットワークと通信するように構成される。
[00140] モバイルデバイス1502は、少なくとも1つの入力/出力ポート1580、電源1582、全地球測位システム(GPS)受信機などの衛星ナビゲーションシステム受信機1584、加速度計1586、および/または物理コネクタ1590をさらに含むことができ、この物理コネクタ1590は、USBポート、IEEE1394(FireWire)ポート、および/またはRS−232ポートとすることができる。モバイルデバイス1520の例示されたコンポーネントは、当業者によって認識されるように、いずれかのコンポーネントが削除される可能性があり、かつ他のコンポーネントが追加される可能性があるため、必須でもないし、全てが含まれているのでもない。
[00141] 一実施形態では、モバイルデバイス1502は、図1のユーザコンピューティングデバイス124、図7のユーザコンピューティングデバイス724、または図13のユーザコンピューティングデバイス1302の機能のいずれかを果たすように構成される。これらのデバイスの機能を果たすためのコンピュータプログラムロジックは、メモリ1520に記憶され、かつプロセッサ1510によって実行可能である。このようなコンピュータプログラムロジックを実行することによって、プロセッサ1510には、これらのデバイスのいずれかの特徴のいずれかを実装させることができる。また、このようなコンピュータプログラムロジックを実行することによって、プロセッサ1510には、図5または図11に図示されるフローチャートのいずれかまたは全てのステップのいずれかまたは全てを行わせることができる。
[00142] V.例示的なコンピュータシステム実装形態
図16は、本明細書に記載されるさまざまな実施形態を実施するために使用可能である例示的なプロセッサベースのコンピュータシステム1600を図示する。例えば、システム1600は、図1を参照して上述されるような、ISS166、検索エンジンサービス118、推奨エンジン120、新しいタブページサービス122、もしくはユーザコンピューティングデバイス124、図2を参照して上述されるような新しいタブページサービス200、図3を参照して上述されるような推奨エンジン300、図7を参照して上述されるような、ISS716、検索エンジンサービス718、推奨エンジン720、アドレスバーサービス722、もしくはユーザコンピューティングデバイス724、図8を参照して上述されるようなアドレスバーサービス800、図9を参照して上述されるような推奨エンジン900、または、図13を参照して上述されるようなユーザコンピューティングデバイス1302もしくは検索エンジン1304のいずれかを実装するために使用可能である。システム1600は、図4、図5、図10、図11、または図14に図示されるフローチャートのいずれかまたは全てのステップのいずれかまたは全てを実装するために使用されてもよい。本明細書に提供されるシステム1600の説明は、例示の目的として提供され、限定を意図するものではない。実施形態は、当業者には既知であるように、さらなるタイプのコンピュータシステムにおいて実施可能である。
[00143] 図16に示されるように、システム1600は、処理ユニット1602、システムメモリ1604、およびシステムメモリ1604を含むさまざまなシステムコンポーネントを処理ユニット1602に連結するバス1606を含む。処理ユニット1602は、1つまたは複数のマイクロプロセッサまたはマイクロプロセッサコアを含むことができる。バス1606は、メモリバスまたはメモリコントローラ、周辺バス、アクセラレイティッドグラフィックスポート、およびさまざまなバスアーキテクチャのいずれかを使用するプロセッサまたはローカルバスを含む、いくつかのタイプのバス構造のいずれかの1つまたは複数を表す。システムメモリ1604は、読み取り専用メモリ(ROM)1608およびランダムアクセスメモリ(RAM)1610を含む。基本入出力システム1612(BIOS)はROM1608に記憶される。
[00144] システム1600はまた、以下のドライブ、つまり、ハードディスクに対する読み書きを行うためのハードディスクドライブ1614、取り外し可能磁気ディスク1618に対する読み書きを行うための磁気ディスクドライブ1616、および、CD ROM、DVD ROM、BLU−RAY(商標)ディスク、または他の光媒体などの取り外し可能光ディスク1622に対する読み書きを行うための光ディスクドライブ1620のうちの1つまたは複数を有する。ハードディスクドライブ1614、磁気ディスクドライブ1616、および光ディスクドライブ1620は、それぞれ、ハードディスクドライブインターフェース1624、磁気ディスクドライブインターフェース1626、および光ドライブインターフェース1628によってバス1606に接続される。ドライブ、およびそれらの関連のコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータについての他のデータの不揮発性記憶域を提供する。ハードディスク、取り外し可能磁気ディスク、および取り外し可能光ディスクについて説明されているが、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ(RAM)、および読み取り専用メモリ(ROM)などの他のタイプのコンピュータ可読メモリデバイスおよび記憶構造がデータを記憶するために使用可能である。
[00145] いくつかのプログラムモジュールは、ハードディスク、磁気ディスク、光ディスク、ROM、またはRAMにおいて記憶可能である。これらのプログラムモジュールは、オペレーティングシステム1630、1つまたは複数のアプリケーションプログラム1632、他のプログラムモジュール1634、およびプログラムデータ1636を含む。さまざまな実施形態によると、プログラムモジュールは、図1を参照して記載されるような、ISS166、検索エンジンサービス118、推奨エンジン120、新しいタブページサービス122、もしくはユーザコンピューティングデバイス124、図2を参照して上述されるような新しいタブページサービス200、図3を参照して上述されるような推奨エンジン300、図7を参照して上述されるような、ISS716、検索エンジンサービス718、推奨エンジン720、アドレスバーサービス722、もしくはユーザコンピューティングデバイス724、図8を参照して上述されるようなアドレスバーサービス800、図9を参照して上述されるような推奨エンジン900、または、図13を参照して上述されるようなユーザコンピューティングデバイス1302もしくは検索エンジン1304の機能および特徴のいずれかまたは全てを果たすように処理ユニット1602によって実行可能であるコンピュータプログラムロジックを含んでよい。プログラムモジュールは、処理ユニット1602によって実行される時、図4、図5、図10、図11、および図14のフローチャートを参照して示されるまたは記載されるステップまたは動作のいずれかを行うコンピュータプログラムロジックを含むこともできる。
[00146] ユーザは、キーボード1638およびポインティングデバイス1640などの入力デバイスを通して、システム1600にコマンドおよび情報を入力することができる。他の入力デバイス(図示せず)は、マイクロホン、ジョイスティック、ゲームコントローラ、またはスキャナなどを含むことができる。1つの実施形態では、タッチ画面は、表示部1644と併せて提供されて、ユーザは、(例えば、指またはスタイラスによってなど)タッチによるアプリケーションを介してタッチ画面上の1つまたは複数の箇所に対してユーザ入力を行うことが可能になる。これらのおよび他の入力デバイスは、バス1606に連結されるシリアルポートインターフェース1642を通して処理ユニット1602に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースによって接続可能である。かかるインターフェースはワイヤードまたはワイヤレスインターフェースであってよい。
[00147] 表示部1644はまた、ビデオアダプタ1646などのインターフェースを介してバス1606に接続される。表示部1644に加えて、システム1600は、スピーカおよびプリンタなどの他の周辺出力デバイス(図示せず)を含むことができる。
[00148] システム1600は、ネットワークインターフェースもしくはアダプタ1650、モデム1652、またはネットワーク上で通信を確立するための他の適した手段によってネットワーク1648(例えば、ローカルエリアネットワークまたはインターネットなどのワイドエリアネットワーク)に接続される。内部または外部にあってよいモデム1652は、シリアルポートインターフェース1642を介してバス1606に接続される。
[00149] 本明細書において使用されるように、「コンピュータプログラム媒体」、「コンピュータ可読媒体」、および「コンピュータ可読記憶媒体」という用語は、ハードディスクドライブ1614、取り外し可能磁気ディスク1618、取り外し可能光ディスク1622、および、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ(RAM)、および読み取り専用メモリ(ROM)などの他のメモリデバイスまたは記憶構造に関連付けられたハードディスクといった、メモリデバイスまたは記憶構造に一般に言及するために使用される。このようなコンピュータ可読記憶媒体は、通信媒体とは区別され、非重複である(通信媒体を含まない)。通信媒体は、典型的には、搬送波などの変調されたデータ信号において、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを具現化する。「変調されたデータ信号」という用語は、その特性のうちの1つまたは複数を、情報をその信号において符号化するようなやり方で設定または変更させた信号を意味する。限定ではなく例として、通信媒体は、音響、RF、赤外線、および他のワイヤレス媒体などのワイヤレス媒体を含む。実施形態はまた、このような通信媒体を対象とする。
[00150] 上で記されるように、(アプリケーションプログラム1632および他のプログラムモジュール1634を含む)コンピュータプログラムおよびモジュールは、ハードディスク、磁気ディスク、光ディスク、ROM、またはRAMにおいて記憶可能である。このようなコンピュータプログラムはまた、ネットワークインターフェース1650、シリアルポートインターフェース1642、または任意の他のインターフェースタイプを介して受信されてよい。このようなコンピュータプログラムは、アプリケーションによって実行されるまたはロードされる時、システム1600が、本明細書に論じられた本発明の実施形態の特徴を実装することができるようにする。従って、このようなコンピュータプログラムはシステム1600のコントローラを表す。
[00151] 実施形態は、任意のコンピュータ使用可能媒体において記憶されるソフトウェアを含むコンピュータプログラム製品も対象とする。このようなソフトウェアは、1つまたは複数のデータ処理デバイスにおいて実行される時、データ処理デバイスを本明細書に記載されるように動作させる。本発明の実施形態は、現在または将来的に既知の任意のコンピュータ使用可能媒体またはコンピュータ可読媒体を採用する。コンピュータ可読媒体の例は、RAM、ハードドライブ、フロッピーディスク、CD ROM、DVD ROM、ジップディスク、テープ、磁気記憶デバイス、光記憶デバイス、MEM、およびナノ技術ベースの記憶デバイスなどのメモリデバイスおよび記憶構造を含むがこれらに限定されない。
[00152] 代替的な実装形態では、システム1600は、ハードウェアロジック/電気回路構成またはファームウェアとして実装されてよい。さらなる実施形態によると、これらのコンポーネントの1つまたは複数は、システムオンチップ(SoC)において実装されてよい。SoCは、プロセッサ(例えば、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサ(DSP)など)、メモリ、1つもしくは複数の通信インターフェース、ならびに/または、この機能を果たすさらなる回路および/もしくは組み込みファームウェアの1つまたは複数を含む集積回路チップを含むことができる。
[00153] VI.追加の例示的な実施形態
コンピュータ実施推奨エンジンについて本明細書に記載される。コンピュータ実施推奨エンジンは、1つまたは複数のプロセッサ、および、1つまたは複数のプロセッサに接続される1つまたは複数のメモリデバイスを含む。1つまたは複数のメモリデバイスは、動作を行うために1つまたは複数のプロセッサによって実行可能であるコンピュータプログラムロジックを記憶する。動作は、ユーザに関連付けられた1つまたは複数のデバイス内に配設された1つまたは複数の組み込みシステムから生じる情報を受信することと、受信された情報から1つまたは複数の情報要素を抽出することと、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために1つまたは複数の情報要素を利用することと、ユーザに関連付けられたウェブブラウザへの配信用に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を提供することであって、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子は、ユーザの代わりに1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースにアクセスするためにウェブブラウザによって使用可能である、提供することと、を含む。
[00154] 前述のコンピュータ実施推奨エンジンの1つの実施形態では、動作は、1つまたは複数の推奨される検索クエリおよび結果を生成するために1つまたは複数の情報要素を利用することと、ウェブブラウザへの配信用に1つまたは複数の推奨される検索クエリおよび結果を提供することと、をさらに含む。
[00155] 前述のコンピュータ実施推奨エンジンの別の実施形態では、1つまたは複数の組み込みシステムから生じる情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。
[00156] 前述のコンピュータ実施推奨エンジンのさらに別の実施形態では、提供する動作は、ウェブブラウザへの配信用に新しいタブページコンテンツを動的に構築する新しいタブページサービスに対して1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を提供することであって、新しいタブページコンテンツは、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれについての情報を含む、提供することを含む。
[00157] 前述のコンピュータ実施推奨エンジンのまた別の実施形態では、提供する動作は、アドレスバードロップダウンメニュー内に提示するためにウェブブラウザへの配信用に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を提供することを含む。
[00158] 前述のコンピュータ実施推奨エンジンのさらなる実施形態では、提供する動作は、ウェブブラウザからのリクエストの受信に応答して行われる。
[00159] 前述のコンピュータ実施推奨エンジンのまたさらなる実施形態では、抽出する動作は、受信された情報の少なくとも一部分が生じたデバイスに関連付けられるデバイスタイプおよび/またはデバイスモデルを特定することと、デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマを受信された情報の少なくとも一部分に適用して、1つまたは複数の情報要素の少なくとも1つを特定することと、を含む。さらにかかる実施形態によると、所定のスキーマは、拡張マークアップ言語(XML)スキーマまたはJavaScript Object Notation(JSON)スキーマのうちの1つを含む。
[00160] 前述のコンピュータ実施推奨エンジンの別の実施形態では、1つまたは複数の情報要素を利用して1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定することは、異種のデバイスタイプ内の複数の組み込みシステムから生じる情報要素に基づいて単一の推奨されるネットワークアクセスが可能な情報リソースを特定することを含む。
[00161] 前述のコンピュータ実施推奨エンジンのさらに別の実施形態では、1つまたは複数の情報要素を利用して1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定することは、異なるユーザが所有する同じデバイスタイプのインスタンス内の複数の組み込みシステムから生じる情報要素に基づいて単一のネットワークアクセスが可能な情報リソースを特定することを含む。
[00162] プロセッサベースのコンピューティングデバイス上で実行しているウェブブラウザによって実施される方法についても本明細書に記載される。該方法は、ユーザの識別子と関連したリクエストを送ることと、該リクエストに応答して1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を受信することであって、1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースは、ユーザに関連付けられる1つまたは複数のデバイス内に配設される1つまたは複数の組み込みシステムから生じる少なくとも情報に基づいて選択される、受信することと、ウェブブラウザのユーザインターフェース内に1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報を表示することとを含む。
[00163] 前述の方法の1つの実施形態では、1つまたは複数の組み込みシステムから生じる情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。
[00164] 前述の方法の別の実施形態では、ウェブブラウザのユーザインターフェース内に1つまたは複数のネットワークアクセスが可能な情報リソースについての情報を表示することは、1つまたは複数のネットワークアクセスが可能な情報リソースについての情報を含む新しいタブページを表示することを含む。
[00165] 前述の方法のさらに別の実施形態では、ウェブブラウザのユーザインターフェース内に1つまたは複数のネットワークアクセスが可能な情報リソースについての情報を表示することは、アドレスバードロップダウンメニューにおいて1つまたは複数のネットワークアクセスが可能な情報リソースについての情報を表示することを含む。
[00166] コンピュータ実施検索エンジンについても本明細書に記載される。コンピュータ実施検索エンジンは、1つまたは複数のプロセッサ、および、1つまたは複数のプロセッサに接続される1つまたは複数のメモリデバイスを含む。1つまたは複数のメモリデバイスは、1つまたは複数のプロセッサによって実行可能であるコンピュータプログラムロジックを記憶して、ユーザに関連付けられた1つまたは複数のデバイス内に配設される1つまたは複数の組み込みシステムから生じる情報を受信することと、受信された情報から1つまたは複数の情報要素を抽出することと、ユーザから検索クエリを受信することと、検索クエリおよび1つまたは複数の情報要素に基づいて1つまたは複数のネットワークアクセスが可能な情報リソースを特定することと、1つまたは複数のネットワークアクセスが可能な情報リソースについての情報をユーザに対して提示させることとを含む動作を行う。
[00167] 前述のコンピュータ実施検索エンジンの1つの実施形態では、1つまたは複数の組み込みシステムから生じる情報は、ワイヤードまたはワイヤレス接続によって1つまたは複数の組み込みシステムから情報を受信する少なくとも1つのIoT接続ハブから得られる。
[00168] 前述のコンピュータ実施検索エンジンの別の実施形態では、抽出する動作は、受信された情報の少なくとも一部分が生じたデバイスに関連付けられるデバイスタイプおよび/またはデバイスモデルを特定することと、デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマを受信された情報の少なくとも一部分に適用して、1つまたは複数の情報要素の少なくとも1つを特定することとを含む。
[00169] 前述のコンピュータ実施検索エンジンのさらに別の実施形態では、動作は、1つまたは複数の情報要素に基づいて1つまたは複数のネットワークアクセスが可能な情報リソースをランク付けすることをさらに含む。
[00170] 前述のコンピュータ実施検索エンジンのまた別の実施形態では、検索クエリおよび1つまたは複数の情報要素に基づいて1つまたは複数のネットワークアクセスが可能な情報リソースを特定することは、異種のデバイスタイプ内の複数の組み込みシステムから生じる検索クエリおよび情報要素に基づいて単一のネットワークアクセスが可能な情報リソースを特定することを含む。
[00171] 前述のコンピュータ実施推奨エンジンのさらなる実施形態では、検索クエリおよび1つまたは複数の情報要素に基づいて1つまたは複数のネットワークアクセスが可能な情報リソースを特定することは、異なるユーザが所有する同じデバイスタイプのインスタンス内の複数の組み込みシステムから生じる検索クエリおよび情報要素に基づいて単一のネットワークアクセスが可能な情報リソースを特定することを含む。
[00172] VII.結論
さまざまな実施形態が上述されているが、それらは、限定ではなく例としてのみ提示されていることは理解されるべきである。形態および細部におけるさまざまな変更が、本発明の趣旨および範囲から逸脱することなくその中でなされ得ることは、当業者には明らかとなるであろう。よって、本発明の広さおよび範囲は、上述の例示的な実施形態のいずれかによって限定されるべきでなく、以下の特許請求の範囲およびその均等物に従ってのみ定義されるべきである。

Claims (14)

  1. コンピュータにより実施される推奨エンジンであって、
    1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサに接続される1つまたは複数のメモリデバイスであって、前記1つまたは複数のプロセッサによって実行可能であるコンピュータプログラムロジックを記憶して、
    ユーザに関連付けられた1つまたは複数のデバイス内に配設される1つまたは複数の組み込みシステムから生じる情報を受信することと、
    受信された前記情報から1つまたは複数の情報要素を抽出することと、
    1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定するために前記1つまたは複数の情報要素を利用することと、
    前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を、前記ユーザに関連付けられたウェブブラウザへの配信用に新しいタブページコンテンツを動的に構築するために前記識別子を利用する新しいタブページサービスに提供することであって、前記新しいタブページコンテンツは、前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれについての情報を含む、提供することと、
    を含む動作を行う、1つまたは複数のメモリデバイスとを備える、コンピュータにより実施される推奨エンジン。
  2. 前記動作は、1つまたは複数の推奨される検索クエリおよび結果を生成するために前記1つまたは複数の情報要素を利用することと、前記ウェブブラウザへの配信用に前記1つまたは複数の推奨される検索クエリおよび結果を提供することとをさらに含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  3. 前記1つまたは複数の組み込みシステムから生じる前記情報は、ワイヤードまたはワイヤレス接続によって前記1つまたは複数の組み込みシステムから前記情報を受信する少なくとも1つのモノのインターネット(IoT)接続ハブから得られる、請求項1に記載のコンピュータにより実施される推奨エンジン。
  4. 前記1つまたは複数の組み込みシステムは、電気器具、電源出力、警報機、照明、個人向けフィットネスデバイス、自動車用デバイス、健康管理デバイス、製造用デバイス、エネルギー管理デバイス、およびリテールデバイスを含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  5. アドレスバードロップダウンメニュー内に提示するために前記ウェブブラウザへの配信用に前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの前記識別子を提供することをさらに含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  6. 前記提供する動作は、前記ウェブブラウザからのリクエストの受信に応答して行われる、請求項1に記載のコンピュータにより実施される推奨エンジン。
  7. 前記抽出する動作は、前記受信された情報の少なくとも一部分が生じたデバイスに関連付けられるデバイスタイプおよび/またはデバイスモデルを特定することと、前記デバイスタイプおよび/またはデバイスモデルに関連付けられた所定のスキーマを前記受信された情報の少なくとも一部分に適用して、前記1つまたは複数の情報要素の少なくとも1つを特定することとを含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  8. 前記所定のスキーマは、拡張マークアップ言語(XML)スキーマまたはJavaScript Object Notation(JSON)スキーマを含む、請求項7に記載のコンピュータにより実施される推奨エンジン。
  9. 前記1つまたは複数の情報要素を利用して前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定することは、異種のデバイスタイプ内の複数の組み込みシステムから生じる情報要素に基づいて単一の推奨されるネットワークアクセスが可能な情報リソースを特定することを含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  10. 前記1つまたは複数の情報要素を利用して前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースを特定することは、異なるユーザが所有する同じデバイスタイプのインスタンス内の複数の組み込みシステムから生じる情報要素に基づいて単一のネットワークアクセスが可能な情報リソースを特定することを含む、請求項1に記載のコンピュータにより実施される推奨エンジン。
  11. プロセッサベースのコンピューティングデバイス上で実行しているウェブブラウザによって実施される方法であって、
    ユーザの識別子と関連したリクエストを送ることと、
    前記リクエストに応答して1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースのそれぞれの識別子を受信することであって、前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースは、前記ユーザに関連付けられる1つまたは複数のデバイス内に配設される1つまたは複数の組み込みシステムから生じる少なくとも情報に基づいて選択される、受信することと、
    前記ウェブブラウザのユーザインターフェース内に前記1つまたは複数の推奨されるネットワークアクセスが可能な情報リソースについての情報を表示することとを含む、方法。
  12. 前記1つまたは複数の組み込みシステムから生じる前記情報は、ワイヤードまたはワイヤレス接続によって前記1つまたは複数の組み込みシステムから前記情報を受信する少なくとも1つのモノのインターネット(IoT)接続ハブから得られる、請求項11に記載の方法。
  13. 前記ウェブブラウザの前記ユーザインターフェース内に前記1つまたは複数のネットワークアクセスが可能な情報リソースについての前記情報を表示することは、前記1つまたは複数のネットワークアクセスが可能な情報リソースについての前記情報を含む新しいタブページを表示することを含む、請求項11に記載の方法。
  14. 前記ウェブブラウザの前記ユーザインターフェース内に前記1つまたは複数のネットワークアクセスが可能な情報リソースについての前記情報を表示することは、アドレスバードロップダウンメニューにおいて前記1つまたは複数のネットワークアクセスが可能な情報リソースについての前記情報を表示することを含む、請求項11に記載の方法。
JP2017532726A 2014-12-18 2015-12-16 モノのインターネットデバイスデータに基づくブラウザ提案の生成 Active JP6595598B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/574,805 2014-12-18
US14/574,805 US10282475B2 (en) 2014-12-18 2014-12-18 Generation of browser suggestions based on internet of things device data
PCT/US2015/065926 WO2016100416A1 (en) 2014-12-18 2015-12-16 Generation of browser suggestions based on internet of things device data

Publications (3)

Publication Number Publication Date
JP2018508058A true JP2018508058A (ja) 2018-03-22
JP2018508058A5 JP2018508058A5 (ja) 2018-12-20
JP6595598B2 JP6595598B2 (ja) 2019-10-23

Family

ID=55168391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017532726A Active JP6595598B2 (ja) 2014-12-18 2015-12-16 モノのインターネットデバイスデータに基づくブラウザ提案の生成

Country Status (11)

Country Link
US (1) US10282475B2 (ja)
EP (1) EP3234810A1 (ja)
JP (1) JP6595598B2 (ja)
KR (1) KR102373939B1 (ja)
CN (1) CN107004029B (ja)
AU (1) AU2015362645B2 (ja)
BR (1) BR112017011046A2 (ja)
CA (1) CA2968009C (ja)
MX (1) MX2017007761A (ja)
RU (1) RU2711057C2 (ja)
WO (1) WO2016100416A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9996622B2 (en) * 2015-02-06 2018-06-12 Microsoft Technology Licensing, Llc Browser new tab page generation for enterprise environments
US11392580B2 (en) 2015-02-11 2022-07-19 Google Llc Methods, systems, and media for recommending computerized services based on an animate object in the user's environment
US10223459B2 (en) 2015-02-11 2019-03-05 Google Llc Methods, systems, and media for personalizing computerized services based on mood and/or behavior information from multiple data sources
US11048855B2 (en) 2015-02-11 2021-06-29 Google Llc Methods, systems, and media for modifying the presentation of contextually relevant documents in browser windows of a browsing application
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
US10284537B2 (en) 2015-02-11 2019-05-07 Google Llc Methods, systems, and media for presenting information related to an event based on metadata
US10127579B2 (en) * 2015-06-02 2018-11-13 Samsung Electronics Co., Ltd. Personalizing advertisements based on proximate computing devices
US9959558B2 (en) * 2015-08-18 2018-05-01 Samsung Electronics Co., Ltd. Application cards as advertisements
WO2017037905A1 (ja) * 2015-09-02 2017-03-09 サン電子株式会社 サーバ及びコンピュータプログラム
US10270881B2 (en) * 2015-11-19 2019-04-23 Adobe Inc. Real-world user profiles via the internet of things
US11256828B1 (en) * 2016-07-05 2022-02-22 Wells Fargo Bank, N.A. Method and apparatus for controlling IoT devices by agent device
US10425242B2 (en) * 2016-10-14 2019-09-24 Microsoft Technology Licensing, Llc IoT provisioning service
US11157442B2 (en) * 2017-07-14 2021-10-26 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method
WO2019036365A1 (en) * 2017-08-12 2019-02-21 Sri International MODELING PATHS OF CYBERTATICS AND PHYSICAL ATTACKS IN THE INTERNET OF OBJECTS
US11200241B2 (en) * 2017-11-22 2021-12-14 International Business Machines Corporation Search query enhancement with context analysis
KR102423058B1 (ko) * 2018-02-23 2022-07-21 삼성전자주식회사 디스플레이 장치 및 IoT 기반 선호도 확인 방법
US11631497B2 (en) 2018-05-30 2023-04-18 International Business Machines Corporation Personalized device recommendations for proactive health monitoring and management
KR102306542B1 (ko) * 2018-06-05 2021-09-29 삼성전자주식회사 정보 처리 방법 및 디바이스
US11442999B2 (en) * 2018-07-24 2022-09-13 Microsoft Technology Licensing Llc Personalized whole search page organization and relevance
KR20200104719A (ko) * 2019-02-27 2020-09-04 삼성전자주식회사 콘텐츠 추천 방법 및 이를 지원하는 전자 장치
KR102151870B1 (ko) * 2019-03-28 2020-09-03 한국과학기술원 서비스 기반 v2x 소프트웨어 환경에서의 유전 알고리즘을 활용한 서비스 소비 품질 최적화 방법
US11538356B2 (en) 2019-11-15 2022-12-27 Samsung Electronics Co., Ltd. Adaptable presentation for network-connected electronic devices
CN111274483B (zh) * 2020-01-19 2024-05-03 北京博学广阅教育科技有限公司 关联推荐方法及关联推荐交互方法
US11790152B2 (en) * 2020-11-05 2023-10-17 OpenFin Inc. Presenting web content based on rules
US11676179B2 (en) * 2020-12-14 2023-06-13 International Business Machines Corporation Personalization of advertisement selection using data generated by IoT devices
WO2022184830A1 (en) * 2021-03-03 2022-09-09 Vesti.Ai Ltd. System and method for natural language conversational ai
US11811681B1 (en) 2022-07-12 2023-11-07 T-Mobile Usa, Inc. Generating and deploying software architectures using telecommunication resources

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227883A (ja) * 2004-02-10 2005-08-25 Mazda Motor Corp 整備情報提供システム
US20140244768A1 (en) * 2013-02-25 2014-08-28 Qualcomm Incorporated Automatic iot device social network expansion
WO2015029301A1 (ja) * 2013-08-29 2015-03-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報提供装置、サーバ装置、情報提供方法、および情報提供プログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131731B2 (en) * 2007-12-27 2012-03-06 Microsoft Corporation Relevancy sorting of user's browser history
US20090197681A1 (en) * 2008-01-31 2009-08-06 Microsoft Corporation System and method for targeted recommendations using social gaming networks
US8407190B2 (en) * 2009-06-30 2013-03-26 Commvault Systems, Inc. Performing data storage operations with a cloud environment, including containerized deduplication, data pruning, and data transfer
CN102053960B (zh) 2009-11-04 2013-09-18 孙红临 依群需特征构建物联互联双网快准搜索引擎的方法及系统
US8180804B1 (en) * 2010-04-19 2012-05-15 Facebook, Inc. Dynamically generating recommendations based on social graph information
CN102012146A (zh) 2010-10-26 2011-04-13 浙江大学 基于物联网的冰箱食品安全保障方法及系统
CN102258400A (zh) * 2011-04-28 2011-11-30 华南理工大学 一种健康监控系统
CN102790786A (zh) * 2011-05-18 2012-11-21 杭州乐联科技有限公司 基于移动互联网的环境监控平台及监控方法
US8386457B2 (en) 2011-06-22 2013-02-26 International Business Machines Corporation Using a dynamically-generated content-level newsworthiness rating to provide content recommendations
EP2761540A1 (en) * 2011-09-27 2014-08-06 Telefonaktiebolaget L M Ericsson (publ) Management of data flows between networked resource nodes in a social web
WO2013123445A1 (en) 2012-02-17 2013-08-22 Interdigital Patent Holdings, Inc. Smart internet of things services
CN104137142A (zh) * 2012-02-22 2014-11-05 株式会社尼康 电子设备
KR101362384B1 (ko) 2012-08-09 2014-02-21 한국과학기술원 웹 플랫폼을 이용한 아이피 기반 IoT 사물 브라우징 방법 및 시스템
KR101558236B1 (ko) * 2012-10-16 2015-10-12 전자부품연구원 IoT 브라우징 방법 및 장치
CN102982134A (zh) * 2012-11-16 2013-03-20 北京奇虎科技有限公司 在浏览器地址栏中显示推荐网址信息的系统
US10089639B2 (en) * 2013-01-23 2018-10-02 [24]7.ai, Inc. Method and apparatus for building a user profile, for personalization using interaction data, and for generating, identifying, and capturing user data across interactions using unique user identification
US9292832B2 (en) 2013-02-25 2016-03-22 Qualcomm Incorporated Collaborative intelligence and decision-making in an IoT device group
US10185934B2 (en) * 2013-07-09 2019-01-22 Qualcomm Incorporated Real-time context aware recommendation engine based on a user internet of things environment
CN103354518A (zh) * 2013-07-24 2013-10-16 江苏晓山信息产业股份有限公司 基于Web日志挖掘的智能家居网关及系统
US9774709B2 (en) * 2013-11-18 2017-09-26 Cable Television Laboratories, Inc. Service discovery
CN103646064A (zh) * 2013-12-04 2014-03-19 青岛海尔软件有限公司 应用于物联网的信息推送方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227883A (ja) * 2004-02-10 2005-08-25 Mazda Motor Corp 整備情報提供システム
US20140244768A1 (en) * 2013-02-25 2014-08-28 Qualcomm Incorporated Automatic iot device social network expansion
WO2015029301A1 (ja) * 2013-08-29 2015-03-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報提供装置、サーバ装置、情報提供方法、および情報提供プログラム

Also Published As

Publication number Publication date
US10282475B2 (en) 2019-05-07
JP6595598B2 (ja) 2019-10-23
EP3234810A1 (en) 2017-10-25
CA2968009A1 (en) 2016-06-23
MX2017007761A (es) 2017-09-05
KR20170097120A (ko) 2017-08-25
KR102373939B1 (ko) 2022-03-11
RU2017120852A (ru) 2018-12-17
BR112017011046A2 (pt) 2018-01-09
AU2015362645A1 (en) 2017-05-25
CA2968009C (en) 2023-01-17
RU2711057C2 (ru) 2020-01-14
US20160179962A1 (en) 2016-06-23
AU2015362645B2 (en) 2020-07-23
RU2017120852A3 (ja) 2019-07-17
WO2016100416A1 (en) 2016-06-23
CN107004029A (zh) 2017-08-01
CN107004029B (zh) 2020-07-24

Similar Documents

Publication Publication Date Title
JP6595598B2 (ja) モノのインターネットデバイスデータに基づくブラウザ提案の生成
US11249592B2 (en) Method of splitting display area of a screen and electronic device for processing the same
KR102029568B1 (ko) 컴퓨팅 디바이스의 사용자에게 권고들을 선행적으로 제공하기 위한 시스템들 및 방법들
US20140279787A1 (en) Systems And Methods for an Adaptive Application Recommender
US20160020804A1 (en) Subscriber identification module management method and electronic device supporting the same
US9299098B2 (en) Systems for generating a global product taxonomy
US10356077B2 (en) Automated search result adaptation according to user account information
US20170193059A1 (en) Searching For Applications Based On Application Usage
JP2019192211A (ja) 情報をプッシュするための方法及び装置
US9756136B2 (en) Broadcasting local function templates to proximate mobile computing devices
CN105027155A (zh) 统一用于线上共享的云服务
EP2838062A1 (en) Search results with common interest information
US20170192644A1 (en) Accessing Additional Search Results Functionality Using Gestures
US9760932B2 (en) Attribute ranking based on mutual information
US10157210B2 (en) Searching and accessing software application functionality using application connections
US9946766B2 (en) Search result relevance based on content associated with software applications
US20160378840A1 (en) Filtering Search Results Using Current Software Application States
CN111344730B (zh) 内容管理系统及其操作方法
CN104483865B (zh) 智能硬件设备的安装实现方法及装置
US20170192978A1 (en) Searching For Applications Based On Application Usage
US20170171292A1 (en) Generating Software Application Search Results Using Shared Application Connections

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181112

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190830

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190926

R150 Certificate of patent or registration of utility model

Ref document number: 6595598

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250