JP2014225092A - 情報処理装置、その制御方法、プログラム - Google Patents

情報処理装置、その制御方法、プログラム Download PDF

Info

Publication number
JP2014225092A
JP2014225092A JP2013103328A JP2013103328A JP2014225092A JP 2014225092 A JP2014225092 A JP 2014225092A JP 2013103328 A JP2013103328 A JP 2013103328A JP 2013103328 A JP2013103328 A JP 2013103328A JP 2014225092 A JP2014225092 A JP 2014225092A
Authority
JP
Japan
Prior art keywords
service
processing apparatus
information
information processing
information indicating
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
JP2013103328A
Other languages
English (en)
Other versions
JP2014225092A5 (ja
JP6168839B2 (ja
Inventor
鉄也 佐藤
Tetsuya Sato
鉄也 佐藤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2013103328A priority Critical patent/JP6168839B2/ja
Priority to DE102014208141.6A priority patent/DE102014208141A1/de
Priority to GB1408133.5A priority patent/GB2516156A/en
Priority to US14/276,428 priority patent/US20140344756A1/en
Priority to CN201410200872.2A priority patent/CN104166665B/zh
Priority to KR1020140057573A priority patent/KR101659147B1/ko
Publication of JP2014225092A publication Critical patent/JP2014225092A/ja
Publication of JP2014225092A5 publication Critical patent/JP2014225092A5/ja
Application granted granted Critical
Publication of JP6168839B2 publication Critical patent/JP6168839B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • Human Computer Interaction (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Multimedia (AREA)
  • Game Theory and Decision Science (AREA)
  • Software Systems (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】 予め連携するWebサービス(または、Webアプリケーション)に訪れることなく、且つ、連携元のWebサービスが推奨するWebサービス(または、Webアプリケーション)を登録可能にする手法を提供することを目的とする。【解決手段】 連携元のWebアプリケーションが推奨する連携先Webアプリケーションを特定する情報を含めてサービス実行要求を作成し、エージェントアプリケーションがサービス実行要求を解析して連携先Webアプリケーションを特定する情報を登録することで解決する。【選択図】 図9

Description

本発明は、サービスを提供する装置に関連する技術に関する。
従来、Webサイト間で処理を委譲する場合、機能を呼び出す側は、機能を提供する側のAPI(アプリケーション・プログラミング・インターフェイス)やRESTインターフェイス等の機能の呼び出し方を、知っている必要があった。従って、異なるWebとの連携を実現するためには、機能の呼び出し側は、それぞれの呼び出し規約に従って呼び出し側の処理が必要になった。
一方、専用のAPIを用いずに任意のWebサービス(または、Webアプリケーション)と連携する仕組みも存在する。一例として、Web Intents(ウェブインテンツ)という仕組みが提案されている。
本発明は、Web Intentsの仕組みの中で、ある装置が別の装置にアクセスすると、その別の装置が推奨するサービスの情報がそのある装置で登録可能となる仕組みを提供することを目的とする。
上記目的を達成するために本発明は各請求項における構成を具備する。
本発明によれば、上記目的を達成することができる。
Web Intentsの基本的なシステム構成を示す図である。 Web Intentsの基本的な動作の概要を示したシーケンス図である。 Web Intentsの登録用マークアップの一例を示す図である。 Web Intentsの基本的なIntent処理要求の一例を示した図である。 本発明の実施例1におけるシステム構成図である。 ハードウェア構成を示す図である。 ソフトウェア構成を示す図である。 テーブル構成を示す図である。 本発明の実施例1における動作の概要を示したシーケンス図である。 HTML文書を作成するWeb Intentsクライアント510の処理を示す図である。 Webブラウザー750が表示するUIの一例である。 推奨Web Intentsサービスを登録するWebブラウザー750の処理の一例を示す図である。 推奨Web Intentsサービスを登録するWebブラウザー750の処理の別の例を示す図である。 推奨Web Intentsサービスを登録するWebブラウザー750の処理の、さらに別の例を示す図である。 本発明の実施例2におけるシステム構成図である。 サービス検索サーバー1550のソフトウェア構成、および、管理するテーブルの構成を示す図である。 本発明の実施例2における動作の概要を示したシーケンス図である。 本発明の実施例2におけるIntent処理要求の一例を示す図である。 検索処理におけるコンピュータ1530およびサービス検索サーバー1550の動作を示すフローチャートである。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
図1は、全体構成を示す図である。103は、Web Intentsサービスを提供するサービス提供元(例えば、Web Intentsサーバ)である。101は、Web Intentsサービスを利用することができるWeb Intentsクライアントである。106は、UA(ユーザエージェント)のインストールされたコンピュータである。なお、サービスとは、処理や機能と言い換えることもできる。
SNSサイトの「いいね」「チェック」「シェア」といったソーシャルボタンをWeb Intentsの仕組みで例えると、Web Intentsサーバ103は、「いいね」などの投稿先サービスを提供するサーバ(例えば、フェースブック(商標)のサーバ。)になる。Web Intentsクライアント101は、「いいね」ボタンを配置しているサイトである。また、コンピュータ106は、ユーザが各種入力を行うコンピュータである。
Web Intentsクライアント101、Web Intentsサーバ103、コンピュータ106は何れも汎用コンピュータ(CPU、RAM、ROM、HDD、表示手段(例えば、ディスプレイ。)、入力手段(例えば、マウスやキーボード)、Networkインターフェース)の構成を有するものとする。しかしながら、後述のフローチャート中の処理を実行できるものであれば、汎用コンピュータの構成を有していなくても良い。例えば、スマートフォン、携帯電話、カメラ、プリンター、スキャナー、冷蔵庫、テレビなどの電子機器の構成を有していても良い。本明細書では、こうした電子機器を総称して情報処理装置と称する。なお、汎用コンピュータの構成については周知であるが、図6に図示している。なお、ある情報処理装置について述べている時にその情報処理装置自身を示す場合、本情報処理装置と称することがある。
図2は、上記三つの装置の動作を説明するためのシーケンス図である。
S201で、コンピュータ106は、URLの入力をユーザーから受け付けると、そのURLに対応するサーバ(ここでは、このサーバは、Web Intentsサーバ103であるものとする)にアクセスする。
S202では、Web Intentsサーバ103は、このサーバが提供するサービスを特定する情報(以下、サービスの情報と称する。)をコンピュータ106に登録させるための登録用マークアップを含むHTML(HyperText Markup Language)応答をコンピュータ106に返信する。
図3の例を用いて、Web Intentsサーバ103からコンピュータ106に返信されるHTML応答を説明する。<intentと、>との間には、サービスの情報が記載されている。actionは、サービスの種類を示し、typeは、サービスが扱う対象物のフォーマットを示している。hrefは、サービスの実行を希望する際の接続先URL(即ち、サービス提供元を示す相対URL)を示し、titleは、サービスのタイトルを示している。また、dispositionは、サービスの表示形態を示す。この例では、Web Intentsサーバ103が*フォーマット(即ち、あらゆるフォーマット)の画像を”share(共有)”できることを示している。なお、shareのことをhttp://webintents.org/shareと表現することもある。また、接続先URLは”share.html”で、タイトルは”Share image using e−mail”となっている。これにより、サービスのタイトル(Share image using e−mail)はウィンドウ内に表示されることとなる。なお、接続先URLの例として相対URL(share.html)を挙げたが、実際にはURLが一意に特定されるより長い文字列の絶対URLとしても良い。あるいは、相対URLのままとして、base URIを合わせて含めても良い。この場合、相対URLとbase URIを組み合わせたものが絶対URLとなる。本明細書では、この後も含め、サービスが扱う対象は画像であるものとして説明を行うが、対象は、データであればよく、画像でなくても良い。例えば、音声データであっても良い。従って、本明細書中の画像は、データと読み替え可能である。また、サービスのタイトルは、コンピュータ106内では一意となっており(即ち、同じタイトルのサービスの情報が複数存在することは無い。)、そういう意味で、サービスのタイトルは、サービスの種類や対象物のフォーマット、あるいは、サービスの提供元を一意に示す情報であると言える。
コンピュータ106はこの応答を受信すると、HTML文書に対応する表示行う。具体的には、ユーザーに対して、これらの情報(即ち、サービスの情報。)をコンピュータ106内に登録するか否か確認するべく、そのタイトルと、そのタイトルに対応するサービスの情報(そのタイトルを持つサービスの情報)を登録するための「登録」ボタンの表示を行う。ユーザーが「登録」ボタンを選択すると、コンピュータ106は、そのタイトルを持つサービスの情報を記憶することになる。なお、本明細書では、説明の簡単のため、この後の記載も含め、ボタンを例として説明を行うが、ユーザが選択するオブジェクトはボタンに限られない。例えば、ボタンの代わりに何かしらの写真オブジェクトや文字オブジェクトでも良いし、チェックボックスのようなオブジェクトでも良いのは言うまでも無い。従って、ボタンという記載は、この後の記載も含め、オブジェクトと読み替えて頂きたい。
S203で、コンピュータ106は、新たなURLの入力をユーザーから受け付け、このURLに対応するクライアント(ここでは、このクライアントは、Web Intentsクライアント101であるものとする。)にアクセスする。即ち、コンピュータ106は、そのURLに対応する、Web Intentsクライアント101により提供されるWebサイトにアクセスする。ここで仮にそのWebサイトに画像のサムネイルと「共有」ボタン(その画像を共有するためのボタン。)が含まれているものとする。すると、以下に示すHTML応答がWeb Intentsクライアント101からコンピュータ106に送信されることになる(S204)。
このHTML応答には、上記画像のサムネイル、共有ボタン、及び、その共有ボタンに対応する二つの処理の実行命令が含まれており、図4は、この二つの処理の実行命令を示しており、以下では、これら二つの処理の実行命令を総称してインテント処理要求と呼ぶ。
この二つの処理のうちの一つ目の処理は、新規のIntentオブジェクトの作成と、作成された新規のIntentオブジェクトを引数としたstartActivety()関数の実行となっている。この新規のIntentオブジェクトには、action(実行が期待されるサービスの種類)、 type(そのサービスが扱う対象物のフォーマット。)が含まれている。この関数をコンピュータ106が実行すると、コンピュータ106は、以下の処理を実行することになる。即ち、自身に登録されているWeb Intentsサービスの情報の中から、新規のIntentオブジェクトに含まれるaction及びtypeと同じaction及びtypeを持つサービスの情報(以下、条件に合ったサービスの情報と称する。)を検索し、抽出した(即ち、検索により見つかった)サービスのタイトルを表示することになる。もちろん、この表示は、コンピュータ106自身の表示手段で表示されることになる。なお、同じといっても、typeについては完全一致でなくても良い。もしあるサービスが新規のintentオブジェクトに含まれるtypeにより特定されるフォーマットの対象物を扱うことができるのであれば、そのサービスは、同じtypeを持つサービスの情報として抽出されることになる。また、条件に合った特定のサービスが複数存在する場合には、それら複数のサービスのタイトルが一覧表示されることになる。
二つ目の処理は、getImageFrom()関数の実行となっており、この関数をコンピュータ106が実行すると、Web Intentsクライアント101が持つデータ(即ち、サービスの対象となるデータ。例えば、上記共有される画像。)をコンピュータ106は所定のアドレス(...)から取得することになる。
S205で、コンピュータ106が上記HTML応答を受け取り、このHTML応答に応じた画面(即ち、Webサイト)を表示する。この画面には、上述の通り、画像のサムネイルと「共有」ボタンが含まれている。ユーザがこの画面を見て「共有」ボタンの選択を行うと、上述した二つの処理が行われる。即ち、条件に合った特定のサービスのタイトルの表示(S205)及び、その特定のサービスの対象物たるデータの取得(S206)が行われる。
その後、ユーザがコンピュータ106上でタイトルを一つ選択すると、コンピュータ106は、そのタイトルにより特定されるサービスのURLへアクセスすることになる(S207)。例えば、一覧表示されたタイトルから、もし仮にWeb Intentsサーバ103が提供するサービスを示すタイトルが選択されると、コンピュータ106は、Web Intentsサーバ103へアクセスする。具体的には、コンピュータ106は、Intent処理要求(または、Intent処理要求のうちの上記一つ目の処理の実行命令だけを記載した部分。言い換えると、二つ目の処理の実行命令であるデータ取得命令を覗いた部分)と、取得した画像をWeb Intentsサーバ103へ転送することによって、このアクセスを行う。
S208で、Web Intentsサーバ103は、Intent処理要求からIntentオブジェクトを取り出し、そのIntentオブジェクトに対応するサービスを提供する。即ち、Intentオブジェクトに対応する処理を、上記データに対して実行することになる。なお、Intent処理要求からIntentオブジェクトを取り出し、当該Intentオブジェクトに対応するサービスを提供することを、以降ではIntentを処理すると記載する。なお、Intentオブジェクトに対応する処理を、上記データに対して行うにあたって、コンピュータ106との間で何度かやり取りが発生しても良いのは言うまでもない。
Web Intentsサーバ103はIntentの処理が終了すると、S209で、その処理結果をコンピュータ106に送信する。
処理結果を受信すると、コンピュータ106は、S210で、startActivety()関数の引数で指定されたコールバック関数onSuccess()を呼び出し、実行する。そして、その実行結果をS211で、Web Intentsクライアント101へ送信する。すると、その実行結果を受信した旨がWeb Intentsクライアント101からコンピュータ106へと送信されることになる。
以上の処理により、Web Intentsサービス103が提供するWeb Intentsのサービス(この例では、画像の「共有」)が実行されることになる。
ただし、上述の通り、サービスの対象物が画像である必要は無い。また、サービスの内容が共有である必要も無く、サービスの内容は、サービスの対象物に対する何らかの処理であれば良い。
図5は、Web Intentsサービスのより詳細なシステム構成を示す図である。本システムは、コンピュータ530(コンピュータ106に対応)と、1台以上のWeb Intentsクライアント510(Web Intentsクライアント101に対応。)、および、1台以上のWeb Intentsサーバー520(Web Intentsサーバ103に対応)により構成される。コンピュータ530と、Web Intentsクライアント510及びWeb Intentsサーバ520との間には、Firewall540が存在する。
図7(A)は、Web Intentsクライアント510のソフトウェア構成を示す図である。Web Intentsクライアント510において、Webアプリケーション700、通信部701、データベースサービス部706は、Web Intentsクライアント510のHDD606に保存されたファイルとして存在する。これらは、OSやその各処理部を利用する他の処理部によってRAM602にロードされ実行されるソフトウェアモジュール(即ち、プログラム)である。Webアプリケーション700は、例えば画像データの保管などのストレージサービスを提供するプログラムである。Webアプリケーション700は、HTTP(HyperText Transfer Protocol)リクエストに応答して処理を実行するプログラムである。Webアプリケーション700は、Intent処理要求作成部702、プレゼンテーション部703、推奨サービス管理部704、および、画像管理部705で構成される。Intent処理要求作成部702は、Intentの処理要求(ECMAScript)を作成するプログラムである。プレゼンテーション部703は、通信部701を介して受け取ったページ取得要求などに応じてHTML文書を作成するプログラムである。推奨サービス管理部704は、データベースサービス部706から、登録や利用を推奨するWeb Intentsサービス(以降では推奨Web Intentsサービスと記載する。)の情報を取得するプログラムである。画像管理部705は、データベースサービス部706から画像データを取得したり、格納したりするプログラムである。通信部701は、外部機器からのHTTPリクエストメッセージを受信しプレゼンテーション部703にリクエストの内容を通知するプログラムである。また、通信部701は、HTTPのレスポンスメッセージを外部機器に送信することもできる。データベースサービス部706は、データを管理し、他の処理部からの要求に応じてデータの格納と取り出しを行うプログラムである。データベースサービス管理部706では、後述の推奨Web Intentsサービステーブル801と画像データ管理テーブル802を管理する。また、データベースサービス管理部706は、Web Intentsクライアント510とは別の機器上にあってもよい。
図7(B)は、Web Intentsサーバー520のソフトウェア(処理部)の構成の一例を示す図である。Web Intentsサーバー520において、Webアプリケーション730および通信部731、及び、画像データ格納部735は、Web Intentsサーバー520のHDD606に保存されたファイルとして存在する。これらは、OSやその各処理部を利用する他の処理部によってRAM602にロードされ実行されるプログラムである。Webアプリケーション730は、画像データの保管などのストレージサービスを提供するプログラムである。また、Webアプリケーション730は、Web Intentsサービスを提供する(即ち、Web Intents処理を実行する)プログラムである。さらにWebアプリケーション730は、HTTPリクエストに応答して処理を実行することも可能となっている。Webアプリケーション730は、Intent処理部732、プレゼンテーション部733、画像管理部734で構成される。Intent処理部732は、Intentオブジェクトを解析し、処理するプログラムである。プレゼンテーション部733は、通信部731を介して受け取ったページ取得要求(即ち、HTML文書取得要求)などに応じてHTML文書を作成するプログラムである。画像管理部734は、他の処理部からの要求に応じて画像データ格納部735から画像データを取得したり、格納したりするプログラムである。画像データ格納部735は、データを管理し、画像管理部734からの要求に応じてデータの格納と取り出しを行う。通信部731は、外部機器からのHTTPリクエストメッセージを受信しプレゼンテーション部733にリクエストの内容を通知するプログラムである。また、通信部731は、プレゼンテーション部733からの要求を受けてHTTPのレスポンスメッセージを外部機器に送信する。画像データ格納部735では、後述の画像データ管理テーブル803を管理する。また、画像データ格納部735は、Web Intentsサーバー520とは別の機器上にあってもよい。
図7(C)は、コンピュータ530のソフトウェア(処理部)の構成の一例を示す図である。コンピュータ530において、Webブラウザー750および通信部754、登録済サービス格納部755は、コンピュータ530のHDD606に保存されたファイルとして存在する。これらは、OSやその各処理部を利用する他の処理部によってRAM602にロードされ実行されるプログラムである。Webブラウザー750は、表示部752、解析部753、および、サービス管理部754で構成される。表示部752は、HTML文書をレンダリングするプログラムである。また、他の処理部の要求に応じて、Web Intentsサービスの選択を受け付ける画面を表示することも可能となっている。なお、この文においてもまた以降の文においても、表示部が表示するというのは、表示部が表示手段に表示させるという意味である。解析部753は、HTML文書を解析するプログラムである。また、解析部753は、Intent処理要求であるECMAScriptも解析できる。サービス管理部754は、後述の登録済サービス格納部755から登録済みのWeb Intentsサービスを特定する情報を取得したり、格納したりするプログラムである。通信部751は、他の処理部からの要求を受けてHTTPのリクエストメッセージを外部機器に送信するプログラムである。また、通信部751は、外部機器からのHTTPレスポンスメッセージを受信し、解析部753にレスポンスの内容を通知することもできる。登録済サービス格納部755は、データを管理し、サービス管理部754からの要求に応じてデータの格納と取り出しを行う。登録済サービス格納部755は、後述の登録済Web Intentsサービステーブル804を管理する。
図8(A)は、Web Intentsクライアント510のデータベースサービス部706が管理するテーブル構成の一例である。なお、図8(A)のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。データベースサービス部706は、推奨Web Intentsサービステーブル801と画像データ管理テーブル802を有する。推奨Web Intentsサービステーブル801は、Webアプリケーション700が利用又は登録を推奨するWeb Intentsサービスに関する情報を管理するテーブルである。尚、推奨Web Intentsサービステーブル801には、予め、情報が登録されているものとする。例えば、Webアプリケーション700を開発した企業の開発者や販売担当者などが、同じ企業が開発したWeb Intentsサービスの情報を推奨するために事前にそうした情報を登録しておくものとする。推奨Web Intentsサービステーブル801内の情報は、ServiceID、action、type、href、disposition、baseURI等が含まれる。これは図3で説明した登録用マークアップが示す情報とほぼ同様の情報であり、Web Intentsサービスを特定する情報となっている。
ServiceIDは、Webアプリケーション700内でWeb Intentsサービスを一意に識別するIDである。actionはサービスの種類を示す情報であり、typeは、サービスの扱う対象物のフォーマットを示している。hrefは、Web Intentsサービスの相対URLを示し、titleはWeb Intentsサービスのタイトルを示している。また、dispositionはWeb Intentsサービスの表示形態を示す。図3で説明した登録用マークアップが示す情報と異なる情報としてbaseURIがある。baseURIは、Web Intentsサービスの基準となるURLを示す。つまりWeb Intentsサービスの絶対URLは、baseURIとhrefを合わせたものとなる。1つ目のレコードを例にすると、サービスの絶対URLは、http://aaa.com/aaa_share.htmlとなる。尚、本実施例では、Web Intentsサービスの絶対URLをbaseURIとhrefに分けているが、もちろんhrefにWeb Intentsサービスの絶対URLを格納するようにしてもよい。テーブル801に格納されている以上の情報(action、type、href、title、disposition、base URI)を総称して、推奨サービスの情報と称する。
画像データ管理テーブル802は、Webアプリケーション700が扱う画像データを管理するテーブルである。画像データ管理テーブル802が管理する情報は、ImageID、File等である。ImageIDはWebアプリケーション700内で画像データを一意に識別するためのIDである。Fileは、画像データのファイル名を表している。つまり、画像データ管理テーブル802の例では、image001.jpgとimage002.jpgの2つの画像データのファイルを管理していることになる。
図8(B)は、Web Intentsサーバー520の画像データ格納部735が管理するテーブル構成の一例である。なお、図8(B)のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。画像データ管理テーブル803は、Webアプリケーション803が扱う画像データを管理するテーブルである。画像データ管理テーブル803が管理する情報は、ImageID、File等である。ImageIDはWebアプリケーション730内で画像データを一意に識別するためのIDである。Fileは、画像データのファイル名を表している。つまり、画像データ管理テーブル803の例では、image125.jpgとimage435.jpgの2つの画像データのファイルを管理していることになる。
図8(C)は、コンピュータ530の登録済サービス格納部755が管理するテーブル構成の一例である。なお、図8(C)のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。登録済Web Intentsサービステーブル804には、Webブラウザー750が仲介することができるWeb Intentsサービスを特定する情報が登録されている。具体的には、ServiceID、action、type、href、disposition、baseURI等が登録されている。ServiceIDは、Webブラウザー750内でサービスを一意に識別するためのIDである。actionはサービスの種類を示す情報であり、typeはサービスの対象を示している。hrefはWeb Intentsサービスの相対URLを示し、titleはWeb Intentsサービスのタイトルを示している。また、dispositionはWeb Intentsサービスの表示形態を示す。baseURIはWeb Intentsサービスの基準となるURLを示す。つまり、登録済Web Intentsサービステーブル804を例にすると、Webブラウザー750は、http://ccc.com/cdb.htmlにIntentの処理要求を仲介可能であることが分かる。なお、テーブル804に格納されている以上の情報(action、type、href、title、disposition、base URI)を総称して、登録済サービスの情報と称する。
以下、図9のシーケンス図を用いて、コンピュータ530がWeb Intentsクライアント510にアクセスして、Web Intentsサーバー520にIntentの処理要求を仲介する動作について説明する。
まず、コンピュータ530のWebブラウザー750が、アドレスバーなどにWebアプリケーション730のURL(例えば、http://www.abc.com/image/html。)を入力する等のユーザー操作を受け付けることで、以降の処理は開始する。
S901で、Webブラウザー750は、通信部701を介してWeb Intentsクライアント510にアクセスする(具体的には、HTTPのリクエストメッセージを送信する)。このリクエストメッセージには、入力されたURLに対応するページ(HTML文書)を送信して欲しい旨の要求が含まれている。
S902で、Web Intentsクライアント510のWebアプリケーション700は、通信部701を介してページ送信要求を受信し、入力されたURLに対応するページの作成を行う。
ここで、図10を用いて、Webアプリケーション700がこのページを作成するS902の処理について詳細に説明する。
図10(A)は、ページ送信要求を受信した際のWebアプリケーション700の動作を記載したフローチャートである。
S1001で、プレゼンテーション部703は、通信部701を介してページ要求を受信したかを監視する。ページ送信要求を受信した場合は、S1002に遷移する。ページ要求を受信しない間、監視を続ける。
S1002で、推奨サービス管理部704は、データベースサービス部706の推奨Web Intentsサービステーブル801から、推奨サービスの情報を取得し、S1003に遷移する。
S1003で、プレゼンテーション部703は、S1002で推奨サービスの情報が取得できたかを判断する。1つ以上取得できた場合は、S1004に遷移する。1つも取得できなかった場合は、S1006に遷移する。
S1004で、Intent処理要求作成部702は、Intentの処理要求(ECMAScript)を作成する。ここで、この処理要求の一例を、図10(B)を用いて説明する。なお、図10(B)はあくまで一例であり、Webブラウザー750が解釈できれば、他の形式、表記でよい。ECMAScript1050は、図4のインテント処理要求とほぼ同じ形態を持つため、異なる点のみ説明する。1051はextraであり、その内部には、推奨サービスを特定する情報1052が含まれている。この推奨サービスの情報1052には、recomAction、recomType、recomTitle、recomHref、recomDisposition、recomBaseURIが含まれいる。これらの情報は、推奨Web Intentsサービステーブル 801から取得した情報となっている。図10(B)におけるECMAScript1050には、actionがshareであり、typeがimage/jpegであるサービスID(即ち、サービスID:1と、サービスID:3)に対応する推奨サービスの情報が含まれている。
S1005で、プレゼンテーション部703は、S1004または後述のS1006で作成したIntent処理要求(ECMAScript)を含んだHTML文書を作成する。なお、このHTML文書には、そうしたIntent処理要求の他、後述の1100−1106の情報(例えば、画像のサムネイルや、共有ボタン)が含まれることになる。
S1006では、Intent処理要求作成部702は、推奨サービスを特定する情報を含まないIntent処理要求(ECMAScript)を作成し、S1005に遷移する。こちらのIntent処理要求は、図4のIntent処理要求と同じ形態となる。
以上が、S902のページ作成の処理の流れである。
S903で、Web Intentsクライアント510のWebアプリケーション700は、S902で作成したページ(HTML文書やHTML応答とも称する。)を通信部701を介してHTTPのレスポンスメッセージとして送信する。
S904で、コンピュータ530のWebブラウザー750の表示部752は、通信部751を介してHTML文書を受信し、当該受信したHTML文書に対応する表示を行う。より具体的には、解析部753がHTML文書を解析し、その解析結果の表示を表示部752が表示手段に対して行う。
ここで、その表示手段に表示されるUIの一例について、図11を用いて説明する。
1101、1102は、画像を選択するためのラジオボタンである。ラジオボタン1101は、image001.jpgを選択するためのラジオボタンである。ラジオボタン1102は、image002.jpgを選択するためのラジオボタンである。1103、1104は画像のサムネイルである。サムネイル1103は、image001.jpgの画像データをサムネイル表示したものである。サムネイル1104は、image002.jpgの画像データをサムネイル表示したものである。ボタン1105は、Web Intentsサービスを提供するサーバに、ラジオボタンで選択されているサムネイルに対応する本来の画像データを提供し、共有させるためのボタンである。尚、本例では、このボタン1105には、HTML文書内のID「share―photo」が割り当てられているものとする。即ち、HTML文書内のECMAScript1050が割り当てられているものとする。なお、ボタン1106は、Web Intentsサービスを提供するサーバに、ラジオボタンで選択されているサムネイルに対応する本来の画像データを提供し、編集させるためのボタンである。また、この表示画面で表示される画像は、サービスの対象となる画像のサムネイルであるものとして説明を行ったが、必ずしもサムネイルでなくても良い。例えば、サービスの対象物となるデータ自体であっても良い。この場合、S906、S907、S908に示されるサービスの対象物(即ち、データ)の取得は省略しても良い。
以上が、S904で表示するUIの一例の説明である。図9の説明に戻る。ユーザーにより、ボタン1105が押下されたことを検知すると、S905に遷移する。
S905で、Webブラウザー750の解析部753は、ECMAScript1050を解析し、実行を開始する。
S906で、Webブラウザー750の解析部753は、通信部751を介して、Web Intentsクライアント510に対して、画像の取得要求をHTTPリクエストメッセージとして送信する。尚、これはECMAScript1050内のgetImageFrom()関数を実行することで実現しており、例えば、UI1100でラジオボタン1101が選択されていれば、image001.jpgの取得要求を行う。
S907で、Web Intentsクライアント510の画像管理部705は、その取得要求を通信部701を介して受信する。受信すると、画像管理部705は、データベースサービス部706の画像データ管理テーブル802から、その取得要求で指定された画像データを取得する。例えば、画像データの取得要求で指定された画像データのファイル名がimage001.jpgであれば、画像データ管理テーブル802の最初のレコードの画像データを取得する。
S908で、Web Intentsクライアント510のプレゼンテーション部703は、通信部701を介して、S907で取得した画像データをHTTPレスポンスメッセージとして、コンピュータ530に送信する。
S909で、コンピュータ530のWebブラウザー750は、Web Intentsサービスの登録処理を行う。
ここで、図12を用いて、S909のWeb Intentsサービスの登録処理の一例を説明する。図12(A)は、Web Intentsサービスの登録処理におけるWebブラウザー750の動作を示したフローチャートである。
S1201では以下の処理が行われる。まず、サービス管理部754は、登録済Web Intentsサービステーブル804から、Intent処理要求で指定されたactionとtypeと同じactionとtypeを持つWeb Intentsサービスの情報を取得する。例えば、このIntents処理要求がIntent処理要求1050である場合は、actionがshareであり、typeがimage/jpegである。よって、登録済Web Intentsサービステーブル804におけるサービスID1に対応するサービスの情報を取得することになる。なお、上述の通り、typeについては完全一致でなくても良い。次に解析部753は、Intent処理要求に含まれる、推奨サービスの情報を取得する。表示部752は、前記サービス管理部754が取得した登録済Web Intentsサービスの情報と、解析部753が取得した推奨サービスの情報とを表示手段に表示させる。尚、Intent処理要求に、推奨サービスの情報がなかった場合は、登録済Web Intentsサービスのみを表示する。
ここで、S1201においてWebブラウザー750の表示部752が表示するUIの一例について図12(B)を用いて説明する。UI1250は、Intent処理要求が1050の場合に表示されるUIである。領域1251は、Webブラウザー750に登録済みのWeb Intentsサービスの情報を示す領域である。領域1251内のボタンは、Intentの処理をWeb Intentsサーバに実行させるためのボタンである。領域1252は、Webブラウザー750に未登録の、推奨サービスのタイトルを示す領域である。このサービスのタイトルは、Intent処理要求1050のextra1051内部に記載されていた推奨サービスのタイトルとなっている。領域1252内のボタンは、Webブラウザー750に推奨サービスの情報を、登録済Web Intentsサービステーブル804に登録させるためのボタンである。以上が、S1201で表示するサービス選択画面の一例の説明である。
S1202で、表示部752はボタンが押下されたかを監視する。ボタンが押下された場合は、S1203に遷移する。ボタンが押下されていない間、監視を続ける。
S1203で、表示部752は、押下されたボタンがWeb Intentsサービスを実行させるためのボタンであるか、Webブラウザー750にWeb Intentsサービスの情報を登録させるためのボタンであるかを判断する。実行させるためのボタンであった場合はフローチャートの処理は終了し、S910に遷移する。登録させるためのボタンであった場合は、S1204に遷移する。
S1204で、サービス管理部754は、表示部754の要求を受けて、押下されたボタンに対応する推奨サービスの情報を、登録済サービス格納部755の登録済Web Intentsサービステーブル804に登録する。そして、S1201に遷移する。尚、遷移したS1201で表示されるサービス選択画面では、S1204で登録された推奨サービスのタイトルは、領域1251に表示され、実行可能となる。
図13は、S909のWeb Intentsサービスの登録処理の別の例である。図12では、推奨サービスの情報のうちのユーザの選択したサービスの情報を登録する例を説明したが、図13では自動的に登録する例について説明する。
図13(A)は推奨サービスの情報を自動的に登録する際のWebブラウザー750の動作を示したフローチャートである。
S1301で、解析部753は、Intent処理要求に推奨Web Intentsサービスの情報が含まれているかを判断する。含まれている場合は、S1302に遷移する。含まれていない場合は、S1303に遷移する。
S1302で、サービス管理部754は、解析部753の要求を受けて、Intent処理要求に含まれる推奨サービスの情報を、登録済サービス格納部755の登録済Web Intentsサービステーブル804に登録する。そして、S1303に遷移する。Intent処理要求1050であった場合、タイトルが「aaa Share Service」、「bbb Share Service」である2つのWeb Intentsサービスを特定する情報を登録する。
S1303で、表示部752は、サービス選択画面を表示する。
ここで、図13(B)を用いてS1303表示するサービス選択画面の一例を説明する。UI1350は、Intent処理要求が1050の場合に表示されるUIである。領域1351内のボタンは、Intentの処理を実行させるためのボタンである。領域1351は、Webブラウザー750に登録済みのWeb Intentsサービスのタイトルを示す。S1302の処理で推奨サービスの情報が登録済みであるため、推奨サービスのタイトルも領域1351に表示されており、実行可能となっている。
S1304で、表示部752は、サービス選択画面のボタンが押下されたかを監視する。ボタンが押下された場合は、フローチャートの処理を終了し、S910に遷移する。ボタンが押下されていない間、監視を続ける。以上のように、推奨サービスの情報を自動的に登録することにより、ユーザーの手間を軽減することができる。
図14は、S909の推奨サービスの情報の登録処理におけるさらに別の例である。図13では、推奨サービスの情報を自動的に登録する例を説明したが、図14では、推奨サービスの情報のうちのユーザーにより選択されたサービスの情報のみを登録する他の例について説明する。
図14(A)は、ユーザーにより選択されたサービスの情報のみを登録する際のWebブラウザー750の動作を示したフローチャートである。
S1401で、表示部752はサービス選択画面を表示し、S1402に遷移する。
ここで、図14(B)を用いてS1401で表示するサービス選択画面の一例を説明する。UI1450は、Intent処理要求が1050の場合に表示されるUIである。領域1451には、Webブラウザー750に登録済みのサービスの情報と未登録の推奨サービスの情報が並べて表示されている。領域1451内のボタンは、Intentの処理を実行させるためのボタンである。
S1402で、表示部752は、サービス選択画面のボタンが押下されたかを監視する。ボタンが押下された場合は、S1403に遷移する。ボタンが押下されていない間、監視を続ける。
S1403で、サービス管理部754は、押下されたボタンに対応するWeb Intentsサービスの情報が登録済であるかを判断する。登録済である場合は、フローチャートの処理を終了し、S910に遷移する。登録済でない場合は、S1404に遷移する。
S1404で、サービス管理部754は、押下されたボタンに対応するサービスの情報を、登録済サービス格納部755の登録済Web Intentsサービステーブル804に登録する。そして、フローチャートの処理を終了し、S910に遷移する。例えば、UI1450で押下されたボタンが、「AAA Share Service」である場合は、タイトルが「AAA Share Service」である推奨サービスの情報を登録する。以上のように、ユーザー操作により実行を受け付けた推奨サービスの情報のみを登録することができる。
以上までが、S909の処理に関する説明である。図9の説明に戻る。
S910で、コンピュータ530のWebブラウザー750は、S909で選択されたWeb Intentsサービスへ要求を送信する。本例では、Web Intetntsサーバー520のWebアプリケーション730に対してこの要求を送信する。その際、コンピュータ530のWebブラウザー750は、この要求に、ECMAScript1050におけるIntentオブジェクトの内容を含める。
S911で、Web Intentsサーバー520のWebアプリケーション730のIntent処理部732は、S910で受信した要求からIntentオブジェクトを取り出して解析し、Intentの処理の実行を開始する。本実施例ではWeb Intentsサーバー520のWebアプリケーション730は、コンピュータ530のWebブラウザー750を介してユーザーと相互作用しながら、Intentオブジェクトに含まれる画像データを共有するサービスを提供する。例えば、Web Intentsサーバー520のWebアプリケーション730は、画像データのファイル名の入力と、その画像データの保存指示とを受け付けるためのHTML文書を作成し、コンピュータ530に送信する。コンピュータ530のWebブラウザー750は、HTML文書を受信し、UIを表示する。そして、コンピュータ530のWebブラウザー750は、ユーザーによる保存する指示を検知すると、Web Intentsサーバー520のWebアプリケーション730に、画像データの保存要求を送信する。Web Intentsサーバー520のWebアプリケーション730は、画像データの保存要求を受信すると、画像データ管理部734が画像データ格納部735の画像データ管理テーブル803に、ユーザーに指定されたファイル名で画像データを登録する。
S912で、Web Intentsサーバー520のWebアプリケーション730はIntentの処理が終了すると、処理結果をWeb Intentsクライアント510に伝えるECMAScriptを含む応答を返す。
S913で、コンピュータ530のWebブラウザー750は応答中に含まれるECMAScriptを実行し、S905のstartActivety()関数の引数で指定されたコールバック関数を呼び出す。例えば、ECMAScript1050であれば、コールバック関数onSuccess()を実行する。
S914で、コンピュータ530のWebブラウザー750はコールバック関数によってWeb Intentsクライアント510のWebアプリケーション700へ処理結果を返す。
S915で、Web Intentsクライアント510のWebアプリケーション700のプレゼンテーション部703はIntentの処理が終了したことを通知するためのページである終了ページをHTML文書で作成する。
S916で、Web Intentsクライアント510のWebアプリケーション700のプレゼンテーション部703は、通信部701を介して、S915で作成した終了ページをコンピュータ530に送信する。
S917で、コンピュータ530のWebブラウザー750は、S916で受信した終了ページを表示する。
以上の処理により、連携するWeb Intentsサービスに予め訪れることなく、且つ、連携元であるWeb Intentsクライアントが推奨するWeb Intentsサービスを登録することが可能となる。
[実施例2]
実施例1では、Web Intentsクライアントが推奨Web Intentsサービスを特定する情報を、Intent処理要求に含めることで、UAであるWebブラウザーに推奨Web Intentsサービスを登録する方法を示した。本実施例では、Intent処理要求に推奨Web Intentsサービスに関連する情報を含め、Web Intentsサービスの検索を行うことで、UAであるWebブラウザーに推奨Web Intentsサービスを登録する方法を示す。尚、本実施例では、実施例1と同じ部分については説明を省略する。
図15は、本発明を実施したWeb Intentsサービスのシステム構成の一例を示す図である。Web Intentsクライアント1510、Web Intentsサーバー1520は、それぞれ実施例1で説明したWeb Intentsクライアント510とWeb Intentsサーバー520と同じである。また、コンピュータ1530、Firewall1540は、実施例1のコンピュータ530とFirewall540と同じである。実施例1のシステム構成と異なるのは、さらにサービス検索サーバー1550を有する点である。サービス検索サーバー1550には、予めWeb Intentsサービスを特定する情報が登録されている。サービス検索サーバー1550は、別の機器からの検索要求を受け、登録されているWeb Intentsサービスの中から検索するサービスを提供する。サービス検索サーバー1550の検索を行うサービスは、例えば、Webブラウザーを提供する企業と同じ企業が提供し、その企業の審査を経たWeb Intentsサービスだけが登録することができるように構成することも考えられる。尚、サービス検索サーバー1550は汎用コンピュータの構成を有しており、ハードウェア構成は図6で説明した構成と同じであるため、説明は省略する。
図16(A)は、サービス検索サーバー1550のソフトウェア(処理部)の構成の一例を示す図である。サービス検索サーバー1550において、Webアプリケーション1600および各処理部は、サービス検索サーバー1550のHDD606に保存されたファイルとして存在する。これらは実行時にOSやその各処理部を利用する他の処理部によってRAM602にロードされ実行されるプログラムモジュールである。Webアプリケーション1600は、Web Intentsサービスを検索するサービスを提供する。Webアプリケーション1600は、HTTPリクエストに応答して処理を実行するプログラムとして実装される。Webアプリケーション1600は、プレゼンテーション部1601、推奨サービス管理部1602で構成される。プレゼンテーション部1601は、後述の通信部1604を介して、検索要求を受け付け、推奨サービス管理部1602に検索を依頼するソフトウェアモジュールである。また、プレゼンテーション部1601は、通信部1604を介して検索結果を検索要求元の外部機器に送信する。推奨サービス管理部1602は、後述のサービス格納部1603に登録されているWeb Intentsサービスを特定する情報を取得するソフトウェアモジュールである。サービス格納部1603は、後述のWeb Intentsサービステーブル1650を管理する。
図16(B)は、サービス検索サーバー1550のサービス格納部1603が管理するテーブル構成の一例である。なお、図16(B)のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。Web Intentsサービステーブル1650は、Webアプリケーション1600に登録されているWeb Intentsサービスの情報を管理する。Web Intentsサービステーブル1650で管理する情報は、ServiceID、action、type、href、disposition、baseURI、vendor等である。ServiceIDはWebアプリケーション1600内で一意に識別するためのIDである。actionはサービスがどのような機能、サービスを提供するかを示す情報であり、typeはactionに対して何を扱えるかを示している。hrefはWeb Intentsサービスの相対URLを示し、titleはWeb Intentsサービスのタイトルを示している。また、dispositionはWeb Intentsサービスがどのように表示されるかを示す。baseURIはWeb Intentsサービスの基準となるURLを示す。また、vendorは、Web Intentsサービスを提供する企業名を示す。
図17のシーケンス図を用いて、コンピュータ1530がWeb Intentsクライアン1510にアクセスして、コンピュータ1530のWebブラウザー750に推奨Web Intentsサービスを登録するまでの動作について説明する。
まず、コンピュータ1530のWebブラウザー750は、アドレスバーなどにWeb Intentsクライアント1510のWebアプリケーション700のURLを入力する等のユーザー操作を受け付けることで以降の処理を開始する。
S1701で、コンピュータ1530のWebブラウザー750は、通信部751を介してWeb Intentsクライアント1510にページの要求をHTTPのリクエストメッセージとして送信する。
S1702で、Web Intentsクライアント1510のWebアプリケーション700は、Intent処理要求を含むHTML文書のページの作成を行う。
ここで、図18を用いて、S1702において作成するHTML文書に含むIntent処理要求について説明する。なお、図18はあくまで一例であり、UAであるWebブラウザー750が解釈できれば、他の形式、表記でよい。1800はECMAScriptである。1801はsearchであり、その内部には推奨Web Intentsサービスに関連する情報1802を記載する。推奨Web Intentsサービスに関連する情報1802は、vendor、title等である。vendorは、推奨Web Intentsサービスを提供する企業名であり、titleは推奨Web Intentsサービスのタイトルである。vendor、titleなどの企業名やタイトルはそのすべてを記載する必要はなく、一部のみを記載するようにしてもよい。例えば、推奨Web Intentsサービスに関連する情報1802のvendorは、vendor_aであり、titleはaaaである。そのため、後述する検索処理では、ベンダーがvendor_aであり、且つ、aaaを含むタイトルであるWeb Intentsサービスを検索する。尚、推奨Web Intentsサービスに関連する情報1802はvendor、title以外の情報をさらに記載してもよいし、逆により少ない情報のみを記載するのでもよい。推奨Web Intentsサービスに関連する情報1802により多い情報を記載することで、検索結果の数を絞ることができる。これら推奨Web Intentsサービスに関連する情報は、推奨サービス管理部704が予めプログラム内で保持しているものとする。尚、推奨Web Intentsサービスに関連する情報1802はデータベースサービス部706に別途テーブルを用意し、データベースサービス部706で管理するように構成してもよい。
1803はextraであり、その内部には、推奨Web Intentsサービスを特定する情報1804を記載する。推奨Web Intentsサービスを特定する情報1804は、推奨Web Intentsサービスを特定する情報1052と同じである為、説明は省略する。尚、後述するが、推奨Web Intentsサービスを特定する情報1804は、推奨Web Intentsサービスに関連する情報1802で推奨Web Intentsサービスが検索できなかったときに使用する情報である。本例ではsearch1801、extra1803を記載しているが両方とも記載されていなくても、どちらかだけが記載されていればよい。
図17の説明に戻る。
S1703で、Web Intentsクライアント1510のWebアプリケーション700は、S1702で作成したページをHTTPのレスポンスメッセージとして送信する。
S1704で、コンピュータ1530のWebブラウザー750の表示部752は、受信したページを表示する。尚、S1704で表示するページのUIの一例は図11で説明したUI1100と同じである。
S1705で、Webブラウザー750の解析部753は、ECMAScript1800を解析し、実行を開始する。
S1706からS1708までの処理は、それぞれS906からS908までの処理と同じである。
S1709で、コンピュータ1530のWebブラウザー750は、サービス検索サーバー1550と連携し、推奨Web Intentsサービスの検索を行う。
ここで、図19のフローチャートを用いて、S1709でのコンピュータ1530のWebブラウザー750とサービス検索サーバー1550のWebアプリケーション1600の処理について説明する。
S1901で、Webブラウザー750の解析部753は、Intent処理要求に、推奨Web Intentsサービスに関連する情報が含まれるかを判断する。含まれる場合は、S1902に遷移する。含まれていない場合は、S1907に遷移する。
S1902で、Webブラウザー750のサービス管理部754は、検索要求を作成してS1903に遷移する。より具体的にはWebブラウザー750の解析部753は、Intentオブジェクトから推奨Web Intentsサービスに関連する情報とactionとtypeを抽出し、サービス管理部754に通知する。サービス管理部754は、推奨Web Intentsサービスに関連する情報とactionとtypeを含んだ検索要求を作成する。
S1903で、Webブラウザー750のサービス管理部754は、通信部751を介して、S1902で作成した検索要求を、サービス検索サーバー1550のWebアプリケーション1600に送信して、S1904に遷移する。
S1904で、Webブラウザー750のサービス管理部754は、通信部751を介してWebアプリケーション1600から検索結果を受信したかを監視する。検索結果を受信した場合は、S1905に遷移する。検索結果を受信していない間、監視を続ける。
S1905で、Webブラウザー750のサービス管理部754は、S1904で受信した検索結果が1件以上あるかを判断する。検索結果が1件以上ある場合はフローチャートの処理を終了する。尚、この検索結果に含まれる情報で特定されるWeb Intentsサービスが推奨Web Intentsサービスとなる。検索結果が1件もない場合は、S1906に遷移する。
S1906で、Webブラウザー750の解析部753は、Intent処理要求に含まれる推奨Web Intentsサービスを特定する情報を抽出し、フローチャートの処理を終了する。尚、S1906で抽出した情報で特定されるWeb Intentsサービスが推奨Web Intentsサービスとなる。
S1951で、サービス検索サーバー1550のプレゼンテーション部1601は、通信部を介して検索要求を受信したかを監視する。検索要求を受信した場合は、S1952に遷移する。検索要求を受信していない間、監視を続ける。
S1952で、サービス検索サーバー1550の推奨サービス管理部1602は、検索要求に含まれる情報を用いて、サービス格納部1603からWeb Intentsサービスを特定する情報を取得し、S1953に遷移する。より詳細には、推奨サービス管理部1602は、検索要求から、action、type、推奨Web Intentsサービスに関連する情報を抽出する。そして、推奨サービス管理部1602は検索要求から抽出した情報に合致するWeb Intentsサービスを特定する情報を、サービス格納部1603のWeb Intentsサービステーブル1650から取得する。例えば、actionがshareであり、typeがimage/jpegであり、推奨Web Intentsサービスに関連する情報のvendorがvendor_aaaで、titleがaaaの場合について説明する。この場合、Web Intentsサービステーブル1650であれば、Service IDが4と5であるWeb Intentsサービスが見つかる。そして、Service IDが4と5であるWeb Intentsサービスを特定する情報を検索結果とする。
S1953で、推奨サービス管理部1602は、S1952で検索した検索結果を、通信部を介して、コンピュータ1530のWebブラウザー750に送信してフローチャートの処理を終了する。
以上が、S1709における検索処理の動作である。
次にS1710で、コンピュータ1530のWebブラウザー750は、Web Intentsサービスの登録処理を行う。尚、S1710の登録処理の例は図12乃至図14で説明した処理と同じであるため、省略する。また、S1710での登録処理後の、Intent処理する動作の例は、S910からS917と同様である為説明を省略する。
以上の処理により、サービス検索サーバーを有したシステム構成においても、連携元であるWeb Intentsクライアントが推奨するWeb Intentsサービスを登録することが可能となる。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
510 Web Intentsクライアント
520 Web Intentsサーバー
530 コンピュータ

Claims (13)

  1. 情報処理装置であって、
    特定のサービスを提供することが可能なサービス提供元を示す情報を予め登録している別の情報処理装置からのアクセスを受信する受信手段と、
    前記アクセスの受信に応じて、
    ユーザにより選択されるオブジェクトと、
    当該オブジェクトがユーザにより選択された場合に、前記登録されている前記特定のサービスを提供することが可能な前記サービス提供元を示す情報を表示手段に表示させるための第1の命令と、
    前記特定のサービスを提供することが可能なサービス提供元を示す情報であって、前記予め登録されている情報とは異なる情報を新たに前記別の情報処理装置に登録させるための第2の命令とを、
    前記別の情報処理装置に送信する送信手段とを有することを特徴とする情報処理装置。
  2. 前記表示手段は、前記別の情報処理装置の具備する表示手段であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記特定のサービスとは、データの共有であることを特徴とする請求項1又は2に記載の情報処理装置。
  4. サービスを提供することが可能なサービス提供元を示す情報は前記別の情報処理装置に予め登録されており、
    前記第1の命令には、サービスの種類、及び、サービスが扱う対象物のフォーマットを示す情報が含まれており、
    前記オブジェクトがユーザにより選択された場合に、前記別の情報処理装置では、
    前記種類に合致する種類を持ち、かつ、前記フォーマットを扱うことができるサービス提供元を示す情報が、前記登録されているサービス提供元を示す情報から検索され、見つかった情報が前記表示手段に表示されることを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
  5. 情報処理装置であって、
    特定のサービスを提供することが可能なサービス提供元を示す情報を予め登録している別の情報処理装置からのアクセスを受信する受信手段と、
    前記アクセスの受信に応じて、
    ユーザにより選択されるオブジェクトと、
    当該オブジェクトがユーザにより選択された場合に、前記登録されている前記特定のサービスを提供することが可能な前記サービス提供元を示す情報を検索させるための第1の命令と、
    前記特定のサービスを提供することが可能なサービス提供元を示す情報、及び、当該情報を新たに前記別の情報処理装置に登録させるための第2の命令とを、
    前記別の情報処理装置に送信する送信手段とを有し、
    前記検索させるための第1の命令には、サービスの種類、サービスが扱う対象物のフォーマットを示す情報、及び、サービスの優先順位を示す情報を含むことを特徴とする情報処理装置。
  6. 前記別の情報処理装置は、前記検索させるための第1の命令に含まれるサービスの種類、サービスが扱う対象物のフォーマットを示す情報に基づいて検索されたサービスの提供元を示す情報を、前記サービスの優先順位を示す情報に基づいた優先順位で表示することを特徴とする請求項5に記載の情報処理装置。
  7. 情報処理装置の制御方法であって、
    特定のサービスを提供することが可能なサービス提供元を示す情報を予め登録している別の情報処理装置からのアクセスを受信する受信工程と、
    前記アクセスの受信に応じて、
    ユーザにより選択されるオブジェクトと、
    当該オブジェクトがユーザにより選択された場合に、前記登録されている前記特定のサービスを提供することが可能な前記サービス提供元を示す情報を表示工程に表示させるための第1の命令と、
    前記特定のサービスを提供することが可能なサービス提供元を示す情報であって、前記予め登録されている情報とは異なる情報を新たに前記別の情報処理装置に登録させるための第2の命令とを、
    前記別の情報処理装置に送信する送信工程とを有することを特徴とする情報処理装置の制御方法。
  8. 前記表示工程は、前記別の情報処理装置の具備する表示工程であることを特徴とする請求項7に記載の情報処理装置の制御方法。
  9. 前記特定のサービスとは、データの共有であることを特徴とする請求項1又は2に記載の情報処理装置の制御方法。
  10. サービスを提供することが可能なサービス提供元を示す情報は前記別の情報処理装置に予め登録されており、
    前記第1の命令には、サービスの種類、及び、サービスが扱う対象物のフォーマットを示す情報が含まれており、
    前記オブジェクトがユーザにより選択された場合に、前記別の情報処理装置では、
    前記種類に合致する種類を持ち、かつ、前記フォーマットを扱うことができるサービス提供元を示す情報が、前記登録されているサービス提供元を示す情報から検索され、見つかった情報が前記表示工程に表示されることを特徴とする請求項7乃至9の何れか1項に記載の情報処理装置の制御方法。
  11. 情報処理装置の制御方法であって、
    特定のサービスを提供することが可能なサービス提供元を示す情報を予め登録している別の情報処理装置からのアクセスを受信する受信工程と、
    前記アクセスの受信に応じて、
    ユーザにより選択されるオブジェクトと、
    当該オブジェクトがユーザにより選択された場合に、前記登録されている前記特定のサービスを提供することが可能な前記サービス提供元を示す情報を検索させるための第1の命令と、
    前記特定のサービスを提供することが可能なサービス提供元を示す情報、及び、当該情報を新たに前記別の情報処理装置に登録させるための第2の命令とを、
    前記別の情報処理装置に送信する送信工程とを有し、
    前記検索させるための第1の命令には、サービスの種類、サービスが扱う対象物のフォーマットを示す情報、及び、サービスの優先順位を示す情報を含むことを特徴とする情報処理装置の制御方法。
  12. 前記別の情報処理装置は、前記検索させるための第1の命令に含まれるサービスの種類、サービスが扱う対象物のフォーマットを示す情報に基づいて検索されたサービスの提供元を示す情報を、前記サービスの優先順位を示す情報に基づいた優先順位で表示することを特徴とする請求項11に記載の情報処理装置の制御方法。
  13. 請求項7乃至12の何れか1項に記載の情報処理装置の制御方法をコンピュータに実行させるためのコンピュータよみとり可能なプログラム。
JP2013103328A 2013-05-15 2013-05-15 情報処理装置、その制御方法、プログラム Expired - Fee Related JP6168839B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2013103328A JP6168839B2 (ja) 2013-05-15 2013-05-15 情報処理装置、その制御方法、プログラム
DE102014208141.6A DE102014208141A1 (de) 2013-05-15 2014-04-30 Informationsverarbeitungsvorrichtung und Steuerungsverfahren für diese
GB1408133.5A GB2516156A (en) 2013-05-15 2014-05-08 Information processing apparatus, and control method therefor
CN201410200872.2A CN104166665B (zh) 2013-05-15 2014-05-13 信息处理装置及其控制方法
US14/276,428 US20140344756A1 (en) 2013-05-15 2014-05-13 Information processing apparatus, and control method therefor
KR1020140057573A KR101659147B1 (ko) 2013-05-15 2014-05-14 정보 처리 장치, 및 그의 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013103328A JP6168839B2 (ja) 2013-05-15 2013-05-15 情報処理装置、その制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2014225092A true JP2014225092A (ja) 2014-12-04
JP2014225092A5 JP2014225092A5 (ja) 2016-06-16
JP6168839B2 JP6168839B2 (ja) 2017-07-26

Family

ID=51032420

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013103328A Expired - Fee Related JP6168839B2 (ja) 2013-05-15 2013-05-15 情報処理装置、その制御方法、プログラム

Country Status (6)

Country Link
US (1) US20140344756A1 (ja)
JP (1) JP6168839B2 (ja)
KR (1) KR101659147B1 (ja)
CN (1) CN104166665B (ja)
DE (1) DE102014208141A1 (ja)
GB (1) GB2516156A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10587698B2 (en) * 2015-02-25 2020-03-10 Futurewei Technologies, Inc. Service function registration mechanism and capability indexing
CN105230375A (zh) * 2015-11-09 2016-01-13 丹阳市司徒镇惠阳果品专业合作社 一种黄桃园智能管理系统
JP5991793B1 (ja) * 2016-02-29 2016-09-14 株式会社unerry プログラム、情報処理装置およびシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038889A (ja) * 2002-07-08 2004-02-05 Ntt Docomo Inc サービス提供システム及びサービス提供方法
JP2004118722A (ja) * 2002-09-27 2004-04-15 Toshiba Corp サービス情報提供装置、サービス情報提供方法及び記録媒体
JP2012133626A (ja) * 2010-12-22 2012-07-12 Yahoo Japan Corp 連携用サーバ、プログラム及び情報連携方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI220365B (en) * 2002-05-02 2004-08-11 Honda Motor Co Ltd Output correcting device for image sensor
WO2004012087A1 (ja) * 2002-07-30 2004-02-05 Sony Corporation プログラム、情報処理方法および装置
JP4068921B2 (ja) * 2002-08-15 2008-03-26 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ端末にウェブ・サービスを提供するサーバ、方法、コンピュータ・プログラム、記憶媒体、ネットワーク・システム
US7797450B2 (en) * 2002-10-04 2010-09-14 Oracle International Corporation Techniques for managing interaction of web services and applications
JP2004265333A (ja) * 2003-03-04 2004-09-24 Sony Corp 情報処理装置および方法、並びにプログラム
US20050038867A1 (en) * 2003-08-14 2005-02-17 International Business Machines Corporation Method, system and program product for integrating web services on a client
US7831693B2 (en) * 2003-08-18 2010-11-09 Oracle America, Inc. Structured methodology and design patterns for web services
JP2005242994A (ja) * 2004-01-27 2005-09-08 Ricoh Co Ltd サービス提供装置、情報処理装置、サービス提供方法、情報処理方法、サービス提供プログラム、情報処理プログラム及び記録媒体
US7620934B2 (en) * 2004-05-28 2009-11-17 Sap Ag System and method for a Web service definition
JP2006146512A (ja) * 2004-11-18 2006-06-08 Canon Inc 情報処理装置及びその制御方法、プログラム
KR100703754B1 (ko) * 2005-04-15 2007-04-06 삼성전자주식회사 웹서비스 처리 장치 및 방법
US7627608B2 (en) * 2007-02-07 2009-12-01 Nokia Corporation Sharing of media using contact data
JP5147383B2 (ja) * 2007-12-20 2013-02-20 キヤノン株式会社 画像処理装置、画像処理装置の制御方法及びプログラム
MX2010014294A (es) * 2008-07-28 2011-01-21 Sony Corp Dispositivo de cliente, sistema de procesamiento de informacion y metodologia asociada para acceder a servicios en red.
US8780959B2 (en) * 2009-01-13 2014-07-15 Intel Mobile Communications GmbH Integrated transceiver loop back self test by amplitude modulation
WO2010103877A1 (en) * 2009-03-13 2010-09-16 Ricoh Company, Ltd. Information processing apparatus, information processing method, and image forming apparatus
JP2012048457A (ja) * 2010-08-26 2012-03-08 Canon Inc 印刷サーバ装置、印刷装置、情報処理方法及びプログラム
EP2613528B1 (en) * 2010-08-30 2022-10-05 Saturn Licensing LLC Receiving device, receiving method and program
US8595783B2 (en) * 2010-08-30 2013-11-26 Sony Corporation Receiving device, receiving method, program, and broadcasting system
US8744912B2 (en) * 2011-04-14 2014-06-03 Koozoo Inc. Method and system for an advanced player in a network of multiple live video sources
CN104904230B (zh) * 2012-10-18 2018-10-09 Lg电子株式会社 处理交互服务的设备和方法
JP6247309B2 (ja) * 2012-11-28 2017-12-13 エルジー エレクトロニクス インコーポレイティド 双方向サービスを処理する装置及び方法
US9143565B2 (en) * 2013-05-30 2015-09-22 Opentv, Inc. Synchronizing an application on a companion device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038889A (ja) * 2002-07-08 2004-02-05 Ntt Docomo Inc サービス提供システム及びサービス提供方法
JP2004118722A (ja) * 2002-09-27 2004-04-15 Toshiba Corp サービス情報提供装置、サービス情報提供方法及び記録媒体
JP2012133626A (ja) * 2010-12-22 2012-07-12 Yahoo Japan Corp 連携用サーバ、プログラム及び情報連携方法

Also Published As

Publication number Publication date
DE102014208141A1 (de) 2014-11-20
KR20140135114A (ko) 2014-11-25
GB2516156A (en) 2015-01-14
CN104166665A (zh) 2014-11-26
KR101659147B1 (ko) 2016-09-22
CN104166665B (zh) 2017-07-18
GB201408133D0 (en) 2014-06-25
US20140344756A1 (en) 2014-11-20
JP6168839B2 (ja) 2017-07-26

Similar Documents

Publication Publication Date Title
US20240168616A1 (en) Information processing terminal and control method
JP6370033B2 (ja) 情報処理装置、情報処理方法、プログラム
JP7463434B2 (ja) 端末、端末の制御方法、及びプログラム
JP6355341B2 (ja) 情報処理端末、情報処理端末の制御方法およびプログラム
JP6168839B2 (ja) 情報処理装置、その制御方法、プログラム
JP6192433B2 (ja) 情報処理端末、情報処理端末の制御方法およびプログラム
KR101719593B1 (ko) 정보처리단말 및 그 제어 방법, 시스템 및 그 제어 방법, 및 컴퓨터 판독 가능한 기억매체
CN107209782B (zh) 交互式操作的方法以及应用该方法的传送机器、接收机器与交互式操作系统
JP7434485B2 (ja) 情報処理端末、制御方法、およびオペレーティングシステム
US10878471B1 (en) Contextual and personalized browsing assistant
JP6786656B2 (ja) 情報処理端末、情報処理端末の制御方法およびプログラム
JP6513244B2 (ja) 情報処理端末、制御方法及びプログラム
JP6351275B2 (ja) 情報処理端末、情報処理端末の制御方法およびプログラム
KR20140097778A (ko) 매쉬업 블록을 이용한 이종 모바일 플렛폼 지원 디바이스 요소 연동 런타임 기술
JP2010176480A (ja) 動画ファイル送信サーバおよびその動作制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160425

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170509

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: 20170530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170627

R151 Written notification of patent or utility model registration

Ref document number: 6168839

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees