JP2017156848A - サーバのためのコンピュータプログラム、及び、サーバ - Google Patents

サーバのためのコンピュータプログラム、及び、サーバ Download PDF

Info

Publication number
JP2017156848A
JP2017156848A JP2016037524A JP2016037524A JP2017156848A JP 2017156848 A JP2017156848 A JP 2017156848A JP 2016037524 A JP2016037524 A JP 2016037524A JP 2016037524 A JP2016037524 A JP 2016037524A JP 2017156848 A JP2017156848 A JP 2017156848A
Authority
JP
Japan
Prior art keywords
registration
code
information
communication
server
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.)
Granted
Application number
JP2016037524A
Other languages
English (en)
Other versions
JP6623837B2 (ja
Inventor
大原 清孝
Kiyotaka Ohara
清孝 大原
Original Assignee
ブラザー工業株式会社
Brother Ind Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ブラザー工業株式会社, Brother Ind Ltd filed Critical ブラザー工業株式会社
Priority to JP2016037524A priority Critical patent/JP6623837B2/ja
Publication of JP2017156848A publication Critical patent/JP2017156848A/ja
Application granted granted Critical
Publication of JP6623837B2 publication Critical patent/JP6623837B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network
    • H04L63/0807Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network using tickets, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/01Customer relationship, e.g. warranty
    • G06Q30/012Product or service warranty
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1234Errors handling and recovery, e.g. reprinting
    • G06F3/1235Errors handling and recovery, e.g. reprinting caused by end of consumables, e.g. paper, ink, toner
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network
    • H04L63/083Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/02Network-specific arrangements or communication protocols supporting networked applications involving the use of web-based technology, e.g. hyper text transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/14Network-specific arrangements or communication protocols supporting networked applications for session management
    • H04L67/141Network-specific arrangements or communication protocols supporting networked applications for session management provided for setup of an application session

Abstract

【課題】 通信装置の識別情報を含む対象情報をサーバに登録するためのユーザの作業負荷を軽減するための技術を提供すること。【解決手段】 登録コードRC2は、プリンタ200のユーザによってプリンタ200に入力されることなく、プリンタ200に予め記憶されている。サーバ10は、プリンタ200から登録コードRC2を含む装置情報DI2を含む仮登録要求を受信する場合に、装置情報DI2をサーバ10に仮登録する(T104)。その後、サーバ10は、登録コードRC2が端末装置400に入力される場合に、端末装置400から登録コードRC2を含む本登録要求を受信する(T132)。そして、サーバ10は、本登録要求に含まれる登録コードRC2がサーバ10に登録されているか否かを判断し、登録されていると判断する場合に(T134)、装置情報DI2をサーバ10に本登録する。【選択図】 図5

Description

本明細書では、通信装置に関係する対象サービスを実行可能なサーバを実現するためのコンピュータプログラムに関する技術を開示する。

特許文献1には、空調機を識別するための情報を遠隔管理サーバに仮登録した後に、当該情報を遠隔管理サーバに本登録するための技術が開示されている。具体的には、遠隔管理サーバは、空調機をLAN(Local Area Networkの略)に接続するためのアダプタから、当該アダプタを識別するためのMACアドレスと、空調機のサービスマンが当該アダプタに設定するキーワードと、を受信する場合に、MACアドレスとキーワードとを仮登録状態で記憶する。その後、遠隔管理サーバは、空調機とは異なる端末装置にサービスマンによってキーワードが入力される場合に、当該端末装置から当該キーワードを受信する。そして、遠隔管理サーバは、記憶済みのキーワードと受信済みのキーワードとが一致する場合に、上記のMACアドレスを本登録状態で記憶する。

特開2010−34853号公報

上記の技術では、MACアドレスをサーバに本登録するために、サービスマンがアダプタにキーワードを設定する作業が必要である。

本明細書では、通信装置の識別情報を含む対象情報をサーバに登録するためのユーザの作業負荷を軽減するための技術を提供する。

本明細書によって開示されるサーバのためのコンピュータプログラムは、サーバのコンピュータに、以下の各処理、即ち、通信装置から、インターネットを介して、前記通信装置を識別するための識別情報と、第1のコードと、を含む第1の登録要求を受信する第1の受信処理であって、前記第1のコードは、前記通信装置のユーザによって前記通信装置に入力されることなく、前記通信装置に予め記憶されている、前記第1の受信処理と、第2のコードが前記ユーザによって前記通信装置とは異なる端末装置に入力される場合に、前記端末装置から、前記インターネットを介して、前記第2のコードを含む第2の登録要求を受信する第2の受信処理と、前記第1の登録要求及び前記第2の登録要求のうちの一方の登録要求が受信される場合に、前記一方の登録要求に含まれる一方のコードを含む対象情報の登録状態を第1の登録状態として、前記対象情報をメモリに登録する第1の登録処理であって、前記第1の登録状態は、前記サーバが、前記通信装置に関係する対象サービスを実行しない状態である、前記第1の登録処理と、前記対象情報が前記メモリに登録された後に、前記第1の登録要求及び前記第2の登録要求のうちの他方の登録要求が受信される場合に、前記他方の登録要求に含まれる他方のコードが前記対象情報に含まれる前記一方のコードに一致するのか否かを判断する第1の判断処理と、前記他方のコードが前記一方のコードに一致すると判断される場合に、前記対象情報の登録状態を前記第1の登録状態から第2の登録状態に変更し、前記他方のコードが前記一方のコードに一致しないと判断される場合に、前記対象情報の登録状態を前記第1の登録状態から前記第2の登録状態に変更しない変更処理であって、前記第2の登録状態は、前記サーバが、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行する状態である、前記変更処理と、前記対象情報の登録状態が前記第2の登録状態に変更される場合に、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行するサービス処理と、を実行させる。

上記の構成によれば、第1のコードは、通信装置のユーザによって通信装置に入力されることなく、通信装置に予め記憶されている。この結果、ユーザは、対象情報をサーバに本登録するために、第1のコードを通信装置に入力せずに済み、第2のコードを端末装置に入力すればよい。従って、通信装置の識別情報を含む対象情報をサーバに登録するためのユーザの作業負荷を軽減することができる。

上記のコンピュータプログラムを格納するコンピュータ読取可能記憶媒体も新規で有用である。また、上記のコンピュータプログラムによって実現されるサーバそのもの、及び、サーバの制御方法も、新規で有用である。

通信システムの構成、及び、各種テーブルの構成を示す。 サービス処理のフローチャートを示す。 本登録処理のフローチャートを示す。 端末装置に表示される各画面を示す。 装置情報がサーバに登録されるケースAを表わすシーケンスを示す。 登録コードが一致しないケースBを表わすシーケンスを示す。 登録コードが一致しないケースCを表わすシーケンスを示す。

(第1実施例)
(通信システム2の構成;図1(A))
図1(A)を参照して、通信システム2の構成を説明する。通信システム2は、サーバ10と、プリンタ100,200と、端末装置400と、を備える。各装置100,200,400は、LAN(Local Area Networkの略)4を介して、相互に通信可能である。LAN4は、ルータ8を介して、インターネット6に接続されている。LAN4は、有線LAN及び無線LANのどちらでもよい。サーバ10は、インターネット6を介して、各装置100,200,400と通信可能である。

(プリンタ100,200の構成)
プリンタ100は、カラー印刷機能を備える周辺機器(即ち、端末装置400の周辺機器)である。プリンタ100には、シリアル番号SN1と、モデル名MN1と、登録コードRC1と、が割り当てられている。プリンタ100のベンダは、同じモデル(即ちモデル名MN1)を有する複数個のプリンタを製造する際に、連番の数字を含む複数個の文字列を複数個のシリアル番号として決定する。ここで、シリアル番号は、さらに、アルファベット及び/又は記号(例えばハイフン等)を含んでいてもよい。ベンダは、さらに、ランダムに設定される複数個の文字列を複数個の登録コードとして決定する。ただし、ベンダは、複数個の登録コードが互いに重複しないように、複数個の登録コードを決定する。従って、各シリアル番号及び各登録コードは、ユニークな文字列である。なお、登録コードは、シリアル番号と比べて、ユーザが比較的に入力し易い文字列(例えば数字のみによって構成される文字列)である。また、登録コードを構成する文字数は、シリアル番号を構成する文字数よりも少ない。登録コードは、シリアル番号等を含む様々な情報をサーバ10に登録するために利用される。

ベンダは、上記の複数個のプリンタのうちのプリンタ100に、シリアル番号SN1及び登録コードRC1を割り当てる。そして、上記の各情報SN1,MN1,RC1は、プリンタ100の製造時に、プリンタ100に記憶される。即ち、上記の各情報SN1,MN1,RC1は、プリンタ100の出荷段階から、プリンタ100に予め記憶されている。換言すると、上記の各情報SN1,MN1,RC1は、プリンタ100のユーザによってプリンタ100に入力されなくても、プリンタ100に予め記憶されている。なお、以下では、シリアル番号とモデル名と登録コードとをまとめて「装置情報」と称することがある。

また、登録コードRC1が記載されているシートが、プリンタ100と共に出荷される。例えば、当該シートは、プリンタ100の表面に貼り付けられているシールであってもよいし、プリンタ100の説明書であってもよい。これにより、プリンタ100のユーザは、当該シートを見ることによって登録コードRC1を知ることができる。なお、変形例では、プリンタ100は、所定の操作を受け付ける場合に、登録コードRC1が記載されているシートを印刷してもよい。また、別の変形例では、LAN4に接続されている端末装置(例えば、端末装置400)は、ユーザの操作に応じて、登録コードRC1をプリンタ100に要求してプリンタ100から登録コードRC1を受信し、受信済みの登録コードRC1を表示してもよい。特に、本変形例では、プリンタ100は、ウェブサーバとして機能してもよく、端末装置は、ブラウザプログラムを利用して、プリンタ100内のウェブサーバにアクセスして、プリンタ100から登録コードRC1を受信してもよい。いずれの変形例でも、ユーザは、登録コードRC1を知ることができる。

プリンタ200は、プリンタ100とは異なるモデルのプリンタであり、シリアル番号SN2とモデル名MN2と登録コードRC2とを予め記憶している。また、登録コードRC2が記載されているシートが、プリンタ200と共に出荷される。

(サーバ10の構成)
サーバ10は、各プリンタ100,200に関係する対象サービス(例えば、後述のインク発送及びメール送信)を各プリンタ100等のユーザに提供するためのサーバである。サーバ10は、各プリンタ100等のベンダによってインターネット6上に設置される。なお、変形例では、サーバ10は、当該ベンダとは異なる事業者によってインターネット6上に設置されてもよい。

サーバ10は、ネットワークインターフェイス12と、制御部20と、を備える。各部12,20は、バス線(符号省略)に接続されている。なお、以下では、インターフェースのことを「I/F」と記載する。制御部20は、CPU22と、メモリ24と、を備える。CPU22は、メモリ24に格納されているプログラム26に従って、様々な処理を実行する。メモリ24は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ24は、上記のプログラム26の他に、ユーザ情報テーブル28と、登録テーブル30と、を格納する。なお、変形例では、ユーザ情報テーブル28と登録テーブル30とは、サーバ10と通信可能に接続されている外部メモリに格納されてもよい。

(ユーザ情報テーブル28の構成;図1(B))
図1(B)を参照して、ユーザ情報テーブル28の構成を説明する。ユーザ情報テーブル28には、1個以上のユーザ情報が登録される。各ユーザ情報は、ユーザを識別するためのユーザ名(例えば「UN1」)と、パスワード(例えば「P1」)と、アドレス情報(例えば「A1」)と、を含む。アドレス情報は、ユーザのメールアドレス及び所在地住所を含む。各ユーザ情報には、当該ユーザ情報を識別するためのユニークなユーザ番号が関連付けられる。

(登録テーブル30の構成;図1(C))
図1(C)を参照して、登録テーブル30の構成を説明する。登録テーブル30には、1個以上の装置情報が登録される。各装置情報は、シリアル番号(例えば「SN1」)と、モデル名(例えば「MN1」)と、登録コード(例えば「RC1」)と、を含む。各装置情報には、ステータス情報、ユーザ番号、アクセストークン、及び、履歴情報が関連付けられている。なお、変形例では、装置情報は、モデル名を含まなくてもよい。

ステータス情報は、関連する装置情報の登録状態を示し、仮登録状態又は本登録状態を示す。仮登録状態では、ユーザ番号、アクセストークン、及び、履歴情報が、装置情報(例えば「SN3」を含む装置情報参照)に関連付けられない。仮登録状態では、サーバ10は、装置情報に含まれるシリアル番号によって識別されるプリンタに関係する対象サービスを実行しない。一方、本登録状態では、ユーザ番号、アクセストークン、及び、履歴情報が、装置情報(例えば「SN1」を含む装置情報参照)に関連付けられる。このように、ユーザ番号が装置情報に関連付けられている状態(即ち本登録状態)では、当該ユーザ番号(例えば「U1」)を介して、当該装置情報(例えば「SN1」を含む装置情報)と当該ユーザ番号によって識別されるユーザ情報(例えば「UN1」を含むユーザ情報)と、が関連付けられる。本登録状態では、サーバ10は、装置情報に含まれるシリアル番号によって識別されるプリンタに関係する対象サービスを実行する。

アクセストークンは、サーバ10とプリンタとの間にインターネット6を介した様々な接続を確立するための情報である。当該接続は、例えば、XMPP(Extensible Messaging and Presence Protocolの略)接続、HTTPS(Hypertext Transfer Protocol Secureの略)接続等を含む。なお、XMPP接続は、いわゆる常時接続であり、プリンタ100の電源が切断されるまで確立され続ける接続である。サーバ10は、XMPP接続を利用すれば、プリンタから要求を受信しなくても、当該プリンタが所属するLANのファイヤウォール(例えばルータ8によって形成されるファイヤウォール)を越えて、当該プリンタに要求を送信することができる。なお、サーバ10からプリンタに要求を送信する仕組みは、XMPP接続ではなく、他の手法であってもよい。

履歴情報は、プリンタの残量情報の履歴を示す情報である。残量情報は、プリンタの複数色(例えばCMYK)のインクのそれぞれの残量を示す情報である。

(サービス処理:図2)
図2を参照して、サーバ10のCPU22がプログラム26に従って実行するサービス処理を説明する。サービス処理は、サーバ10の電源がONされることをトリガとして開始される。サービス処理では、S10,S20,S40,S60の各監視ステップが順次実行される。

S10では、CPU22は、端末装置(例えば端末装置400)から、インターネット6を介して、ユーザ情報を受信することを監視する。CPU22は、新たなユーザを登録するための要求と共にユーザ情報を受信する場合に、S10でYESと判断してS12に進む。

S12では、CPU22は、新たなユーザ番号を生成し、当該ユーザ番号と受信済みのユーザ情報とを関連付けてユーザ情報テーブル28に登録する。S12が終了すると、S10に戻る。

S20では、CPU22は、プリンタ(例えばプリンタ200)から、インターネット6を介して、仮登録要求を受信することを監視する。仮登録要求は、プリンタの装置情報を含み、当該装置情報を登録テーブル30に登録するための要求である。CPU22は、仮登録要求を受信する場合に、S20でYESと判断してS22に進む。

なお、プリンタは、LAN4及びルータ8を介してインターネットに接続されていること、及び、プリンタに電力が供給されること、の双方が満たされた際に、仮登録要求をサーバ10に送信する。即ち、プリンタは、例えばLANケーブルがプリンタに接続されている状態でプリンタの電源がONされる際に、仮登録要求をサーバ10に送信する。また、プリンタは、プリンタの電源がONされている状態で例えばLANケーブルがプリンタに接続される際に、仮登録要求をサーバ10に送信する。ユーザは、仮登録要求を送信するための特別な操作をプリンタに実行する必要が無いので、ユーザの作業負荷が軽減される。なお、変形例では、プリンタは、ユーザによって実行される所定の操作を受け付ける場合に、仮登録要求をサーバ10に送信してもよい。なお、変形例では、プリンタは、プリンタの電源がONされている状態で、プリンタに対する無線LANの設定が完了した際(即ちプリンタが無線LANに接続した際)に、仮登録要求をサーバ10に送信してもよい。

S22では、CPU22は、受信済みの仮登録要求に含まれる装置情報を登録テーブル30に登録する。そして、S24では、CPU22は、S22で登録された装置情報に仮登録状態を示すステータス情報を関連付ける。S26では、CPU22は、装置情報の仮登録が完了したことを示す通知を、S20の仮登録要求の送信元のプリンタに送信する。これにより、CPU22は、仮登録が完了したことを示す画面をプリンタに表示させることができる。S26が終了すると、S10に戻る。なお、CPU22は、受信済みの仮登録要求に含まれる装置情報に一致する装置情報が登録テーブル30に既に登録されている場合には、受信済みの装置情報を登録テーブル30に登録しない。

S40では、CPU22は、端末装置(例えば端末装置400)から、インターネット6を介して、ログイン要求を受信することを監視する。ログイン要求は、サーバ10にログインするための要求である。CPU22は、ログイン要求を受信する場合に、S40でYESと判断してS50に進む。S50では、本登録処理(図3参照)が実行される。S50の本登録処理が終了すると、S10に戻る。

S60では、CPU22は、プリンタ(例えばプリンタ200)から、インターネット6を介して、残量情報を受信することを監視する。CPU22は、残量情報を受信する場合に、S60でYESと判断してS62に進む。S62では、CPU22は、残量情報と共に受信されるプリンタのシリアル番号を含む装置情報に関連付けられている履歴情報に、当該残量情報を加えることによって、履歴情報を更新する。

次いで、S64では、CPU22は、更新済みの履歴情報のうちの最新の残量情報に含まれる4色のインクの残量のうちの少なくとも一つの残量が閾値(例えば10%)以下であるのか否かを判断する。CPU22は、4色のインクの残量の全てが閾値より大きいと判断する場合(S64でNO)には、S66をスキップしてS10に戻る。なお、S64では、他の判断が実行されてもよい。例えば、CPU22は、インク残量の変化量が閾値以上であると判断する場合に、S64でYESと判断してもよい。

一方、CPU22は、4色のインクの残量のうちの少なくとも一つの残量が閾値以下であると判断する場合(S64でYES)には、S66において、閾値以下の残量を有する色のインクをユーザに発送するための処理を実行する。具体的には、CPU22は、まず、登録テーブル30から、S60で受信されたシリアル番号を含む装置情報に関連付けられているユーザ番号を特定し、次いで、ユーザ情報テーブル28から、当該ユーザ番号に関連付けられているユーザ情報に含まれるアドレス情報を特定する。CPU22は、さらに、登録テーブル30から、S60で受信されたシリアル番号に関連付けられているモデル名を特定し、特定済みのモデル名を有するプリンタで利用されるインクカートリッジの種類を特定する。そして、CPU22は、特定済みのアドレス情報に含まれる所在地住所宛に特定済みのインクカートリッジを発送するための処理を実行する。CPU22は、さらに、上記の特定済みのアドレス情報に含まれるメールアドレス宛に発送済みを示すメールを送信する。S66が終了すると、S10に戻る。

(本登録処理:図3)
図3を参照して、図2のS50で実行される本登録処理を説明する。S70では、CPU22は、ログイン画面データを端末装置(例えば端末装置400)に送信する。これにより、端末装置では、ログイン画面データによって表わされるログイン画面SC1(図4参照)が表示される。ログイン画面SC1は、ユーザ名及びパスワードを入力するための入力欄を含む。端末装置は、ユーザ名及びパスワードが入力欄に入力された後に、OKボタンを選択(例えばクリック)する操作を受け付ける場合に、ユーザ名及びパスワードをサーバ10に送信する。

S72では、CPU22は、端末装置からユーザ名及びパスワードを受信することを監視する。CPU22は、ユーザ名及びパスワードを受信する場合(S72でYES)には、S74において、受信済みのユーザ名及びパスワードの認証を実行する。CPU22は、受信済みのユーザ名及びパスワードの組合せがユーザ情報テーブル28に登録されている場合に、認証が成功したと判断し(S74でYES)、S80に進む。

一方、CPU22は、上記の組合せがユーザ情報テーブル28に登録されていない場合に、認証が失敗したと判断し(S74でNO)、S76において、ログインエラー画面データを端末装置に送信する。これにより、端末装置では、ログインエラー画面データによって表わされる画面(即ちログインの失敗を示す画面)が表示され、次いで、ログイン画面SC1が再び表示される。S76が終了すると、S72に戻る。

S80では、CPU22は、登録画面データを端末装置に送信する。これにより、端末装置では、登録画面データによって表わされる登録画面SC2(図4参照)が表示される。登録画面SC2は、登録コードを入力するための入力欄を含む。端末装置は、上記の入力欄に登録コードが入力された後に、OKボタンを選択する操作を受け付ける場合に、当該登録コード(以下では「対象登録コード」と呼ぶ)を含む本登録要求をサーバ10に送信する。

S82では、CPU22は、端末装置から本登録要求を受信することを監視する。CPU22は、本登録要求を受信する場合(S82でYES)に、S84において、本登録要求に含まれる対象登録コードに一致する登録コードが登録テーブル30に登録されているのか否かを判断する。CPU22は、登録されていると判断する場合(S84でYES)にはS86に進み、登録されていないと判断する場合(S84でNO)にはS90に進む。

S86では、CPU22は、登録テーブル30において、対象登録コードを含む装置情報(以下では「対象装置情報」と呼ぶ)に関連付けられているステータス情報を仮登録状態から本登録状態に変更する。さらに、CPU22は、ユーザ情報テーブル28から、S74で認証が成功したユーザ情報に関連付けられているユーザ番号を特定する。そして、CPU22は、対象装置情報に関連付けて特定済みのユーザ番号を登録テーブル30に登録する。これにより、ユーザ情報が対象装置情報に関連付けられる。

次いで、S100では、CPU22は、完了画面データを端末装置に送信する。これにより、端末装置では、完了画面データによって表わされる完了画面SC4(図4参照)が表示される。完了画面SC4は、プリンタの本登録が完了したことを示すメッセージを含む。完了画面SC4は、さらに、プリンタ(例えばプリンタ200)の操作パネルに登録確認操作を実行することをユーザに促す操作指示IS4を含む。登録確認操作は、サーバ10への送信指示の送信をプリンタに実行させるための操作である。送信指示は、アクセストークンの送信をサーバ10に実行させるための指示である。

S102では、CPU22は、プリンタから送信指示を受信することを監視する。CPU22は、プリンタのシリアル番号を含む送信指示を受信する場合(S102でYES)に、S104において、アクセストークンを生成して、生成済みのアクセストークンをプリンタに送信する。さらに、CPU22は、登録テーブル30から送信指示に含まれるシリアル番号を含む対象装置情報を特定し、特定済みの対象装置情報に関連付けて生成済みのアクセストークンを登録テーブル30に登録する。なお、変形例では、アクセストークンは、S102でYESと判断される前に予め生成されて、対象装置情報に関連付けて登録テーブル30に登録されてもよい。

S106では、CPU22は、プリンタとのXMPP接続を確立する。具体的には、CPU22は、プリンタからアクセストークンを含む接続要求を受信する場合に、当該アクセストークンが登録テーブル30に登録されているのか否かを判断する。そして、CPU22は、当該アクセストークンが登録されていると判断する場合には、当該接続要求に対する接続応答をプリンタに送信する。この結果、サーバ10とプリンタとの間にXMPP接続が確立され、サーバ10からプリンタへの要求の送信が可能になる。なお、CPU22は、当該アクセストークンが登録されていないと判断する場合には、当該接続要求に対するエラー応答をプリンタに送信する。この場合、XMPP接続が確立されない。

S108では、CPU22は、S106で確立されたXMPP接続を利用して、残量情報要求をプリンタに送信する。残量情報要求は、残量情報を定期的に送信することをプリンタに要求するためのコマンドである。この結果、サーバ10は、プリンタから残量情報を受信することができる(図2のS60でYES)。S108が終了すると、本登録処理が終了する。

なお、CPU22は、S108で残量情報要求をプリンタに送信した後に、残量情報要求をプリンタに再び送信し得る。残量情報要求は、時間間隔(例えば1日)を示す間隔情報、インクの色(例えば全色又は特定の色)を示す色情報等を含む。プリンタは、間隔情報によって示される時間間隔(例えば1日毎)で、色情報によって示される色のインクの残量を示す残量情報を定期的に送信する。ここで、間隔情報及び色情報は、サーバ10の管理者により変更され得る。CPU22は、S108で残量情報要求を送信した後に、各情報が変更される場合に、S106で確立されたXMPP接続を利用して、変更済みの各情報を含む残量情報要求をプリンタに再び送信する。即ち、サーバ10は、プリンタから要求を受信しなくても、XMPP接続を利用して、残量情報要求をプリンタに再び送信することができる。

また、CPU22は、S84でNOと判断する場合には、S90において、エラー画面データを端末装置に送信する。これにより、端末装置では、エラー画面データによって表わされるエラー画面SC3(図4参照)が表示される。エラー画面SC3は、対象登録コードが登録テーブル30に登録されていないことに起因して、S84でNOと判断され得る2個の原因に対応する2個の指示IS1,IS2を含む。一方の原因は、サーバ10がプリンタから対象登録コードを含む仮登録要求を受信していないこと(即ち図2のS20〜S26が実行されていないこと)である。そして、当該一方の原因に対応する指示IS1は、プリンタの電源をONした後にボタンB1を選択することをユーザに促すためのメッセージを含む。端末装置は、ボタンB1を選択する操作を受け付ける場合に、確認指示をサーバ10に送信する。確認指示は、S84の判断をサーバ10に再び実行させるための指示である。また、他方の原因は、対象登録コードが正しい登録コードでないことである。そして、当該他方の原因に対応する指示IS2は、登録コードの再入力をユーザに促すためのメッセージを含む。端末装置は、ボタンB2を選択する操作を受け付ける場合に、登録画面SC2を再び表示する。これにより、ユーザは、登録画面SC2に登録コードを再入力することができる。この結果、登録コードを含む本登録要求が端末装置からサーバに再び送信される。

次いで、S92では、CPU22は、ボタンB1の選択に応じて端末装置から確認指示を受信すること、及び、ボタンB2の選択に応じて端末装置から本登録要求を受信することを監視する。CPU22は、確認指示又は本登録要求を受信する場合に、S92でYESと判断して、S84に戻る。

(具体的なケースA:図5)
図5を参照して、図2及び図3の処理によって実現される具体的なケースAを説明する。本ケースの初期状態では、プリンタ200は、LAN4に接続された状態であり、かつ、出荷されてから一度も電源がONされていない状態である。

T100では、ユーザは、プリンタ200の電源をオンする。この場合、T102では、プリンタ200は、シリアル番号SN2とモデル名MN2と登録コードRC2とを含む仮登録要求をサーバ10に送信する。

サーバ10は、プリンタ200からT102の仮登録要求を受信すると(図2のS20でYES)、T104において、仮登録要求内の各情報SN2,MN2,RC2を含む装置情報DI2を登録テーブル30に登録する(S22)。この際に、装置情報DI2には、仮登録状態を示すステータス情報が関連付けられる(S24)。T106では、サーバ10は、仮登録が完了したことを示す通知をプリンタ200に送信する(S26)。

図示省略しているが、サーバ10は、ユーザがユーザ情報UI2の登録を望む場合に、端末装置400からユーザによって端末装置400に入力されるユーザ情報UI2を受信する(図2のS10でYES)。ユーザ情報UI2は、ユーザ名UN2と、パスワードP2と、アドレス情報A2と、を含む。サーバ10は、受信済みのユーザ情報UI2をユーザ情報テーブル28に登録する(S12)。ユーザ情報UI2を登録する処理は、T114の前に実行される。

ユーザ情報UI2がサーバ10に登録された後に、ユーザがプリンタ200の本登録を望む場合に、T114では、端末装置400は、ユーザの操作に応じて、ログイン要求をサーバ10に送信する。

T116では、サーバ10は、端末装置400からT114のログイン要求を受信すると(S40でYES)、ログイン画面データを端末装置400に送信する(図3のS70)。

端末装置400は、T118において、ログイン画面SC1を表示し、T120において、ユーザ名UN2及びパスワードP2を入力する操作を受け付ける。この場合、T122では、端末装置400は、各情報UN2,P2をサーバ10に送信する。

サーバ10は、端末装置400からT122の各情報UN2,P2を受信すると(図3のS72でYES)、T124において、認証が成功したと判断すると(S74でYES)、T126において、登録画面データを端末装置400に送信する(S80)。

端末装置400は、T128において、登録画面SC2を表示し、S130において、登録コードRC2を入力する操作を受け付ける。この場合、T132では、端末装置400は、登録コードRC2を含む本登録要求をサーバ10に送信する。

サーバ10は、端末装置400からT132の本登録要求を受信すると(S82でYES)、T134において、本登録要求に含まれる登録コードRC2に一致する登録コードが登録テーブル30に登録されていると判断する(S84でYES)。この場合、サーバ10は、登録コードRC2を含む装置情報DI2に関連付けられているステータス情報を仮登録状態から本登録状態に変更し(S86)、さらに、ユーザ情報UI2を装置情報DI2に関連付ける(S86)。そして、T136では、サーバ10は、完了画面データを端末装置400に送信する(S100)。

T138では、端末装置400は、完了画面SC4を表示する。これにより、T150では、ユーザは、プリンタ200に登録確認操作を実行する。この場合、T152では、プリンタ200は、シリアル番号SN2を含む送信指示をサーバ10に送信する。

サーバ10は、プリンタ200からT152の送信指示を受信すると、T154において、アクセストークンAT2を生成し、装置情報DI2に関連付けてアクセストークンAT2を登録する(S104)。そして、T156では、サーバ10は、アクセストークンAT2をプリンタ200に送信する(S104)。ここで、サーバ10は、T152のプリンタ200からの送信指示に応答する形式で、アクセストークンAT2をプリンタ200に送信する。このために、サーバ10は、XMPP接続を利用しなくても、LAN4のファイヤウォールを越えて、アクセストークンAT2をプリンタ200に送信することができる。この結果、T158では、アクセストークンAT2が利用されて、サーバ10とプリンタ200との間にXMPP接続が確立される。なお、図5では、XMPP接続に関係する通信が、太線矢印で示されている。そして、T160では、サーバ10は、確立済みのXMPP接続を利用して、残量情報要求をプリンタ200に送信する。

プリンタ200は、残量情報要求を受信した後に残量情報をサーバ10に送信すべき際に、アクセストークンAT2を利用して、サーバ10とのHTTPS接続を確立する。そして、プリンタ200は、T162において、確立済みのHTTPS接続を利用して、残量情報をサーバ10に送信する。プリンタ200は、残量情報要求を一度受信したことに応じて、定期的(例えば1日毎)に残量情報をサーバ10に送信する。

サーバ10は、プリンタ200からT162の残量情報を受信すると(図2のS60でYES)、T164において、当該残量情報を履歴情報HI2に加えることによって、履歴情報HI2を更新する(S62)。そして、T166では、サーバ10は、最新の残量情報の黒インクの残量が閾値である10%以下であると判断する(S64でYES)。この場合、T168では、サーバ10は、装置情報DI2に関連付けられているユーザ情報UI2に含まれるアドレス情報A2の所在地住所宛に、黒インクのインクカートリッジを発送するための処理を実行する(S66)。また、T170では、サーバ10は、アドレス情報A2のメールアドレス宛に、発送完了を示すメールを送信する(S66)。

上述したように、サーバ10は、プリンタ200から仮登録要求を受信する場合に、シリアル番号SN2及び登録コードRC2を含む装置情報DI2を登録テーブル30に仮登録する(T104)。そして、サーバ10は、端末装置400から本登録要求を受信する場合に、本登録要求に含まれる登録コードRC2が登録テーブル30内の登録コードRC2に一致する場合に、装置情報DI2を登録テーブル30に本登録する(T134)。上述したように、登録コードRC2は、ユーザによってプリンタ200に入力されることなく、プリンタ200に予め記憶されている。従って、ユーザは、装置情報DI2をサーバ10に登録するために、登録コードRC2をプリンタ200に入力せずに済む。端末装置400等の操作部(例えばマウス及びキーボード)と比べると、プリンタ200の操作パネルに情報を入力するのは手間がかかる。本実施例では、登録コードRC2をプリンタ200に入力せずに済むので、ユーザの作業負荷を軽減することができる。

なお、登録コードRC2を利用せずに装置情報DI2をサーバ10に本登録するための比較例として以下の手法が考えられる。即ち、T102の仮登録要求は、登録コードRC2を含まず、T104で仮登録される装置情報DI2も、登録コードRC2を含まない。そして、T130では、ユーザは、プリンタ200のシリアル番号SN2を端末装置400に入力し、この結果、T132では、シリアル番号SN2を含む本登録要求が端末装置400からサーバ10に送信される。この場合、サーバ10は、シリアル番号SN2が登録テーブル30に登録されているのか否かを判断し、登録されていると判断する場合に、装置情報DI2を仮登録状態から本登録状態に変更する。ただし、上述したように、シリアル番号SN2を構成する文字列の文字数は、登録コードRC2を構成する文字列の文字数よりも多い。このために、ユーザがシリアル番号SN2を端末装置400に入力するのに手間がかかる。これに対し、本実施例では、比較的に少ない文字数を有する登録コードRC2を端末装置400に入力すれば済むので、ユーザの作業負荷を軽減することができる。また、シリアル番号SN2は、連番で付される番号を含むので、プリンタの正規ユーザとは異なる第三者によって推定されやすい。このため、上記の比較例では、第三者によって装置情報DI2がサーバ10に本登録され得る。これに対し、登録コードRC2は、ランダムに設定される文字列であるので、第三者によって推定されにくい。このために、本実施例のように登録コードRC2を利用すれば、第三者によって装置情報DI2が本登録されることを防止することができる。

また、サーバ10は、装置情報DI2を登録テーブル30に本登録する場合に、指示IS4を含む完了画面SC4を表わす完了画面データを端末装置400に送信するので(T136)、プリンタ200での登録確認操作(T150)をユーザに適切に実行させることができる。このために、サーバ10は、装置情報DI2を本登録し、かつ、プリンタ200から送信指示を受信した後(T152)に、サービスを適切に実行することができる。特に、本登録状態では、ユーザ情報UI2が装置情報DI2に関連付けられるので、サーバ10は、ユーザ情報UI2に従って、当該ユーザにサービスを適切に提供することができる(T168、T170)。

また、サーバ10は、装置情報DI2を本登録する場合に、装置情報DI2に関連付けてアクセストークンAT2を登録する(T154)と共に、アクセストークンAT2をプリンタ200に送信する(T156)ので、アクセストークンAT2を利用して、プリンタ200とのXMPP接続を確立することができる(T158)。このために、サーバ10は、XMPP接続を利用して、残量情報要求をプリンタ200に送信することができ、この結果、プリンタ200から残量情報を適切に受信することができる。

(具体的なケースB:図6)
図6を参照して、他の具体的なケースBを説明する。本ケースのプリンタ200の初期状態は、図5のケースAと同じである。即ち、プリンタ200の電源は一度もONされていない。

本ケースでは、サーバ10は、登録コードを含む仮登録要求を受信する前に、当該登録コードを含む本登録要求を受信する。即ち、サーバ10の登録テーブル30には、本登録要求を受信する際に、装置情報DI2が登録されていない。

ケースBでは、図5のT100からT106と同様の処理が実行されずに、図5のT114からT132と同様の処理が実行される。次いで、T190では、サーバ10は、装置情報DI2が登録テーブル30に登録されていないので、T132の本登録要求に含まれる登録コードRC2に一致する登録コードが登録テーブル30に登録されていないと判断する(図3のS84でNO)。この場合、T192では、サーバ10は、エラー画面データを端末装置400に送信する(S90)。

T194では、端末装置400は、エラー画面SC3を表示する。この場合、ユーザは、エラー画面SC3内の指示IS1を見て、プリンタ200の電源をONする操作を実行する。これにより、仮登録要求の送信をプリンタ200に実行させるための操作をユーザに適切に実行させることができる。即ち、T200では、ユーザは、プリンタ200の電源をONする操作を実行する。この結果、T202では、プリンタ200は、仮登録要求をサーバ10に送信する。その後のT204、T206は、それぞれ、図5のT104、T106と同様である。T220では、ユーザは、プリンタ200の電源をONする操作を実行した後に、エラー画面SC3内のボタンB1を選択する。この場合、T222では、端末装置400は、確認指示をサーバ10に送信する。

サーバ10は、端末装置400からT222の確認指示を受信すると(図3のS92でYES)、装置情報DI2が登録テーブル30に登録されているので(T204)、T234において、図5のT132で受信された登録コードRC2に一致する登録コードが登録テーブル30に登録されていると判断する(S84でYES)。その後のT236、T238は、それぞれ、図5のT136、T138と同様である。そして、図5のT150以降の各処理が実行される。

ケースBに示されるように、ユーザは、T190で登録コードRC2が登録されていないと判断される場合に、エラー画面SC3を見て、プリンタ200の電源をONする操作を実行し(T200)、エラー画面SC3内のボタンB1を選択することができる(T220)。この結果、登録コードRC2を端末装置400に再び入力せずに、装置情報DI2を本登録することができる。このために、ユーザの作業負荷を軽減することができる。

(具体的なケースC:図7)
図7を参照して、他の具体的なケースCを説明する。本ケースのプリンタ200の初期状態は、図5のケースAと同じである。ケースCでは、図5のT100からT106と同様の処理が実行され、その後、図5のT114からT128と同様の処理が実行される。

T300では、端末装置400は、正しい登録コードRC2とは異なる登録コードRC4を入力する操作を受け付ける。この場合、T302では、端末装置400は、登録コードRC4を含む本登録要求をサーバ10に送信する。

サーバ10は、T302の本登録要求を受信すると(図3のS82でYES)、登録コードRC4に一致する登録コードが登録テーブル30に登録されていないと判断する(S84でNO)。その後に実行されるT306、T308は、それぞれ、図6のT192、T194と同様である。この場合、T310では、ユーザは、エラー画面SC3内の指示IS2を見て、ボタンB2を選択する。この場合、端末装置400は、T312において、登録画面SC2を表示し、T330において、登録コードRC2を入力する操作を受け付ける。そして、T332では、端末装置400は、登録コードRC2を含む本登録要求をサーバ10に送信する。T334からT338は、ぞれぞれ、図5のT134からT138と同様である。そして、図5のT150以降の各処理が実行される。

ケースCに示されるように、ユーザは、T304で登録コードRC4が登録されていないと判断される場合に、エラー画面SC3を見て、正しい登録コードRC2を端末装置400に入力することができる(T330)。このために、ユーザは、装置情報DI2を適切に本登録することができる。

(対応関係)
プリンタ100が、「通信装置」の一例である。シリアル番号SN2及びモデル名MN2が、「識別情報」の一例である。装置情報DI2が、「対象情報」の一例である。図5のT102の仮登録要求、登録コードRC2が、それぞれ、「第1の登録要求(一方の登録要求)」、「第1のコード(一方のコード)」の一例である。T132の本登録要求、登録コードRC2が、それぞれ、「第2の登録要求(他方の登録要求)」、「第2のコード(他方のコード)」の一例である。仮登録状態、本登録状態が、それぞれ、「第1の登録状態」、「第2の登録状態」の一例である。T168のインクの発送及びT170のメールの送信が、「対象サービス」の一例である。アクセストークンAT2が、「接続情報」の一例である。XMPP接続及びHTTPS接続の少なくとも一方が、「接続」の一例である。T160の残量情報要求、残量情報が、それぞれ、「情報要求」、「装置関係情報」の一例である。T150の登録確認操作、T152の送信指示が、それぞれ、「第1の所定操作」、「関連指示」の一例である。図4の完了画面SC4、指示IS1を含むエラー画面SC3、指示IS2を含むエラー画面SC3が、それぞれ、「第1の画面」、「第2の画面」、「第3の画面」の一例で荒れる。図6のT200の電源オン操作が、「第2の所定操作」の一例である。

(第2実施例)
本実施例では、プリンタに予め記憶されている登録コードは、当該プリンタのシリアル番号から生成される。具体的には、ベンダは、プリンタを製造する際に、共通鍵暗号化方式で利用される所定の鍵に従って、当該プリンタのシリアル番号を暗号化することによって、登録コードを生成する。共通鍵暗号化方式は、暗号化及び復号化が同一の鍵によって実行される方式であり、例えばAES(Advanced Encryption Standardの略)である。なお、変形例では、登録コードは、公開鍵暗号化方式で利用される所定の鍵に従って、シリアル番号を暗号化することにより生成されてもよい。公開鍵暗号化方式は、暗号化及び復号化が異なる鍵によって実行される方式である。

(サービス処理:図2)
本実施例では、図2のS20でYESと判断される場合の処理が第1実施例とは異なる。CPU22は、S20でYESと判断する場合に、S30に進む。

S30では、CPU22は、所定の鍵を利用して、仮登録要求に含まれる登録コードを復号化することによって、特定の番号を生成する。そして、S32では、CPU22は、特定の番号と仮登録要求に含まれるシリアル番号とが一致するのか否かを判断する。CPU22は、特定の番号とシリアル番号とが一致すると判断する場合(S32でYES)にはS22に進み、特定の番号とシリアル番号とが一致しないと判断する場合(S32でNO)には、S22からS26をスキップしてS10に戻る。

上記のように、シリアル番号は、第三者によって推定されやすい。このために、第三者が、サーバ10に不正にアクセスして、実在のプリンタの推定されたシリアル番号と不正な登録コードとをサーバ10に仮登録し得る。これに対し、本実施例では、仮登録要求に含まれる登録コードから復号化される特定の番号と、仮登録要求に含まれるシリアル番号と、が一致しない場合に、装置情報が登録テーブル30に仮登録されない(図2のS32でNO)。これにより、第三者によって装置情報がサーバ10に不正に登録されることを防止することができる。

以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。

(変形例1)仮登録要求が受信される前に、本登録要求が受信される場合であっても、本登録要求に含まれる登録コードが登録テーブル30に登録されてもよい。例えば、CPU22は、図3のS84でNOと判断する場合に、本登録要求に含まれる登録コードを登録テーブル30に登録してもよい。そして、CPU22は、図2のS20でYESと判断される場合に、図3のS84と同様の判断し、当該判断でYESと判断する場合に、図3のS86以降の処理を実行し、当該判断でNOと判断する場合、図2のS22以降の処理を実行してもよい。本変形例では、本登録要求、仮登録要求が、それぞれ、「一方の登録要求」、「他方の登録要求」の一例である。

(変形例2)装置情報は、ステータス情報に関連付けて登録テーブル30に登録されなくてもよい。例えば、メモリ24は、仮登録領域と本登録領域とを備えていてもよい。そして、CPU22は、装置情報を仮登録領域に記憶させることによって、装置情報を仮登録し、装置情報を本登録領域に記憶させることによって、装置情報を本登録してもよい。

(変形例3)図3のS60で受信される情報は、残量情報に限らない。例えば、CPU22は、プリンタの印刷回数を示す回数情報を受信してもよい。この場合、CPU22は、当該回数情報をメールで送信してもよい。本変形例では、回数情報、回数情報のメール送信が、それぞれ、「装置関係情報」、「対象サービス」の一例である。

(変形例4)ユーザ情報テーブル28が設けられなくてもよい。例えば、サーバ10は、印刷対象のファイル内のテキストを所定の言語に翻訳するサービスを実行するサーバであってもよい。この場合、CPU22は、装置情報を本登録した後に、端末装置からシリアル番号と印刷対象のファイルとを含む翻訳要求を受信し、当該ファイル内のテキストを翻訳する。次いで、CPU22は、翻訳要求に含まれるシリアル番号から装置情報を特定し、特定済みの装置情報に含まれるモデル名が示すプリンタの印刷能力を特定する。そして、CPU22は、特定済みの印刷能力に基づいて、翻訳済みのファイルを印刷データに変換し、印刷データをプリンタに送信する。本変形例では、翻訳済みのファイルを生成して送信することが、「対象サービス」の一例である。なお、別の変形例では、上記の翻訳に代えて、印刷対象のファイルに対して所定の画像処理(例えば、ホワイトバランスの補正処理、カラー画像からモノクロ画像への変換処理等)が実行されてもよい。

(変形例5)プリンタ200は、仮登録要求をサーバ10に送信した後に、T150の登録確認操作を受け付けなくても、送信指示をサーバ10に定期的に送信してもよい。この場合、CPU22は、図3のS100の処理を実行せずに、S102の処理を実行することができる。登録確認操作を実行せずに済むので、ユーザの作業負荷を軽減させることができる。本変形例では、「第1の送信処理」を省略可能である。なお、本変形例では、プリンタ200が送信指示をサーバ10に定期的に送信する必要があるので、プリンタ200の処理負荷が高くなり得る。これに対し、上記の第1及び第2実施例では、プリンタ200は、登録確認操作を受け付けることに応じて、送信指示をサーバ10に送信する。このために、プリンタ200の処理負荷を低減させることができる。

(変形例6)CPU22は、S90、S92の処理を実行しなくてもよい。例えば、CPU22は、図3のS84でNOと判断する場合に、指示IS1及び指示IS2を含まないエラー画面を表わすエラー画面データを送信してもよい。本変形例では、「第2の送信処理」及び「第3の送信処理」を省略可能である。

(変形例7)図3のS104では、CPU22は、アクセストークンを送信する代わりに、HTTP(Hyper Text Transfer Protocolの略) Cookieで利用される識別子をプリンタに送信してもよい。この場合、CPU22は、S106,S108の処理を実行せずに、図3の本登録処理を終了する。そして、S60では、CPU22は、プリンタから上記の識別子を受信することに応じて、プリンタとのHTTP接続を確立し、当該接続を利用して、残量情報を受信してもよい。また、別の変形例では、S104では、CPU22は、特定のURL(Uniform Resource Locatorの略)をプリンタに送信し、S106,S108の処理を実行せずに、図3の本登録処理を終了する。そして、S60では、CPU22は、プリンタから上記のURLを送信先として接続要求を受信することに応じて、プリンタとのHTTP接続を確立し、当該接続を利用して、残量情報を受信してもよい。本変形例では、識別子又は特定のURLが、「接続情報」の一例である。

(変形例8)第2実施例の図2のS30に代えて、CPU22は、所定の鍵を利用して、仮登録要求に含まれるシリアル番号を暗号化することによって、特定のコードを生成してもよい。この場合、S32では、CPU22は、生成済みの特定のコードと仮登録要求に含まれる登録コードとが一致するのか否かを判断してもよい。

(変形例9)「通信装置」は、プリンタに限らず、スキャナ、多機能機、FAX機等であってもよい。例えば、「通信装置」がスキャナである場合には、サーバ10が、スキャナからスキャン回数を示す回数情報を受信し、当該回数情報をメールで送信することが、「対象サービス」の一例である。

また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。

2:通信システム、4:LAN、6:インターネット、8:ルータ、10:サーバ、12:ネットワークI/F、20:制御部、22:CPU、24:メモリ、26:プログラム、28:ユーザ情報テーブル、30:登録テーブル、100,200:プリンタ、400:端末装置

Claims (10)

  1. サーバのためのコンピュータプログラムであって、
    前記サーバのコンピュータに、以下の各処理、即ち、
    通信装置から、インターネットを介して、前記通信装置を識別するための識別情報と、第1のコードと、を含む第1の登録要求を受信する第1の受信処理であって、前記第1のコードは、前記通信装置のユーザによって前記通信装置に入力されることなく、前記通信装置に予め記憶されている、前記第1の受信処理と、
    第2のコードが前記ユーザによって前記通信装置とは異なる端末装置に入力される場合に、前記端末装置から、前記インターネットを介して、前記第2のコードを含む第2の登録要求を受信する第2の受信処理と、
    前記第1の登録要求及び前記第2の登録要求のうちの一方の登録要求が受信される場合に、前記一方の登録要求に含まれる一方のコードを含む対象情報の登録状態を第1の登録状態として、前記対象情報をメモリに登録する第1の登録処理であって、前記第1の登録状態は、前記サーバが、前記通信装置に関係する対象サービスを実行しない状態である、前記第1の登録処理と、
    前記対象情報が前記メモリに登録された後に、前記第1の登録要求及び前記第2の登録要求のうちの他方の登録要求が受信される場合に、前記他方の登録要求に含まれる他方のコードが前記対象情報に含まれる前記一方のコードに一致するのか否かを判断する第1の判断処理と、
    前記他方のコードが前記一方のコードに一致すると判断される場合に、前記対象情報の登録状態を前記第1の登録状態から第2の登録状態に変更し、前記他方のコードが前記一方のコードに一致しないと判断される場合に、前記対象情報の登録状態を前記第1の登録状態から前記第2の登録状態に変更しない変更処理であって、前記第2の登録状態は、前記サーバが、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行する状態である、前記変更処理と、
    前記対象情報の登録状態が前記第2の登録状態に変更される場合に、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行するサービス処理と、
    を実行させるコンピュータプログラム。
  2. 前記第1の受信処理は、前記通信装置が前記インターネットに接続されていること、及び、前記通信装置に電力が供給されていること、の双方が満たされた際に、前記第1の登録要求を受信する、請求項1に記載のコンピュータプログラム。
  3. 前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記端末装置から、前記インターネットを介して、前記ユーザに関係するユーザ情報を受信する第3の受信処理と、
    前記受信済みのユーザ情報を前記メモリに登録する第2の登録処理と、を実行させ、
    前記第1の登録状態では、前記ユーザ情報が前記対象情報に関連付けられず、
    前記第2の登録状態では、前記ユーザ情報が前記対象情報に関連付けられ、
    前記サービス処理では、前記ユーザ情報を利用した前記対象サービスが実行される、請求項1又は2に記載のコンピュータプログラム。
  4. 前記一方の登録要求は、前記第1の登録要求であり、
    前記一方のコードは、前記第1のコードであり、
    前記他方の登録要求は、前記第2の登録要求であり、
    前記他方のコードは、前記第2のコードであり、
    前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記第1の判断処理において、前記第2のコードが前記第1のコードに一致すると判断される場合に、第1の所定操作を前記通信装置に実行することを前記ユーザに促すための第1の画面を表わす第1の画面データを前記端末装置に送信する第1の送信処理であって、前記第1の所定操作は、前記サーバへの前記対象サービスに関連する関連指示の送信を前記通信装置に実行させるための操作である、前記第1の送信処理を実行させ、
    前記対象情報の登録状態が前記第2の登録状態に変更され、かつ、前記通信装置から前記関連指示が受信された後に、前記サービス処理が実行される、請求項1から3のいずれか一項に記載のコンピュータプログラム。
  5. 前記一方の登録要求は、前記第1の登録要求であり、
    前記一方のコードは、前記第1のコードであり、
    前記他方の登録要求は、前記第2の登録要求であり、
    前記他方のコードは、前記第2のコードであり、
    前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記第1の判断処理において、前記第2のコードが前記第1のコードに一致しないと判断される場合に、前記第2のコードとは異なるコードを前記端末装置に入力することを前記ユーザに促すための第2の画面を表わす第2の画面データを前記端末装置に送信する第2の送信処理を実行させる、請求項1から4のいずれか一項に記載のコンピュータプログラム。
  6. 前記一方の登録要求は、前記第1の登録要求であり、
    前記一方のコードは、前記第1のコードであり、
    前記他方の登録要求は、前記第2の登録要求であり、
    前記他方のコードは、前記第2のコードであり、
    前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記第1の登録要求が受信される前であって、前記対象情報が前記メモリに登録される前に、前記第2の登録要求が受信される場合に、前記第2のコードを含む前記対象情報を前記メモリに登録することなく、第2の所定操作を前記通信装置に実行することを前記ユーザに促すための第3の画面を表わす第3の画面データを前記端末装置に送信する第3の送信処理であって、前記第2の所定操作は、前記サーバへの前記第1の登録要求の送信を前記通信装置に実行させるための操作である、前記第3の送信処理を実行させる、請求項1から5のいずれか一項に記載のコンピュータプログラム。
  7. 前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記対象情報の登録状態が前記第1の登録状態から前記第2の登録状態に変更される場合に、前記サーバと前記通信装置との間に前記インターネットを介した接続を確立するための接続情報を前記対象情報に関連付けて前記メモリに登録する第3の登録処理と、
    前記接続情報を前記通信装置に送信する第4の送信処理と、
    前記接続情報が前記通信装置に送信された後に、前記接続情報を利用して、前記サーバと前記通信装置との間に前記インターネットを介した前記接続を確立する確立処理と、を実行させ、
    前記サービス処理は、前記接続を利用して、前記通信装置との通信を実行することを含む、請求項1から6のいずれか一項に記載のコンピュータプログラム。
  8. 前記サービス処理は、前記通信装置に関係する装置関係情報を要求するための情報要求を前記通信装置に前記接続を利用して送信すること、及び、前記情報要求の送信に応じて、前記通信装置から前記装置関係情報を受信することを含む、請求項7に記載のコンピュータプログラム。
  9. 前記コンピュータプログラムは、前記コンピュータに、さらに、
    前記第1の登録要求が受信される場合に、前記識別情報と前記第1のコードとを利用して、前記第1のコードが前記識別情報から生成されたコードであるのか否かを判断する第2の判断処理を実行させ、
    前記第1のコードが前記識別情報から生成されたコードであると判断される場合に、前記第1の判断処理が実行され、前記第1のコードが前記識別情報から生成されたコードでないと判断される場合に、前記第1の判断処理が実行されない、請求項1から8のいずれか一項に記載のコンピュータプログラム。
  10. サーバであって、
    通信装置から、インターネットを介して、前記通信装置を識別するための識別情報と、第1のコードと、を含む第1の登録要求を受信する第1の受信部であって、前記第1のコードは、前記通信装置のユーザによって前記通信装置に入力されることなく、前記通信装置に予め記憶されている、前記第1の受信部と、
    第2のコードが前記ユーザによって前記通信装置とは異なる端末装置に入力される場合に、前記端末装置から、前記インターネットを介して、前記第2のコードを含む第2の登録要求を受信する第2の受信部と、
    前記第1の登録要求及び前記第2の登録要求のうちの一方の登録要求が受信される場合に、前記一方の登録要求に含まれる一方のコードを含む対象情報の登録状態を第1の登録状態として、前記対象情報をメモリに登録する第1の登録部であって、前記第1の登録状態は、前記サーバが、前記通信装置に関係する対象サービスを実行しない状態である、前記第1の登録部と、
    前記対象情報が前記メモリに登録された後に、前記第1の登録要求及び前記第2の登録要求のうちの他方の登録要求が受信される場合に、前記他方の登録要求に含まれる他方のコードが前記対象情報に含まれる前記一方のコードに一致するのか否かを判断する第1の判断部と、
    前記他方のコードが前記一方のコードに一致すると判断される場合に、前記対象情報の登録状態を前記第1の登録状態から第2の登録状態に変更し、前記他方のコードが前記一方のコードに一致しないと判断される場合に、前記対象情報の登録状態を前記第1の登録状態から前記第2の登録状態に変更しない変更部であって、前記第2の登録状態は、前記サーバが、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行する状態である、前記変更部と、
    前記対象情報の登録状態が前記第2の登録状態に変更される場合に、前記対象情報に含まれる前記識別情報によって識別される前記通信装置に関係する前記対象サービスを実行するサービス実行部と、
    を備えるサーバ。
JP2016037524A 2016-02-29 2016-02-29 サーバのためのコンピュータプログラム、及び、サーバ Active JP6623837B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016037524A JP6623837B2 (ja) 2016-02-29 2016-02-29 サーバのためのコンピュータプログラム、及び、サーバ

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016037524A JP6623837B2 (ja) 2016-02-29 2016-02-29 サーバのためのコンピュータプログラム、及び、サーバ
EP17157693.7A EP3211522A1 (en) 2016-02-29 2017-02-23 Computer program for server
CN201710107088.0A CN107135196A (zh) 2016-02-29 2017-02-27 服务器
US15/444,614 US10643219B2 (en) 2016-02-29 2017-02-28 Non-transitory computer-readable medium for server capable of executing target service related to communication device

Publications (2)

Publication Number Publication Date
JP2017156848A true JP2017156848A (ja) 2017-09-07
JP6623837B2 JP6623837B2 (ja) 2019-12-25

Family

ID=58192113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016037524A Active JP6623837B2 (ja) 2016-02-29 2016-02-29 サーバのためのコンピュータプログラム、及び、サーバ

Country Status (4)

Country Link
US (1) US10643219B2 (ja)
EP (1) EP3211522A1 (ja)
JP (1) JP6623837B2 (ja)
CN (1) CN107135196A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019133411A (ja) * 2018-01-31 2019-08-08 ブラザー工業株式会社 サーバシステム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6310692B1 (en) * 1998-05-15 2001-10-30 Kuji Xerox Co. Ltd. Dynamic, preventive, centralized printer resource management system and method
JP3997197B2 (ja) * 2003-12-02 2007-10-24 キヤノン株式会社 画像処理システム
JP4428250B2 (ja) * 2005-02-17 2010-03-10 セイコーエプソン株式会社 ネットワークに接続された印刷装置の印刷進行状況監視制御
JP4488096B2 (ja) 2008-07-29 2010-06-23 ダイキン工業株式会社 遠隔管理装置および遠隔管理システム
JP5115746B2 (ja) * 2009-01-28 2013-01-09 Necビッグローブ株式会社 通信システム、サーバ装置、情報処理方法およびプログラム
US8477350B2 (en) * 2010-03-16 2013-07-02 Google Inc. Cloud-based print service
JP5703791B2 (ja) * 2011-01-31 2015-04-22 セイコーエプソン株式会社 印刷システムおよびプリンター
US8683567B2 (en) * 2011-03-31 2014-03-25 Belkin International, Inc. Method of distributing information regarding one or more electrical devices and system for the same
WO2013019186A1 (en) * 2011-07-29 2013-02-07 Hewlett-Packard Development Company, L.P. Printer
JP5457424B2 (ja) * 2011-11-24 2014-04-02 シャープ株式会社 画像形成システム
US8681350B2 (en) * 2012-02-29 2014-03-25 Canon Kabushiki Kaisha Systems and methods for enterprise sharing of a printing device
JP5663512B2 (ja) 2012-03-09 2015-02-04 株式会社大和総研ビジネス・イノベーション 個人情報収集システムおよびプログラム
US9619186B2 (en) 2013-01-31 2017-04-11 Hewlett-Packard Development Company, L.P. Cloud-based printing fluid subscription messages
US9311038B2 (en) * 2013-09-30 2016-04-12 Samsung Electronics Co., Ltd. System and method for providing cloud printing service
US9813505B2 (en) * 2014-10-15 2017-11-07 Ayla Networks, Inc. Devices in a flexible registration framework
JP6412433B2 (ja) * 2015-01-30 2018-10-24 株式会社沖データ メンテナンスサポートシステム、サービス提供方法及び管理装置
KR20160105261A (ko) * 2015-02-27 2016-09-06 삼성전자주식회사 전자 장치를 이용한 카드 서비스 방법 및 장치
EP3086219A1 (en) * 2015-04-23 2016-10-26 Samsung Electronics Co., Ltd. Method for providing cloud printing service, and apparatus and system for performing the same

Also Published As

Publication number Publication date
JP6623837B2 (ja) 2019-12-25
EP3211522A1 (en) 2017-08-30
US20170249641A1 (en) 2017-08-31
CN107135196A (zh) 2017-09-05
US10643219B2 (en) 2020-05-05

Similar Documents

Publication Publication Date Title
US8862997B2 (en) Network management system and network management method
US8804176B2 (en) Printing system and printing method
US10015206B2 (en) Client device obtaining network connection information from an image processing apparatus by capturing an image with a camera
US8842319B2 (en) Context aware document services for mobile device users
CN104050024B (zh) 过程流定义的创建系统、创建设备以及创建方法
JP4108461B2 (ja) 認証システム、認証振り分けサーバ、認証方法およびプログラム
US9183404B2 (en) Image sending apparatus and authentication method in image sending apparatus
US8773698B2 (en) Printing control server and printing system
US7215437B2 (en) Method of printing over a network
US9232395B2 (en) System, server, communication device and computer readable medium therefor
CN100456805C (zh) 一种基于tftp的iptv机顶盒软件网络升级方法
US8099612B2 (en) Information processing apparatus
JP6177020B2 (ja) 認証システム、その制御方法、サービス提供装置およびコンピュータプログラム
JP2015011532A (ja) 端末装置とプリンタ
US7463378B2 (en) Visitor safe wireless printer access point
US8605318B2 (en) Print system, relay apparatus, print server, and print method
JP5475064B2 (ja) サーバ装置、アプリケーション実行システム、アプリケーション実行方法、およびプログラム
US10015131B2 (en) Communication device recording input values for subnet mask setting item, IP address setting item, and gateway setting item
EP1396992A2 (en) Image forming apparatus that can operate without wasteful use of resources thereof and unnecessary authentication
US20110096354A1 (en) System and method for handling print requests from a mobile device
US8982374B2 (en) Image forming system and image forming method for collectively supporting output data formats and authentication methods
JP6098095B2 (ja) 特定のサーバ及び通信装置
US8817785B2 (en) Communication apparatus having a plurality of network interfaces, method of communication by the communication apparatus, and storage medium
US7768664B2 (en) Communication system that receives an input from a user
WO2015165370A1 (fr) Procédé de connexion de réseau et équipement utilisateur

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190730

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190927

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191111

R150 Certificate of patent or registration of utility model

Ref document number: 6623837

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150