(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-27
(45)【発行日】2024-07-05
(54)【発明の名称】画像生成システム、通信装置、それらの動作方法およびプログラム
(51)【国際特許分類】
G06F 16/16 20190101AFI20240628BHJP
H04L 67/2871 20220101ALI20240628BHJP
【FI】
G06F16/16
H04L67/2871
(21)【出願番号】P 2022099798
(22)【出願日】2022-06-21
【審査請求日】2023-05-25
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】池田 睦
【審査官】松尾 真人
(56)【参考文献】
【文献】特開2011-215670(JP,A)
【文献】特開2013-257707(JP,A)
【文献】特開2020-123978(JP,A)
【文献】特開2011-198355(JP,A)
【文献】特開2001-350659(JP,A)
【文献】特開2012-123679(JP,A)
【文献】特開2012-038094(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/29
H04L 67/00-67/75
(57)【特許請求の範囲】
【請求項1】
通信装置と通信可能な画像生成システムであって、
前記通信装置からWebページに対する操作指示を受信する指示受信手段と、
前記操作指示がファイル選択のための押下である場合に所定の情報を前記通信装置へ送信する送信手段と、
前記所定の情報に基づいて前記通信装置から送信されたファイルを受信するファイル受信手段と、
前記ファイルの情報を前記Webページに反映して描画結果を生成する生成手段と、
前記描画結果を前記通信装置へ送信する結果送信手段と、
を備えることを特徴とする画像生成システム。
【請求項2】
前記送信手段は、押下された要素の情報を前記所定の情報として前記通信装置へ送信し、
前記ファイル受信手段は、前記押下された要素の情報に対応するファイルを前記通信装置から受信することを特徴とする請求項1に記載の画像生成システム。
【請求項3】
前記送信手段は、ファイル選択モードであることを示す情報を前記所定の情報として前記通信装置へ送信し、
前記画像生成システムは、
前記ファイル選択モードであることを示す情報に基づいて前記通信装置から送信されたファイル構成情報を受信する構成情報受信手段と、
前記ファイル構成情報に基づいてフォルダ構成又はファイル構成の視覚的表現を生成して前記通信装置へ送信する表現送信手段と、
前記通信装置から前記視覚的表現に対するユーザの押下座標の情報を受信する座標受信手段と、
前記押下座標に基づいて前記ユーザにより選択されたファイルを示す情報を前記通信装置へ送信する情報送信手段と、をさらに備え、
前記ファイル受信手段は、前記選択されたファイルを前記通信装置から受信することを特徴とする請求項1に記載の画像生成システム。
【請求項4】
前記表現送信手段は、前記ファイル構成情報に基づいてフォルダを展開してファイル群を生成することにより、前記通信装置と同じフォルダ構成又はファイル構成の視覚的表現を再現することを特徴とする請求項3に記載の画像生成システム。
【請求項5】
前記ファイル群は、0バイトのファイル群であることを特徴とする請求項4に記載の画像生成システム。
【請求項6】
ユーザが前記通信装置を介した前記画像生成システムの利用を終了する場合に、前記通信装置から受信した情報を削除する削除手段をさらに備えることを特徴とする請求項1乃至5の何れか1項に記載の画像生成システム。
【請求項7】
画像生成システムと通信可能な通信装置であって、
前記画像生成システムへWebページに対する操作指示を送信する指示送信手段と、
前記操作指示がユーザによるファイル選択のための押下である場合に前記画像生成システムから送信される、所定の情報を受信する受信手段と、
前記所定の情報に基づいてファイルを前記画像生成システムへ送信するファイル送信手段と、
前記ファイルの情報が前記Webページに反映された描画結果を前記画像生成システムから受信する結果受信手段と、
前記描画結果を画面に表示させる表示制御手段と、
を備えることを特徴とする通信装置。
【請求項8】
通信装置と通信可能な画像生成システムの動作方法であって、
前記通信装置からWebページに対する操作指示を受信する指示受信工程と、
前記操作指示がファイル選択のための押下である場合に所定の情報を前記通信装置へ送信する送信工程と、
前記所定の情報に基づいて前記通信装置から送信されたファイルを受信するファイル受信工程と、
前記ファイルの情報を前記Webページに反映して描画結果を生成する生成工程と、
前記描画結果を前記通信装置へ送信する結果送信工程と、
を有することを特徴とする画像生成システムの動作方法。
【請求項9】
画像生成システムと通信可能な通信装置の動作方法であって、
前記画像生成システムへWebページに対する操作指示を送信する指示送信工程と、
前記操作指示がユーザによるファイル選択のための押下である場合に前記画像生成システムから送信される、所定の情報を受信する受信工程と、
前記所定の情報に基づいてファイルを前記画像生成システムへ送信するファイル送信工程と、
前記ファイルの情報が前記Webページに反映された描画結果を前記画像生成システムから受信する結果受信工程と、
前記描画結果を画面に表示させる表示制御工程と、
を有することを特徴とする通信装置の動作方法。
【請求項10】
コンピュータに、請求項9に記載の通信装置の動作方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像生成システム、通信装置、それらの動作方法およびプログラムに関する。
【背景技術】
【0002】
Webブラウザ(以下、ブラウザ)を搭載し、ブラウザ上でWebページを閲覧できる機能を有する通信装置が普及している。ブラウザを通してWebページを表示することにより、通信装置が外部サービスと連携できるようになる。例えば、ブラウザは、通信装置が認識しているファイルを外部サービスにアップロードすることもできる。
【0003】
このブラウザの一形態として、クラウドサーバ上でWebページの描画結果を生成するクラウドブラウザと呼ばれる形態がある。Webページの解析処理や実行処理といった計算負荷の高い処理をクラウドサーバ上で実行することにより、通信装置の計算負荷を軽減している。
【0004】
特許文献1では、Webサービスから取得した画面情報にファイル選択要素が存在する場合、ブラウザが処理可能なセレクトボックスに変換し、セレクトボックスの選択肢に、Webサービスと連携可能な別のWebサービスからダウンロードしたファイルを設定することを開示している。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、通信装置とWebサービスとの間にクラウドブラウザとして稼働する画像生成システムが介在する場合、画像生成システム上には、ユーザが閲覧したい通信装置上のファイルが存在しないことになる。そのため、画像生成システムで稼働するクラウドブラウザは、通信装置上のファイルを選択することができないという課題がある。
【0007】
本発明は、上記の課題に鑑みてなされたものであり、画像生成システムにおいて、通信装置上のファイルをユーザが選択可能にするための技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の目的を達成する本発明に係る画像生成システムは、
通信装置と通信可能な画像生成システムであって、
前記通信装置からWebページに対する操作指示を受信する指示受信手段と、
前記操作指示がファイル選択のための押下である場合に所定の情報を前記通信装置へ送信する送信手段と、
前記所定の情報に基づいて前記通信装置から送信されたファイルを受信するファイル受信手段と、
前記ファイルの情報を前記Webページに反映して描画結果を生成する生成手段と、
前記描画結果を前記通信装置へ送信する結果送信手段と、
を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、画像生成システムにおいて、通信装置上のファイルをユーザが選択することが可能となる。
【図面の簡単な説明】
【0010】
【
図1】一実施形態に係る仮想マシンのハードウェア構成の一例を示す図。
【
図2】一実施形態に係る画像生成システムおよび通信装置の構成例を示す図。
【
図3】実施形態1に係る画像生成システムの処理の流れを示したフローチャート。
【
図4】実施形態1に係る通信装置の処理の流れを示したフローチャート。
【
図5】一実施形態に係る処理をプログラムで実装した例を示す図。
【
図6】実施形態2に係る画像生成システムの処理の流れを示したフローチャート。
【
図7】実施形態2に係る通信装置の処理の流れを示したフローチャート。
【
図8】一実施形態に係るファイル選択要素とファイル閲覧機能の表示例を示す図。
【
図9】一実施形態に係る画像生成システムと通信装置との間で送受信するデータの例を示す図。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
(実施形態1)
本実施形態では、クラウドブラウザとして機能する画像生成システムにおいて、遠隔の通信装置が持つファイル閲覧機能を利用してファイル選択を完了し、画像生成システムがWebページに対してファイル情報を反映させる例を説明する。
【0013】
<ハードウェア構成>
図1のブロック図を参照して、一実施形態に係る画像生成システムが有する仮想マシンのハードウェア構成の一例を説明する。
図1において、101は仮想マシン100全体を制御するCentral Processing Unit(CPU)である。102は変更を必要としないプログラムやパラメータを格納するRead Only Memory(ROM)である。103は外部装置などから供給されるプログラムやデータを一時記憶するRandom Access Memory(RAM)である。104は保持するデータや供給されたデータを表示するためのインタフェースである。105は101~104の各ユニットを通信可能に接続するシステムバスである。ユーザからの操作を受けてデータを入力するマウスなどのポインティングデバイスやキーボードなどの入力デバイスとのインタフェース等があってもよい。また仮想マシン100に仮想的に固定して設置されたハードディスクやメモリカード等があってもよい。あるいは仮想マシン100から仮想的に着脱可能なフレキシブルディスク(FD)やCompact Disk(CD)等の光ディスク、磁気や光カード、ICカード、メモリカードなどを含む外部記憶装置等があってもよい。さらにインターネットなどのネットワーク回線に接続するためのネットワークインタフェース等があってもよい。
【0014】
また、画像生成システムと通信する通信装置のハードウェア構成についても仮想マシン100のハードウェア構成と同様の構成とすることができる。
【0015】
<システム構成及びソフトウェア構成>
次に、
図2を参照して、一実施形態に係るクラウドブラウザとして機能する画像生成システム及び通信装置の構成例を説明する。
図2は、一実施形態に係る画像生成システム及び通信装置のそれぞれのソフトウェア構成を含むシステム構成の一例である。
【0016】
図2において、201は通信装置であり、202はWebサーバであり、203は画像生成システムである。本実施形態において、画像生成システム203は、例えばクラウドブラウザである。
【0017】
通信装置201は、表示部211、送受信部212、ファイル閲覧機能呼出し部213、及び専用ビューワ214を含む。表示部211は、各種の画面を表示する。送受信部212は、各種の情報の送受信を行う。ファイル閲覧機能呼出し部213は、例えば後述する
図8(B)の画面802のようなファイル閲覧画面を表示する。専用ビューワ214は、画像生成システム203から受信した描画結果を表示したり、ユーザの操作指示を受け付けたりすることができる。
【0018】
画像生成システム203は、ゲートウェイ204と仮想マシン205とを含む。仮想マシン205は、
図1に示した仮想マシン100のソフトウェア機能表現である。仮想マシン205は、ブラウザ206、押下要素判定部207、ファイル情報反映部208、描画結果生成部209、送受信部210、ファイル構成展開部220、及びファイル選択通知部221を含む。
【0019】
ブラウザ206は、仮想マシン205上で稼働するいわゆるブラウザエンジンであり、HTML、JavaScript(登録商標)、CSS等の解析や、ユーザ操作・通信イベントに伴う処理を実行する。通信装置201と仮想マシン205との通信、および、Webサーバ202と仮想マシン205との通信は、ゲートウェイ204を通して行われる。
【0020】
押下要素判定部207は、通信装置201から受信したユーザの操作指示に基づいて、ブラウザ206で表示中のWebページに含まれるファイル選択要素をユーザが押下したか否かを判定する。ファイル選択要素は例えば<input type="file">という表現で記述される。
【0021】
ファイル情報反映部208は、ファイル選択要素を利用して選択されたファイルの情報を、Webページに反映させる。例えば、ブラウザ206がWebページ中の所定の場所に、ユーザが選択したファイル名を表示することが、Webページへのファイル情報の反映の一例である。
【0022】
描画結果生成部209は、通信装置201で表示するための描画結果を生成する表示制御を行う。送受信部210は、各種情報を送受信する。ファイル構成展開部220は、通信装置201から受信したファイル構成情報を仮想マシン205内に展開する。ファイル選択通知部221は、送受信部210を介して押下要素の情報を通信装置201へ送信する。
【0023】
ユーザは、通信装置201の表示部211の画面を介して、所望のWebページを閲覧することができる。通信装置201は、ユーザが閲覧したいWebサーバ202が提供するWebページのURL情報を、送受信部212を通して、画像生成システム203に送信する。
【0024】
次に、画像生成システム203は、通信装置201から受信したURL情報に基づいてWebサーバ202が提供するWebページにアクセスし、描画結果生成部209を用いて描画結果を生成する。その後、画像生成システム203は、通信装置201から描画結果の取得要求があった場合、送受信部210を通して、生成した描画結果を通信装置201へ送信する。通信装置201は、送受信部212を通して描画結果を受信し、表示部211を介してユーザに描画結果を提示する。
【0025】
<通信装置のWeb標準仕様の例>
ここで、
図8(A)乃至
図8(C)を参照して、Web標準仕様に基づいたファイル選択要素と、ファイル閲覧機能による表示結果とを説明する。
図8(A)は、ファイル選択要素を含んだWebページの一例である。
図8(A)の例では、ファイル選択要素は、Browse...と表示されたボタン801である。通信装置201の組込みブラウザにより、ユーザが通信装置201を操作してボタン801を押下したと判定された場合、ファイル閲覧機能呼出し部213は、通信装置201に固有のファイル閲覧機能を起動する。
図8(B)は、ファイル閲覧機能が呼び出された結果を示す。802はファイル閲覧画面である。
図8(B)の例では、Top_Dirフォルダを表示中である。Top_DirにはSub_Dir_01フォルダとSub_Dir_02フォルダとが存在することが分かる。ファイルの選択は、所望のフォルダやファイルを選択した後、Openと表示されたボタン803を押下することで実行される。ユーザが通信装置201を操作してファイル閲覧画面802でファイルを選択した場合、
図8(C)のように所定の場所にユーザが選択したファイルのファイル名が表示される。
【0026】
この通信装置201での一連の操作内容を、画像生成システム203が介在した場合にも実行できるように、以下のような処理を行う。
【0027】
<処理>
図3と
図4は、本実施形態に係る処理を示すフローチャートである。
図3は、画像生成システム203側の処理フローであり、
図4は、通信装置201側の処理フローである。
【0028】
まず、
図3を参照して、画像生成システム203側の処理フローを説明する。S301において、画像生成システム203は、通信装置201から通知されたWebページのURLを読み込み、Webページの描画結果を生成して通信装置201へ送信する。
【0029】
S302において、画像生成システム203は、通信装置201から通知されたユーザの操作指示を受信する(指示受信)。ユーザの操作指示には、通信装置201の画面を指で触る"タップ"操作や、通信装置201が備えるキーボード(不図示)のキーを押下する"キー入力"操作といった操作の属性を示す情報が含まれる。また、ユーザの操作指示には、ユーザが画面上で触った場所を示すx、y座標や、ユーザが押下したキーの値といった操作の属性ごとに付属される情報が含まれる。なお、WebページのURL情報や操作指示は、ゲートウェイ204を通り、送受信部210を通ってブラウザ206に到達する。
【0030】
ここで、
図5(B)を参照して、本実施形態に係る通信装置201から画像生成システム203へユーザ操作指示を送信する方法を説明する。
図5(B)は、HTTP通信のBODYにユーザ操作情報を格納するJavaScriptプログラムの一例である。
図5(B)のwebclientは、通信先にHTTP通信リクエストを送信する構造体である。リクエスト先はurlメンバで指定でき、値は"https://www.cloudbrowser.canon"である。またリクエストのbodyはbodyメンバで指定でき、値は{type:click, x:50, y:20}である。type:clickは、ユーザ操作がクリックであることを示す。またx:50は、ユーザがクリックしたx座標が50であることを示し、y:20は、ユーザがクリックしたy座標が20であることを示す。
【0031】
S303において、押下要素判定部207は、通信装置201を用いてユーザが押下した要素がファイル選択要素であるか否かを判定する。
【0032】
図5(A)を参照して、S303の判定方法を説明する。
図5(A)は、ファイル選択要素を判定するためのJavaScriptプログラムの一例である。document.getElementFromPoint(x,y);は、x、y座標の要素を抽出する関数である。これによりユーザがタップした位置(x,y)に存在する要素が分かる。またelement.tagName;は要素名を示し、element.type;はtype属性の値を示す。本実施形態では、要素名が"input"であり、かつ、type属性の値が"file"だった場合に、ユーザが押下した要素がファイル選択要素であったと判定することができる。
【0033】
S303の判定の結果、ユーザが押下した要素がファイル選択要素であった場合、S304へ進む。一方、S303の判定の結果、ユーザが押下した要素がファイル選択要素ではなかった場合、S311へ進む。
【0034】
S304において、ファイル選択通知部221は、送受信部210を介して押下要素の情報を通信装置201へ送信する。
【0035】
押下要素の情報は、<input type="file">といった構造化文書の文字列であってもよいし、プログラムで表現された構造体であってもよい。通信装置201と画像生成システム203との間で送受信する情報と要素の種別との対応を予め取り決めておくことで、押下要素を判別可能となる。
【0036】
ここで、
図9(B)を参照して、送受信する情報と要素の種別との対応を取り決める方法を説明する。
図9(B)には、key列と、value列、及び説明列が存在する。key列は情報の属性を示し、value列はその属性の値を示す。
図9(B)の表は、通信装置201と画像生成システム203とのどちらも保有しているとする。
【0037】
例えば、S304において、ファイル選択通知部221が、送受信部210を介して、Key=Element、value=Fileという文字列を通信装置201へ送信したとする。この場合、Key=Element、value=Fileの説明列を見ると、「押下要素がファイル選択要素」と記載されている。よって、通信装置201は、画像生成システム203側でブラウザ206が、ユーザが押下した要素がファイル選択要素であると判定したことを認識できる。
【0038】
S305において、送受信部210は、通信装置201からファイルを受信したか判定する(ファイル受信判定)。S305の判定の結果、ファイルを受信していなかった場合、S306へ進み、待機する。一方、S305の判定の結果、ファイルを受信した場合、S307へ進む。本実施形態では、S305で受信したファイルは、仮想マシン205の保存領域に格納される。
【0039】
S307において、ファイル情報反映部208は、S305で受信したファイルの情報をWebページに反映する。
【0040】
ここで、
図5(C)を参照して、S307の反映方法を説明する。
図5(C)において、g_signal_connect()は、特定のシグナル発生に関連して発火するコールバック関数を登録する関数である。
図5(C)では"run-file-chooser"シグナルが発生した際に、関数fileChooser_cb()が呼び出されるようにしている。"run-file-chooser"シグナルは、ブラウザ206がファイル選択すると判定した場合に発生するシグナルである。
【0041】
続いて、fileChooser_cb()内のfilesToSelectは、S305で受信したファイル名を格納する変数である。本実施形態では、S305で受信したファイル名が、"dummy_file.txt"であるする。webkit_file_chooser_request_select_files()は、引数に設定されたファイル名を、Webページに反映させる関数である。この関数の実行により、Webページ上に"dummy_file.txt"と表示させることができる。
図5(C)の処理により、
図8(A)乃至
図8(C)に示したWeb標準仕様の動作と同じように、ファイルの情報(例えばファイル名)をWebページに反映させることができる。また、ユーザにより選択されたファイルのデータをS305で受信して保持しているので、ユーザ操作に応じてこのファイルをアップロードする処理等を実行することが可能となる。
【0042】
S308において、描画結果生成部209は、S307の反映結果に基づく描画結果を生成して通信装置201へ送信する(描画結果送信)。S309において、ブラウザ206は、Webページの閲覧が終了したか否かを判定する。S309の判定の結果、Webページの閲覧が終了した場合、S310へ進む。一方、S309の判定の結果、Webページの閲覧が終了していない場合、S302に戻る。
【0043】
S310において、画像生成システム203は、S305で受信したファイルを仮想マシン205の保存領域から削除する。S310では、情報秘匿性の観点で削除している。そのため、S305で受信したファイルを仮想マシン205内で継続して利用する場合、削除しなくてもよい。
【0044】
S311において、押下要素判定部207は、S302で受信したユーザの操作指示(ファイル選択操作以外の操作指示)を、ブラウザ206に通知する。S312において、送受信部210は、押下要素の情報を通信装置201へ送信する。その後、S308へ進む。以上で
図3の一連の処理が終了する。
【0045】
次に、
図4を参照して、通信装置201側の処理フローを説明する。S401において、通信装置201は、画像生成システム203との接続後、専用ビューワ214を起動する。専用ビューワ214の機能は主に2つある。1つは、画像生成システム203から受信した描画結果を表示する機能である。もう1つは、ユーザの操作指示を受け付け、それを画像生成システム203へ向けて送信する機能である。
【0046】
S402において、専用ビューワ214は、送受信部212を経由して、ユーザの操作指示を画像生成システム203へ送信する(指示送信)。S402で送信した操作指示の情報は、画像生成システム203側の処理フローのS302で受信される。
【0047】
S403において、送受信部212は、画像生成システム203からユーザの押下要素の情報を受信したか否か判定する。S403の判定の結果、ユーザの押下要素の情報を受信した場合、S404へ進む。一方、S403の判定の結果、ユーザの押下要素の情報を受信していなかった場合、S410へ進む。なお、通信装置201は、画像生成システム203から、押下要素の情報の他に描画結果を受信することがある。
【0048】
S404において、通信装置201は、S403で受信した押下要素が、ファイル選択要素であるか否かを判定する。S404の判定の結果、押下要素がファイル選択要素だった場合、S405へ進む。一方、S404の判定の結果、押下要素がファイル選択要素ではなかった場合、S409へ進む。
【0049】
S405において、ファイル閲覧機能呼出し部213は、ファイル閲覧画面を表示する。ファイル閲覧画面の例は、
図8(B)の画面802である。専用ビューワ214が、描画結果を表示した状態で、その上にファイル閲覧画面を表示することで、表示部211の画面に
図8(B)のような表示結果を出力することができる。
【0050】
S406において、通信装置201は、ユーザからファイルの選択を受け付ける。その後、S407において、送受信部212は、画像生成システム203に向けて、選択済ファイルを送信する(ファイル送信)。
【0051】
S408において、通信装置201は、ユーザが画像生成システム203(クラウドブラウザ)の利用を終了したか否かを判定する。S408の判定の結果、ユーザが画像生成システム203(クラウドブラウザ)の利用を終了した場合、一連の処理を終了する。一方、S408の判定の結果、ユーザが画像生成システム203(クラウドブラウザ)の利用を継続する場合、S402に戻る。
【0052】
S409において、通信装置201は、押下要素に応じた処理を実施する。S409に該当する処理の例としては、表示部211が通信装置201の画面にソフトウェアキーボードを表示するといった処理が挙げられる。
【0053】
S410において、通信装置201は、画像生成システム203から描画結果を受信したか否かを判定する(描画結果受信判定)。S410の判定の結果、描画結果を受信した場合、S411へ進む。一方、S410の判定の結果、描画結果を受信しなかった場合、S408へ進む。S411において、表示部211は、描画結果を画面に表示する。その後、S408へ進む。
【0054】
以上説明したように、本実施形態では、クラウドブラウザとして機能する画像生成システムが提供するWebページの画面においてユーザがファイル選択要素を押下した場合に、ユーザが所持する通信装置がファイル選択画面を表示する。このファイル選択画面は、通信装置に保存されているフォルダ又はファイルを読み出して通信装置上に表示される。そして、ユーザが通信装置に保存されているファイルを選択したことに応じて、当該ファイルを画像生成システムに送信する。
【0055】
これにより、画像生成システムは、本来は保持していない通信装置に保存されているフォルダ、ファイル及び当該ファイルに関する情報(例えばファイル名)を取得することができる。画像生成システムは、取得したフォルダ、ファイル、ファイルに関する情報等を用いて、Webページにおけるファイル選択結果にそれらの情報を反映させる。したがって、画像生成システムは、
図8(C)のような選択結果を表示することが可能となり、選択したファイルをユーザの指示に応じてアップロードするといった処理を行うことも可能となる。
【0056】
このように、本実施形態によれば、クラウドブラウザとして機能する画像生成システムにおいて、ユーザが通信装置に保存されているファイルを選択することができ、かつ、ユーザが選択したファイルをWebページに反映することができる。
【0057】
(実施形態2)
本実施形態では、画像生成システムが遠隔の通信装置からファイル構成情報を受信し、それに基づいて画像生成システムが仮想マシン上でファイル構成を再現し、仮想マシンのファイル閲覧機能を利用することで、ファイル選択を可能にする例を説明する。
【0058】
システム構成、装置構成については、実施形態1で説明した構成と同様であるため、説明を省略する。
【0059】
<処理>
図6と
図7は本実施形態のフローチャートである。
図6は、本実施形態に係る画像生成システム203側の処理フローである。
図7は、本実施形態に係る通信装置201側の処理フローである。
【0060】
まず、
図6を参照して、画像生成システム203側の処理フローを説明する。なお、
図6及び
図3において、S601とS301、S602とS302、S603とS303、S618とS311、S619とS312は同じ処理であるため、説明を省略する。
【0061】
図6において、S603の判定の結果、ファイル選択要素が押下された場合、S604へ進む。一方、S603の判定の結果、ファイル選択要素が押下されていない場合、S618へ進む。
【0062】
S604において、送受信部210は、ファイル選択モードであることを示す情報を通信装置201へ送信する。ここで、ファイル選択モードであることを示す情報について、
図9(B)を参照して説明する。
図9(B)を見ると、通信装置201と画像生成システム203との間で送受信される情報がkey=Mode、value=FileSelectの場合、ファイル選択モードであると分かる。S604では、画像生成システム203から通信装置201へ、key=Mode、value=FileSelectという文字列を送信する。
【0063】
S605において、画像生成システム203は、送受信部210によりファイル構成情報を受信したか否かを判定する(構成情報受信判定)。S605の判定の結果、ファイル構成情報を受信していなかった場合、S606へ進み、待機する。一方、S605の判定の結果、ファイルを受信した場合、S607へ進む。本実施形態では、S605で受信したファイル構成情報は、仮想マシン205の保存領域に格納される。
【0064】
ここで、
図9(A)を参照して、ファイル構成情報の一例について説明する。
図9(A)は通信装置201上のファイル構成を示す。通信装置201の最上位フォルダはTop_Dirであり、Top_DirにはSub_Dir_01、Sub_Dir_02、Sub_Dir_03の3つのフォルダが含まれる。Sub_Dir_02には、Sub_Dir_21、Sub_Dir_22の2つのフォルダが含まれる。Sub_Dir_21にはdummy_file.txtというファイルが含まれる。本実施形態では、ユーザが、ファイル閲覧機能を利用してdummy_file.txtを選択したいものと仮定する。ファイル構成情報の記述形式は、構造化文書のような文字列で表現されてもよいし、プログラム上の構造体として表現されてもよい。
【0065】
S607において、ファイル構成展開部220は、S605で受信したファイルの構成情報を仮想マシン205内に展開する。
図9(A)を例にすると、まずTop_Dirを生成し、その中にSub_Dir_01、Sub_Dir_02、Sub_Dir_03に生成する。次にSub_Dir_02の中に、Sub_Dir_21、Sub_Dir_22を生成する。
【0066】
続いて、S608において、ファイル構成展開部220は、0バイトの空のファイルを生成する(。
図9(A)ではフォルダSub_Dir_21の中に、0バイトのdummy_file.txtを生成する。S607及びS608の処理により、仮想マシン205のファイル閲覧機能を起動した際に、通信装置201と同じようなフォルダ構成を閲覧することができる。
【0067】
続いて、S609において、ファイル構成展開部220は、S602で受信した通信装置201のユーザの操作指示をブラウザ206に通知する。これに応じて、ブラウザ206は、仮想マシン205のファイル閲覧機能を起動する。ブラウザ206は、ファイル閲覧機能を呼び出す機能が標準で装備されているため、仮想マシン205内ではファイル閲覧機能呼出し部は不要となる。
【0068】
S610において、仮想マシン205の描画結果生成部209は、描画結果を生成して通信装置201へ送信する。このときの描画結果は、仮想マシン205のファイル閲覧機能によって、ファイル構成情報から展開・生成されたフォルダおよびファイル群が視覚的に表現されたファイル構成の視覚的表現である(視覚的表現送信)。
【0069】
S611において、送受信部210は、通信装置201からユーザの押下情報(例えば押下座標)を受信する(座標受信)。S612において、ブラウザ206は、ユーザが押下した押下座標に存在するファイルを特定する。このとき、ブラウザ206は、S609で仮想マシン205のファイル閲覧機能を起動しているため、S611で受信した押下情報を仮想マシン205に通知すれば、S612において、ユーザが所望するファイルを特定することができる。
【0070】
ここで、ユーザが選択したファイルがdummy_file.txtであるとする。S612において、ブラウザ206は、標準的なファイル選択要素の処理を利用して、Webページにdummy_file.txtを適用する。仮想マシン205上で選択されたdummy_file.txtは、この時点では、S608で生成された0バイトの空のファイルである。このままWebページの処理を進めてしまうと、0バイトのデータがWebページ側に通知されるため、通信装置201からdummy_file.txtのデータを取得する。
【0071】
S613において、送受信部210は、S612で特定したファイルの情報を通信装置201へ送信する(情報送信)。S613で送信する情報は、例えばファイル名とすることができる。本実施形態では、送信する文字列はdummy_file.txtであるものとする。
【0072】
続いて、S614において、送受信部210は、通信装置201から、選択済ファイルのデータを受信する。S614では通信装置201に存在するdummy_file.txtのデータを受信する。また、受信したdummy_file.txtのデータを、それまでの0バイトの空のデータと置き換える。その後、S615へ進む。
【0073】
S615において、描画結果生成部209は、描画結果を生成し、送受信部210を介して通信装置201へ送信する。S616において、画像生成システム203は、ユーザがWebページの利用を終了したか否かを判定する。S616の判定の結果、ユーザがWebページの利用を終了した場合、S617へ進む。
【0074】
S617において、画像生成システム203は、S605で受信したファイル構成情報と、S614で受信した選択済ファイルのデータとを、仮想マシン205上から削除する。その後、一連の処理を終了する。一方、S616の判定の結果、ユーザがWebページの利用を継続する場合、S602に戻る。
【0075】
続いて、
図7を利用して、本実施形態における通信装置201の処理フローを説明する。
図7及び
図4において、S701とS401、S702とS402、S703とS403、S709とS409、S710とS410は同じ処理であるため、説明を省略する。
【0076】
S704において、通信装置201の送受信部212は、ファイル選択モードを識別する情報を受信したか否かを判定する。S704の判定の結果、ファイル選択モードを識別する情報を受信した場合、S705へ進む。一方、ファイル選択モードを識別する情報を受信しなかった場合、S707へ進む。
【0077】
ここで、
図9(B)を参照して、ファイル選択モードを識別する情報について説明する。
図9(B)を見ると、通信装置201と画像生成システム203との間で送受信される情報がkey=Mode、value=FileSelectである場合、ファイル選択モードであると分かる。
【0078】
S705において、通信装置201の送受信部213は、画像生成システム203へフォルダ構成情報を送信する。ここで、フォルダ構成情報の例は
図9(A)に示した通りである。S706において、通信装置201は、ユーザがブラウザの利用を終了したか否かを判定する。S706の判定の結果、ユーザがブラウザの利用を終了した場合、処理を終了する。一方、ユーザがブラウザの利用を継続する場合、S702に戻る。
【0079】
S707において、通信装置201は、ファイル選択結果を受信したか否かを判定する。ここで、ファイル選択結果の例について、
図9(B)を参照して説明する。
図9(B)を見ると、key=SelectedFile、value=[File Name]である場合、ファイル選択結果であると分かる。S707では、送受信部213が受信した情報のkey=SelectedFileの場合、valueを確認することで選択されたファイルを識別することができる。S707の判定の結果、ファイル選択結果を受信した場合、S708へ進む。一方、S707の判定の結果、ファイル選択結果を受信しなかった場合、S709へ進む。
【0080】
S708において、通信装置201は、value=[File Name]のFile Nameに該当するファイルを圧縮して、送受信部213から画像生成システム203へ送信する。S709の処理は、S409の処理と同じである。
【0081】
以上説明したように、本実施形態では、クラウドブラウザが遠隔の通信装置から通信装置のファイル構成情報を受信し、それに基づいてクラウドブラウザが仮想マシン上でファイル構成を再現する。これにより、仮想マシンのファイル閲覧機能を利用して、ユーザにファイル選択させること、さらには受信したファイルのデータを用いてアップロード処理等を行うことが可能となる。
【0082】
本明細書の開示は、以下の画像生成システム、通信装置、それらの動作方法およびプログラムを含む。
【0083】
(項目1)
通信装置と通信可能な画像生成システムであって、
前記通信装置からWebページに対する操作指示を受信する指示受信手段と、
前記操作指示がファイル選択のための押下である場合に所定の情報を前記通信装置へ送信する送信手段と、
前記所定の情報に基づいて前記通信装置から送信されたファイルを受信するファイル受信手段と、
前記ファイルの情報を前記Webページに反映して描画結果を生成する生成手段と、
前記描画結果を前記通信装置へ送信する結果送信手段と、
を備えることを特徴とする画像生成システム。
【0084】
(項目2)
前記送信手段は、押下された要素の情報を前記所定の情報として前記通信装置へ送信し、
前記ファイル受信手段は、前記押下された要素の情報に対応するファイルを前記通信装置から受信することを特徴とする項目1に記載の画像生成システム。
【0085】
(項目3)
前記送信手段は、ファイル選択モードであることを示す情報を前記所定の情報として前記通信装置へ送信し、
前記画像生成システムは、
前記ファイル選択モードであることを示す情報に基づいて前記通信装置から送信されたファイル構成情報を受信する構成情報受信手段と、
前記ファイル構成情報に基づいてフォルダ構成又はファイル構成の視覚的表現を生成して前記通信装置へ送信する表現送信手段と、
前記通信装置から前記視覚的表現に対するユーザの押下座標の情報を受信する座標受信手段と、
前記押下座標に基づいて前記ユーザにより選択されたファイルを示す情報を前記通信装置へ送信する情報送信手段と、をさらに備え、
前記ファイル受信手段は、前記選択されたファイルを前記通信装置から受信することを特徴とする項目1に記載の画像生成システム。
【0086】
(項目4)
前記表現送信手段は、前記ファイル構成情報に基づいてフォルダを展開してファイル群を生成することにより、前記通信装置と同じフォルダ構成又はファイル構成の視覚的表現を再現することを特徴とする項目3に記載の画像生成システム。
【0087】
(項目5)
前記ファイル群は、0バイトのファイル群であることを特徴とする項目4に記載の画像生成システム。
【0088】
(項目6)
ユーザが前記通信装置を介した前記画像生成システムの利用を終了する場合に、前記通信装置から受信した情報を削除する削除手段をさらに備えることを特徴とする項目1乃至5のいずれか1項目に記載の画像生成システム。
【0089】
(項目7)
画像生成システムと通信可能な通信装置であって、
前記画像生成システムへWebページに対する操作指示を送信する指示送信手段と、
前記操作指示がユーザによるファイル選択のための押下である場合に前記画像生成システムから送信される、所定の情報を受信する受信手段と、
前記所定の情報に基づいてファイルを前記画像生成システムへ送信するファイル送信手段と、
前記ファイルの情報が前記Webページに反映された描画結果を前記画像生成システムから受信する結果受信手段と、
前記描画結果を画面に表示させる表示制御手段と、
を備えることを特徴とする通信装置。
【0090】
(項目8)
通信装置と通信可能な画像生成システムの動作方法であって、
前記通信装置からWebページに対する操作指示を受信する指示受信工程と、
前記操作指示がファイル選択のための押下である場合に所定の情報を前記通信装置へ送信する送信工程と、
前記所定の情報に基づいて前記通信装置から送信されたファイルを受信するファイル受信工程と、
前記ファイルの情報を前記Webページに反映して描画結果を生成する生成工程と、
前記描画結果を前記通信装置へ送信する結果送信工程と、
を有することを特徴とする画像生成システムの動作方法。
【0091】
(項目9)
画像生成システムと通信可能な通信装置の動作方法であって、
前記画像生成システムへWebページに対する操作指示を送信する指示送信工程と、
前記操作指示がユーザによるファイル選択のための押下である場合に前記画像生成システムから送信される、所定の情報を受信する受信工程と、
前記所定の情報に基づいてファイルを前記画像生成システムへ送信するファイル送信工程と、
前記ファイルの情報が前記Webページに反映された描画結果を前記画像生成システムから受信する結果受信工程と、
前記描画結果を画面に表示させる表示制御工程と、
を有することを特徴とする通信装置の動作方法。
【0092】
(項目10)
コンピュータに、項目9に記載の通信装置の動作方法を実行させるためのプログラム。
【0093】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0094】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0095】
201:通信装置、211:表示部、212:送受信部、213:ファイル閲覧機能呼出し部、214:専用ビューワ、203:画像生成システム、204:ゲートウェイ、205:仮想マシン、206:ブラウザ、207:押下要素判定部、208:ファイル情報反映部、209:描画結果生成部、220:ファイル構成展開部、221:ファイル選択通知部