特許第6834234号(P6834234)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧
特許6834234情報処理装置、情報処理方法、及びプログラム
<>
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000002
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000003
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000004
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000005
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000006
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000007
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000008
  • 特許6834234-情報処理装置、情報処理方法、及びプログラム 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6834234
(24)【登録日】2021年2月8日
(45)【発行日】2021年2月24日
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
   B41J 29/38 20060101AFI20210215BHJP
   H04L 12/66 20060101ALI20210215BHJP
   G06F 13/00 20060101ALI20210215BHJP
   H04L 12/28 20060101ALI20210215BHJP
   H04N 1/00 20060101ALI20210215BHJP
   B41J 29/00 20060101ALI20210215BHJP
   G03G 21/00 20060101ALI20210215BHJP
【FI】
   B41J29/38 401
   H04L12/66 B
   G06F13/00 354A
   H04L12/28 200Z
   H04N1/00 127Z
   B41J29/00 T
   B41J29/00 E
   G03G21/00 370
【請求項の数】12
【全頁数】14
(21)【出願番号】特願2016-157113(P2016-157113)
(22)【出願日】2016年8月10日
(65)【公開番号】特開2018-24161(P2018-24161A)
(43)【公開日】2018年2月15日
【審査請求日】2019年6月21日
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】荒木 涼二
【審査官】 大浜 登世子
(56)【参考文献】
【文献】 特開2015−106344(JP,A)
【文献】 特開2013−251761(JP,A)
【文献】 特開2015−023438(JP,A)
【文献】 米国特許出願公開第2015/0026302(US,A1)
【文献】 特開2013−201621(JP,A)
【文献】 米国特許出願公開第2008/0126653(US,A1)
【文献】 特開平11−045218(JP,A)
【文献】 米国特許第06211797(US,B1)
【文献】 特開2016−086219(JP,A)
【文献】 米国特許出願公開第2016/0119281(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B41J 29/38
B41J 29/00
G03G 21/00
G06F 13/00
H04L 12/28
H04L 12/66
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
通信回線を介して接続される情報処理端末を操作部として有する情報処理装置であって、
前記情報処理端末からの中継条件が指定された受信用ポートの開放要求に応じ、所定の通信プロトコルのパケットを受信するための受信用ポートを開放する開放部と、
前記情報処理端末とは異なる外部装置から前記開放したポートに対してパケットが受信されると、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータを前記情報処理端末に送信する中継部と、
を有することを特徴とする情報処理装置。
【請求項2】
前記開放部は、前記情報処理端末から要求されるたびに、当該要求において指定されたポート番号でのポートを開放し、
いずれかのポートに対してパケットが受信されると、当該ポートのポート番号と、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータとを前記情報処理端末に送信する、
ことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記情報処理端末からの遮断要求に応じ、前記ポートを遮断する遮断部、
を有することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記所定の通信プロトコルは、UDP(User Datagram Protocol)である、
ことを特徴とする請求項1乃至いずれか一項記載の情報処理装置。
【請求項5】
通信回線を介して接続される情報処理端末を操作部として有する情報処理装置が、
前記情報処理端末からの中継条件が指定された受信用ポートの開放要求に応じ、所定の通信プロトコルのパケットを受信するためのポートを開放する開放手順と、
前記情報処理端末とは異なる外部装置から前記開放したポートに対してパケットが受信されると、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータを前記情報処理端末に送信する中継手順と、
を実行することを特徴とする情報処理方法。
【請求項6】
前記開放手順は、前記情報処理端末から要求されるたびに、当該要求において指定されたポート番号でのポートを開放し、
いずれかのポートに対してパケットが受信されると、当該ポートのポート番号と、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータとを前記情報処理端末に送信する、
ことを特徴とする請求項5に記載の情報処理方法。
【請求項7】
前記情報処理端末からの遮断要求に応じ、前記ポートを遮断する遮断手順、
を前記情報処理装置が実行することを特徴とする請求項5又は6に記載の情報処理方法。
【請求項8】
前記所定の通信プロトコルは、UDP(User Datagram Protocol)である、
ことを特徴とする請求項乃至いずれか一項記載の情報処理方法。
【請求項9】
通信回線を介して接続される情報処理端末を操作部として有する情報処理装置に、
前記情報処理端末からの中継条件が指定された受信用ポートの開放要求に応じ、所定の通信プロトコルのパケットを受信するための受信用ポートを開放する開放手順と、
前記情報処理端末とは異なる外部装置から前記開放したポートに対してパケットが受信されると、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータを前記情報処理端末に送信する中継手順と、
を実行させることを特徴とするプログラム。
【請求項10】
前記開放手順は、前記情報処理端末から要求されるたびに、当該要求において指定されたポート番号でのポートを開放し、
いずれかのポートに対してパケットが受信されると、当該ポートのポート番号と、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータとを前記情報処理端末に送信する、
ことを特徴とする請求項9に記載のプログラム。
【請求項11】
前記情報処理端末からの遮断要求に応じ、前記ポートを遮断する遮断手順、
を前記情報処理装置に実行させることを特徴とする請求項9又は10に記載のプログラム。
【請求項12】
前記所定の通信プロトコルは、UDP(User Datagram Protocol)である、
ことを特徴とする請求項乃至1いずれか一項記載のプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年、スマートフォン等のスマート端末の人気に鑑みて、家電やオフィス機器等の電子機器の中には、スマート端末との連携が可能なものが提供されている。例えば、スマート端末が操作パネルとして設置されている機器(例えば、複合機)も有る。
【0003】
スマート端末は、それ自体もOS(Operating System)を有している。したがって、スマート端末が操作パネルとして利用されることで、機器の本体側のみならず、スマート端末側においてもアプリケーションプログラム(以下、単に「アプリケーション」という。)が実装されるようになっている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
スマート端末に実装されるアプリケーション中には、当該スマート端末を操作パネルとする機器との間だけでなく、他の外部装置との通信を行うものも有る。このようなアプリケーションによる外部装置との通信には、スマート端末が既存で有する無線通信機能を利用するのが簡便である。
【0005】
しかしながら、機器の設置先において、無線LAN(Local Area Network)の通信環境が整備されているとは限らない。また、アプリケーションの通信機能の都合のために、機器の顧客に対して、操作パネル用に移動体通信網の契約を求めるのは市場における機器の競争力の低下を招きかねない。
【0006】
本発明は、上記の点に鑑みてなされたものであって、操作部として機能する情報処理端末による通信を既存の通信経路を利用して可能とすることを目的とする。
【課題を解決するための手段】
【0007】
そこで上記課題を解決するため、通信回線を介して接続される情報処理端末を操作部として有する情報処理装置は、前記情報処理端末からの中継条件が指定された受信用ポートの開放要求に応じ、所定の通信プロトコルのパケットを受信するための受信用ポートを開放する開放部と、前記情報処理端末とは異なる外部装置から前記開放したポートに対してパケットが受信されると、前記指定された中継条件に基づいて中継が許可される前記パケットに含まれるデータを前記情報処理端末に送信する中継部と、を有する。
【発明の効果】
【0008】
操作部として機能する情報処理端末による通信を既存の通信経路を利用して可能とすることができる。
【図面の簡単な説明】
【0009】
図1】本発明の実施の形態のネットワーク構成例を示す図である。
図2】本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。
図3】本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。
図4】本発明の実施における画像形成装置の機能構成例を示す図である。
図5】第1の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
図6】第2の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
図7】第3の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
図8】第4の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【0010】
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態のネットワーク構成例を示す図である。図1において、画像形成装置10a、画像形成装置10b、及び画像形成装置10c等(以下、それぞれを区別しない場合、単に「画像形成装置10」という。)と、PC30とは、LAN(Local Area Network)又はインターネット等のネットワークを介して接続されている。
【0011】
画像形成装置10は、印刷、スキャン、コピー、及びFAX送受信等のうちの二以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を単体で有する機器が画像形成装置10として用いられてもよい。
【0012】
PC30は、一般的なPC(Personal Computer)である。
【0013】
図2は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図2において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。
【0014】
コントローラ11は、画像形成装置10の本体におけるコンピュータ(情報処理装置)である。図2において、コントローラ11は、CPU111、RAM112、ROM113、HDD114、及びNVRAM115等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記憶されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記憶される。NVRAM115には、各種の設定情報等が記憶される。
【0015】
スキャナ12は、原稿より画像データを読み取るためのハードウェア(画像読取手段)である。プリンタ13は、印刷データを印刷用紙に印刷するためのハードウェア(印刷手段)である。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記憶されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記憶されたプログラムだけでなく、SDカード80に記憶されたプログラムもRAM112にロードされ、実行されうる。なお、他の記録媒体(例えば、CD−ROM又はUSB(Universal Serial Bus)メモリ等)によってSDカード80が代替されてもよい。すなわち、SDカード80の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、SDカードスロット17は、記録媒体の種類に応じたハードウェアによって代替されればよい。
【0016】
コントローラ11には、また、情報処理端末20が接続される。情報処理端末20は、例えば、スマートフォンやタブレット型端末等のスマート端末であり、単独で完結した情報処理を実行可能な電子機器である。本実施の形態において、情報処理端末20は、画像形成装置10の操作部として機能する。より詳しくは、情報処理端末20は、従来、画像形成装置10の専用の操作部として設置されていた操作パネルの代わりに、コントローラ11に接続される。なお、コントローラ11と情報処理端末20とは、例えば、USBケーブル、近距離無線通信、又はLAN等の通信回線を介して接続される。
【0017】
図3は、本発明の実施の形態における情報処理端末20のハードウェア構成例を示す図である。図3において、情報処理端末20は、CPU201、メモリ202、補助記憶装置203、タッチパネル204、及び無線通信装置205等を有する。
【0018】
補助記憶装置203は、情報処理端末20にインストールされたプログラム等を記憶する。メモリ202は、プログラムの起動指示があった場合に、補助記憶装置203からプログラムを読み出して記憶する。CPU201は、メモリ202に記憶されたプログラムに従って情報処理端末20に係る機能を実現する。
【0019】
タッチパネル204は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル204は、表示装置211及び入力装置212等を含む。
【0020】
表示装置211は、液晶ディスプレイ等であり、タッチパネル204の表示機能を担う。入力装置212は、表示装置211に対する接触物の接触を検出するセンサを含む電子部品である。接触物の接触の検出方式は、静電方式、抵抗膜方式、又は光学方式等、公知の方式のいずれであってもよい。なお、接触物とは、タッチパネル204の接触面(表面)に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。
【0021】
無線通信装置205は、無線LAN(Local Area Network)又は移動体通信網等における通信を行うために必要とされるアンテナ等の電子部品である。但し、本実施の形態において、情報処理端末20は、無線通信装置205を有していなくてもよい。
【0022】
図4は、本発明の実施における画像形成装置の機能構成例を示す図である。図4において、コントローラ11は、WebAPI部121、中継部122、及び通信制御部123等を有する。これら各部は、コントローラ11にインストールされた1以上のプログラムが、CPU111に実行させる処理により実現される。
【0023】
WebAPI部121は、情報処理端末20における端末アプリ21や端末サービス部22等のプログラムに対してWebAPIを提供する。WebAPIとは、WebベースのAPI(Application Program Interface)をいう。例えば、WebAPI部121は、HTTP(HyperText Transfer Protocol)リクエストによって要求を受信し、HTTPレスポンスによって応答を返信するようなAPIを提供する。
【0024】
本実施の形態では、ポートの開放要求、ポートの遮断要求等、通信に関するWebAPIについて着目されるが、通信以外の要求を受け付けるためにWebAPIが利用されてもよい。例えば、印刷の実行やスキャンの実行等、コントローラ11のハードウェアの利用の要求を受け付けるためのWebAPIが設けられてもよい。
【0025】
中継部122は、情報処理端末20と外部との通信を中継するための処理を実行する。例えば、中継部122は、情報処理端末20からの要求に応じて、受信用(サーバ用)のポートの開放(オープン)を通信制御部123に要求する。中継部122は、また、他の画像形成装置10又はPC30が開放しているポートへのデータの送信要求を情報処理端末20から受け付けると、当該データの送信を通信制御部123へ要求する。中継部122は、また、受信用のポートに対してパケットが受信されると、当該パケットに含まれているデータを情報処理端末20へ送信する。中継部122は、更に、情報処理端末20からの要求に応じて、開放されているポートの遮断(クローズ)を通信制御部123に要求する。
【0026】
通信制御部123は、コントローラのOS(Operating System)において通信の制御を担う部分である。
【0027】
一方、情報処理端末20は、1以上の端末アプリ21及び端末サービス部22等を有する。これら各部は、情報処理端末20にインストールされた1以上のプログラムが、CPU201に実行させる処理により実現される。
【0028】
端末アプリ21は、情報処理端末20にインストールされるアプリケーションプログラム(以下、単に「アプリケーション」という。)である。本実施の形態において、端末アプリ21は、UDP(User Datagram Protocol)による通信を利用して、所定のサービスをユーザに提供するアプリケーションである。例えば、端末アプリ21は、他の画像形成装置10又はPC30との間で、ブロードキャスト又はマルチキャストによる通信を行うために、UDPを利用する。
【0029】
端末サービス部22は、端末アプリ21に対するアプリケーションプラットフォームとして機能する。本実施の形態において、端末サービス部22は、WebAPI部121によって提供されるWebAPIを所定のプログラミング言語によってラッピングしたAPIを端末アプリ21に対して提供する。但し、端末アプリ21が、直接的にWebAPIを呼び出してもよい。
【0030】
以下、画像形成装置10が実行する処理手順について説明する。図5は、第1の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【0031】
外部からのUDPパケットを受信したい端末アプリ21は、UDPの受信用ポートの開放要求を端末サービス部22に対して入力する(S101)。当該開放要求には、ポート番号(以下、「対象ポート番号」という。)及び中継条件等が指定される。ポート番号とは、UDPポートごとの識別情報である。中継条件とは、開放されたUDPポートに対する受信パケットについて、端末アプリ21への中継の許否を判定するための条件である。すなわち、不正なパケットが情報処理端末20に対して中継されないようにするために、中継条件が指定される。中継条件の内容としては、例えば、中継を許可する又は許可しない送信元IPアドレス、中継を許可する又は許可しない送信元ポート番号が挙げられる。又は、パケットに含まれるデータの所定の位置に所定の値が含まれていることが中継条件とされてもよい。
【0032】
続いて、端末サービス部22は、端末アプリ21からの開放要求(HTTPリクエスト)をWebAPI部121に対して送信する(S102)。当該開放要求は、WebAPI部121が提供する、パケットの開放要求に対応するWebAPI(関数又はメソッド)を呼び出すことでWebAPI部121に送信される。
【0033】
WebAPI部121は、当該開放要求を受信すると、当該開放要求を中継部122に通知する(S103)。中継部122は、当該開放要求に指定されている対象ポート番号での受信用のポートの開放を通信制御部123に要求する(S104)。通信制御部123は、対象ポート番号での受信用のポート(以下、「対象ポート」という。)の開放処理を実行し、当該開放処理の結果(開放の成否)を示す情報である開放結果を中継部122に応答する(S105)。中継部122は、開放結果が開放の成功を示す場合には、対象ポート番号と、対象ポート番号と共に通知された中継条件とを対応付けて、例えば、RAM112に記憶する。続いて、中継部122は、開放結果をWebAPI部121に通知する(S106)。WebAPI部121は、当該開放結果を含む応答(HTTPレスポンス)を、端末サービス部22に返信する(S107)。
【0034】
端末サービス部22は、当該開放結果が開放の成功を示す場合には、当該UDPポートの開放の要求元の端末アプリ21の識別情報(以下、「アプリID」という。)と、対象ポート番号とを対応付けて、メモリ202に記憶する。続いて、端末サービス部22は、当該開放結果を、当該UDPポートの開放の要求元の端末アプリ21に通知する(S108)。
【0035】
端末サービス部22は、更に、非同期イベントの受信設定の要求をWebAPI部121に送信する(S111)。非同期イベントとは、情報処理端末20からの要求とは無関係に(非同期に)コントローラ11側で発生するイベントをいう。本実施の形態において、情報処理端末20(端末アプリ21又は端末サービス部22)とコントローラ11(WebAPI部121)との間は、HTTPによって通信されるところ、コントローラ11がサーバ側に相当し、情報処理端末20がクライアント側に相当する。したがって、コントローラ11は、基本的に、情報処理端末20からの要求に対する応答という形式でしか、情報処理端末20に対して情報を伝達することができない。しかしながら、パケットの受信は、情報処理端末20からの要求に対して非同期に発生する非同期イベントである。そこで、パケットの受信に応じて当該パケットの内容を迅速に情報処理端末20に伝達可能とするために、非同期イベントの受信設定の要求が行われる。
【0036】
非同期イベントの受信設定の要求は、例えば、GETリクエストによって送信される。WebAPI部121は、当該GETリクエストを受信すると、当該GETリクエストへの応答を保留する。したがって、当該GETリクエストに係るHTTPのセッション(以下、「非同期イベント用セッション」という。)の接続が維持された状態となる。その結果、WebAPI部121は、任意のタイミングで非同期イベントを端末サービス部22へ送信できるようになる。
【0037】
その後、例えば、PC30が、対象ポート番号宛のUDPパケットを送信すると(S121)、当該UDPパケットは、対象ポートにおいて受信される。通信制御部123は、対象ポートにおけるパケットの受信を中継部122に通知する(S122)。この際、中継部122は、複数の受信用のポートが開放されている場合であっても、対象ポートがいずれのポート番号に係るポートであるのかを認識することができる。通信制御部123に対して各ポートの開放を要求したのが中継部122だからである。
【0038】
中継部122は、当該通知に応じ、当該パケットについて、中継条件に基づいて中継が許可されるか否かを判定する(S123)。なお、ここで参照される中継条件は、対象ポート番号に対応付けられてRAM112に記憶されている中継条件である。
【0039】
当該パケットの中継が許可されない場合、中継部122は、当該パケットを破棄する。一方、当該パケットの中継が許可される場合、中継部122は、対象ポート番号と、当該パケットに含まれていた受信データ(ペイロード)とを含む受信通知をWebAPI部121に入力する(S124)。WebAPI部121は、当該受信通知を、非同期イベント用セッションを利用して端末サービス部22へ送信する(S125)。
【0040】
端末サービス部22は、当該受信通知を受信すると、当該受信通知に含まれているポート番号に対応付けられてメモリ202に記憶されているアプリIDを特定する。続いて、端末サービス部22は、特定されたアプリIDに対応する端末アプリ21に対して当該受信通知に含まれている受信データを通知する(S126)。その結果、端末アプリ21は、外部からのUDPパケットに含まれている受信データを利用して、任意の処理を実行することができる。
【0041】
その後、対象ポートが不要となると、端末アプリ21は、対象ポート番号を指定して、ポートの遮断要求をWebAPI部121に対して送信する(S131)。すなわち、端末アプリ21もWebAPIを呼び出すことができる。
【0042】
WebAPI部121は、当該遮断要求を中継部122へ通知する(S132)。中継部122は、当該遮断要求に含まれている対象ポート番号に係る対象ポートの遮断を通信制御部123に要求する(S133)。通信制御部123は、対象ポートについて遮断処理を行い、遮断処理の結果(遮断の成否)を示す情報である遮断結果を中継部122に応答する(S134)。中継部122は、当該遮断結果が成功を示す場合、対象ポート番号と、対象ポート番号に対応付けられている中継条件とをRAM112から削除する。続いて、中継部122は、当該遮断結果をWebAPI部121へ通知する(S135)。WebAPI部121は、当該遮断結果を遮断要求の送信元の端末アプリ21へ返信する(S136)。
【0043】
遮断結果が成功を示す場合、端末アプリ21は、対象ポート番号を指定して、非同期イベントの受信設定の解除を端末サービス部22へ要求する(S141)。端末サービス部22は、当該要求に応じ、対象ポート番号と、対象ポート番号に対応付けられているアプリIDとの組をメモリ202から削除する。その結果、他のポート番号とアプリIDとの組がメモリ202に記憶されていなければ、端末サービス部22は、非同期イベント用セッションを切断する(S142)。
【0044】
すなわち、1つの端末アプリ21によって、それぞれ異なるポート番号についてステップS101〜S108が複数回実行されることにより、又は複数の端末アプリ21によってステップS101〜S108が実行されることにより、複数の受信用のポートが開放される可能性が有る。この場合、開放されたポートごとに、ポート番号とアプリ番号との組が、例えば、メモリ202等に記憶される。これら全てのポートが開放されたときに、非同期イベント用セッションが切断される。なお、非同期用セッションは、複数のポートに対して1つでよい。すなわち、ステップS111は、ポートの開放ごとではなく、複数のポートに対して1回行われればよい。
【0045】
上述したように、第1の実施の形態によれば、情報処理端末20による通信は、コントローラ11によって中継される。したがって、コントローラ11が接続している既存のネットワークの通信経路を利用して、画像形成装置10の操作部(操作パネル15)として機能する情報処理端末20による通信を可能とすることができる。
【0046】
特に、UDPのように、DoS(Denial of Services)攻撃に利用されるプロトコルについて、コントローラ11による中継が行われることで、情報処理端末20の安全性を高めることができる。この場合、コントローラ11の負荷の増加が考えられるが、中継条件が指定されて、中継されるパケットが限定されることで、斯かる負荷の増加を抑制することができる。
【0047】
また、情報処理端末20とコントローラ11との間のやりとりは、特定の通信プロトコルに対する依存度が低いWebAPIに基づいて行われる。したがって、例えば、情報処理端末20が対応していない通信プロトコルであっても、コントローラ11が対応している通信プロトコルであれば、端末アプリ21による当該通信プロトコルの利用を容易なものとすることができる。
【0048】
なお、中継条件には、特定のパケットに対する自動応答の設定が含まれてもよい。この場合、特定のパケットを示す条件と、自動応答に含める情報とが中継条件に含まれればよい。中継部122は、当該特定のパケットに該当するパケットが受信された場合、当該パケット内のデータを非同期イベント用セッションを介して端末サービス部22へ送信することなく、当該パケットに対する応答を通信制御部123を介して送信する。
【0049】
次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第1の実施の形態と同様でもよい。
【0050】
第2の実施の形態では、UDPパケットの送信について説明する。図6は、第2の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【0051】
外部に対してUDPパケットを送信したい端末アプリ21は、宛先のIPアドレス及びポート番号と、送信データとを含む送信要求をWebAPI部121に送信する(S201)。WebAPI部121は、当該送信要求を中継部122に通知する(S202)。中継部122は、当該送信要求に含まれているIPアドレス及びポート番号宛に対する、当該送信要求に含まれている送信データの送信を通信制御部123に要求する(S203)。
【0052】
通信制御部123は、当該IPアドレス及びポート番号宛に、当該送信データを送信し、送信の成否を示す送信結果を中継部122に応答する(S204)。中継部122は、当該送信結果をWebAPI部121に通知する(S205)。WebAPI部121は、送信要求の送信元の端末アプリ21へ当該送信結果を返信する(S206)。
【0053】
上述したように、第2の実施の形態によれば、端末アプリ21は、外部に対してUDPパケットを送信することができる。また、第1の実施の形態と同様に、情報処理端末20が対応していない通信プロトコルであっても、コントローラ11が対応している通信プロトコルであれば、端末アプリ21による当該通信プロトコルの利用を容易なものとすることができる。
【0054】
次に、第3の実施の形態について説明する。第3の実施の形態では、第1の実施の形態及び第2の実施の形態において実現される機能が利用される具体的なシーン(ユースケース)について説明する。
【0055】
図7は、第3の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【0056】
PC30は、特定の端末アプリ21がインストールされている画像形成装置10を探索(発見)するため、端末アプリ21に対応するポート番号を含む探索要求を示すUDPパケットをブロードキャストする(S301、S302)。
【0057】
画像形成装置10a及び画像形成装置10bのそれぞれにおいて、当該端末アプリ21がインストールされていれば、当該UDPパケットの受信に応じて、図5のステップS122〜S126が実行される。また、当該探索要求に対して当該端末アプリ21の存在を通知するために、図6のステップS201〜S203が実行されると、画像形成装置10a及び画像形成装置10bのそれぞれから、当該端末アプリ21の存在通知を含む応答がPC30に対して送信される(S303、S304)。
【0058】
PC30は、各画像形成装置10からの応答に基づいて、当該端末アプリ21がインストールされている画像形成装置10の一覧情報を生成し、表示する(S305)。
【0059】
上述したように、第3の実施の形態によれば、各情報処理端末20には、UDPパケットに含まれるデータ(探索要求)が通知され、各情報処理端末20は、当該探索要求に応答することができるため、各情報処理端末20にインストールされている端末アプリ21の一覧を、ブロードキャストを利用して得ることができる。
【0060】
次に、第4の実施の形態について説明する。第4の実施の形態でも、第1の実施の形態及び第2の実施の形態において実現される機能が利用される具体的なシーン(ユースケース)について説明する。
【0061】
図8は、第4の実施の形態において画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【0062】
第4の実施の形態において、端末アプリ21は、蓄積印刷機能を実現するアプリケーションであるとする。蓄積印刷機能とは、PC30等から受信された印刷ジョブを画像形成装置10内に記憶しておき、ユーザによる画像形成装置10の操作に応じて、記憶されている印刷ジョブの印刷を実行するという機能である。
【0063】
例えば、PC30から画像形成装置10aに対して印刷ジョブが送信されると(S401)、当該印刷ジョブは、画像形成装置10aの端末アプリ21の制御により画像形成装置10a内に記憶(蓄積)される(S402)。
【0064】
続いて、画像形成装置10aにおいて、図6のステップS201〜S203が実行されることで、画像形成装置10aに蓄積されている印刷ジョブの一覧情報が、ブロードキャストされる(S403、S404)。すなわち、画像形成装置10aの端末アプリ21は、ステップS201の送信要求において、ブロードキャストアドレスと、端末アプリ21に対応したポート番号と、印刷ジョブの一覧情報とを指定する。
【0065】
当該ブロードキャストを受信した画像形成装置10b及び画像形成装置10cのそれぞれにおいては、図5のステップS122〜S126が実行される。画像形成装置10b及び画像形成装置10cのそれぞれの端末アプリ21は、画像形成装置10aの印刷ジョブの一覧情報を、自らが記憶している印刷ジョブの一覧情報に統合する(S405、S406)。
【0066】
上記の処理手順が、各画像形成装置10が印刷ジョブを受信するたびに実行されることにより、各画像形成装置10が受信した印刷ジョブを、複数の画像形成装置10によって共有することができる。その結果、ユーザは、例えば、印刷ジョブの送信先とは異なる画像形成装置10に、当該印刷ジョブを印刷させることができる。
【0067】
なお、上記各実施の形態において、コントローラ11は、情報処理装置の一例である。UDPは、所定の通信プロトコルの一例である。中継部122は、送信部の一例である。開放部及び遮断部は、通信制御部123の一例である。
【0068】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0069】
10 画像形成装置
11 コントローラ
12 スキャナ
13 プリンタ
14 モデム
16 ネットワークインタフェース
17 SDカードスロット
20 情報処理端末
21 端末アプリ
22 端末サービス部
30 PC
80 SDカード
111 CPU
112 RAM
113 ROM
114 HDD
115 NVRAM
121 WebAPI部
122 中継部
123 通信制御部
201 CPU
202 メモリ
203 補助記憶装置
204 タッチパネル
205 無線通信装置
211 表示装置
212 入力装置
【先行技術文献】
【特許文献】
【0070】
【特許文献1】特開2014−219759号公報
図1
図2
図3
図4
図5
図6
図7
図8