JP2015149568A - 画像形成装置、その制御方法およびプログラム - Google Patents

画像形成装置、その制御方法およびプログラム Download PDF

Info

Publication number
JP2015149568A
JP2015149568A JP2014020724A JP2014020724A JP2015149568A JP 2015149568 A JP2015149568 A JP 2015149568A JP 2014020724 A JP2014020724 A JP 2014020724A JP 2014020724 A JP2014020724 A JP 2014020724A JP 2015149568 A JP2015149568 A JP 2015149568A
Authority
JP
Japan
Prior art keywords
application
function
forming apparatus
image forming
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014020724A
Other languages
English (en)
Inventor
大澤 隆治
Takaharu Osawa
隆治 大澤
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 JP2014020724A priority Critical patent/JP2015149568A/ja
Priority to US14/609,765 priority patent/US9282211B2/en
Publication of JP2015149568A publication Critical patent/JP2015149568A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • H04N1/00941Interaction of different applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0083Arrangements for transferring signals between different components of the apparatus, e.g. arrangements of signal lines or cables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】従来の画像形成装置などの実行環境で動作するアプリケーションについても、Web Intentsのようなアプリケーション連携の技術を用いることが可能となる仕組みを提供すること。
【解決手段】画像形成装置502は、アプリケーション103が提供する機能の機能情報を用いて、中継機能102を介した処理要求が行われた際に、当該処理要求を受け付け、処理要求に従う指示に応じて、アプリケーション103が提供する機能を実行し、実行結果を中継機能102に通知する。アプリケーション103はサーブレットとして実現される。
【選択図】 図5

Description

本発明は、データをアプリケーション間で共有する画像形成装置、その制御方法およびプログラムに関する。
近年、Webブラウザを経由して、Webアプリケーションから任意のWebサービス(または、Webアプリケーション)を呼び出し、それぞれ連携する仕組みが提案されている。一例として、処理を実行時まで遅延させる遅延バインディングによりサービス受け側と提供側とを疎結合状態とし、それらの連携を実現するWeb Intents(ウェブインテンツ)という仕組みが提案されている。
また、従来の画像形成装置においては、アプリケーションやサービスをインストールさせて機能を拡張させる環境が整備されている。しかしながら、他のアプリケーションやサービスと連携するシステムは搭載されていない。そのため、アプリケーションから他のアプリケーションに操作が移動する場合には、メイン画面にいったん戻るなどユーザによる操作が発生する場合がある。
従来技術として、特許文献1は、サーバ装置のアプリケーションが、JavaScript(登録商標)を利用したHTMLを用意して、画像形成装置内の機能を利用したり、データを取得するシステムを開示している。
特開2011−55075号公報
特許文献1が開示しているシステムでは、HTMLコンテンツ内に記述されているJavaScript(登録商標)をブラウザが解釈してコマンドを発行する。特許文献1が開示しているシステムは、例えば上述のWeb Intentsのようなアプリケーションの連携のための仕組みを特に想定していない。
本発明は、従来の画像形成装置等の実行環境で動作するアプリケーションについても、複数アプリケーション間でのデータ共有やデータ処理のため、Web Intentsのようなアプリ連携の技術を用いることが可能となる仕組みを提供することを目的とする。
本発明の一実施形態の画像形成装置は、複数のアプリケーションとの間でデータの共有を行うための中継機能と、アプリケーションとが動作する。前記画像形成装置は、前記アプリケーションが提供する機能の機能情報を用いて、前記中継機能を介した処理要求が行われた際に、当該処理要求を受け付ける受け付け手段と、前記受け付けた処理要求に従う指示に応じて、前記アプリケーションが提供する機能を実行する実行手段と、前記実行手段による実行結果を、前記中継機能に通知する通知手段と、を有する。前記受け付け手段及び通知手段は、前記アプリケーションのサーブレットとして実現される。
本発明の画像形成装置によれば、従来の画像形成装置などの実行環境で動作していたようなアプリケーションについても、前述したアプリケーション連携の技術を用いることが可能となる仕組みが提供できる。
Web Intentsの全体構成例を示す図である。 Web Intentsの基本的な動作を示したシーケンス図である。 Web Intentsサービスが持つ登録用マークアップの一例である。 クライアントが生成するIntent処理要求の一例である。 実施例1におけるシステム構成例を示す図である。 クライアントと画像形成装置のハードウェア構成例を示す図である。 クライアントとUSのソフトウェア構成例を示す図である。 Web IntentsサービスとWeb Intentsサービス対応アプリケーションのソフトウェア構成例を示す図である。 UAの登録済みWeb Intentsサービステーブルの一例である。 UAがIntentsの処理要求を発行する際のシーケンス図である。 UAが表示するクライアントの画面例を示す。 UAが共有ボタンを押下された際に表示する画面例を示す。 UAがIntentsを発行する処理を示したフローチャートである。 UAがIntentsを発行する処理を示したフローチャートである。
(実施例1)
以下、本発明を実施するための形態について図面を用いて説明する。本実施例では、クライアントアプリケーションからサーバアプリケーションを呼び出す連携機能として、データの橋渡しをする仕組みであるWeb Intentsを例に説明を行うが、これに限定されるものではない。図1は、Web Intentsの全体構成を示す図である。Web Intentsサービス103は、Intents技術を利用してサービスや機能を提供する。Web Intentsクライアント101は、前記サービスを利用するクライアントである。UA(ユーザエージェント)102は、Web Intentsクライアント101からの要求をWeb Intentsサービス103に渡し、サービスからの結果をクライアントに渡す役割をする。換言すれば、UA102は、中継機能としての役割を果たす。
SNSサイトの「いいね」「チェック」「シェア」といったソーシャルボタンをWeb Intentsの仕組みで例えると、Web Intentsクライアント101はボタンを配置しているサイトとなる。なお、SNSはsocial networking serviceの略称である。UA102はブラウザ、Web Intentsサービス103は「いいね」などの投稿先サービスになる。Web Intentsサービス103が機能を提供するにあたって、ユーザ認証やユーザによる操作が必要な場合、UA102上でユーザが操作を行う。
なお、UA102は、後述するサービスと連携するための機能を持つのであれば、ブラウザ以外にも、情報処理端末で動作するオペレーティングシステム(OS)やアプリケーションなどで実現することも可能である。ここで、情報処理端末の例としては、パーソナルコンピュータ(PC)、スマートフォン、タブレット、カーナビなどが挙げられる。
また、Web Intentsサービス103については、上記した投稿先サービスのようなインターネット上のサービス提供者以外にも、例えば情報処理端末が内蔵するカメラ、プリンタ、スキャナなどといったデバイスもサービス提供者になり得る。また、Web Intentsサービス103については、ネットワークで接続されるプリンタ、スキャナ、ネットワークカメラなどの周辺機器や、冷蔵庫やテレビといった家電製品などもサービス提供者になり得る。
図2は、Web Intentsを利用したサービス提供に関する基本動作を説明するためのシーケンス図である。S201で、UA102は、ユーザの操作によりWeb Intentsサービス103にアクセスする。S202で、Web Intentsサービス103は、提供するサービスをUA102に登録してもらうための登録用マークアップを含むHTML応答をUA102に返信する。
図3の例を用いて、Web Intentsサービス103からUA102に返信されるHTML応答の中身について説明する。本実施例では、あらゆるフォーマットの画像データを”share(共有)”できるサービスを利用する例をもとに説明するが、これに限定されるものではない。<intent>タグにはサービスを特定する情報が記載されている。actionは<intent>タグで特定されるサービスにより提供される機能、サービスを示し、typeはactionに対して扱えるデータ形式を示している。hrefはサービスのURLを示し、titleはサービスのタイトルを示している。また、dispositionはサービスがどのように表示されるかを示す。
この例では、<intent>タグによりWeb Intentsサービス103が特定される。また、actionとtypeによりあらゆるフォーマットの画像データが”share(共有)”可能であることが示されている。また、画像データの接続先は”share.html”で、タイトルは”Share image using e−mail”であり、別ウィンドウで表示されることが示されている。
図3に示すHTML応答を受信すると、UA102はユーザに対してWeb IntentsサービスをUA102に登録するか否か確認を促す。例えばUA102がブラウザであれば、ポップアップウィンドウを表示させユーザに選択を促す。ユーザがこのWeb Intentsの登録を選択すると、UA102はWeb Intentsサービスを内部に記憶する。
S203で、UA102は、ユーザの操作によりWeb Intentsクライアント101にアクセスする。S204で、Web Intentsクライアント101はWeb Intentsサービス103を利用することが記載されたHTML応答をUA102へ返信する。例えば、あるWebサイトにおいて、画像と「共有」ボタンがある場合に、サイトは図4に示すECMAScriptを含むHTMLをUA102へ返す。
図4の例を用いて、Web Intentsクライアント101からUA102に返信されるHTML応答の中身について説明する。ECMAScriptは、HTML内のID「share―photo」を持つボタンがクリックされると、指定された無名関数を実行することを示している。無名関数は、まず、新規のIntentオブジェクトを作成し、これを引数にしてstartActivety()関数を呼び出す。この関数を実行すると、UA102は自身に登録されているWeb Intentsサービス103の中から、指定されたIntentsのactionとtypeが一致するものを抽出し、一覧表示させることでユーザに選択を要求する。また、無名関数内で呼び出しているgetImageFrom()関数を実行することにより、UA102はWeb Intentsクライアント101が持つ画像データを取得する。
S205で、UA102はHTML応答を受け取り、画面上に表示する。S206で、ユーザにより画面上の「共有」ボタンが押下されると、UA102は上述したようにWeb Intents起動用のECMAScriptを実行し、Web Intentsクライアント101が持つ画像データを取得する。また、「共有」ボタン押下により、UA102は内部に登録しているWeb Intentsサービス103の一覧を表示する。ユーザにより一覧からWeb Intentsサービス103が選択されると、S207で、UA102は選択されたWeb Intentsサービス103へ要求を送信する。その際、UA102は、送信データに、図4のECMAScriptが作成したIntentオブジェクトの内容を含める。
S208で、Web Intentsサービス103は要求からIntentオブジェクトを取り出し、UA102を介してユーザと相互作用しながら、選択されたサービス(ここでは画像の「共有」)の利用を実現する。例えば、ユーザが画像、共有ボタンがあるサイトに訪れ、共有ボタンを押下すると、ポップアップウィンドウにサービス一覧が表示される。そこでWebメールサービスを選択したとすると、画像データが添付された新規メールが作成され、ユーザは電子メールを送信することが出来る。
S209で、Web Intentsサービス103は処理が終了すると、処理結果をWeb Intentsクライアント101に伝えるECMAScriptを含む応答を返す。S210で、UA102は応答中に含まれるECMAScriptを実行し、S205のstartActivety()関数の引数で指定されたコールバック関数onSuccess()を呼び出す。S211で、UA102はコールバック関数onSuccess()によってWeb Intentsクライアント101へ処理結果を返す。
以上の処理により、Web Intentsクライアント101は、UA102を介して、Web Intentsサービス103が提供するWeb Intentsの機能、サービス(この例では画像の「共有」)を呼び出すことが可能となる。
図5は、本発明の実施例の一形態に係わる、Web Intentsクライアント、およびUA、Web Intentsサービスを含む画像形成装置がインターネットを介して接続された関係を示す図である。図5において、クライアント501は上述したWeb Intentsクライアント101にあたり、ここでは画像データの保管などのストレージ機能を提供する一般的なWebサイトを表したWeb Intentsクライアントである。本実施例では、Web Intentsクライアント501は汎用コンピュータによって構成され、Internet508を介して接続されている。
画像形成装置502は、上述したUA102およびWeb Intentsサービス対応アプリケーション503を含むWeb Intentsサービス103を備えた画像形成装置である。画像形成装置502は、ブラウザであるUA、および、機能やサービスを提供するWebサイト(Webアプリケーション)であるWeb Intentsサービスを備える。また、Intranet環境507は、画像形成装置502、Proxy Server504、Intranetのセキュリティを高めるために設置されたFirewall505がLAN506を介して相互に接続されていることを示す。実際には複数のIntranet環境507と、UA102およびWeb Intentsサービス103を含む画像形成装置502とがInternet508を介して相互に接続されている。
図6(A)は、汎用コンピュータによって構成されるWeb Intentsクライアント501のハードウェア構成を示す図である。また、図6(B)はUA102およびWeb Intentsサービス103を含む画像形成装置502のハードウェア構成を示す図である。
図6(A)において、Web Intentsクライアント501は、CPU601乃至入出力I/F607を備える。各ユニットは内部バス606を介してデータの送受信が可能である。CPU(Central Processing Unit)601は、内部バス606を介して各ユニットを総括的に制御する。また、CPU601は、ROM603またはHDD604に格納されているプログラムを一時作業領域であるRAM602にロードし、実行することで各種処理を実現する。RAM、ROM、HDDはそれぞれ、Random Access Memory、Read Only Memory、Hard Disk Driveの略称である。入出力I/F607は、例えばPS2やUniversal Serial Bus(USB I/F)、アナログやデジタルのディスプレイI/Fを備える。入出力装置608は、キーボードやマウス、CRTや液晶ディスプレイであり、入出力I/F607を介して管理サーバ106と接続することができる。
図6(B)において、画像形成装置502は、機能部611、インタフェース部616、画像メモリ617、制御部618、HDD619を備える。制御部618は、CPU620、ROM621、及びRAM622を備え、画像形成装置502の全体の動作を制御する。CPU620は、ROM621に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御処理を実行する。RAM622は、CPU620の主メモリ、ワークエリア等の一時記憶領域として用いられる。また、制御部618は、機能部611と接続され、操作表示部612、スキャナ部613、及びプリンタ部614の動作を制御する。
操作表示部612には、タッチパネル機能を有する液晶等の表示部やキーボード等が配置されている。操作表示部612は、UA102にあたるブラウザ機能を備えており、ブラウザは、受信したHTMLファイルを解析し、解析したHTMLファイルの記述に基づく操作画面を操作表示部612に表示する。
プリンタ部614は、制御部618から出力された画像データを用紙に印刷する。スキャナ部613は、原稿の画像を読み取って画像データを生成し、制御部618に出力する。インタフェース部616は、制御部618をInternet508に接続して外部の情報処理装置(不図示)から印刷用の画像データを受信したり、操作表示部612で表示する画面データを受信したりする。HDD619は、画像データや各種プログラムを記憶する。本実施例における、UA102およびWeb Intentsサービス103を含む各種プログラムも、HDD619に格納される。なお、外部の情報処理装置から受信した印刷用の画像データは、画像メモリ617に一時的に格納され、制御部618を介してプリンタ部614により印刷される。
図7(A)は、Web Intentsクライアント501で動作するWeb Intentsクライアント101のソフトウェア(処理部)構成の一例を示す図である。Web Intentsクライアント101は、Webアプリケーション700、通信部704、データベースサービス部705を備える。Webアプリケーション700および各処理部は、Web Intentsクライアント501のHDD604に保存されたファイルとして存在する。これらは実行時にOSやその各処理部を利用する他の処理部によってRAM602にロードされ実行されるプログラムモジュールである。
Webアプリケーション700は、例えば画像データなどのコンテンツを保管するストレージ機能を提供するアプリケーションである。Webアプリケーション700は、HTTP(HyperText Transfer Protocol)リクエストに応答して処理を実行するプログラムとして実装される。Webアプリケーション700は、Intent処理要求作成部701、プレゼンテーション部702、コンテンツ管理部703を備える。
Intent処理要求作成部701は、Intentの処理要求であるECMAScriptを作成するソフトウェアモジュールである。プレゼンテーション部702は、通信部704を介して受け取ったページ取得要求などに応じてHTML文書を作成するソフトウェアモジュールである。コンテンツ管理部703は、プレゼンテーション部702からの要求に応じてデータベースサービス部705によりHDD604からコンテンツを取得したり、格納したりするソフトウェアモジュールである。データベースサービス部705は、他の処理部からの要求に応じて、HDD604へのコンテンツの格納と取り出しを行うソフトウェアモジュールである。また、データベースサービス部705は、Web Intentsクライアント501と別の機器上にあってもよい。
図7(B)は、画像形成装置502で動作するUA102のソフトウェア(処理部)構成の一例を示す図である。UA102は、Webブラウザ730、通信部734、データベースサービス部735を備える。ブラウザ730および各処理部は、画像形成装置502のHDD619に保存されたファイルとして存在する。これらは実行時にOSやその各処理部を利用する他の処理部によってRAM622にロードされ実行されるプログラムモジュールである。
ブラウザ730は、表示部731、解析部732、サービス管理部733を備える。表示部731は、HTML文書をレンダリングするソフトウェアモジュールである。また、サービス管理部733の要求に応じて、Web Intentsサービスをユーザに選択させる画面を表示する。解析部732は、HTML文書を解析するソフトウェアモジュールである。また、解析部732は、Intent処理要求であるECMA Scriptも解析する。サービス管理部733は、データベースサービス部735を介してHDD619から登録済みのWeb Intentsサービスを取得したり、格納したりするソフトウェアモジュールである。
図8(A)は、画像形成装置502で動作するWeb Intentsサービス103のソフトウェア(処理部)構成の一例を示す図である。また図8(B)は、Web Intentsサービス対応アプリケーション503が動作する画像形成装置502のソフトウェア構造の一例を示す図である。
なお、本実施例においては、少なくともプリンタ部やスキャナ部などを有するような画像形成装置502がWeb Intentsサービス対応アプリケーション503が動作するような実行環境をさらに備える例を説明している。しかしながら、同様な実行環境を備えることが可能な携帯端末やカーナビといった情報処理装置であっても、本発明を適用することが可能である。
まず図8(B)について説明する。画像形成装置502は、OS771乃至Naive機能部777を備える。図8(B)に示される各ソフトウェアは、ROM621あるいはHDD619に格納され、CPU620によって実行される。OS(Operation System)層771は、一般的にはリアルタイムOSが使用されるが、Linux(登録商標)等の汎用OSが用いられても良い。Java(登録商標)VM772は、Java(登録商標)などの仮想マシンであり、アプリケーションの実行環境を提供する。アプリケーションフレームワーク773は、アプリケーションのライフサイクルを管理する機能を提供する。インストーラサービス774は、後述のアプリケーションA,Bなど複数のアプリケーションを、アプリケーションフレームワーク773に登録することでインストール処理を行う。
Web Intentsサービスを提供するアプリケーションA775,アプリケーションB776は、インストーラサービス774によってインストールされたアプリケーションであり、画像形成装置502上で様々な機能を提供する。アプリケーションA775,アプリケーションB776は、画像形成装置502の外部からダウンロードしてインストールすることが可能である。アプリケーションA775,B776の少なくともいずれかは、操作表示部612を介してユーザとやり取りを行うことが可能である。
Native機能777は、画像形成装置502に組み込まれた機能を提供する。インタフェース部616を介して受信した印刷データに基づき、プリンタ部614で印刷を行う機能がNative機能の一例である。なお、本実施形態では、Java(登録商標)VM772、アプリケーションフレームワーク773、アプリケーションA775、アプリケーションB776はHDD619に格納されているものとする。また、Native機能777はROM621に格納されているものとする。
図8(A)は、画像形成装置502で動作するWeb Intentsサービス103のソフトウェア(処理部)構成の一例を示す図である。Web Intentsサービス対応アプリケーション503は、Web Intentsサービスアプリケーション503、通信部754、データベースサービス部755を備える。Web Intentsサービスアプリケーション503のサーブレット部750および各処理部は、ROM621あるいはHDD619に格納され、CPU620によって実行される。
サーブレット部750は、HTTPリクエストに応答して処理を実行するプログラムとして実装される。サーブレット部750は、Intent処理部751、プレゼンテーション部752を備える。Intent処理部751は、Intentオブジェクトを解析し、UA102からの要求に応じてコンテンツ処理部753へ処理を指示するソフトウェアモジュールである。プレゼンテーション部752は、通信部754を介して受け取ったページ取得要求などに応じてHTML文書を作成するソフトウェアモジュールである。
コンテンツ処理部753は、Intent処理部751からの指示を受けてコンテンツに対して処理をするソフトウェアモジュールである。例えば、画像データを編集したり、要求に応じてデータベースサービス部755を介してHDD619へコンテンツを格納したりするソフトウェアモジュールである。データベースサービス部755は、他の処理部からの要求に応じて、データの格納と取り出しを行う。また、データベースサービス部755は、Web Intentsサービス103と別の機器上にあってもよい。
図9は、UA102が自身に登録されたWeb Intentsサービスを管理するために保持する登録済みWeb Intentsサービステーブルの一例である。図9に示す情報が、Web Intentsサービス103が提供する機能のインテント(機能情報)として用いられる。本テーブルは画像形成装置502内のHDD619で保持され、データベースサービス部735によって制御される。
ServiceID801は、ブラウザ730内でWeb Intentsサービスを一意に識別するためのIDである。action802は、Web Intentsサービス103が提供する機能、サービスを示す情報であり、type803はaction802に対して扱えるデータ形式を示している。
href804は、Web Intentsサービス103の相対URLを示し、title805Web Intentsサービス103のタイトルを示している。また、disposition806は、Web Intentsサービス103がどのように表示されるかを示す。つまり、UA102はブラウザ730を介して、本テーブルを参照することで各Web Intentsサービス103へIntentの処理要求を出すことが可能である。なお本実施例では、図9に示したように、サービステーブルとして、ServiceID801やaction802、type803などを想定して説明したが、特にそれらに限定するものではない。例えば、サービステーブルにおいて特定のサービスが提供する機能、サービスを制限する制限条件を定義することも可能である。例えば、認証が必要なスキャンサービスなど、特定の条件下においてのみ呼び出し対象となるサービスをUA102に登録することができる。これにより、一つの要求に対して対応できるサービスが数多く登録されている場合でも、サービスを絞り込むことができる。
図10は、UA102がWeb Intentsクライアント101へアクセスし、Web Intentsサービス103に対してIntentsの処理要求を発行する際のシーケンス図である。ここでは、Web Intentsクライアント101はスキャン機能を提供するWebサイトとして扱う。また、UA102にWeb Intentsサービス103が既に登録されている状態で、UA102がWeb Intentsクライアント101へアクセスした時点から処理の説明をする。
S901で、ユーザ操作によってUA102のブラウザ730は通信部734を介してWeb Intentsクライアント101にHTTPのリクエストメッセージとしてページを要求する。S902で、Web Intentsクライアント101のWebアプリケーション700はページの作成を行う。S903で、Web Intentsクライアント101のWebアプリケーション700は、S902で作成したページをUA102へHTTPのレスポンスメッセージとして応答する。S904で、UA102のブラウザ730の表示部731は、受信したページを表示する。具体的には、解析部732が、通信部734を介してHTML文書を受け取って解析し、表示部731がレンダリングする。
ここで、S904で表示する画面の一例について、図11を用いて説明する。図10は、UA102がS904で表示する画面の一例である。画面1000はブラウザ730の表示部731が表示する。ボタン1001、1002、1003は提供するサービスを表し、それぞれ、コピー、スキャン、プリントの各機能を実行するためのボタンである。ブラウザ730は、ボタン1001、1002、1003が押下されたことを検知すると、Intent処理を実行する。
S904で表示された画面において、ユーザにより「スキャンする」ボタン1002が押下されると、S905で、ブラウザ730は登録済みWeb Intentsサービステーブル800(図9)を参照する。そして、ブラウザ730はスキャン処理要求を実行可能なWeb Intentsサービス103を表示部731に表示させる。ここでは、ボタン1002が押下されている場合を想定しているので、action802が「scan」であるService ID801の1、3、4が対象Web Intentsサービス103となる。図12は、その際にUA102のブラウザ730が表示する画面例である。画面1100は、ボタン1002が押下されることで、ポップアップ表示される。リスト1101は、S905で表示対象となったWeb Intentsサービス103の一覧である。
S905で表示された画面において、ユーザによりWeb Intentsサービス103が選択され、「OK」ボタンが押下されると、S906で、ブラウザ730の解析部732は、Intents処理要求を実行する。S907で、UA102はIntent発行処理に入る。
S907のIntents発行処理について図13および図14のフローチャートを用いて説明する。図13および図14は、UA102のIntent発行処理をWeb Intentsクライアント101、Web Intentsサービス103との関連処理も含めて示したフローチャートである。S1201で、UA102はユーザにより選択されたWeb Intentsサービス103をRAM622に記憶する。S1202でUA102はWeb Intentsサービス103に対してIntent処理要求を行う。
S1203で、サーブレット部750はUA102からのIntent処理要求を受信する。S1204で、Web Intentsサービス103のサーブレット部750は、S1203で受信した要求からIntentオブジェクトを取り出して解析し、コンテンツ処理部753に処理実行要求を送信する。S1205では、コンテンツ処理部753は、処理実行要求を受信する。S1206では、S1205で受信した要求を元に処理を開始する。
本実施例ではWeb Intentsサービス103のコンテンツ処理部753は、UA102のブラウザ730を介してユーザと相互作用しながら、原稿を「スキャン」してWeb Intentsクライアントに画像を渡すことを行う。コンテンツ処理部753はスキャンを実行後、HDD619にスキャン画像を保存する。Web Intentsサービス103はスキャンの処理が終了すると、図14のS1207にて、サーブレット部750に対して、処理終了通知を行う。S1208において、サーブレット部750は処理終了通知を受け取ると、S1209において、UA102に対して実行結果を通知、具体的にはIntent処理終了通知と共にスキャン画像を送信する。
S1210で、UA102はWeb Intentsサービス103からの処理終了通知およびスキャン画像を受信し、その結果をデータベースサービス部735に保存する。S1211で、UA102のブラウザ730はIntent終了処理を行う。例えば、S1212で、UA102のブラウザ730はWeb Intentsサービス103にIntent処理終了要求を送信する。S1213で、Web Intentsクライアント101はUA102から送られたIntent処理終了要求を受信する。S1214で、Web Intentsクライアント101のプレゼンテーション部702はIntent処理が終了したことを通知するための処理終了ページをHTML文書で作成し、通信部704を介してUA102へ送信する。S1215で、UA102はWeb Intentsクライアント101から送信された処理終了ページのHTML文書を受信する。S1216で、UA102のブラウザ730は、S1215で受信した処理終了ページを表示する。
以上の処理により、従来の画像形成装置などの実行環境で動作していたようなアプリケーションについても、アプリケーション連携の技術を用いることが可能となる仕組みが提供できる。具体的には、UA102がWeb Intentsクライアント101へWeb Intentsサービス103を提供する。これによりユーザはUA102を介してWeb Intentsサービス103を利用することが可能となる。

また、本実施例では、Web Intentsクライアント101が定義するaction802に該当するWeb Intentsサービス103をUA102は全て表示するとして説明してきた。しかし、Web Intentsクライアント101がaction802以外の属性を定義することで、UA102の表示を制御することも可能である。例えば、Web Intentsクライアント101側でコンテンツに対してセキュアを意味する属性を定義する。UA102はInternet経由でアクセスするWeb Intentsサービス103を無効化し、ローカルサービスのみの利用を可能とする。ローカルサービスとはUA102内に存在するWeb Intentsサービス103のことである。
本実施例において、各サーバや装置の構成、ソフトモジュールの構成、また、サービスを同利用する処理フローを示してきたが、これらは一例であり、限定されるものではない。また、本実施例では、サービスを呼び出す機能として、Web Intentsを例に説明を行ったが、これはサービスの一例であり、これに限定されるものではない。
また、本実施例ではWeb Intentsクライアント101はスキャン機能を提供するWebサイト、Web Intentsサービス103はスキャンを実行して画像を保存するサービスとして説明してきた。しかし、Web Intentsクライアント101を画像形成装置、Web Intentsサービス103をプリントサービスなどのMPS(Managed Print Service)に対して適用することも可能である。
(実施例2)
実施例1では、サーブレット部750がWeb Intentsサービス対応アプリケーション503に組み込まれる形で説明をしたが、サーブレット部のみ後から組み込むことも可能である。例えば、サーブレットは、既に動作中のアプリケーションに追加されてよい。また、Web IntentsサービスのIntents処理部が無効化手段として機能し、UAを介して処理要求を禁止するためにサーブレット部のみを無効化することも可能である。また、サーブレット部が存在しない、もしくは無効化されている場合でも、Web Intentsサービス対応アプリケーション503は、画像形成装置の操作部を介した指示に応じて、コンテンツ処理部753およびUI処理部756のみで動作可能である。具体的には、操作表示部612に画面を表示し、提供する機能をユーザ操作によって利用可能とするものである。その他、ブラウザ以外でもインテントを用いて情報を共有するアプリケーションによって、アプリケーション間でデータを共有することが可能である。サーブレット部の有無にかかわらずWeb Intentsサービス対応アプリケーション503は動作可能となり、また、あとからの機能追加および機能の動作の切り替えが可能になる。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。

Claims (10)

  1. 複数のアプリケーションとの間でデータの共有を行うための中継機能と、アプリケーションとが動作する画像形成装置であって、
    前記アプリケーションが提供する機能の機能情報を用いて、前記中継機能を介した処理要求が行われた際に、当該処理要求を受け付ける受け付け手段と、
    前記受け付けた処理要求に従う指示に応じて、前記アプリケーションが提供する機能を実行する実行手段と、
    前記実行手段による実行結果を、前記中継機能に通知する通知手段と、を有し、
    前記受け付け手段及び通知手段は、前記アプリケーションのサーブレットとして実現される
    ことを特徴とする画像形成装置。
  2. 前記実行手段による機能の実行で用いるデータを前記中継機能を介して取得する、前記サーブレットとして実現される取得手段をさらに有する
    ことを特徴とする請求項1に記載の画像形成装置。
  3. 前記アプリケーションは、前記中継機能に対応する機能情報が登録されており、かつ前記処理要求を実行可能な、一または複数のアプリケーションから選択される
    ことを特徴とする請求項1または2に記載の画像形成装置。
  4. 前記サーブレットとして実現される前記各手段は、既に動作中のアプリケーションに追加する追加手段をさらに備える
    ことを特徴とする請求項1乃至3のいずれか一項に記載の画像形成装置。
  5. 前記中継機能を介した処理要求を禁止するために、前記サーブレットを無効化する無効化手段をさらに備える
    ことを特徴とする請求項1乃至4のいずれか一項に記載の画像形成装置。
  6. 前記実行手段は、前記中継機能を介した処理要求に従う指示なしに、前記画像形成装置の操作部を介した指示に応じて前記アプリケーションが提供する機能を実行する
    ことを特徴とする請求項1乃至4のいずれか一項に記載の画像形成装置。
  7. 前記中継機能は、前記画像形成装置で動作するオペレーティングシステムまたはブラウザである
    ことを特徴とする請求項1乃至6のいずれか一項に記載の画像形成装置。
  8. 前記アプリケーションの前記機能情報に制限条件が定義されている場合、当該アプリケーションの機能が制限される
    ことを特徴とする請求項1乃至7のいずれか一項に記載の画像形成装置。
  9. 複数のアプリケーションとの間でデータの共有を行うための中継機能と、アプリケーションとが動作する画像形成装置における制御方法であって、
    前記アプリケーションが提供する機能の機能情報を用いて、前記中継機能を介した処理要求が行われた際に、当該処理要求を受け付ける受け付け工程と、
    前記受け付けた処理要求に従う指示に応じて、前記アプリケーションが提供する機能を実行する実行工程と、
    前記実行手段による実行結果を、前記中継機能に通知する通知工程と、を有し、
    前記受け付け工程及び通知工程は、前記アプリケーションのサーブレットを用いて実現される
    ことを特徴とする制御方法。
  10. 請求項1乃至8のいずれか1項に記載の画像形成装置が備える各手段としてコンピュータを機能させることを特徴とするプログラム。
JP2014020724A 2014-02-05 2014-02-05 画像形成装置、その制御方法およびプログラム Pending JP2015149568A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014020724A JP2015149568A (ja) 2014-02-05 2014-02-05 画像形成装置、その制御方法およびプログラム
US14/609,765 US9282211B2 (en) 2014-02-05 2015-01-30 Image forming apparatus, control method, and storage medium in which data is shared between applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014020724A JP2015149568A (ja) 2014-02-05 2014-02-05 画像形成装置、その制御方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2015149568A true JP2015149568A (ja) 2015-08-20

Family

ID=53755869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014020724A Pending JP2015149568A (ja) 2014-02-05 2014-02-05 画像形成装置、その制御方法およびプログラム

Country Status (2)

Country Link
US (1) US9282211B2 (ja)
JP (1) JP2015149568A (ja)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
EP3809407A1 (en) 2013-02-07 2021-04-21 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
KR20210009515A (ko) * 2019-07-17 2021-01-27 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 사용자 정의 서비스 관리
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248657A (ja) * 2002-02-25 2003-09-05 Ricoh Co Ltd 電子装置及び電子装置システム
US8407316B2 (en) * 2008-10-30 2013-03-26 Xerox Corporation System and method for managing a print job in a printing system
JP2011055075A (ja) 2009-08-31 2011-03-17 Kyocera Mita Corp 画像形成システムおよび画像形成装置
JP2011124957A (ja) 2009-12-14 2011-06-23 Canon Inc 情報処理装置、その制御方法、プログラム、及び記憶媒体
JP2012068835A (ja) * 2010-09-22 2012-04-05 Canon Inc 画像形成装置、画像形成装置の制御方法、及びプログラム
JP2013069077A (ja) 2011-09-21 2013-04-18 Canon Inc システム、情報処理装置およびその制御方法、画像形成装置およびその制御方法、並びにプログラム

Also Published As

Publication number Publication date
US20150222774A1 (en) 2015-08-06
US9282211B2 (en) 2016-03-08

Similar Documents

Publication Publication Date Title
JP2015149568A (ja) 画像形成装置、その制御方法およびプログラム
JP5754128B2 (ja) 画像形成装置、情報処理システム、情報処理方法、及びプログラム
JP5231620B2 (ja) サーバ装置
US20080091800A1 (en) Local user interface support of remote services
JP2013218508A (ja) サーバ装置、要求処理システムおよび電子機器
KR20080095745A (ko) 화상 형성 장치의 커스터마이즈 방법 및 시스템
JP2010113599A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム、及び記憶媒体
JP2016197466A (ja) サーバ装置、要求処理システムおよび電子機器
US20110043844A1 (en) Document management system and method for controlling the same
JP5817766B2 (ja) 情報処理装置、通信システム及びプログラム
US9110962B2 (en) Data providing apparatus for implementing script, electronic apparatus for implementing script, data processing system for implementing script, and method of data processing for implementing script
US9769246B2 (en) Information processing terminal and control method
JP6202137B2 (ja) 画像形成装置、情報処理方法、及びプログラム
JP5939336B2 (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
US9753903B2 (en) Information processing terminal, processing apparatus, and control method
JP2006302145A (ja) 文書登録システム、画像形成装置、情報処理装置
JP2007081771A (ja) ジョブ処理装置およびジョブ依頼装置
JP6617564B2 (ja) 画像形成装置、アプリケーション実行方法、アプリケーション書換方法、およびコンピュータプログラム
JP6273798B2 (ja) アプリケーションシステム、画像形成装置、ウェブサーバ、アプリケーション起動方法、およびコンピュータプログラム
JP2015114934A (ja) 操作用画面表示システム、サーバ、クライアント、操作用画面表示方法、およびコンピュータプログラム
JP6417907B2 (ja) プリントシステム、画像形成装置、サーバ、端末装置、情報提示方法、およびコンピュータプログラム
JP6232977B2 (ja) アプリケーションシステム、ウェブサーバ、アプリケーション起動方法、およびインストーラ
US20160127446A1 (en) Information processing apparatus and method
US20140344377A1 (en) Information processing terminal, method therefor, and storage medium
JP2008234233A (ja) 配信システム、機器設定システム及び配信設定管理方法