(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-24
(45)【発行日】2024-08-01
(54)【発明の名称】情報処理システム、情報処理方法、および、プログラム
(51)【国際特許分類】
H04N 1/00 20060101AFI20240725BHJP
G06F 3/12 20060101ALI20240725BHJP
B41J 29/42 20060101ALI20240725BHJP
【FI】
H04N1/00 127A
H04N1/00 350
G06F3/12 323
G06F3/12 336
G06F3/12 303
G06F3/12 387
B41J29/42 F
(21)【出願番号】P 2020062791
(22)【出願日】2020-03-31
【審査請求日】2023-02-08
(73)【特許権者】
【識別番号】000130581
【氏名又は名称】サトーホールディングス株式会社
(74)【代理人】
【識別番号】110000165
【氏名又は名称】弁理士法人グローバル・アイピー東京
(72)【発明者】
【氏名】斉藤 浩一
【審査官】鈴木 明
(56)【参考文献】
【文献】特開2010-200004(JP,A)
【文献】特開2017-157200(JP,A)
【文献】特開2018-156467(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
G06F 3/12
B41J 29/42
(57)【特許請求の範囲】
【請求項1】
サーバと、前記サーバと通信可能なプリンタと、を含む情報処理システムであって、
前記サーバは、
前記プリンタから、前記サーバが実行可能な機能のリクエストを受け付ける受付部と、
前記受付部により受け付けられたリクエストに対応する機能を実行する実行部と、
前記実行部による実行結果を前記プリンタに送信するサーバ側通信部と、
を備え、
前記プリンタは、
前記
サーバが実行可能な機能のリクエストを受け付ける第1インターフェース
と、前記プリンタが実行可能な機能のリクエストを受け付ける第2インターフェースと、を
ユーザによる操作入力によって切り替えて表示部に表示させる表示制御部と、
前記第1インターフェースにより受け付けられたリクエストをサーバに送信し、前記サーバによって実行された実行結果を受信するプリンタ側通信部と、
を備え、
前記表示制御部は、
前記プリンタ側通信部により受信した実行結果に基づく情報を取得する、情報処理システム。
【請求項2】
前記実行結果に基づく情報は、前記実行結果に基づく画像であって、
前記表示制御部は、当該画像を前記表示部に表示させる、
請求項1に記載の情報処理システム。
【請求項3】
前記実行結果に基づく画像は、前記プリンタ及び前記サーバに対する外部から提供される画像であって前記プリンタ単体の機能に対して無関係である画像を含む、
請求
項2に記載の情報処理システム。
【請求項4】
前記第1インターフェースと前記第2インターフェースとはそれぞれURL(Uniform Resource Locator)に対応付けられており、
前記表示制御部は、アクセス先のURLを切り替えることで、前記第1インターフェースと前記第2インターフェースとを切り替える、
請求項3に記載の情報処理システム。
【請求項5】
前記プリンタ側通信部および前記サーバ側通信部が所定の通信プロトコルに基づくコマンドを送受信することによって、前記サーバと前記プリンタとが双方向通信を行う、
請求項1から4のいずれか一項に記載の情報処理システム。
【請求項6】
前記サーバは、
複数の画像を記憶する記憶部と、
前記複数の画像の各々に対応付けられた複数のWebAPI(ウェブアプリケーションプログラミングインターフェース)と、を備え、
前記表示制御部は、前記複数の画像のいずれかに対応するWebAPIを利用して、ソフトウェアキーを含む第1画像を取得し、前記第1画像を前記表示部に表示させるとともに、前記表示部に表示された第1画像に含まれるソフトウェアキーに対する操作入力に応じて、前記ソフトウェアキーに対応する画像として、前記第1画像とは異なる第2画像を前記表示部に表示させる、
請求項1から5のいずれか一項に記載の情報処理システム。
【請求項7】
前記複数のWebAPIは、前記第1画像に含まれるソフトウェアキーに対応するWebAPIを含み、
前記表示制御部は、前記ソフトウェアキーに対応するWebAPIを利用して前記第2画像を取得する、
請求項6に記載された情報処理システム。
【請求項8】
前記表示制御部は、前記第1インターフェースが前記表示部に表示されているときに印字データを受信した場合には、前記第1インターフェースに代えて前記第2インターフェースを前記表示部に表示させる、
請求項3又は4に記載された情報処理システム。
【請求項9】
前記表示制御部は、前記印字データに基づく印字が終了した後に、前記第1インターフェースを再度前記表示部に表示させる、
請求項8に記載された情報処理システム。
【請求項10】
前記サーバは、
少なくとも1つのソフトウェアキーを含む画像であって、各ソフトウェアキーが、前記プリンタが解釈可能なコマンドに対応付けられた画像を記憶する記憶部と、
前記画像と、前記画像に含まれる前記少なくとも1つのソフトウェアキーの各々に対応付けられたコマンドと、を提供するためのWebAPIと、を備え、
前記表示制御部は、
前記画像に対応付けられたWebAPIを利用して前記画像を取得し、取得した画像を前記表示部に表示させる、
請求項1から5のいずれか一項に記載の情報処理システム。
【請求項11】
前記プリンタは、
前記表示部に表示された画像に含まれる前記少なくとも1つのソフトウェアキーのいずれかに対する操作入力に応じて、当該操作入力に対応するソフトウェアキーに対応付けられたWebAPIを利用して、対応するコマンドを取得するコマンド取得部と、
前記コマンド取得部によって取得されたコマンドを前記プリンタに対して実行するコマンド実行部と、をさらに備えた、
請求項10に記載の情報処理システム。
【請求項12】
サーバと、前記サーバと通信可能なプリンタとの間の情報処理方法であって、
前記プリンタが、
前記サーバが実行可能な機能のリクエストを受け付ける第1インターフェース
と、前記プリンタが実行可能な機能のリクエストを受け付ける第2インターフェースと、を
ユーザによる操作入力によって切り替えて表示部に表示させ、
前記プリンタが、前記第1インターフェースにより受け付けられたリクエストを前記サーバに送信し、
前記サーバが、前記プリンタから、前記サーバが実行可能な機能のリクエストを受け付け、
前記サーバが、前記受け付けたリクエストに対応する機能を実行し、
前記サーバが、前記機能の実行結果を前記プリンタに送信し、
前記プリンタが、前記サーバによって実行された実行結果を受信し、受信した前記実行結果に基づく情報を取得する、
情報処理方法。
【請求項13】
表示部を備え、サーバと通信可能なプリンタにおいて、コンピュータを、
前記サーバが実行可能な機能のリクエストを受け付ける第1インターフェース
と、前記プリンタが実行可能な機能のリクエストを受け付ける第2インターフェースと、を
ユーザによる操作入力によって切り替えて前記表示部に表示させる手順と、
前記第1インターフェースによりリクエストを受け付ける手順と、
受け付けられたリクエストに基づいて前記サーバによって実行された実行結果を前記サーバから受信する手順と、
受信した前記実行結果に基づく情報を取得する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法、および、プログラムに関する。
【背景技術】
【0002】
従来、表示部を備えたプリンタが知られている。例えば、設定内容および確認キーを表示する表示部と、所定のキーの操作に応答して表示部に設定内容および確認キーを項目別に表示させ、各確認キーが押されるのを待ってからジョブの実行を開始する制御部とを備える画像形成装置が知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上述したような従来のプリンタでは、プリンタ内部の設定内容やプリンタの印刷ジョブの状態を表示するに止まり、プリンタとは直接関係がない外部の情報を表示することができなかった。そのため、従来のプリンタは、プリンタに特化した情報をユーザに提供するのみであり、例えばプリンタ以外の情報でユーザにとって有用となり得る情報を提供することができなかった。
【0005】
そこで、本発明は、プリンタの画面を介して外部の情報を活用することを目的とする。
【課題を解決するための手段】
【0006】
本発明のある態様は、サーバと、前記サーバと通信可能なプリンタと、を含む情報処理システムであって、前記サーバは、前記プリンタから、前記サーバが実行可能な機能のリクエストを受け付ける受付部と、前記受付部により受け付けられたリクエストに対応する機能を実行する実行部と、前記実行部による実行結果を前記プリンタに送信するサーバ側通信部と、を備え、前記プリンタは、前記リクエストを受け付ける第1インターフェースを表示部に表示させる表示制御部と、前記第1インターフェースにより受け付けられたリクエストをサーバに送信し、前記サーバによって実行された実行結果を受信するプリンタ側通信部と、を備え、前記表示制御部は、前記プリンタ側通信部により受信した実行結果に基づく情報を取得する、情報処理システムである。
【発明の効果】
【0007】
本発明のある態様によれば、プリンタの画面を介して外部の情報を活用することが可能となる。
【図面の簡単な説明】
【0008】
【
図1】第1の実施形態の表示システムのシステム構成を示す図である。
【
図2】第1の実施形態のプリンタの外観を示す斜視図である。
【
図3】第1の実施形態の表示システムにおいて、プリンタの表示パネルに表示される画面例を示す図である。
【
図4】第1の実施形態の表示システムの各部の構成を示すブロック図である。
【
図5】第1の実施形態の表示システムにおいて、プログラムの処理を説明する図である。
【
図6】第1の実施形態の表示システムのシーケンスチャートの一例を示す図である。
【
図7】第2の実施形態の表示システムにおいて、プリンタの表示パネルに表示される画面例を示す図である。
【
図8】第2の実施形態の表示システムのシーケンスチャートの一例を示す図である。
【発明を実施するための形態】
【0009】
以下、実施形態について、図面を参照しながら説明する。
【0010】
(1)第1の実施形態
(1-1)表示システム1の概要
情報処理システムの第1の実施形態である表示システム1について、
図1を参照して説明する。
図1は、第1の実施形態の表示システム1のシステム構成を示す図である。
図1に例示する表示システム1は、複数のプリンタ2-1~2-5、管理サーバ3、および、クライアント端末4-1,4-2を備え、各プリンタおよび各クライアント端末が管理サーバ3とネットワークNWを介して通信可能である。なお、
図1に示す表示システム1は、管理サーバ3と通信可能なプリンタの数、管理サーバ3と通信可能なクライアント端末の数を限定する意図はなく、所望の数のプリンタおよび所望の数のクライアント端末が管理サーバ3と通信可能に構成することができる。
以下の説明では、複数のプリンタ2-1~2-5に対して共通する事項について言及するときには「プリンタ2」と表記し、複数のクライアント端末4-1,4-2に対して共通する事項について言及するときには「クライアント端末4」と表記する。
【0011】
プリンタ2は、HTTPS(Hyper Text Transfer Protocol Secure)およびMQTT(Message Queuing Telemetry Transport)(あるいは、MQTT over WebSocket)のプロトコルに従って管理サーバ3と通信可能である。クライアント端末4は、HTTPS又はMQTTのプロトコルに従って管理サーバ3と通信可能である。
管理サーバ3は、プリンタ2から例えば定期的に受信する情報に基づいてプリンタ2の稼働状態を管理しているクラウドサーバ等である。管理サーバ3は、例えば、プリンタ2で使用しているラベルロールやインクリボン等の消耗品のシリアル番号、あるいは、プラテンローラの走行距離等の情報をプリンタ2から受信し、プリンタ2の識別番号に対応付けて、記録している。
クライアント端末4は、管理サーバ3にアクセスすることにより、指定されたプリンタ2の稼働情報を閲覧することができるとともに、プリンタ2の表示パネルに表示されている画像を遠隔的に閲覧することが可能である。
【0012】
図2は、本実施形態のプリンタ2の外観を示す斜視図である。
図2に示すように、プリンタ2の前面には、表示パネル24aと、プリンタ2の操作を行うための操作ボタン群23aとが設けられている。表示パネル24aには、プリンタ2の内部の設定状態や印字ジョブの状態が表示され、例えば、操作ボタン群23aのいずれかの操作ボタンを操作することで、ユーザがプリンタ2の設定を変更することができる。
【0013】
本実施形態のプリンタ2は、プリンタ2の内部の設定状態や動作指示、あるいは印字ジョブの状態といった、プリンタ2の内部の設定状態や動作指示を示す画像のほか、例えば、プリンタ2の機能と直接関係がない外部の画像を管理サーバ3から取得して表示することができる。
図3に、プリンタ2の表示パネル24aに表示される画面例を示す。
図3に示す画面G1~G3には、本実施形態におけるソフトウェアキーK1~K9が表示されている、ソフトウェアキーK1~K9は、GUIで表現されたアイコンである。プリンタ2は、例えば、操作ボタン群23aの操作指示により、何れかのキー入力を受け付けるとキーに対応付けられた所定の処理を実行する。
画面G1~G3に対して具体的に説明すると、画面G1は、プリンタ2の内部の設定状態を閲覧し、あるいは動作指示を行うためのソフトウェアキーK1~K4が配された画面例を示している。画面G1は、プリンタ2が実行可能な機能のリクエストを受け付ける第2インターフェースの一例である。
ソフトウェアキーK1に対するユーザの操作入力(タップ入力)に応じて、プリンタ2のステータスがオフラインからオンラインに変更する処理が実行される。
ソフトウェアキーK2に対するユーザの操作入力に応じて、プリンタ2は印字処理を中止する。
ソフトウェアキーK3に対するユーザの操作入力に応じて、プリンタ2の設定を行うための別の画面に遷移する。図示しない別の画面では、例えばプリンタ2の印字濃度や印字速度、あるいは通信等の様々な設定を行うことができるように構成される。
ソフトウェアキーK4に対するユーザの操作入力に応じて、プリンタ2に収容されている用紙を所定の距離フィードさせる(搬送させる)処理が実行される。
【0014】
画面G2および画面G3は、管理サーバ3が実行可能な機能の例示である。画面G2は、例えば、プリンタ2の機能と直接関係がない外部の情報を提供するためのソフトウェアキーK5~K7が配され、外部の情報を提供する画像の例として、例えば天気予報を示す画面を示している。なお、G2の天気予報を示す画面は、プリンタ2の存在する地域周辺の天気図にするとよい。画面G2には、天気予報に対応するソフトウェアキーK5のほか、その他の画面を表示させるためのソフトウェアキーK6~K8が含まれる。画面G2は、管理サーバ3が実行可能な機能のリクエストを受け付ける第1インターフェースの一例である。
画面G2において、例えばサプライ通販を受け付けるためのソフトウェアキーK6が操作されると、画面G3が表示される。ソフトウェアキーK7が操作されると、様々な動画をプリンタ2において閲覧可能となる動画配信サービスの画面(図示せず)が表示される。
ソフトウェアキーK8が操作されると、画面G2から画面G1に表示画面が切り替えられる。
画面G3は、プリンタ2のサプライパーツの通信販売を受け付けるための画面の例であり、オーダーを行うためのソフトウェアキーK9と、オーダーの内容を入力するための入力テーブルINTとを含む。入力テーブルINTにおいていずれかのパーツに数量を入力した状態(つまり、注文内容が入力された状態)でソフトウェアキーK9が操作されると、注文内容を含むオーダーが管理サーバ3に送信される。
【0015】
(1-2)表示システム1の各装置のブロック構成
次に、本実施形態の表示システム1の各装置の内部構成について、
図4を参照して説明する。
図4は、本実施形態の表示システム1のプリンタ2、管理サーバ3、および、クライアント端末4のブロック図である。
【0016】
図4に示すように、プリンタ2は、例えば、制御部21、ストレージ22、操作入力部23、表示部24、印字部25、および、通信部26を備える。プリンタ2は、例えば印字媒体としてラベルを発行するプリンタである。
【0017】
制御部21は、マイクロコンピュータおよびメモリ(RAM(Random Access Memory),ROM(Read Only Memory))を含み、プリンタ2の動作を制御する。マイクロコンピュータは、プリンタ2の起動時にROMに記憶されているファームウェアを読み出して実行する。ファームウェアを実行することで実現される機能には、印字部25に供給する印字データを生成すること、操作入力部23からの入力信号に基づいて表示パネル24aの画面を遷移させること等が含まれる。
【0018】
制御部21(表示制御部の一例)は、管理サーバ3から取得した画像を表示する第1表示モードと、プリンタ2の内部の設定状態や動作指示を示す画像を表示する第2表示モードとのいずれかの表示モードで動作するように制御する。第1表示モードでは、管理サーバ3が実行可能な機能のリクエストを受け付けるインターフェース(第1インターフェース)が表示される。第2表示モードでは、プリンタ2が実行可能な機能のリクエストを受け付けるインターフェース(第2インターフェース)が表示される。
【0019】
第1表示モードと第2表示モードの切り替えは、ユーザによる操作入力(例えば、
図3のソフトウェアキーK8に対する操作入力)によって行うことが可能である。例えば、第1インターフェースを表示する第1表示モードと、第2インターフェースを表示する第2表示モードとはそれぞれURLに対応付けられており、アクセス先のURLを切り替えることで第1表示モードと第2表示モードとを切り替えるようにすることができる。このような切り替えは、プリンタ2のメニュー画面で行うことができるようにしてもよい。
ユーザは、用途に応じていずれかの表示モードを自発的に選択することができるため、例えば、所望のタイミングで管理サーバ3にアップロードされている画像コンテンツを閲覧することができる。
なお、プリンタ2のステータスがオンラインの場合(つまり、印字データを受信中の場合)には、印字を優先するために第1表示モードを選択することができない。
【0020】
表示モードが第1表示モードのときに印字データを受信した場合には、印字関連の処理を優先的に実行可能とするため、制御部21は、例えば、表示モードを第2表示モードに変更する。その場合でも、印字が終了した後は、制御部21は、表示モードを第2表示モードから第1表示モードに戻すことができる。それによって、ユーザは特別な操作をすることなく、再度、管理サーバ3から取得した画像を閲覧することができる。
【0021】
制御部21は、例えば、WebAPIを利用して、通信部33を介して受信した管理サーバ3に格納される複数の画像のいずれかに対応する画像に基づく情報を取得する。
【0022】
ストレージ22は、HDD(Hard Disk Drive)あるいはSSD(Solid State Drive)等の記憶装置である。ストレージ22には、図示しない外部のホストコンピュータから受信する印字データを一時的に保存するバッファを含む。ストレージ22は、例えばラベルを発行するためのフォーマットデータが記録されてもよい。
操作入力部23は、プリンタ2に対する操作入力(タッチパネル入力を含む)を受け付ける操作ボタン群23a(
図2参照)と、操作入力を電気信号に変換するインターフェース回路とを含む。
【0023】
表示部24は、表示パネル24a(
図2参照)と、表示パネル24aに画像を表示する駆動回路とを含む。本実施形態では、表示部24は、制御部21によって管理サーバ3から取得した画像を表示パネル24aに表示させる。表示部24は、表示パネル24aに表示された画像がソフトウェアキーを含む場合、ソフトウェアキーに対応する別の画像を表示してもよい。その場合、制御部21がWebAPIを利用して、ソフトウェアキーに対応する別の画像を管理サーバ3から取得する。
【0024】
印字部25は、インクリボン、複数の発熱素子を有するサーマルヘッド、および、プラテンローラを回転駆動するステッピングモータ(いずれも不図示)を含み、印字媒体であるラベルに情報を印字する。印字部25は、印字データに基づき、サーマルヘッドの各発熱素子に選択的に電流を流す。電流により発熱した発熱素子がプラテンローラによって搬送されたラベルにインクリボンを介して押し当てられると、発熱素子に押し当てられたラベルの部分が発色することでラベルに情報が印字される。
【0025】
通信部26(プリンタ側通信部の一例)は、例えば、HTTPS又はMQTT若しくはMQTT over WebSocket等により管理サーバ3と通信を行う。
HTTPSで管理サーバ3と通信を行う場合、通信部26は、例えばREST APIを利用して、管理サーバ3に格納されている画像を取得する。例えば、通信部26は、取得したい画像に対応するURL(Uniform Resource Locator)を指定して例えばGET等のHTTPメソッドにより画像を取得する。この場合、通信部26は、表示パネル24aに表示された複数のソフトウェアキーを含むインターフェースにより受け付けられたリクエストを管理サーバ3に送信し、管理サーバ3によって実行された実行結果として画像を管理サーバ3から受信する。
【0026】
また、通信部26は、管理サーバ3と双方向通信を行うときには、MQTTを利用する。例えば、管理サーバ3から受信した画像に1又は複数のソフトウェアキーが含まれる場合、いずれかのソフトウェアキーの操作入力に応じて、MQTTを利用してソフトウェアキーに対応する新たな画像を管理サーバ3から取得する。なお、MQTTを利用する場合、プリンタ2と管理サーバ3の間の通信は、図示しないMQTTブローカを介し、MQTTに基づくコマンドを送受信することで行われる。MQTTは、軽量さと柔軟性の点で優れた通信プロトコルである。すなわち、MQTTは、ヘッダサイズが最小で2バイトと軽量であるため、制約が厳しいIoTデバイスや帯域幅が限られたネットワーク上でも実装できる。MQTTは、Pub/Sub型データ通信を行うため、IoTデバイスおよび多種多様なアプリケーションに柔軟に適用可能である。
また、通信部26は、HTTPS又はMQTT over WebSocketによって通信を行う場合には、図示しないプロキシサーバを介して通信を行う。
【0027】
図4に示すように、管理サーバ3は、例えば、制御部31、ストレージ32(記憶部の一例)、および、通信部33を備えるクラウドサーバ等である。
制御部31は、マイクロコンピュータおよびメモリ(RAM,ROM)を含み、管理サーバ3の動作を制御する。制御部31は、例えばストレージ32に格納されるサーバプログラムを実行することで、受付部および実行部として機能する。
受付部は、プリンタ2から通信部33を介して、管理サーバ3が実行可能な機能のリクエストを受け付ける。
実行部は、受付部により受け付けられたリクエスト(例えばHTTPリクエスト)に対応する機能を実行する。例えば、実行部は、プリンタ2に対して例えば画像等の複数のリソースを提供するための複数のWebAPIのいずれかによって、受付部により受け付けられたリクエストに応じた画像を取得する。後述するが、WebAPIによって取得可能なリソースは、ストレージ32のリソースデータベース321に格納される。なお、取得した画像は、実行結果の一例である。
ストレージ32は、例えばHDD(Hard Disk Drive)等の大容量記憶装置であり、各種データベースが格納されている。各種データベースには、管理対象となる複数のプリンタ、すなわち、複数のプリンタ2A,2B,…の機器名、モデル名、ステータス、設置場所、および稼動状態のデータ、設定値のデータ等を含むデータベースが含まれる。
制御部31は、プリンタ2のステータスおよび稼動状態のデータをプリンタ2から定期的に、あるいは不定期に受信し、都度、ストレージ32内のデータベースを更新する。
【0028】
通信部33(サーバ側通信部の一例)は、プリンタ2との間で、例えば、HTTPS、MQTT、又は、MQTT over WebSocketによる通信を行う。例えば、通信部33は、制御部31によって取得した画像をプリンタ2に送信する。例えば、MQTTを利用する場合、プリンタ2と管理サーバ3の間の通信は、図示しないMQTTブローカを介し、MQTTに基づくコマンドを送受信することで行われる。
【0029】
図4に示すように、クライアント端末4は、例えば、制御部41、ストレージ42、操作入力部43、表示部44、および、通信部45を備える。
制御部41は、マイクロコンピュータおよびメモリ(RAM,ROM)を含み、クライアント端末4の動作を制御する。クライアント端末4には、ウェブブラウザ上で使用するプリンタ管理用ウェブアプリケーション(以下、単に「ウェブアプリケーション」という。)がインストールされている。クライアント端末4のウェブブラウザは、管理サーバ3から取得するプリンタ2の稼働状態のデータを表示部44に表示する。
【0030】
ストレージ42は、例えばSSD等の記憶装置であり、ウェブブラウザおよびウェブアプリケーションが格納されている。
操作入力部43は、ユーザの操作入力を受け付ける入力インターフェースである。例えば、クライアント端末4を起動するボタン操作や、ウェブブラウザ、ウェブアプリケーションを実行する操作等の操作入力を受け付ける。
表示部44は、例えば液晶表示パネルと表示駆動回路を有する。後述するが、本実施形態の表示システム1では、表示部44にプリンタ2の表示パネル24aの表示状態を示す画面を表示させることが可能である。
通信部45は、管理サーバ3との間でプロキシサーバ(図示せず)を介したHTTPSによる通信を行う。
【0031】
(1-3)プリンタ2と管理サーバ3の通信方法
次に、プリンタ2と管理サーバ3の通信方法について、
図5を参照して説明する。
図5に示すように、プリンタ2のファームウェアは、画面表示処理プログラム211とローカルREST API212を含む。
画面表示処理プログラム211は、プリンタ2の表示パネル24aに画像を表示するためのプログラムである。画面表示処理プログラム211は、アクセス先のURLを切り替えることで、ローカルREST API212、又は、後述するクラウドREST API311との間でHTTP通信を行い、各APIによって受信した画面を選択的に表示するようにプログラムされている。
ローカルREST API212は、REST形式のAPIによりプリンタ2の内部データ(例えば、設定状態のデータ等)をHTTPメソッドにより取得して画面表示処理プログラム211に渡す。それによって、例えば、
図3の画面G1や、画面G1に含まれるソフトウェアキーに対応する画像が表示される。
【0032】
他方、例えば、クラウドサーバとして機能する管理サーバ3は、クラウドREST API311とリソースデータベース321を含む。
リソースデータベース321は、ストレージ32に含まれており、プリンタ2に提供可能な様々なリソースが格納されている。本実施形態の例では、リソースは、画像や画像に対するリンク情報等である。
クラウドREST API311は、REST形式のWebAPIであり、リソースデータベース321に含まれる各リソースをプリンタ2に提供するための複数のWebAPIを有する。
例えば、リソースデータベース321に含まれる画像が複数のソフトウェアキーを含む場合、クラウドREST API311には、当該画像自体を提供するAPI、および、複数のソフトウェアキーの各々に対応した画像を提供するAPIを含む。
リソースデータベース321に含まれる画像と、当該画像を提供するためのAPIとを追加することで、プリンタ2に提供可能なコンテンツを随時増やすことができる。
【0033】
本実施形態では、ローカルREST API212によって表示される画面(例えば、
図3の画面G1)と、クラウドREST API311によって表示される画面(例えば、
図3の画面G2,G3)とにおいて、それぞれ異なるソフトウェアキーを定義可能である。各ソフトウェアキーの操作に応じて、各REST APIによって予め定義されたサービス(又は機能)を提供可能である。
クラウドREST API311によって表示される画面には、プリンタ2に本来存在しないソフトウェアキーを定義可能である。また、プリンタ2のファームウェアを変更することなく新たなソフトウェアキーを定義可能であるため、プリンタ2によって提供される機能あるいはサービスを拡張することができる。
【0034】
なお、クラウドREST API311によって表示される画面では、例えばユーザごとに(プリンタ2ごとに)、各ソフトウェアキー、各ソフトウェアキーの配置(レイアウト)、および、各ソフトウェアキーの操作に応じて提供されるサービス(又は機能)を定義可能である。そのようなサービスは、
図3の天気予報(画面G2)やサプライ通販(画面G3)に限られず、例えば、所定の検索エンジンのウェブブラウザによって表示される画面とすることもできる。その場合、管理サーバ3にウェブブラウザを設け、プリンタ2の画面のソフトウェアキーの操作や文字列の入力を、管理サーバ3によってエミュレートする。
【0035】
また、プリンタ2のユーザごとに選択可能なソフトウェアキーを動的に定義することも可能である。例えば、プリンタ2が設置される位置を予め管理サーバ3に登録しておく。そして、上述した天気予報の例で説明すると、天候が悪化する可能性がある(例えば、雷が発生し、あるいは、雨が降る可能性がある)地域にプリンタ2の設置位置が含まれる場合に、天気予報に対応するソフトウェアキーを画面に含ませるようにして、プリンタ2のユーザの注意を喚起する。例えば、
図3の画面G3のように天気予報と関係のない画面を表示させるときに、天気予報に対応するソフトウェアキーを画面に含ませるようにする。これにより、例えばユーザがプリンタ2の画面上で天気予報に対応するソフトウェアキーを操作して天気予報を確認することが可能となり、ユーザの利便性を向上させることが可能である。
【0036】
ここで、プリンタ2の画面表示処理プログラム211と管理サーバ3のクラウドREST API311との双方向通信は、例えば、MQTTでのコマンドによって行われる。プリンタ2の画面表示処理プログラム211が、ユーザによって選択操作されたソフトウェアキーの情報をクラウドREST API311に送信することによって、当該ソフトウェアキーに対応するAPIにより、対応する画像が画面表示処理プログラム211に送信されて表示される。つまり、プリンタ2の表示パネル24aに対するキー操作を、クラウド上のクラウドREST API311でエミュレートすることになる。
【0037】
プリンタ2が管理サーバ3から画像を取得する場合、プリンタ2の画面表示処理プログラム211は、当該画像のURLを指定したHTTPメソッドによりクラウドREST API311を介して、リソースデータベース321から画像を取得し、表示パネル24aに表示する。
表示パネル24aに表示された画像に含まれるソフトウェアキーが操作されると、当該ソフトウェアキーの情報をMQTTのコマンドによりクラウドREST API311に送信し、当該ソフトウェアキーに対応するAPIにより、対応する画像が画面表示処理プログラム211に送信されて表示される。
【0038】
(1-4)プリンタ2と管理サーバ3の動作
次に、プリンタ2と管理サーバ3の動作について、
図6のシーケンスチャートを参照して説明する。
【0039】
プリンタ2の表示モードのデフォルトは第2表示モード、すなわち、内部データを参照して表示するモードである。この状態で、プリンタ2と管理サーバ3の間で通信が確立している場合を想定する(ステップS10)。
【0040】
ユーザの所定の操作入力により、プリンタ2は、表示モードを第2表示モードから第1表示モードに切り替える(ステップS12)。このときに表示パネル24aに表示される画面は限定しないが、例えば、複数の画像の各々に対する選択肢であるソフトウェアキーを含む。いずれかのソフトウェアキーが選択されると、プリンタ2は、当該ソフトウェアキーに対応するURLを指定したHTTPメソッド(GET等)を含むHTTPリクエストを管理サーバ3に送信する(ステップS14)。管理サーバ3は、URLに対応するリソースとしての画像をストレージ32から読み出し、当該画像を含むHTTPレスポンスをプリンタ2に返す(ステップS16)。プリンタ2は、ステップS16で送信されるHTTPレスポンスに含まれる画像を表示パネル24aに表示する(ステップS18)。
【0041】
ここで、ステップS18に表示された画像(第1画像の一例)が、
図3の画面G2に例示したように、複数のソフトウェアキーを有する場合を想定する。このとき、ユーザが表示パネル24aに表示された画像に含まれる複数のソフトウェアキーの中からいずれかのソフトウェアキーの選択入力を行うと(ステップS20:YES)、MQTTを利用して画像に対するリクエストを送信する(ステップS22)。当該リクエストには、ステップS20で選択されたソフトウェアキーを示す情報が含まれる。
管理サーバ3は、プリンタ2からリクエストを受信すると、ステップS20で選択されたソフトウェアキーに対応するAPIにより、対応する画像(第2画像の一例)をリソースデータベース321から読み出し、当該画像をプリンタ2に送信する(ステップS26)。
【0042】
プリンタ2は、ステップS26で受信した画像を表示パネル24aに表示することで表示更新がなされる(ステップS28)。例えば、
図3の画面G2が表示パネル24aに表示されている場合にソフトウェアキーK6が操作されると、ソフトウェアキーK6に対応するAPIによって、対応する画像(サプライ通販の画像)がリソースデータベース321から読み出されてプリンタ2に送信されることで、画面G3が表示パネル24aに表示される。
【0043】
以上のようにして、プリンタ2の表示パネル24a上のソフトウェアキーに対する操作を、WebAPIを利用してエミュレートすることが可能となる。
なお、管理サーバ3は、ステップS16のHTTPレスポンスにおいて、ステップS18で表示される画像のほか、当該画像に含まれる複数のソフトウェアキーの各々に対応する画像をプリンタ2に一括して送信してもよい。その場合、プリンタ2は、ステップS20でソフトウェアキーの選択入力を受けた後、対応する画像を管理サーバ3に要求せずに直ちに表示パネル24aに表示させることができる。
【0044】
管理サーバ3と通信可能なクライアント端末4は、プリンタ2の稼働状態の情報に加え、プリンタ2の表示パネル24aの表示状態を含む画面を表示させることができる。
この場合、以下の処理が行われる。クライアント端末4は、管理サーバ3に対して、画面作成要求を送信する。管理サーバ3は、画面作成要求に応じて、MQTT又はHTTPSにより画面取得コマンドをプリンタ2に対して要求する。画面取得コマンドを受けてプリンタ2は、画面データを生成し、例えばMQTTにより画面データを管理サーバ3に送信する(アップロードする)。管理サーバ3から画面データがアップロードされたことを通知されると、クライアント端末4は、画面データを管理サーバ3から取得して表示する。
【0045】
なお、複数のクライアント端末4によって1台のプリンタ2に表示されている画面を閲覧することができる。その場合、複数のクライアント端末4において、プリンタ2の表示パネル24aの画面が同期表示され、プリンタ2の表示パネル24aの画面を共有することができる。複数のクライアント端末4によって1台のプリンタ2に表示されている画面を閲覧する場合には、複数のクライアント端末4のうちいずれかのクライアント端末4にアクセス権を設定してもよい。その場合、アクセス権を有するクライアント端末4のみがプリンタ2の画面上のソフトウェアキーをリモートで操作することができるようにする。アクセス権を有するクライアント端末4がわかるように、アクセス権を有するクライアント端末4には、プリンタ2の画面に加えて、アクセス権を所持していることを示すアイコンを表示してもよい。アクセス権を有するクライアント端末4がログアウトし、又は、所定時間プリンタ2に対する操作が行われなかった場合には、アクセス権を当該クライアント端末4から解放し、解放後に最初にログインした端末にアクセス権を譲渡してもよい。複数のクライアント端末4に対して管理者権限を有するクライアント端末4を設定してもよく、その場合、当該クライアント端末4がプリンタ2に対するアクセス権限を強制的に取得するようにしてもよい。
【0046】
以上説明したように、本実施形態の表示システム1によれば、プリンタ2は、WebAPIを利用して管理サーバ3から画像を取得するとともに、当該画像上のソフトウェアキーの操作入力に応じて、ソフトウェアキーに対応する画像を取得する。そのため、プリンタ2とは関係のない画像をクラウドから取得して表示できるとともに、当該画像を更新することができる。従来、プリンタにはウェブブラウザが実装されていないため、ウェブブラウザ上での表示画像の更新と同様のことはできなかった。しかし、本実施形態のプリンタ2では、画像上のソフトウェアキーに対する操作をクラウド上のWebAPIによってエミュレートすることで、表示画像の更新を行うことができ、プリンタのユーザの利便性が拡大する。
【0047】
(2)第2の実施形態
次に、情報処理システムの第2の実施形態に係るプリンタシステムについて説明する。
第2実施形態に係るプリンタシステムの構成は、第1の実施形態の表示システム1(
図4参照)と同じ構成でよく、同一の構成については同一の符号を付して重複説明は省略する。
本実施形態のプリンタシステムは、プリンタ2のファームウェアの機能を拡張するものであり、例えば、プリンタ2単体では備えていない機能をWebAPIによりエミュレートすることにより実現する。
【0048】
図7に、本実施形態のプリンタ2の表示パネル24aに表示される拡張機能画面の例を示す。
図7の画面G4では、例えば「排出カット」、「2次元コード取得」、「ヘルプデスク呼出」といった、プリンタ2単体では備えていない機能に対応する複数のソフトウェアキーからなるソフトウェアキー群KG1を含むインターフェース(第1インターフェース)が表示される。
図7に例示する画面G4は、表示モードを第1表示モードに切り替えたときにデフォルトで表示される画面でもよいし、管理サーバ3のWebAPIを介して取得する画面であってもよい。
【0049】
画面G4に示した例において「排出カット」という機能は、ラベルロールをフィードした後にカットする機能である。プリンタ2にフィード手段およびカット手段が設けられていても、排出カット機能がファームウェアに実装されていない場合には、プリンタ2単体で排出カットを実現することができない。しかし、例えばプリンタ2は、カット手段が設けられていることを検知すると、画面G4に例示する拡張機能画面において「排出カット」に対応するソフトウェアキーを表示し、対応するソフトウェアキーが操作されることにより、「排出カット」の機能を実現することができる。
画面G4に示した例において「2次元コード取得」は、例えばラベルに印字したい2次元コードを取得する機能である。2次元コードが印字データ自体に含まれていない場合には、2次元コードを印字することができない。その場合でも、「2次元コード取得」に対応するソフトウェアキーを操作することにより、例えばWebAPIを介して2次元コードを取得することができる。
画面G4に示した例において「ヘルプデスク呼出」は、ユーザとヘルプデスクとの間で通話を可能とする機能である。この場合、例えばWebAPIによってヘルプデスクとのインターネット電話サービスが提供される。
【0050】
本実施形態では、プリンタ2の制御部21は、表示パネル24aに表示された画像に含まれる少なくとも1つのソフトウェアキーのいずれかに対する操作入力に応じて、当該操作入力に対応するソフトウェアキーに対応するWebAPIを利用して、対応するコマンドを取得するコマンド取得部として機能する。
さらに、制御部21は、コマンド取得部によって取得されたコマンドをプリンタ2に対して実行するコマンド実行部として機能する。
【0051】
本実施形態のプリンタシステムにおけるプリンタ2と管理サーバ3の動作について、
図8のシーケンスチャートを参照して説明する。
図8のシーケンスチャートにおいて、
図6と同様の処理については同一の符号を付し、異なる点に注目して説明する。
表示モードを第2表示モードから第1表示モードに切り替えた後(ステップS12)、例えば
図7の画面G4に例示したように、複数のソフトウェアキーを有する画面を表示する。当該画面を表示する際には、例えば、プリンタ2は、当該画面に対応するURLを指定したHTTPメソッド(GET等)を含むHTTPリクエストを管理サーバ3に送信する(ステップS14)。管理サーバ3は、URLに対応するリソースとしての画像(実行結果の一例)をストレージ32から読み出し、当該画像を含むHTTPレスポンスをプリンタ2に返す(ステップS16)。プリンタ2は、ステップS16に含まれるHTTPレスポンスに含まれる画像を表示パネル24aに表示する(ステップS18)。
なお、ステップS18では、プリンタ2は、HTTPレスポンスに含まれる画像を、プリンタ2が備えている手段に応じて変更してもよい。例えば、プリンタ2は、カット手段を設けている場合には「排出カット」に対応するソフトウェアキーを表示し、カット手段を設けていない場合には「排出カット」に対応するソフトウェアキーを表示しないように、HTTPレスポンスに含まれる画像を変更して表示してもよい。
【0052】
ここで、ステップS18に表示された画像が、
図4の画面G4に例示したように、複数のソフトウェアキーを有する場合を想定する。このとき、ユーザが表示パネル24aに表示された画像に含まれる複数のソフトウェアキーの中から「排出カット」に対応するキーの選択入力を行うと(ステップS20:YES)、MQTTを利用して「排出カット」に対応するコマンドのリクエストを送信(ステップS22)。当該リクエストには、ステップS20で選択されたソフトウェアキーを示す情報が含まれる。
管理サーバ3は、プリンタ2からリクエストを受信すると、ステップS20で選択されたソフトウェアキーに対応するAPIにより、対応するコマンドをリソースデータベース321から取得し(ステップS24a)、当該コマンドをプリンタ2に送信する(ステップS26a)。
本実施形態では、拡張機能の各々のコマンドを提供するWebAPIが管理サーバ3に設けられており、管理サーバ3は、要求されたコマンドに対応するWebAPIにより、リソースデータベース321からコマンドを読み出す。各コマンドは、プリンタ2によって解釈可能なプリンタ言語で記述されている。
【0053】
プリンタ2は、ステップS26aで受信したコマンドを解釈して、排出カットの処理を実行する(ステップS30)。以上のようにして、プリンタ2の表示パネル24a上のソフトウェアキーに対する拡張機能に対する操作を、WebAPIを利用してエミュレートすることが可能となる。
【0054】
以上説明したように、本実施形態のプリンタシステムによれば、プリンタ2は、WebAPIを利用して管理サーバ3から画像を取得するとともに、当該画像上のソフトウェアキーの操作入力に応じて、ソフトウェアキーに対応するコマンドを取得して実行する。そのため、プリンタ2に本来備わっていない機能を実現することができ、ファームウェアを変更することなくプリンタ機能の拡張を実現することができる。
【0055】
以上、本発明の情報処理システム、情報処理方法、および、プログラムの実施形態について説明したが、本発明は上記の実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。
例えば、上述した実施形態では、プリンタ2は、管理サーバ3の実行結果に基づく情報として画像を取得し、画像を表示パネル24aに表示させる場合について説明したが、その限りではない。すなわち、プリンタ2は、管理サーバ3の実行結果に基づく情報として、静止画以外の情報、例えば動画や音声情報等を取得し、再生及び/又は音声出力を行ってもよい。
【符号の説明】
【0056】
1…表示システム
2…プリンタ
21…制御部
211…画面表示処理プログラム
212…ローカルREST API
22…ストレージ
23…操作入力部
23a…操作ボタン群
24…表示部
24a…表示パネル
25…印字部
26…通信部
3…管理サーバ
31…制御部
311…クラウドREST API
32…ストレージ
321…リソースデータベース
33…通信部
4…クライアント端末
41…制御部
42…ストレージ
43…操作入力部
44…表示部
45…通信部