JP2019046247A - 情報処理装置及びその制御方法、通信システム、並びにプログラム - Google Patents
情報処理装置及びその制御方法、通信システム、並びにプログラム Download PDFInfo
- Publication number
- JP2019046247A JP2019046247A JP2017169604A JP2017169604A JP2019046247A JP 2019046247 A JP2019046247 A JP 2019046247A JP 2017169604 A JP2017169604 A JP 2017169604A JP 2017169604 A JP2017169604 A JP 2017169604A JP 2019046247 A JP2019046247 A JP 2019046247A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- processing apparatus
- printer driver
- relay server
- setting
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1222—Increasing security of the print job
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1224—Client or server resources management
- G06F3/1225—Software update, e.g. print driver, modules, plug-ins, fonts
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/121—Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1236—Connection management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1238—Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1288—Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1293—Printer information exchange with computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection 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/00344—Connection 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 management, maintenance, service or repair apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/00938—Software related arrangements, e.g. loading applications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/122—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0094—Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
Abstract
【課題】リモート支援システムにおいて、ユーザ環境の情報処理装置(PC)にインストールされたリモート支援用のプリンタドライバが、リモート支援の終了後に当該情報処理装置上に残り続けることを防止する技術を提供する。
【解決手段】ユーザPC101の通信処理部311は、オペレータPC103によるリモート支援を受けるために中継サーバ102との接続を確立し、ユーザPC101からオペレータPC103のプリンタドライバ332に対して印刷指示を行うためのプリンタドライバ331を、ユーザPC101にインストールする。通信処理部311は、プリンタドライバ312によって生成された印刷データを、プリンタドライバ332による印刷のために、中継サーバ102を介してオペレータPC103へ送信する。通信処理部311は、中継サーバ102との接続が切断されたことに従って、プリンタドライバ312をユーザPC101から削除する。
【選択図】図3
【解決手段】ユーザPC101の通信処理部311は、オペレータPC103によるリモート支援を受けるために中継サーバ102との接続を確立し、ユーザPC101からオペレータPC103のプリンタドライバ332に対して印刷指示を行うためのプリンタドライバ331を、ユーザPC101にインストールする。通信処理部311は、プリンタドライバ312によって生成された印刷データを、プリンタドライバ332による印刷のために、中継サーバ102を介してオペレータPC103へ送信する。通信処理部311は、中継サーバ102との接続が切断されたことに従って、プリンタドライバ312をユーザPC101から削除する。
【選択図】図3
Description
本発明は、情報処理装置及びその制御方法、通信システム、並びにプログラムに関するものである。
近年、複合機(MFP)等の画像処理装置では、音声、動画通信及び遠隔操作による遠隔保守サービスが提案されている。遠隔保守サービスでは、複合機でのエラー発生時に、コールセンタのオペレータが音声及び動画通信でユーザに直接エラー解決方法を伝えるか、コールセンタのオペレータが複合機の遠隔操作を行うことで、エラーの解決が可能となる。これにより、保守のための人員が現地に赴く必要がなく、エラーの解決に要する時間の短縮が可能となる。
このような遠隔保守サービスでは、多くの場合、オフィスに導入されているファイアウォール(FW)に起因して、ユーザ環境内の情報端末(複合機又はPC)とコールセンタの情報端末(PC)とが直接セッションを確立することは難しい。そこで、HTTP(Hypertext Transfer Protocol)を利用して、情報端末間でセッションを確立する技術が提案されている。一般的に、FWの内側にある情報端末へのインターネット側からの接続は制限されるのに対して、FWの内側にある情報端末からインターネット側へのHTTPによる接続は許可される。このようなHTTPによる接続の特徴を利用して、HTTPクライアントとして接続可能なセッション管理サーバ(中継サーバ)に対して、2つの情報端末がそれぞれ接続することで、当該中継サーバを介して情報端末間のセッションを確立できる。
上述の遠隔保守サービスでは、ユーザ環境においてプリンタドライバを用いてPCから複合機へ印刷の実行を指示した際に異常画像が複合機によって印刷(出力される)トラブルに対処するケースがある。この場合、遠隔保守サービスを提供するコールセンタでは、ユーザ環境において複合機による印刷に用いられた印刷データを確認することが必要になりうる。このような印刷を実現する技術として、特許文献1では、メディア・サーバを介して接続された遠隔装置間で文書データを送信することにより、文書データの受信側で文書を印刷する技術が提案されている。
上述の従来技術では、ユーザ環境内のPCから、リモート支援用のプリンタドライバを利用してコールセンタ内の画像形成装置に印刷を実行させた後に、ユーザ又はオペレータがPC上でプリンタドライバを削除し忘れることがありうる。しかし、リモート支援の終了後にユーザ環境内のPCにリモート支援用のプリンタドライバが残り続けると、当該プリンタドライバをユーザが誤って操作してしまう可能性がある。
本発明は、上述の問題に鑑みてなされたものである。本発明は、リモート支援システムにおいて、ユーザ環境の情報処理装置(PC)にインストールされたリモート支援用のプリンタドライバが、リモート支援の終了後に当該情報処理装置上に残り続けることを防止する技術を提供することを目的とする。
本発明の一態様に係る情報処理装置は、第1情報処理装置と、前記第1情報処理装置のリモート支援を行う第2情報処理装置とが、中継サーバを介して通信する通信システムにおける、前記第1情報処理装置であって、前記第2情報処理装置による前記リモート支援を受けるために前記中継サーバとの接続を確立する接続手段と、前記第1情報処理装置から前記第2情報処理装置の第2のプリンタドライバに対して印刷指示を行うための第1のプリンタドライバを、前記第1情報処理装置にインストールするインストール手段と、前記第1のプリンタドライバによって生成された印刷データを、前記第2のプリンタドライバによる印刷のために前記中継サーバを介して前記第2情報処理装置へ送信する送信手段と、前記中継サーバとの前記接続が切断されたことに従って、前記第1のプリンタドライバを前記第1情報処理装置から削除する削除手段と、を備えることを特徴とする。
本発明によれば、リモート支援システムにおいて、ユーザ環境の情報処理装置にインストールされたリモート支援用のプリンタドライバが、リモート支援の終了後に当該情報処理装置上に残り続けることを防止できる。
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
<リモート支援システムのネットワーク構成>
図1は、一実施形態に係るリモート支援システムのネットワーク構成例を示す図である。図1に示すリモート支援システム(通信システム)において、ユーザ環境内のユーザPC101は、ファイアウォール(FW)105を通じてネットワーク107に接続されている。また、コールセンタ内のオペレータPC103は、FW106を通じてネットワーク107に接続されている。ネットワーク107には、更に中継サーバ102が接続されている。ユーザPC101及びオペレータPC103は、HTTPにより呼制御を実行してデータ通信を行うデータ通信機能を備えている。本実施形態では、オペレータPC103は、中継サーバ102を介してユーザPC101と通信することによってユーザPC101のリモート支援を行う。このように、本実施形態のリモート支援システムは、ユーザPC101(第1情報処理装置)と、ユーザPC101のリモート支援を行うオペレータPC103(第2情報処理装置)とが、中継サーバ102を介して通信する通信システムである。
図1は、一実施形態に係るリモート支援システムのネットワーク構成例を示す図である。図1に示すリモート支援システム(通信システム)において、ユーザ環境内のユーザPC101は、ファイアウォール(FW)105を通じてネットワーク107に接続されている。また、コールセンタ内のオペレータPC103は、FW106を通じてネットワーク107に接続されている。ネットワーク107には、更に中継サーバ102が接続されている。ユーザPC101及びオペレータPC103は、HTTPにより呼制御を実行してデータ通信を行うデータ通信機能を備えている。本実施形態では、オペレータPC103は、中継サーバ102を介してユーザPC101と通信することによってユーザPC101のリモート支援を行う。このように、本実施形態のリモート支援システムは、ユーザPC101(第1情報処理装置)と、ユーザPC101のリモート支援を行うオペレータPC103(第2情報処理装置)とが、中継サーバ102を介して通信する通信システムである。
HTTPによるデータ通信では、クライアントノード同士は、中継サーバ(本実施形態では中継サーバ102)から提供されるURI(Uniform Resource Identifier)に対してPOST/GETを行うことでデータ通信を実施する。これにより、クライアントノード同士は、プライベートアドレスエリア又はFWによって遮られていてもデータ通信を行うことができる。本実施形態では、ユーザPC101及びオペレータPC103は、このようなHTTPクライアントノードとして動作する。
FW106によってネットワーク107と隔てられた、コールセンタ内のネットワーク(LAN)には、オペレータPC103だけでなく画像形成装置104も接続されている。画像形成装置104は、オペレータPC103からLPR(Line PRinter daemon protcol)により印刷コマンドを受信する機能、及び受信した印刷コマンドに従ってシート(記録材等)への画像の印刷を行う機能を備えている。
なお、本実施形態では、各クライアントノードがFWを介してネットワーク107に接続して通信を行うネットワーク構成を用いているが、各クライアントノードがFWを介さずにネットワーク107に接続するネットワーク構成が用いられてもよい。また、ネットワーク107には、任意の数のユーザPC、FW、画像形成装置及びオペレータPCを接続可能である。更に、ユーザPC101とオペレータPC103との間の通信において、HTTP以外の通信プロトコルが使用されてもよいし、オペレータPC103と画像形成装置104との間の通信において、LPR以外の通信プロトコルが使用されてもよい。
<リモート支援システムのハードウェア構成>
図2は、本実施形態に係るリモート支援システムのハードウェア構成例を示すブロック図である。なお、図2では、図1に示したFW105,106を省略している。
図2は、本実施形態に係るリモート支援システムのハードウェア構成例を示すブロック図である。なお、図2では、図1に示したFW105,106を省略している。
ユーザPC101において、CPU201は、ROM202又はハードディスク(HDD)204に記憶された制御プログラムに基づいて、システムバス205に接続された各種デバイスとのアクセスを総括的に制御する。ROM202は、CPU201が実行可能な制御プログラム等を記憶している。RAM203は、主としてCPU201の主メモリ、ワークエリア等として機能し、増設ポート(図示せず)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。HDD204は、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル等の各種データを記憶する。なお、HDD204の他に、SDカードやフラッシュメモリ等が外部記憶装置として利用されてもよい。
ネットワークI/F206は、ネットワークケーブルを介して外部ネットワークに接続されており、外部ネットワークを介して外部装置とデータ通信を行う。本実施形態では、ネットワークI/F206は、FW105を介してネットワーク107に接続されている。キーボードI/F207は、キーボード211又はポインティングデバイス(図示せず)からのキー入力を制御する。ディプレイI/F208は、ディスプレイ212の表示を制御する。画像入力I/F209は、カメラ等の画像入力装置213からの画像入力を制御する。音声入出力I/F210は、ヘッドセット等の音声入出力装置214との間の音声入出力を制御する。
中継サーバ102において、CPU221は、ROM222又はHDD224に記憶された制御プログラムに基づいて、システムバス225に接続された各種デバイスとのアクセスを総括的に制御する。ROM222は、CPU221が実行可能な制御プログラム等を記憶している。RAM223は、主としてCPU221の主メモリ、ワークエリア等として機能し、増設ポート(図示せず)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。HDD224は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等を記憶する。なお、HDD224の他に、SDカードやフラッシュメモリ等が外部記憶装置として利用されてもよい。
ネットワークI/F226は、ネットワークケーブルを介して外部ネットワークと接続されており、外部ネットワークを介して外部装置とデータ通信を行う。本実施形態では、ネットワークI/F226は、ネットワーク107に接続されている。
オペレータPC103において、CPU231は、ROM232又はHDD234に記憶された制御プログラムに基づいて、システムバス235に接続された各種デバイスとのアクセスを総括的に制御する。ROM232は、CPU231が実行可能な制御プログラム等を記憶している。RAM233は、主としてCPU231の主メモリ、ワークエリア等として機能し、増設ポート(図示せず)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。HDD234は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等を記憶する。なお、HDD234の他に、SDカードやフラッシュメモリ等が外部記憶装置として利用されてもよい。
ネットワークI/F236は、ネットワークケーブルを介して外部ネットワークに接続されており、外部ネットワークを介して外部装置とデータ通信を行う。本実施形態では、ネットワークI/F236は、FW106を介してネットワーク107に接続されている。キーボードI/F237は、キーボード241又はポインティングデバイス(図示せず)からのキー入力を制御する。ディプレイI/F238は、ディスプレイ242の表示を制御する。画像入力I/F239は、カメラ等の画像入力装置243からの画像入力を制御する。音声入出力I/F230は、ヘッドセット等の音声入出力装置244との間の音声入出力を制御する。
<リモート支援システムのソフトウェア構成>
図3は、本実施形態に係るリモート支援システムのソフトウェア構成例を示すブロック図である。なお、図3では、ユーザPC101において仮想プリンタドライバ312が既にインストールされた状態を示している。
図3は、本実施形態に係るリモート支援システムのソフトウェア構成例を示すブロック図である。なお、図3では、ユーザPC101において仮想プリンタドライバ312が既にインストールされた状態を示している。
ユーザPC101は、通信処理部311、仮想プリンタドライバ312、及び外部アプリケーション313を有する。通信処理部311は、中継サーバ102との通信処理を行う。外部アプリケーション313は、印刷を実行する機能を有する、ユーザPC101の一般的な機能として提供されるアプリケーション(ソフトウェア)である。
仮想プリンタドライバ312は、外部アプリケーション313が印刷を実行する際に指定するプリンタに対応するプリンタドライバであり、オペレータPC103のプリンタドライバ332に対して印刷指示を行うためのプリンタドライバである。仮想プリンタドライバ312は、外部アプリケーション313から印刷指示を受けると、通信処理部311に対して印刷データを転送する機能を有する。
オペレータPC103は、通信処理部331、及びプリンタドライバ332を有する。通信処理部331は、中継サーバ102との通信処理を行う。プリンタドライバ332は、画像形成装置104に印刷を実行させる機能を有する。プリンタドライバ332は、オペレータPC103の一般的な機能として提供されるアプリケーション(ソフトウェア)である。
中継サーバ102は、転送処理部321を有する。転送処理部321は、ユーザPC101とオペレータPC103との間の通信の転送(中継)を行う。画像形成装置104は、印刷実行部341を有する。印刷実行部341は、オペレータPC103のプリンタドライバ332から印刷コマンドを受信すると、受信した印刷コマンドに従って印刷を実行する。
<リモート支援システムの動作の流れ>
本実施形態に係るリモート支援システム全体の動作の流れについて説明する。リモート支援システムでは、以下の(1)〜(6)の順に、ユーザPC101、オペレータPC103及び中継サーバ102がそれぞれ動作する。
本実施形態に係るリモート支援システム全体の動作の流れについて説明する。リモート支援システムでは、以下の(1)〜(6)の順に、ユーザPC101、オペレータPC103及び中継サーバ102がそれぞれ動作する。
(1)ユーザPC101及びオペレータPC103が、中継サーバ102にアクセス(接続)する。
(2)中継サーバ102が、2つのクライアント(ユーザPC101及びオペレータPC103)をペアリングすることにより、当該2つのクライアント間でセッションが確立される。なお、ペアリングは、例えば、2つのクライアントから共通のコード(番号及び/又は文字列)を受け付けてペアリングを行う方法等の、任意の方法により実現できる。
(3)中継サーバ102によるセッションの確立後、ユーザPC101が、ユーザの操作に従って仮想プリンタドライバ312を作成(インストール)する。
(4)ユーザPC101において、外部アプリケーション313から仮想プリンタドライバ312へ印刷指示が行われると、仮想プリンタドライバ312によって生成された印刷データが、中継サーバ102を介してオペレータPC103へ転送される。
(5)オペレータPC103において、プリンタドライバ332が、受信した印刷データに基づく印刷を画像形成装置104に実行させる。
(6)ユーザPC101及びオペレータPC103が、それぞれ中継サーバ102とのセッションを切断して処理を終了する。
(2)中継サーバ102が、2つのクライアント(ユーザPC101及びオペレータPC103)をペアリングすることにより、当該2つのクライアント間でセッションが確立される。なお、ペアリングは、例えば、2つのクライアントから共通のコード(番号及び/又は文字列)を受け付けてペアリングを行う方法等の、任意の方法により実現できる。
(3)中継サーバ102によるセッションの確立後、ユーザPC101が、ユーザの操作に従って仮想プリンタドライバ312を作成(インストール)する。
(4)ユーザPC101において、外部アプリケーション313から仮想プリンタドライバ312へ印刷指示が行われると、仮想プリンタドライバ312によって生成された印刷データが、中継サーバ102を介してオペレータPC103へ転送される。
(5)オペレータPC103において、プリンタドライバ332が、受信した印刷データに基づく印刷を画像形成装置104に実行させる。
(6)ユーザPC101及びオペレータPC103が、それぞれ中継サーバ102とのセッションを切断して処理を終了する。
ここで、図8は、上記(4)及び(5)における、ユーザPC101から画像形成装置104までの印刷データの転送、及び転送されるデータの形式の例を示す図である。GDI(Graphics Device Interface)コマンドは、プリンタドライバへデータを転送するための、Windows(登録商標)規格のコマンドである。本実施形態では、ユーザPC101の外部アプリケーション313からオペレータPC103のプリンタドライバ332まで、GDIコマンドによって印刷データが転送される。プリンタドライバ322は、受信した印刷データに基づいて、画像形成装置104の印刷実行部341に対してLPRにより印刷コマンドを送信する。印刷実行部341は、受信した印刷コマンドに従って印刷を実行する。
以下では、図4A乃至図7を参照して、ユーザPC101、中継サーバ102、及びオペレータPC103において実行される処理について、より詳細に説明する。
<ユーザPC101(通信処理部)の処理手順>
図4A及び図4Bは、ユーザPC101における通信処理部311による処理の手順を示すフローチャートである。図4A及び図4Bに示す各ステップの処理は、HDD204に格納されたプログラムをCPU201がRAM203に読み出して実行することで、ユーザPC101において実現される。図4A及び図4Bに示す手順による処理は、例えば、通信処理部311の起動(即ち、リモート支援を受けるための処理を実現するリモート支援アプリケーション(以下、「リモート支援アプリ」と略記する。)の起動)に従って開始される。
図4A及び図4Bは、ユーザPC101における通信処理部311による処理の手順を示すフローチャートである。図4A及び図4Bに示す各ステップの処理は、HDD204に格納されたプログラムをCPU201がRAM203に読み出して実行することで、ユーザPC101において実現される。図4A及び図4Bに示す手順による処理は、例えば、通信処理部311の起動(即ち、リモート支援を受けるための処理を実現するリモート支援アプリケーション(以下、「リモート支援アプリ」と略記する。)の起動)に従って開始される。
CPU201(通信処理部311)は、S401で、ワンタイムパスワードの入力画面をディスプレイ212に表示し、S402で、当該入力画面においてワンタイムパスワードの入力をユーザから受け付ける。本実施形態のリモート支援システムでは、ユーザPC101による中継サーバ102へのアクセスを可能にするために、ワンタイムパスワードが使用される。ユーザPC101のユーザは、コールセンタのオペレータから伝えられたワンタイムパスワードを、キーボード211を用いて入力画面に入力することにより、ユーザPC101を中継サーバ102にアクセスさせる。
このワンタイムパスワードは、後述するように、オペレータPC103からのリクエスト(図7のS701)に応じて中継サーバ102上にリモート支援用の支援室が作成された際に(図6のS603)、当該支援室に関連付けて作成される。この支援室は、中継サーバ102上のメモリ領域に対応する。作成されたワンタイムパスワードは、支援室URIと一緒にオペレータPC103へ送信され(図6のS604)、オペレータPC103のディスプレイ242に表示される(図7のS703)。コールセンタのオペレータは、ディスプレイ242に表示されたワンタイムパスワードを、電話又はメール等の手段によってユーザに伝える。これにより、上述のようにユーザがワンタイムパスワードを入力画面に入力可能になる。
CPU201は、ワンタイムパスワードの入力が完了すると、S403で、入力されたワンタイムパスワードを認証リクエストのデータ部に設定(格納)し、当該認証リクエストを中継サーバ102へ送信する。中継サーバ102における認証が成功すると、中継サーバ102から、入室リクエストの送信先となる支援室URIが送信される(図6のS608)。このため、CPU201は、認証リクエストの送信後、S404で、中継サーバ102から支援室URIを受信する。
支援室URIを受信すると、S405で、CPU201は、中継サーバ102から受信した支援室URIに対して、支援室への入室を要求するための入室リクエストを送信する。この入室リクエストにより、中継サーバ102は、ユーザPC101とオペレータPC103とのペアリング(関連付け)を行う。なお、図6を用いて後述するように、中継サーバ102は、支援室URIに対応する支援室レコードに、ユーザPC101に対応するアカウントを追加することで、ユーザPC101と先に入室していたオペレータPC103とのペアリングを行う。これにより、中継サーバ102上の支援室へのユーザPCの入室が完了し(即ち、中継サーバ102との接続が確立され)、ユーザPC101とオペレータPC103とが、中継サーバ102を介してリモート支援のための通信を行うことが可能になる。
S405における支援室への入室が完了すると、S406で、CPU201は、リモートプリンタ用のソケットを作成し、当該ソケットによる接続待ち(Listen)を開始する。ここで、リモートプリンタは、ユーザPC101におけるデバイスリストに含まれる、リモート支援用のプリンタドライバである仮想プリンタドライバ312の名称である。S406では、画像データ及び印刷設定を含む印刷データを仮想プリンタドライバ312(リモートプリンタ)から受信するためのソケットが作成される。なお、作成されるソケットは、例えば、TCPのローカルループバックのソケットでもよいし、ファイルディスクリプタでもよい。
次にS407で、CPU201は、支援室への入室時にリモートプリンタを作成する設定が行われているか否かを判定する。この設定は、ユーザの指示に従ってリモート支援アプリによって行われ、対応する設定データがHDD204に予め保存されている。なお、この設定は、中継サーバ102との接続の確立時に仮想プリンタドライバ312をインストールする第3設定の一例である。CPU201は、当該設定が行われている場合には、S411へ処理を進め、当該設定が行われていない場合には、S408へ処理を進める。
S408で、CPU201は、リモートプリンタを作成するか否かを支援室への入室時に確認する設定が行われているか否かを判定する。この設定は、ユーザの指示に従ってリモート支援アプリによって行われ、対応する設定データがHDD204に予め保存されている。なお、この設定は、中継サーバ102との接続が確立されるごとに、仮想プリンタドライバ312をインストールするか否かをユーザに確認する第4設定の一例である。CPU201は、当該設定が行われていない場合には、S412へ処理を進め、当該設定が行われている場合には、S409へ処理を進める。S409で、CPU201は、リモートプリンタを作成するか否かを確認するためのポップアップ画面(確認画面)をディスプレイ212に表示する。当該確認画面の表示後、CPU201は、リモートプリンタの作成指示をユーザから受け付けたか否かを判定する。CPU201は、作成指示を受け付けた場合には、S411へ処理を進め、作成指示を受け付けなかった場合には、S412へ処理を進める。
S411で、CPU201は、図4Cに示す手順で、リモートプリンタの作成処理を実行する。リモートプリンタ作成処理を開始すると、CPU201は、S451で、リモートプリンタが作成されているか否かを判定する。具体的には、CPU201は、HDD204に保存されているデバイスリストからリモートプリンタを検索する。更に、CPU201は、リモートプリンタがデバイスリストに存在する場合には、リモートプリンタが作成されていると判定し、リモートプリンタ作成処理を終了する。一方、CPU201は、リモートプリンタがデバイスリストに存在しない場合には、リモートプリンタが作成されていないと判定し、S452へ処理を進める。
S452で、CPU201は、リモートプリンタ情報を要求するためのプリンタ情報リクエストを中継サーバ102へ送信する。リモートプリンタ情報は、オペレータPC103のプリンタドライバに関する情報である。このリモートプリンタ情報は、ユーザPC101においてリモートプリンタに対して印刷の実行を指示する際に、ユーザがどのような印刷設定を行うことが可能であるかを示す情報を含む。プリンタ情報リクエストは、中継サーバ102からオペレータPC103へ転送される。更に、当該リクエストに対する応答として、リモートプリンタ情報がオペレータPCから中継サーバ102へ送信され、中継サーバ102からユーザPC101へ転送される。その結果、S453で、CPU201は、リモートプリンタ情報を中継サーバ102から受信する。
リモートプリンタ情報の受信後、S454で、CPU201は、受信したリモートプリンタ情報とリモートプリンタ用ソケットに関するソケット情報とに基づいて、リモートプリンタを作成(即ち、仮想プリンタドライバ312をインストール)する。リモートプリンタ用ソケットは、リモートプリンタへ印刷データを出力する際の、リモートプリンタに対応する出力先として設定される。作成されたリモートプリンタに関する設定は、HDD204に保存される。なお、HDD204に保存されているデバイスリストに、作成されたリモートプリンタが追加される。その後、CPU201は、リモートプリンタ作成処理を終了する。このようにして、CPU201は、上述の第3設定(S407)が行われている場合には、中継サーバ102との接続が確立されると仮想プリンタドライバ312をインストールする。
図4A及び図4Bの説明に戻り、リモートプリンタ作成処理が終了すると、CPU201は、S411からS412へ処理を進める。S412、S414、S416及びS418において、CPU201は、キーボード211等をユーザが操作して行われる指示、又はリモートプリンタ用ソケットを介したデータの受信を待ち受ける状態となる。
S412で、CPU201は、中継サーバとの接続(セッション)の切断指示をユーザから受け付けたか否かを判定し、切断指示を受け付けた場合には、S413へ処理を進め、切断指示を受け付けていない場合には、S414へ処理を進める。S414で、CPU201は、リモートプリンタの作成指示を受け付けたか否かを判定し、作成指示を受け付けた場合には、S415へ処理を進める。S415で、CPU201は、S411と同様にリモートプリンタ作成処理(図4C)を実行し、S412へ処理を戻し、再び待ち受け状態となる。一方、作成指示を受け付けていない場合には、CPU201は、S414からS416へ処理を進める。
S416で、CPU201は、リモートプリンタの削除指示を受け付けたか否かを判定し、削除指示を受け付けた場合には、S417へ処理を進め、図4Cに示す手順で、リモートプリンタの削除処理を実行する。リモートプリンタ削除処理を開始すると、S461で、CPU201は、リモートプリンタが作成されているか否かを判定する。具体的には、CPU201は、HDD204に保存されているデバイスリストからリモートプリンタを検索する。更に、CPU201は、リモートプリンタがデバイスリストに存在しない場合、リモートプリンタが作成されていないと判定し、リモートプリンタ削除処理を終了する。一方、CPU201は、リモートプリンタがデバイスリストに存在する場合、リモートプリンタが作成されていると判定し、S462へ処理を進める。S462で、CPU201は、HDD204に保存されているデバイスリストからリモートプリンタを削除する。その後、CPU201は、リモートプリンタ削除処理を終了する。
図4A及び図4Bの説明に戻り、リモートプリンタ削除処理が終了すると、CPU201は、S417からS412へ処理を戻し、再び待ち受け状態となる。また、S416で、CPU201は、削除指示を受け付けていない場合には、S418へ処理を進める。S418で、CPU201は、リモートプリンタ(仮想プリンタドライバ312)から出力された印刷データを、リモートプリンタ用ソケットを介して受信したか否かを判定する。CPU201は、印刷データを受信していない場合には、S412へ処理を戻し、再び待ち受け状態となる。一方、CPU201は、印刷データを受信した場合には、S419へ処理を進める。S419で、CPU201は、受信した印刷データをリモート印刷リクエストのデータ部に設定(格納)し、当該リクエストを中継サーバへ送信する。この印刷データには、少なくとも画像データ及び印刷設定が含まれている。
中継サーバ102へ送信されたリモート印刷リクエストは、中継サーバ102からオペレータPC103へと転送される。後述するように、オペレータPC103は、受信したリモート印刷リクエストに従って、プリンタドライバ332を用いて画像形成装置104に印刷を実行させる。CPU201は、リモート印刷リクエストの送信が完了すると、S412へ処理を戻し、再び待ち受け状態となる。
S412において中継サーバ102との接続の切断指示を受け付けた場合、CPU201は、次にS413で、入室中の支援室からの退室を要求するための退室リクエストを中継サーバ102へ送信する。この退室リクエストにより、中継サーバ102が保持している支援室レコードから、ユーザPC101に対応するアカウントが削除され、ユーザPC101と中継サーバ102との接続(セッション)が切断される。
次にS420で、CPU201は、支援室からの退室時にリモートプリンタを削除する設定が行われているか否かを判定する。この設定は、ユーザの指示に従ってリモート支援アプリによって行われ、対応する設定データがHDD204に予め保存されている。なお、この設定は、中継サーバ102との接続の切断時に仮想プリンタドライバ312を削除する第1設定の一例である。CPU201は、当該設定が行われている場合には、S421へ処理を進め、当該設定が行われていない場合には、S424へ処理を進める。
S421で、CPU201は、リモートプリンタを削除するか否かを支援室への退室時に確認する設定が行われているか否かを判定する。この設定は、ユーザの指示に従ってリモート支援アプリによって行われ、対応する設定データがHDD204に予め保存されている。なお、この設定は、中継サーバ102との接続が切断されるごとに、仮想プリンタドライバ312を削除するか否かをユーザに確認する第2設定の一例である。CPU201は、当該設定が行われていない場合には、S425へ処理を進め、当該設定が行われている場合には、S422へ処理を進める。S422で、CPU201は、リモートプリンタを削除するか否かを確認するためのポップアップ画面(確認画面)をディスプレイ212に表示する。当該画面の表示後、CPU201は、リモートプリンタの削除指示をユーザから受け付けたか否かを判定する。CPU201は、削除指示を受け付けた場合には、S424へ処理を進め、削除指示を受け付けなかった場合には、S425へ処理を進める。
S424で、CPU201は、S417と同様にリモートプリンタ削除処理(図4C)を実行し、S425へ処理を進める。このようにして、CPU201は、上述の第1設定(S420)が行われている場合には、中継サーバ102との切断に従って仮想プリンタドライバ312を削除する。S425で、CPU201は、S406において作成したリモートプリンタ用ソケットを削除し、処理を終了する。
<ユーザPC101(仮想プリンタドライバ)の処理手順>
図5は、ユーザPC101における仮想プリンタドライバ312による処理の手順を示すフローチャートである。図5に示す各ステップの処理は、HDD204に格納されたプログラムをCPU201がRAM203に読み出して実行することで、ユーザPC101において実現される。図5に示す手順による処理は、例えば、リモートプリンタ作成処理(図4C)により作成されたリモートプリンタ(仮想プリンタドライバ312)に対して、外部アプリケーション313から印刷指示が行われた際に開始される。なお、ユーザが外部アプリケーション313を操作して、印刷を行うプリンタとしてリモートプリンタを指定することで、外部アプリケーション313からリモートプリンタ(仮想プリンタドライバ312)へ印刷指示が行われる。
図5は、ユーザPC101における仮想プリンタドライバ312による処理の手順を示すフローチャートである。図5に示す各ステップの処理は、HDD204に格納されたプログラムをCPU201がRAM203に読み出して実行することで、ユーザPC101において実現される。図5に示す手順による処理は、例えば、リモートプリンタ作成処理(図4C)により作成されたリモートプリンタ(仮想プリンタドライバ312)に対して、外部アプリケーション313から印刷指示が行われた際に開始される。なお、ユーザが外部アプリケーション313を操作して、印刷を行うプリンタとしてリモートプリンタを指定することで、外部アプリケーション313からリモートプリンタ(仮想プリンタドライバ312)へ印刷指示が行われる。
リモートプリンタへの印刷指示が行われると、S501で、CPU201(仮想プリンタドライバ312)は、外部装置への印刷データの送信を許可(承認)するか否かをユーザに確認するための確認画面をディスプレイ212に表示する。その後、S502で、CPU201は、ユーザによるキーボード211等の操作を受け付けて、印刷データの送信がユーザによって許可されたか否かを判定する。CPU201は、印刷データの送信が許可されていない場合には、処理を終了し、許可された場合には、S503へ処理を進める。
S503で、CPU201は、外部アプリケーション313から、印刷対象の画像データと印刷設定とを受信する。最後にS504で、CPU201は、印刷対象の画像データと印刷設定とを含む印刷データを生成し、当該印刷データをリモートプリンタ用ソケットへ送信することにより、通信処理部311へ出力する。その後、CPU201は、図5に示す手順による処理を終了する。
<中継サーバ102の処理手順>
図6は、中継サーバ102における転送処理部321による処理の手順を示すフローチャートである。図6に示す各ステップの処理は、HDD224に格納されたプログラムをCPU221がRAM223に読み出して実行することで、中継サーバ102において実現される。
図6は、中継サーバ102における転送処理部321による処理の手順を示すフローチャートである。図6に示す各ステップの処理は、HDD224に格納されたプログラムをCPU221がRAM223に読み出して実行することで、中継サーバ102において実現される。
まずS601で、CPU221は、クライアントからリクエストを受信する。本実施形態では、このクライアントはユーザPC101又はオペレータPC103に相当する。リクエストを受信すると、CPU221は、S602、S605、S610、S612、S614及びS618において、受信したリクエストの種類を判定する。CPU221は、受信したリクエストの種類を判定できない場合には(S618で「NO」)、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストが、支援室作成リクエストである場合(S602で「YES」)、CPU221は、S603へ処理を進める。なお、支援室作成リクエストは、オペレータが操作するクライアント(オペレータPC103)から送信される。S603で、CPU221は、支援室テーブルに新たな支援室レコードを作成し、HDD224に保存する。以下の表1は、支援室テーブルの例を示している。
支援室テーブルの各行は、それぞれ異なる支援室に対応する支援室レコードを示している。各支援室レコードは、表1に示すように、支援室ID、支援室URI、ワンタイムパスワード、及びアカウントリストで構成される。支援室IDは、対応する支援室の識別情報である。支援室URIは、対応する支援室への入室を中継サーバ102に要求するために用いられる。ワンタイムパスワードは、中継サーバ102へのアクセス(認証リクエストのを送信)のために用いられる。アカウントリストは、対応する支援室に入室しているアカウントのリストである。なお、支援室ID「0001」を有する支援室レコードは、作成直後の支援室レコードの例であり、支援室に入室しているアカウントが存在しない。
支援室レコードの作成後、S604で、CPU221は、リクエスト元のクライアントに対して、作成した支援室レコードに含まれる支援室URI及びワンタイムパスワードを送信する。その後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストが、認証リクエストである場合(S605で「YES」)、CPU221は、S606へ処理を進める。なお、認証リクエストは、ユーザが操作するクライアント(ユーザPC101)から送信される。S606で、CPU221は、受信したリクエストに含まれるワンタイムパスワードを取得し、支援室テーブルから当該ワンタイムパスワードを検索する。これにより、ワンタイムパスワードに対応する支援室レコードを検索する。次にS607で、CPU221は、支援室レコードの検索に成功したか否かを判定し、検索に成功した場合には、S608へ処理を進める。S608で、CPU221は、検索された支援室レコードに含まれる支援室URIを、リクエスト元のクライアントへ送信する。一方、S607において検索に失敗した場合、CPU221は、S609へ処理を進め、認証エラーの発生を、リクエスト元のクライアントへ通知する。S608又はS609の処理の完了後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストが、支援室への入室リクエストである場合(S610で「YES」)、CPU221は、S611へ処理を進める。なお、入室リクエストは、ユーザが操作するクライアント(ユーザPC101)又はオペレータが操作するクライアント(オペレータPC103)から送信される。S611で、CPU221は、入室リクエストの送信先の支援室URIに対応する支援室レコードのアカウントリストに、リクエスト元のクライアントに対応するアカウント名を登録する。なお、アカウントリストは、表1に示す例のように、複数のアカウント名が登録される場合もある。S611の処理により、クライアント同士の(ユーザPC101とオペレータPC103の)ペアリングが可能である。その後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストが、支援室からの退室リクエストである場合(S612で「YES」)、CPU221は、S613へ処理を進める。なお、退室リクエストは、ユーザが操作するクライアント(ユーザPC101)又はオペレータが操作するクライアント(オペレータPC103)から送信される。S613で、CPU221は、退室リクエストの送信先となっている支援室URIに対応する支援室レコードのアカウントリストから、リクエスト元のクライアントに対応するアカウント名を削除する。S613の処理により、クライアント同士の(ユーザPC101とオペレータPC103の)ペアリングが解消される。その後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストが、プリンタ情報リクエストである場合(S614で「YES」)、CPU221は、S615へ処理を進める。なお、プリンタ情報リクエストは、ユーザが操作するクライアント(ユーザPC101)から送信される。S615で、リクエスト元のクライアント(ユーザPC101)とペアリングされている他のクライアント(オペレータPC103)に、受信したプリンタ情報リクエストを転送する。具体的には、入室リクエストの送信先の支援室URIに対応する支援室レコードのアカウントリストから、リクエスト元のアカウント以外のアカウントに対応するクライアントを特定し、そのクライアントにプリンタ情報リクエストを送信する。なお、中継サーバ102からクライアントへのプッシュ送信は、Long Polling又はWeb Socket等を用いて実現できる。
次にS616で、CPU221は、プリンタ情報リクエストの転送先となったクライアント(オペレータPC103)から、当該リクエストに対する応答として、リモートプリンタ情報を受信する。更にS617で、CPU221は、受信したリモートプリンタ情報を、リクエスト元のクライアントへ送信する。その後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
S601において受信したリクエストがリモート印刷リクエストである場合(S618で「YES」)、CPU221は、S619へ処理を進める。S619で、CPU221は、リクエスト元のクライアント(ユーザPC101)とペアリングされている他のクライアント(オペレータPC103)に、受信したリモート印刷リクエストを転送する。当該リクエストの転送が完了すると、S620で、CPU221は、リクエスト元のクライアント(ユーザPC101)に対して、当該リクエストの転送が成功したことを通知する。S618〜S620の処理により、ユーザPC101において印刷指示が行われた印刷データが、中継サーバ102からオペレータPC103へ転送される。その後、CPU221は、S601へ処理を戻し、次のリクエストを待ち受ける。
<オペレータPC103の処理手順>
図7は、オペレータPC103における通信処理部331による処理の手順を示すフローチャートである。図7に示す各ステップの処理は、HDD234に格納されたプログラムをCPU231がRAM233に読み出して実行することで、オペレータPC103において実現される。
図7は、オペレータPC103における通信処理部331による処理の手順を示すフローチャートである。図7に示す各ステップの処理は、HDD234に格納されたプログラムをCPU231がRAM233に読み出して実行することで、オペレータPC103において実現される。
まずS701で、CPU231は、支援室作成リクエストを中継サーバ102へ送信する。次にS702で、CPU231は、次にオペレータPC103は、当該リクエストに対応する応答として中継サーバ102から(S604において)送信される、支援室レコードに対応する支援室URI及びワンタイムパスワードを受信する。当該受信が完了すると、S703で、CPU231は、受信したワンタイムパスワードをディスプレイ242に表示する。表示されたワンタイムパスワードを、オペレータが電話又はメール等の手段でユーザPC101のユーザに伝えることによって、当該ユーザが、ユーザPC101に中継サーバ102への認証リクエストの送信を行わせることが可能になる。その後、S704で、CPU231は、中継サーバ102から受信した支援室URIに対して、入室リクエストを送信する。
入室リクエストの送信が完了すると、CPU231は、S704からS705へ処理を進める。S705、S707及びS710において、CPU231は、キーボード241等をオペレータが操作して行われる指示、又は中継サーバ102から転送されるリクエストを待ち受ける状態となる。
S705で、CPU231は、中継サーバとの接続(セッション)の切断指示をオペレータから受け付けたか否かを判定し、切断指示を受け付けた場合には、S706へ処理を進め、切断指示を受け付けていない場合には、S707へ処理を進める。S707で、CPU231は、中継サーバ102からプッシュ送信により送信されたリモートプリンタ情報リクエストを受信したか否かを判定する。CPU231は、当該リクエストを受信した場合には、S708へ処理を進め、当該リクエストを受信していない場合には、S710へ処理を進める。S710で、CPU231は、中継サーバ102からプッシュ送信により送信されたリモート印刷リクエストを受信したか否かを判定する。CPU231は、当該リクエストを受信した場合には、S711へ処理を進め、当該リクエストを受信していない場合には、S705へ処理を戻し、再び待ち受け状態となる。
プリンタ情報リクエストを受信した場合、S708で、CPU231は、HDD234に保存されているデバイスリストから、デフォルトに設定されているプリンタについてのプリンタ情報を取得する。なお、本実施形態では、画像形成装置104がデフォルトのプリンタとして設定されているものとする。上述のように、プリンタ情報には、オペレータPC103のプリンタドライバ332に関する情報であり、どのような印刷設定を行うことが可能であるかを示す情報を含む。次にS709で、CPU231は、取得したプリンタ情報(リモートプリンタ情報)を、プリンタ情報リクエストに対する応答として、中継サーバ102へ送信する。その後、CPU231は、S705へ処理を戻し、再び待ち受け状態となる。
リモート印刷リクエストを受信した場合、S711で、CPU231は、リモート印刷リクエストのデータ部から印刷データ(画像データ及び印刷設定)を取得する。更に、CPU231は、プリンタドライバ332を用いて、取得した印刷データに基づいて印刷コマンドを画像形成装置104に送信することによって、当該印刷コマンドに従った印刷を画像形成装置104に実行させる。その後、S712で、CPU231は、リモート印刷リクエストに対する応答として、画像形成装置104への印刷データの転送の完了を示す通知を中継サーバ102へ送信する。その後、CPU231は、S705へ処理を戻し、再び待ち受け状態となる。
中継サーバ102との接続の切断指示をオペレータから受け付けた場合、S706で、CPU231は、退室リクエストを中継サーバ102へ送信する。この退室リクエストにより、中継サーバ102が保持している支援室レコードから、オペレータPC103に対応するアカウントが削除され、オペレータPC103と中継サーバ102との接続(セッション)が切断される。退室リクエストの送信が完了すると、CPU231は、処理を終了する。
以上説明したように、本実施形態のユーザPC101では、リモート支援システムを利用する際に、通信処理部311(CPU201)は、オペレータPC103によるリモート支援を受けるために中継サーバ102との接続を確立する。更に、通信処理部311は、ユーザPC101からオペレータPC103のプリンタドライバ332に対して印刷指示を行うための仮想プリンタドライバ312を、ユーザPC101にインストールする。外部アプリケーション313から仮想プリンタドライバ312に対して印刷指示が行われると、仮想プリンタドライバ312によって印刷データが生成され、通信処理部311へ出力される。通信処理部311は、仮想プリンタドライバ312によって生成された印刷データを、プリンタドライバ332による印刷のために、中継サーバ102を介してオペレータPC103へ送信する。その後、通信処理部311は、中継サーバ102へ退室リクエストを中継サーバ102へ送信することにより、中継サーバ102との接続が切断されたことに従って、仮想プリンタドライバ312をユーザPC101から削除する。
このように、本実施形態のユーザPC101は、中継サーバ102への退室リクエストの送信に連動して(中継サーバ102との接続が切断されたことに従って)、仮想プリンタドライバ312(リモートプリンタ)の削除処理を実行する。これにより、ユーザPC101にインストールされた仮想プリンタドライバ312が、リモート支援の終了後にユーザPC101上に残り続けることを防止できる。したがって、リモート支援の終了後にユーザが仮想プリンタドライバ312を誤って操作してしまうことを防止できる。
また、本実施形態では、中継サーバ102との接続の切断時に仮想プリンタドライバ312を削除する設定が事前に行われていない場合には、当該接続の切断時に、仮想プリンタドライバ312を削除するか否かをユーザに確認している。これにより、上述のような設定が行われていない場合にも、仮想プリンタドライバ312の削除についての確認をユーザに促すことができる。その結果、リモート支援の終了後に、ユーザが知らない状態で仮想プリンタドライバ312がユーザPC101上に残り続けることを防止できる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101:ユーザPC、102:中継サーバ、103:オペレータPC、104:画像形成装置、105,106:FW、201,221,231:CPU、311:通信処理部、312:仮想プリンタドライバ(リモートプリンタ)、313:外部アプリケーション、321:転送処理部、331:通信処理部、332:プリンタドライバ、341:印刷実行部
Claims (13)
- 第1情報処理装置と、前記第1情報処理装置のリモート支援を行う第2情報処理装置とが、中継サーバを介して通信する通信システムにおける、前記第1情報処理装置であって、
前記第2情報処理装置による前記リモート支援を受けるために前記中継サーバとの接続を確立する接続手段と、
前記第1情報処理装置から前記第2情報処理装置の第2のプリンタドライバに対して印刷指示を行うための第1のプリンタドライバを、前記第1情報処理装置にインストールするインストール手段と、
前記第1のプリンタドライバによって生成された印刷データを、前記第2のプリンタドライバによる印刷のために前記中継サーバを介して前記第2情報処理装置へ送信する送信手段と、
前記中継サーバとの前記接続が切断されたことに従って、前記第1のプリンタドライバを前記第1情報処理装置から削除する削除手段と、
を備えることを特徴とする第1情報処理装置。 - 前記中継サーバとの接続の切断時に前記第1のプリンタドライバを削除する第1設定を行う第1設定手段を更に備え、
前記削除手段は、前記第1設定が行われている場合に、前記中継サーバとの前記接続の切断に従って前記第1のプリンタドライバを削除する
ことを特徴とする請求項1に記載の第1情報処理装置。 - 前記第1設定が行われていない場合に、前記中継サーバとの前記接続の切断時に、前記第1のプリンタドライバを削除するか否かをユーザに確認する第1確認手段を更に備え、
前記削除手段は、前記第1設定が行われていない場合に、前記第1確認手段による確認の結果に従って、前記第1のプリンタドライバを削除する
ことを特徴とする請求項2に記載の第1情報処理装置。 - 前記中継サーバとの接続が切断されるごとに、前記第1のプリンタドライバを削除するか否かをユーザに確認する第2設定を行う第2設定手段を更に備え、
前記第1確認手段は、前記第2設定が行われている場合に、前記第1のプリンタドライバを削除するか否かをユーザに確認する
ことを特徴とする請求項3に記載の第1情報処理装置。 - 前記インストール手段は、前記中継サーバを介して前記第2情報処理装置から前記第2のプリンタドライバに関する情報を取得し、取得した情報に基づいて、前記第1のプリンタドライバをインストールする
ことを特徴とする請求項1から4のいずれか1項に記載の第1情報処理装置。 - 前記インストール手段は、前記接続手段によって前記中継サーバとの前記接続が確立されると、前記第1のプリンタドライバをインストールする
ことを特徴とする請求項1から5のいずれか1項に記載の第1情報処理装置。 - 前記第1のプリンタドライバに対して前記印刷指示が行われると、前記第1のプリンタドライバは、前記第2情報処理装置へ印刷データへの送信を許可するか否かをユーザに確認し、前記送信が許可されると、前記印刷データを前記送信手段へ出力する
ことを特徴とする請求項1から6のいずれか1項に記載の第1情報処理装置。 - 前記中継サーバとの接続の確立時に前記第1のプリンタドライバをインストールする第3設定を行う第3設定手段を更に備え、
前記インストール手段は、前記第3設定が行われている場合に、前記中継サーバとの前記接続が確立されると前記第1のプリンタドライバをインストールする
ことを特徴とする請求項1から7のいずれか1項に記載の第1情報処理装置。 - 前記第3設定が行われていない場合に、前記中継サーバとの前記接続の確立時に、前記第1のプリンタドライバをインストールするか否かをユーザに確認する第2確認手段を更に備え、
前記インストール手段は、前記第3設定が行われていない場合に、前記第2確認手段による確認の結果に従って、前記第1のプリンタドライバをインストールする
ことを特徴とする請求項8に記載の第1情報処理装置。 - 前記中継サーバとの接続が確立されるごとに、前記第1のプリンタドライバをインストールするか否かをユーザに確認する第4設定を行う第4設定手段を更に備え、
前記第2確認手段は、前記第4設定が行われている場合に、前記第1のプリンタドライバをインストールするか否かをユーザに確認する
ことを特徴とする請求項9に記載の第1情報処理装置。 - 請求項1から10のいずれか1項に記載の第1情報処理装置と、
前記第1情報処理装置のリモート支援を行う第2情報処理装置と
前記第1情報処理装置と前記第2情報処理装置とがネットワークを介してそれぞれ接続する中継サーバであって、前記第1情報処理装置と前記第2情報処理装置との間の前記リモート支援のための通信を中継する中継サーバと、
を備えることを特徴とする通信システム。 - 第1情報処理装置と、前記第1情報処理装置のリモート支援を行う第2情報処理装置とが、中継サーバを介して通信する通信システムにおける、前記第1情報処理装置の制御方法であって、
前記第2情報処理装置による前記リモート支援を受けるために前記中継サーバとの接続を確立する接続工程と、
前記第1情報処理装置から前記第2情報処理装置の第2のプリンタドライバに対して印刷指示を行うための第1のプリンタドライバを、前記第1情報処理装置にインストールするインストール工程と、
前記仮想プリンタドライバによって生成された印刷データを、前記第2のプリンタドライバによる印刷のために前記中継サーバを介して前記第2情報処理装置へ送信する送信工程と、
前記中継サーバとの前記接続が切断されたことに従って、前記第1のプリンタドライバを前記第1情報処理装置から削除する削除工程と、
を含むことを特徴とする第1情報処理装置の制御方法。 - 請求項12に記載の第1情報処理装置の制御方法の各工程をコンピュータに実行させるためのプログラム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017169604A JP2019046247A (ja) | 2017-09-04 | 2017-09-04 | 情報処理装置及びその制御方法、通信システム、並びにプログラム |
| US16/113,674 US10540127B2 (en) | 2017-09-04 | 2018-08-27 | Information processing apparatus installing/uninstalling printer driver for performing remote support for printing data by a second information processing apparatus via a relay apparatus |
| CN201811012755.8A CN109426471B (zh) | 2017-09-04 | 2018-08-31 | 信息处理装置、信息处理装置中的方法和存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017169604A JP2019046247A (ja) | 2017-09-04 | 2017-09-04 | 情報処理装置及びその制御方法、通信システム、並びにプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2019046247A true JP2019046247A (ja) | 2019-03-22 |
Family
ID=65514833
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017169604A Pending JP2019046247A (ja) | 2017-09-04 | 2017-09-04 | 情報処理装置及びその制御方法、通信システム、並びにプログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US10540127B2 (ja) |
| JP (1) | JP2019046247A (ja) |
| CN (1) | CN109426471B (ja) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110635934A (zh) * | 2018-06-22 | 2019-12-31 | 京瓷办公信息系统株式会社 | 远程管理系统和信息处理方法 |
| US11909805B1 (en) * | 2019-05-30 | 2024-02-20 | Parallels International Gmbh | Local device redirection in remote access computing environments |
| CN111182183A (zh) * | 2019-12-31 | 2020-05-19 | 周德林 | 一种带音频输入输出的打印头装置 |
| US11836555B2 (en) * | 2020-05-15 | 2023-12-05 | Brother Kogyo Kabushiki Kaisha | Information processing device outputting preceding operation command to printer before starting transmitting print execution data |
| KR102885359B1 (ko) * | 2020-10-27 | 2025-11-13 | 삼성에스디에스 주식회사 | 원격 지원 강제 실행 시스템 및 방법과 이를 수행하기 위한 클라이언트 |
| JP7638787B2 (ja) * | 2021-05-21 | 2025-03-04 | キヤノン株式会社 | プログラム、情報処理方法、及び情報処理装置 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6813670B1 (en) * | 2000-09-26 | 2004-11-02 | Microsoft Corporation | Automatic server-side plug-and-play without user intervention |
| JP2005115440A (ja) * | 2003-10-03 | 2005-04-28 | Seiko Epson Corp | コンピュータにアンインストールを行わせるためのコンピュータプログラム |
| JP2005182462A (ja) * | 2003-12-19 | 2005-07-07 | Toshiba Corp | 電子機器、ユニット駆動装置およびユニット駆動装置のインタフェース制御方法 |
| JP2005267089A (ja) * | 2004-03-17 | 2005-09-29 | Fuji Xerox Co Ltd | ドライバ管理方法および装置並びにプログラム |
| JP4667145B2 (ja) * | 2004-07-22 | 2011-04-06 | 三井化学株式会社 | 光硬化型樹脂組成物及びそれからなるプラスチック用樹脂組成物 |
| US20060053194A1 (en) * | 2004-09-03 | 2006-03-09 | Schneider Ronald E | Systems and methods for collaboration |
| US20060200517A1 (en) | 2005-03-03 | 2006-09-07 | Steve Nelson | Method and apparatus for real time multi-party conference document copier |
| JP4756994B2 (ja) * | 2005-10-27 | 2011-08-24 | キヤノン株式会社 | ネットワークプリントシステム及びネットワーク周辺装置及び情報処理装置とプログラム |
| KR20090031111A (ko) * | 2007-09-21 | 2009-03-25 | 삼성전자주식회사 | 화상형성장치 드라이버 프로그램의 관리 방법 및 장치 |
| US9986113B2 (en) * | 2016-05-06 | 2018-05-29 | Fuji Xerox Co., Ltd. | Information processing apparatus and nontransitory computer readable medium |
| JP6904779B2 (ja) * | 2017-05-10 | 2021-07-21 | キヤノン株式会社 | 遠隔保守システム、遠隔保守システムの制御方法、及びプログラム |
-
2017
- 2017-09-04 JP JP2017169604A patent/JP2019046247A/ja active Pending
-
2018
- 2018-08-27 US US16/113,674 patent/US10540127B2/en active Active
- 2018-08-31 CN CN201811012755.8A patent/CN109426471B/zh active Active
Also Published As
| Publication number | Publication date |
|---|---|
| CN109426471B (zh) | 2022-08-23 |
| US10540127B2 (en) | 2020-01-21 |
| US20190073166A1 (en) | 2019-03-07 |
| CN109426471A (zh) | 2019-03-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2019046247A (ja) | 情報処理装置及びその制御方法、通信システム、並びにプログラム | |
| JP6655921B2 (ja) | 通信システムとその制御方法、画像形成装置とその制御方法、及びプログラム | |
| US9866407B2 (en) | Information processing system, cloud server, device control method, and non-transitory computer-readable recording medium encoded with device control program | |
| US9851931B2 (en) | Information processing apparatus, terminal apparatus, and non-transitory computer readable medium | |
| JP2007282181A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
| JP2017199088A (ja) | 中継サーバ及びその制御方法、通信システム、並びにプログラム | |
| JP6343178B2 (ja) | 通信システムおよびその制御方法、第一の端末およびその制御方法、並びにプログラム | |
| EP2296317A2 (en) | Information processing apparatus for managing events upon identification of the event notification source, and control method and storage medium therefor | |
| US20080092144A1 (en) | Information processing apparatus and control method thereof, and program | |
| JP2012134603A (ja) | 情報処理装置、送信先指定方法、およびそのプログラム | |
| US20160072969A1 (en) | Information processing system, license server, communication relay device, non-transitory readable recording medium and data restoration method | |
| JP2017204139A (ja) | 更新アプリケーション及び更新方法 | |
| JP2016116112A (ja) | 情報処理システム、中継装置、中継方法および中継プログラム | |
| JP2020013195A (ja) | プリントサーバー、制御方法、およびそのプログラム | |
| JP5180013B2 (ja) | 認証処理システム、その制御方法及びプログラム | |
| JP6429502B2 (ja) | 管理システム、及びその方法 | |
| KR102806729B1 (ko) | 정보 처리 시스템, 정보 처리 장치, 및 그 제어 방법 | |
| US10412247B2 (en) | Image reading device configured to transmit image data and image data transmitting method therefor | |
| JP5451331B2 (ja) | 画像処理装置及びその制御方法、並びにプログラム | |
| JP7146431B2 (ja) | システム、情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JP2017136780A (ja) | 画像形成装置及びその制御方法、画像形成装置のサポートシステム及びその制御方法、並びにプログラム | |
| JP2009265808A (ja) | データ配信装置及びデータ配信方法 | |
| JP7532114B2 (ja) | 印刷システム、および制御方法 | |
| JP6083138B2 (ja) | 画像形成システム、画像形成装置、記憶装置、その制御方法及びプログラム | |
| JP2018125691A (ja) | 装置、制御方法およびプログラム |
