JP2022131686A - サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム - Google Patents
サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム Download PDFInfo
- Publication number
- JP2022131686A JP2022131686A JP2021030753A JP2021030753A JP2022131686A JP 2022131686 A JP2022131686 A JP 2022131686A JP 2021030753 A JP2021030753 A JP 2021030753A JP 2021030753 A JP2021030753 A JP 2021030753A JP 2022131686 A JP2022131686 A JP 2022131686A
- Authority
- JP
- Japan
- Prior art keywords
- authentication information
- server
- terminal device
- function execution
- function
- 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
- 238000004590 computer program Methods 0.000 title claims description 6
- 230000005540 biological transmission Effects 0.000 claims abstract description 46
- 230000006870 function Effects 0.000 claims description 152
- 230000004044 response Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 abstract description 64
- 230000008569 process Effects 0.000 description 56
- 238000012545 processing Methods 0.000 description 30
- 230000004048 modification Effects 0.000 description 22
- 238000012986 modification Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 19
- 238000007639 printing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Abstract
【課題】サーバを利用して機能実行装置に機能を実行させるための新規な技術を提供すること。【解決手段】サーバは、第1の端末装置から第2の端末装置のアドレス情報を受信するアドレス情報受信部と、アドレス情報を利用して、第1の認証情報を第2の端末装置に送信する第1の認証情報送信部と、第2の端末装置から第1の認証情報を受信する第1の認証情報受信部と、第2の端末装置から第1の認証情報が受信された後に、第2の認証情報を第2の端末装置に送信する第2の認証情報送信部と、第2の認証情報が前記第2の端末装置に送信された後に、機能実行装置から第2の認証情報を受信する第2の認証情報受信部と、機能実行装置から第2の認証情報が受信される場合に、第1の機能を機能実行装置に実行させるための第1の機能実行要求を機能実行装置に送信する第1の要求送信部と、を備える。【選択図】図2
Description
本明細書は、サーバを利用して機能実行装置に機能を実行させる技術に関する。
特許文献1には、サービスの管理画面から、プリンタの共有設定を行えることが開示されている。管理者は、管理画面において、共有対象のプリンタの選択と、Shareボタンの押下と、を実行した後に、共有させたいユーザのユーザ情報を入力する。この結果、当該ユーザは、共有対象のプリンタを利用することができる。
本明細書では、サーバを利用して機能実行装置に機能を実行させるための新規な技術を提供する。
本明細書は、サーバを開示する。サーバは、第1の端末装置から、前記第1の端末装置とは異なる第2の端末装置のアドレス情報を受信するアドレス情報受信部と、前記第1の端末装置から前記アドレス情報が受信される場合に、前記アドレス情報を利用して、第1の認証情報を前記第2の端末装置に送信する第1の認証情報送信部と、前記第1の認証情報が前記第2の端末装置に送信された後に、前記第2の端末装置において、前記第1の認証情報を前記サーバに送信するための送信操作が実行される場合に、前記第2の端末装置から前記第1の認証情報を受信する第1の認証情報受信部と、前記第2の端末装置から前記第1の認証情報が受信された後に、第2の認証情報を前記第2の端末装置に送信する第2の認証情報送信部と、前記第2の認証情報が前記第2の端末装置に送信された後に、前記第2の認証情報が機能実行装置によって取得される場合に、前記機能実行装置から前記第2の認証情報を受信する第2の認証情報受信部と、前記機能実行装置から前記第2の認証情報が受信される場合に、第1の機能を前記機能実行装置に実行させるための第1の機能実行要求を前記機能実行装置に送信する第1の要求送信部と、を備えてもよい。
上記の構成によると、サーバは、第1の端末装置から第2の端末装置のアドレス情報を受信すると、アドレス情報を利用して第1の認証情報を第2の端末装置に送信する。その後、サーバは、第2の端末装置から第1の認証情報を受信する場合に、第2の認証情報を第2の端末装置に送信する。そして、第2の認証情報が機能実行装置によって取得される場合に、サーバは、機能実行装置から第2の認証情報を受信し、第1の機能実行要求を機能実行装置に送信する。この結果、機能実行装置において第1の機能が実行される。このように、サーバは、第1の端末装置から受信される第2の端末装置のアドレス情報を利用して、第1の機能を機能実行装置に実行させることができる。
また、本明細書は、第2の端末装置のためのアプリケーションプログラムも開示する。前記アプリケーションプログラムは、前記第2の端末装置のコンピュータを、以下の各部、即ち、前記第2の端末装置において、第1の認証情報をサーバに送信するための送信操作が実行される場合に、前記第1の認証情報を前記サーバに送信する第1の認証情報送信部であって、前記サーバにおいて、前記第2の端末装置とは異なる第1の端末装置から前記第2の端末装置のアドレス情報が受信される場合に、前記アドレス情報が利用されて、前記第1の認証情報が前記サーバから前記第2の端末装置に送信される、前記第1の認証情報送信部と、前記第1の認証情報が前記サーバに送信された後に、前記サーバから第2の認証情報を受信する第1の認証情報受信部と、前記サーバから前記第2の認証情報が受信される場合に、前記第2の認証情報に関連する関連情報を出力部に出力させる出力制御部であって、前記関連情報が出力されることに応じて前記第2の認証情報が機能実行装置によって取得される場合に、前記機能実行装置から前記サーバに前記第2の認証情報が送信され、第1の機能を前記機能実行装置に実行させるための第1の機能実行要求が前記サーバから前記機能実行装置に送信される、前記出力制御部と、として機能させてもよい。
上記の構成によると、サーバにおいて、第1の端末装置から第2の端末装置のアドレス情報が受信される場合に、第2の端末装置は、サーバから第1の認証情報を受信して、第1の認証情報をサーバに送信する。その後、第2の端末装置は、サーバから第2の認証情報を受信する場合に、第2の認証情報に関連する関連情報を出力する。第2の認証情報が機能実行装置によって取得される場合に、機能実行装置からサーバに第2の認証情報が送信され、第1の機能実行要求がサーバから機能実行装置に送信される。この結果、機能実行装置において第1の機能が実行される。このように、第2の端末装置は、第2の端末装置自身のアドレス情報が第1の端末装置からサーバに送信される場合に、サーバを利用して、第1の機能を機能実行装置に実行させることができる。
上記のサーバのためのコンピュータプログラム、当該コンピュータプログラムを記憶するコンピュータ可読記録媒体、及び、サーバによって実行される方法も新規で有用である。また、上記のアプリケーションプログラムを記憶するコンピュータ読取可能記憶媒体、当該アプリケーションプログラムによって実現される端末装置、及び、当該端末装置によって実行される方法も、新規で有用である。また、上記のサーバと端末装置とを備える通信システムも新規で有用である。
(通信システムの構成;図1)
図1に示されるように、通信システム2は、MFP(Multi-Function Peripheralの略)10と、管理者端末50と、ユーザ端末100と、サービスサーバ200と、XMPP(Extensible Messaging and Presence Protocolの略)サーバ300と、を備える。各デバイス10,50,100,200,300は、インターネット6に接続されており、インターネット6を介して相互に通信可能である。本実施例では、MFP10の管理者が、管理者端末50を利用して、ユーザ端末100のユーザにMFP10を共有させる状況を想定する。ここで、「共有」とは、特定のユーザ(例えばユーザ端末100のユーザ)に特定のデバイス(例えばMFP10)の利用を許容させることを意味する。
図1に示されるように、通信システム2は、MFP(Multi-Function Peripheralの略)10と、管理者端末50と、ユーザ端末100と、サービスサーバ200と、XMPP(Extensible Messaging and Presence Protocolの略)サーバ300と、を備える。各デバイス10,50,100,200,300は、インターネット6に接続されており、インターネット6を介して相互に通信可能である。本実施例では、MFP10の管理者が、管理者端末50を利用して、ユーザ端末100のユーザにMFP10を共有させる状況を想定する。ここで、「共有」とは、特定のユーザ(例えばユーザ端末100のユーザ)に特定のデバイス(例えばMFP10)の利用を許容させることを意味する。
(MPF10の構成)
MFP10は、印刷機能、スキャン機能、FAX機能等の多機能を実行可能な周辺装置(例えば管理者端末50の周辺装置)である。MFP10には、MFP10を識別するためのデバイスID「M1」が割り当てられている。MFP10は、操作部12と、表示部14と、通信インターフェース16と、印刷実行部18と、スキャン実行部20と、制御部30と、を備える。各部12~30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。
MFP10は、印刷機能、スキャン機能、FAX機能等の多機能を実行可能な周辺装置(例えば管理者端末50の周辺装置)である。MFP10には、MFP10を識別するためのデバイスID「M1」が割り当てられている。MFP10は、操作部12と、表示部14と、通信インターフェース16と、印刷実行部18と、スキャン実行部20と、制御部30と、を備える。各部12~30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をMFP10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。表示部14は、ユーザから指示を受け付けるタッチパネル(即ち操作部)としても機能する。通信I/F16は、インターネット6に接続されている。印刷実行部18は、インクジェット方式、レーザ方式等の印刷機構を備える。スキャン実行部20は、CCD、CIS等のスキャン機構を備える。
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されているプログラム36に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。
(管理者端末50の構成)
管理者端末50は、例えば、携帯電話、スマートフォン、PDA、ノートPC、タブレットPC等の可搬型の端末装置である。なお、変形例では、管理者端末50は、デスクトップPC等の据置型の端末装置であってもよい。管理者端末50は、MFP10の管理者によって利用される端末装置である。
管理者端末50は、例えば、携帯電話、スマートフォン、PDA、ノートPC、タブレットPC等の可搬型の端末装置である。なお、変形例では、管理者端末50は、デスクトップPC等の据置型の端末装置であってもよい。管理者端末50は、MFP10の管理者によって利用される端末装置である。
(ユーザ端末100の構成)
ユーザ端末100は、例えば、携帯電話、スマートフォン、PDA、ノートPC、タブレットPC等の可搬型の端末装置である。なお、変形例では、ユーザ端末100は、デスクトップPC等の据置型の端末装置であってもよい。ユーザ端末100には、ユーザ端末100を識別するための端末ID「UT1」が割り当てられている。ユーザ端末100は、操作部112と、表示部114と、通信I/F116と、制御部130と、を備える。各部112~130は、バス線(符号省略)に接続されている。
ユーザ端末100は、例えば、携帯電話、スマートフォン、PDA、ノートPC、タブレットPC等の可搬型の端末装置である。なお、変形例では、ユーザ端末100は、デスクトップPC等の据置型の端末装置であってもよい。ユーザ端末100には、ユーザ端末100を識別するための端末ID「UT1」が割り当てられている。ユーザ端末100は、操作部112と、表示部114と、通信I/F116と、制御部130と、を備える。各部112~130は、バス線(符号省略)に接続されている。
操作部112は、複数のキーを備える。ユーザは、操作部112を操作することによって、様々な指示をユーザ端末100に入力することができる。表示部114は、様々な情報を表示するためのディスプレイである。表示部114は、ユーザから指示を受け付けるタッチパネル(即ち操作部)としても機能する。通信I/F116は、インターネット6に接続されている。
制御部130は、CPU132とメモリ134とを備える。CPU132は、メモリ134に格納されているプログラム136,138,140に従って、様々な処理を実行する。メモリ134は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ134は、OS(Operating Systemの略)プログラム136と、MFPアプリケーション138と、メールアプリケーション140と、を記憶する。以下では、OSプログラム136のことを「OS136」と記載し、MFPアプリケーション138のことを「アプリ138」と記載し、メールアプリケーション140のことを「メーラ140」と記載する。
OS136は、ユーザ端末100の基本的な動作を制御するためのプログラムである。アプリ138は、サービスサーバ200を介して、MFP(例えばMFP10)に機能(例えば印刷機能、スキャン機能等)を実行させるためのプログラムである。アプリ138は、例えば、MFP10のベンダによって提供されるインターネット6上のサーバからユーザ端末100にインストールされる。メーラ140は、電子メールの表示及び送受信等を実行するためのプログラムである。メーラ140には、ユーザ端末100のメールアドレスMAが設定されている。
(サービスサーバ200の構成)
サービスサーバ200は、端末(例えばユーザ端末100)とMFP(例えばMFP10)との間の通信を仲介するサーバである。当該通信は、端末からMFPに機能を実行させるための様々な信号の通信を含む。サービスサーバ200は、MFP10のベンダによってインターネット6上に設置される。サービスサーバ200は、通信I/F216と制御部230とを備える。各部216,230は、バス線(符号省略)に接続されている。通信I/F216は、インターネット6に接続されている。
サービスサーバ200は、端末(例えばユーザ端末100)とMFP(例えばMFP10)との間の通信を仲介するサーバである。当該通信は、端末からMFPに機能を実行させるための様々な信号の通信を含む。サービスサーバ200は、MFP10のベンダによってインターネット6上に設置される。サービスサーバ200は、通信I/F216と制御部230とを備える。各部216,230は、バス線(符号省略)に接続されている。通信I/F216は、インターネット6に接続されている。
制御部230は、CPU232とメモリ234とを備える。CPU232は、メモリ234に格納されているプログラム236に従って、様々な処理を実行する。メモリ234は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ234は、さらに、アカウントテーブル238と、デバイステーブル240と、を記憶する。アカウントテーブル238は、ユーザIDとパスワードとデバイスIDとを関連付けて記憶する。
デバイステーブル240は、デバイスIDと、端末IDと、Activate Tokenと、Access Tokenと、Onetime Tokenと、仮登録フラグと、を関連付けて記憶する。Activate Tokenは、端末(例えばユーザ端末100)をサービスサーバ200に仮登録する際に利用される認証情報である。Access Tokenは、機能実行指示の送信元のデバイスを認証する際に利用される認証情報である。Onetime Tokenは、仮登録されている端末(例えばユーザ端末100)を本登録する際に利用される認証情報である。仮登録フラグは、端末(例えばユーザ端末100)が仮登録されていることを示す「YES」と、本登録されていることを示す「NO」と、のいずれか一方を示す。ここで、端末が仮登録されているとは、Activate Tokenの認証が成功し、かつ、Onetime Tokenの認証が成功していない状態を示す。また、端末が本登録されているとは、Activate Tokenの認証と、Onetime Tokenの認証と、の双方が成功している状態を示す。
(XMPPサーバ300の構成)
XMPPサーバ300は、MFP(例えばMFP10)とのXMPP接続を確立するサーバである。XMPP接続は、いわゆる常時接続と呼ばれる接続である。XMPPサーバ300は、XMPP接続を利用すれば、MFPから要求を受信しなくても、MFPが所属するLANのファイヤーウォールを越えて、信号をMFPに送信することができる。
XMPPサーバ300は、MFP(例えばMFP10)とのXMPP接続を確立するサーバである。XMPP接続は、いわゆる常時接続と呼ばれる接続である。XMPPサーバ300は、XMPP接続を利用すれば、MFPから要求を受信しなくても、MFPが所属するLANのファイヤーウォールを越えて、信号をMFPに送信することができる。
(事前準備)
本実施例の具体的なケースを説明する前に、サービスサーバ200を利用してMFP10に機能を実行させるための事前準備について説明する。事前準備は、管理者のアカウント情報(即ちユーザID及びパスワードの組合せ)をサービスサーバ200に登録する処理と、MFP10をサービスサーバ200に登録する処理と、を含む。
本実施例の具体的なケースを説明する前に、サービスサーバ200を利用してMFP10に機能を実行させるための事前準備について説明する。事前準備は、管理者のアカウント情報(即ちユーザID及びパスワードの組合せ)をサービスサーバ200に登録する処理と、MFP10をサービスサーバ200に登録する処理と、を含む。
まず、MFP10の管理者は、管理者端末50を利用して、サービスサーバ200にアクセスして、アカウント情報をサービスサーバ200に登録する。具体的には、管理者端末50は、ユーザID「XXX」及びパスワード「YYY」の入力を含むアカウント登録操作を管理者から受け付ける場合に、アカウント登録要求をサービスサーバ200に送信する。この結果、サービスサーバ200は、アカウントテーブル238において、ユーザID「XXX」とパスワード「YYY」とを関連付けて記憶する。
その後、MFP10は、ユーザID「XXX」及びパスワード「YYY」の入力を含むデバイス登録操作を管理者から受け付ける。この場合、MFP10は、ユーザID「XXX」とパスワード「YYY」とデバイスID「M1」とを含むデバイス登録要求をXMPPサーバ300に送信する。XMPPサーバ300は、これらの情報をサービスサーバ200に転送する。この結果、サービスサーバ200は、アカウントテーブル238において、ユーザID「XXX」及びパスワード「YYY」に関連付けて、デバイスID「M1」を記憶する。この場合、サービスサーバ200は、デバイスID「M1」が登録されたことを示す登録通知をXMPPサーバ300に送信する。
また、XMPPサーバ300は、サービスサーバ200から登録通知を受信すると、MFP10とのXMPP接続を確立するための各種通信(例えばAccess Tokenの送信等)を実行する。この結果、MFP10とXMPPサーバ300との間にXMPP接続が確立される。
(ケースA;図2~図5)
続いて、図2~図5を参照して、ユーザ端末100を利用して、印刷機能をMFP10に実行させるケースAを説明する。図2の初期状態では、サービスサーバ200は、ユーザID「XXX」とパスワード「YYY」とデバイスID「M1」とを関連付けて記憶している。また、MFP10とXMPPサーバ300との間にXMPP接続が確立されている。
続いて、図2~図5を参照して、ユーザ端末100を利用して、印刷機能をMFP10に実行させるケースAを説明する。図2の初期状態では、サービスサーバ200は、ユーザID「XXX」とパスワード「YYY」とデバイスID「M1」とを関連付けて記憶している。また、MFP10とXMPPサーバ300との間にXMPP接続が確立されている。
なお、以下では、理解の容易化のために、各デバイスのCPU(例えばCPU32,132,232等)が実行する動作を説明する際に、CPUを主体として記載せずに、各デバイス(例えばMFP10、ユーザ端末100、サービスサーバ200)を主体として記載する。特に、ユーザ端末100が実行する動作を説明する際には、アプリ138、メーラ140等のプログラムを主体として記載することがある。また、各デバイス10,100,200によって実行される全ての通信は、通信I/F16(116,216)を介して実行される。このため、以下では、「通信I/F16(116,216)を介して」という記載を省略する。
管理者端末50は、図2のT10において、管理者からログイン操作を受け付けると、T12において、ログイン要求をサービスサーバ200に送信する。ログイン操作は、ユーザID「XXX」及びパスワード「YYY」の入力を含む。ログイン要求は、入力済みのユーザID「XXX」及びパスワード「YYY」を含む。なお、変形例では、管理者端末50にアプリがインストールされており、当該アプリは、T10において、管理者からログイン操作を受け付けてもよい。この場合、当該アプリは、Access Tokenを含むログイン要求をサービスサーバ200に送信してもよい。
サービスサーバ200は、T12において、管理者端末50からログイン要求を受信すると、ログイン要求に含まれるユーザID「XXX」及びパスワード「YYY」の認証を実行する。具体的には、サービスサーバ200は、ユーザID「XXX」及びパスワード「YYY」の組合せがアカウントテーブル238に記憶されているのか否かを判断する。本ケースでは、当該組合せが記憶されているので、サービスサーバ200は、T14において、認証が成功したと判断する。この場合、サービスサーバ200は、T16において、トップ画面データを管理者端末50に送信する。
管理者端末50は、T16において、サービスサーバ200からトップ画面データを受信すると、T18において、トップ画面SC0を表示する。トップ画面SC0は、登録済みデバイスの一覧と、デバイスの共有設定を実行するための共有設定ボタン(即ち文字列「共有設定」)と、を含む。本ケースでは、アカウントテーブル238において、ユーザID「XXX」及びパスワード「YYY」に関連付けて1個のデバイスID「M1」のみが記憶されているので、トップ画面SC0は、1個のデバイスID「M1」のみを含む。
管理者端末50は、T20において、トップ画面SC0内の共有設定ボタンの選択と、デバイスID「M1」の選択と、ユーザ端末100のメールアドレスMAの入力と、を受け付ける。具体的には、管理者端末50は、トップ画面SC0内の共有設定ボタンの選択を受け付けると、共有設定画面(図示省略)を表示する。そして、管理者端末50は、共有設定画面において、デバイスID「M1」の選択と、メールアドレスMAの入力と、を受け付ける。この場合、管理者端末50は、T22において、共有設定指示をサービスサーバ200に送信する。共有設定指示は、選択済みのデバイスID「M1」と、入力済みのメールアドレスMAと、を含む。なお、変形例では、管理者端末50にアプリがインストールされており、当該アプリは、サービスサーバ200からトップ画面データを受信することなく、当該アプリが記憶済みの登録済みデバイスを利用して、トップ画面SC0を表示してもよい。この場合、当該アプリは、T22において、Access Tokenを含む共有設定指示をサービスサーバ200に送信してもよい。
サービスサーバ200は、T22において、管理者端末50から共有設定指示を受信すると、T24において、Activate Token「T1」を生成する。次いで、サービスサーバ200は、T26において、T22で受信済みのデバイスID「M1」と、T24で生成済みのActivate Token「T1」と、を関連付けて、デバイステーブル240に記憶する。現段階では、デバイスID「M1」に関連付けて、端末ID、Access Token、Onetime Token、及び、仮登録フラグは記憶されていない。
サービスサーバ200は、T30において、T22で受信済みのメールアドレスMAを送信先アドレスとして含む電子メールEMを送信する。これにより、メールアドレスMAが設定されているメーラ140がインストールされているユーザ端末100によって電子メールEMが受信される。電子メールEMは、さらに、デバイスID「M1」と、Activate Token「T1」と、を含む。
(図2の続き;図3)
ユーザ端末100のメーラ140は、図3のT32において、ユーザから電子メール表示操作を受け付けると、T34において、電子メールEMを表示部14に表示する。電子メールEMは、Activate Token「T1」をクエリとして含むURL「http://www.app.com/?T1」と、ユーザへのメッセージと、を含む。メッセージは、デバイスID「M1」によって識別されるMFP10を利用するために、URLを選択すべきことを示す。
ユーザ端末100のメーラ140は、図3のT32において、ユーザから電子メール表示操作を受け付けると、T34において、電子メールEMを表示部14に表示する。電子メールEMは、Activate Token「T1」をクエリとして含むURL「http://www.app.com/?T1」と、ユーザへのメッセージと、を含む。メッセージは、デバイスID「M1」によって識別されるMFP10を利用するために、URLを選択すべきことを示す。
メーラ140は、T36において、電子メールEM内のURLの選択を受け付けると、T40において、アプリ138が起動される。具体的には、メーラ140は、URLの選択を受け付けると、アプリ138を起動させるための要求をOS136に供給する。そして、当該要求を取得したOS136は、アプリ138を起動させる。この場合、アプリ138は、T42において、選択済みのURLに含まれるActivate Token「T1」と、端末ID「UT1」と、をサービスサーバ200に送信する。
サービスサーバ200は、ユーザ端末100からActivate Token「T1」と、端末ID「UT1」と、を受信すると、Activate Token「T1」の認証を実行する。具体的には、サービスサーバ200は、Activate Token「T1」がデバイステーブル240に記憶されているのか否かを判断する。本ケースでは、Activate Token「T1」が記憶済みであるので(図2のT26参照)、サービスサーバ200は、T44において、認証が成功したと判断する。この場合、サービスサーバ200は、T46において、Access Token「T2」を生成する。次いで、サービスサーバ200は、T48において、Activate Token「T1」に関連付けて、T42で受信済みの端末ID「UT1」と、T46で生成済みのAccess Token「T2」と、仮登録フラグ「YES」と、をデバイステーブル240に記憶する。換言すると、サービスサーバ200において、端末ID「UT1」によって識別されるユーザ端末100が仮登録される。現段階では、これらの情報に関連付けて、Onetime Tokenは記憶されていない。その後、サービスサーバ200は、T50において、Access Token「T2」をユーザ端末100に送信する。
ユーザ端末100のアプリ138は、T50において、サービスサーバ200からAccess Token「T2」を受信すると、T52において、Access Token「T2」をメモリ134に記憶する。
(図3の続き;図4)
アプリ138は、図4のT60において、ユーザから印刷実行操作を受け付ける。印刷実行操作は、印刷を実行させるべきデバイスのデバイスID「M1」の選択と、印刷対象の画像を表わす画像データの選択と、を含む。この場合、アプリ138は、T62において、印刷実行指示をサービスサーバ200に送信する。印刷実行指示は、選択済みのデバイスID「M1」と、ユーザ端末100の端末ID「UT1」と、記憶済みのAccess Token「T2」(図3のT52参照)と、選択済みの画像データと、を含む。
アプリ138は、図4のT60において、ユーザから印刷実行操作を受け付ける。印刷実行操作は、印刷を実行させるべきデバイスのデバイスID「M1」の選択と、印刷対象の画像を表わす画像データの選択と、を含む。この場合、アプリ138は、T62において、印刷実行指示をサービスサーバ200に送信する。印刷実行指示は、選択済みのデバイスID「M1」と、ユーザ端末100の端末ID「UT1」と、記憶済みのAccess Token「T2」(図3のT52参照)と、選択済みの画像データと、を含む。
サービスサーバ200は、T62において、ユーザ端末100から印刷実行指示を受信すると、印刷実行指示に含まれるAccess Token「T2」の認証を実行する。具体的には、サービスサーバ200は、印刷実行指示に含まれる端末ID「UT1」とAccess Token「T2」との組み合わせが、デバイステーブル240に記憶されているのか否かを判断する。本ケースでは、当該組み合わせが記憶済みであるので(図3のT48参照)、サービスサーバ200は、T64において、認証が成功したと判断する。この場合、サービスサーバ200は、T66において、印刷実行指示に含まれる画像データを変換して印刷データPD1を生成する。印刷データPD1は、MFP10が解釈可能なデータ形式を有する。次いで、サービスサーバ200は、T68において、印刷実行指示に含まれるデバイスID「M1」と、印刷データPD1と、を関連付けてメモリ234に記憶する。なお、Access Tokenの認証が失敗したと判断される場合には、T66以降の処理は実行されない。このように、印刷実行指示に含まれるAccess Token「T2」の認証が成功する場合にのみ、T66以降の処理が実行されるので、印刷実行指示にAccess Tokenが含まれない場合と比較して、セキュリティを高めることができる。
さらに、サービスサーバ200は、デバイステーブル240から、印刷実行指示に含まれるデバイスID「M1」に関連付けられている仮登録フラグを特定する。本ケースでは、仮登録フラグとして「YES」が記憶されているので(図3のT48参照)、サービスサーバ200は、T70において、Onetime Token「T3」を生成する。次いで、サービスサーバ200は、T72において、Access Token「T2」に関連付けて、Onetime Token「T3」をデバイステーブル240に記憶する。その後、サービスサーバ200は、T74において、Onetime Token「T3」をユーザ端末100に送信する。
ユーザ端末100のアプリ138は、T74において、サービスサーバ200からOnetime Token「T3」を受信すると、T76において、通知画面SC1を表示する。通知画面SC1は、Onetime Token「T3」と、ユーザへのメッセージと、を含む。メッセージは、デバイスID「M1」によって識別されるMFP10にOnetime Token「T3」を入力すべきことを示す。
上述したように、サービスサーバ200は、ユーザ端末100から印刷実行指示を受信する場合(T62)に、Onetime Token「T3」をユーザ端末100に送信する。そして、後述するように、Onetime Token「T3」がMFP10によって取得される場合に、MFP10において印刷が実行される。印刷実行操作(T60)を実行したユーザは、MFP10まで印刷物を取りに行くので、その際にOnetime Token「T3」をMFP10に入力すればよい。このように、ユーザは、MFP10に印刷を実行させるための一連の作業の中で、MFP10にOnetime Token「T3」を入力することができる。
(図4の続き;図5)
MFP10は、図5のT80において、ユーザ端末100のユーザから、Onetime Token「T3」の入力を受け付けると、T82において、入力済みのOnetime Token「T3」とデバイスID「M1」とをXMPPサーバ300に送信する。
MFP10は、図5のT80において、ユーザ端末100のユーザから、Onetime Token「T3」の入力を受け付けると、T82において、入力済みのOnetime Token「T3」とデバイスID「M1」とをXMPPサーバ300に送信する。
XMPPサーバ300は、T82において、MFP10からOnetime Token「T3」とデバイスID「M1」とを受信すると、T84において、これらの情報をサービスサーバ200に転送する。
サービスサーバ200は、T84において、XMPPサーバ300からOnetime Token「T3」とデバイスID「M1」とを受信すると、Onetime Tokenの認証を実行する。具体的には、サービスサーバ200は、デバイスID「M1」とOnetime Token「T3」との組み合わせが、デバイステーブル240に記憶されているのか否かを判断する。本ケースでは、当該組み合わせが記憶済みであるので(図4のT72参照)、サービスサーバ200は、T86において、認証が成功したと判断する。この場合、サービスサーバ200は、T88において、デバイステーブル240を更新する。具体的には、サービスサーバ200は、Onetime Token「T3」に関連付けられている仮登録フラグを「YES」から「NO」に変更する。換言すると、サービスサーバ200において、端末ID「UT1」によって識別されるユーザ端末100が本登録される。
その後、サービスサーバ200は、メモリ234から、T84で受信済みのデバイスID「M1」に関連付けられている印刷データPD1(図4のT68参照)を特定する。そして、サービスサーバ200は、T90において、デバイスID「M1」と、特定済みの印刷データPD1と、を含む印刷送信指示をXMPPサーバ300に送信する。印刷送信指示は、印刷実行要求の送信をXMPPサーバ300に指示する信号である。
XMPPサーバ300は、T90において、サービスサーバ200から印刷送信指示を受信すると、T92において、確立済みのXMPP接続(図2参照)を利用して、印刷データPD1を含む印刷実行要求をMFP10に送信する。印刷実行要求は、印刷データPD1によって表わされる画像の印刷をMFP10に実行させるための要求である。
MFP10は、T92において、XMPPサーバ300から印刷実行要求を受信すると、T94において、印刷実行要求に含まれる印刷データPD1によって表わされる画像の印刷を実行する。
その後、ユーザ端末100のアプリ138は、T100において、ユーザから印刷実行操作を再び受け付ける。T100の処理は、選択される画像データが異なる点を除いて、図4のT60の処理と同様である。また、T102~T108の処理は、印刷実行指示に含まれる画像データが異なる点を除いて、図4のT62~T68の処理と同様である。
次いで、サービスサーバ200は、デバイステーブル240から、印刷実行指示に含まれるデバイスID「M1」に関連付けられている仮登録フラグを特定する。本ケースでは、仮登録フラグとして「NO」が記憶されているので(T88参照)、サービスサーバ200は、Onetime Tokenに関連する各種処理(即ち図4のT70~T74、及び、図5のT84~88の処理)を実行することなく、T110において、デバイスID「M1」と、印刷データPD2と、を含む印刷送信指示をXMPPサーバ300に送信する。T110~T114の処理は、印刷データPD2が利用される点を除いて、T90~T94の処理と同様である。
(ケースB;図6及び図7)
続いて、図6及び図7を参照して、ユーザ端末100を利用して、スキャン機能をMFP10に実行させるケースBを説明する。図6は、図3の続きの処理である。ユーザ端末100のユーザは、図6のT200において、スキャンすべき原稿をMFP10のスキャン実行部20に載置する。
続いて、図6及び図7を参照して、ユーザ端末100を利用して、スキャン機能をMFP10に実行させるケースBを説明する。図6は、図3の続きの処理である。ユーザ端末100のユーザは、図6のT200において、スキャンすべき原稿をMFP10のスキャン実行部20に載置する。
アプリ138は、T202において、ユーザからスキャン実行操作を受け付ける。スキャン実行操作は、スキャンを実行させるべきデバイスのデバイスID「M1」の選択を含む。この場合、アプリ138は、T204において、スキャン実行指示をサービスサーバ200に送信する。スキャン実行指示は、選択済みのデバイスID「M1」と、ユーザ端末100の端末ID「UT1」と、記憶済みのAccess Token「T2」(図3のT52参照)と、を含む。
サービスサーバ200は、T204において、ユーザ端末100からスキャン実行指示を受信すると、スキャン実行指示に含まれるAccess Token「T2」の認証を実行する。T206の処理は、図4のT64の処理と同様である。
さらに、サービスサーバ200は、デバイステーブル240から、スキャン実行指示に含まれるデバイスID「M1」に関連付けられている仮登録フラグを特定する。本ケースでは、仮登録フラグとして「YES」が記憶されているので(図3のT48参照)、サービスサーバ200は、T210~T216の処理を実行する。T210~T216の処理は、図4のT70~T76の処理と同様である。その後、図5のT80~T88と同様の処理が実行される。即ち、サービスサーバ200において、端末ID「UT1」によって識別されるユーザ端末100が本登録される。
(図6の続き;図7)
サービスサーバ200は、図7のT220において、デバイスID「M1」と、端末ID「UT1」と、を含むスキャン送信指示をXMPPサーバ300に送信する。スキャン送信指示は、スキャン実行要求の送信をXMPPサーバ300に指示する信号である。
サービスサーバ200は、図7のT220において、デバイスID「M1」と、端末ID「UT1」と、を含むスキャン送信指示をXMPPサーバ300に送信する。スキャン送信指示は、スキャン実行要求の送信をXMPPサーバ300に指示する信号である。
XMPPサーバ300は、T220において、サービスサーバ200から、スキャン送信指示を受信すると、T222において、確立済みのXMPP接続(図2参照)を利用して、端末ID「UT1」を含むスキャン実行要求をMFP10に送信する。スキャン実行要求は、スキャン実行部20に載置されている原稿(図6のT200参照)のスキャンをMFP10に実行させるための要求である。
MFP10は、T222において、XMPPサーバ300からスキャン実行要求を受信すると、T224において、スキャン実行部20に載置されている原稿のスキャンを実行して、スキャンデータSD1を生成する。そして、MFP10は、T226において、生成済みのスキャンデータSD1と、T222で受信済みのスキャン実行要求に含まれる端末ID「UT1」と、をXMPPサーバ300に送信する。
XMPPサーバ300は、T226において、MFP10から、スキャンデータSD1と端末ID「UT1」とを受信すると、T228において、これらの情報をサービスサーバ200に転送する。
サービスサーバ200は、T228において、XMPPサーバ300から、スキャンデータSD1と端末ID「UT1」とを受信すると、T230において、T228で受信済みの端末ID「UT1」によって識別されるユーザ端末100を送信先として、スキャンデータSD1を送信する。
ユーザ端末100のアプリ138は、T230において、サービスサーバ200からスキャンデータSD1を受信する。このために、ユーザは、図6のT200においてスキャン実行部20に載置された原稿を表わすスキャンデータSD1を取得することができる。
T240において、ユーザ端末100のユーザは、スキャンすべき原稿(T200の原稿と同じであってもよいし、異なっていてもよい)をMFP10のスキャン実行部20に載置する。その後、アプリ138は、T242において、ユーザからスキャン実行操作を再び受け付ける。T242~T246の処理は、図6のT202~T206の処理と同様である。
次いで、サービスサーバ200は、デバイステーブル240から、スキャン実行指示に含まれるデバイスID「M1」に関連付けられている仮登録フラグを特定する。本ケースでは、仮登録フラグとして「NO」が記憶されているので(図6で参照する図5のT88参照)、サービスサーバ200は、Onetime Tokenに関連する各種処理(即ち図6のT210~T214、及び、図6で参照する図5のT84~88の処理)を実行することなく、T250において、デバイスID「M1」と端末ID「UT1」とを含むスキャン送信指示をXMPPサーバ300に送信する。T250~T260の処理は、スキャンデータSD2が利用される点を除いて、T220~T230の処理と同様である。
(本実施例の効果)
このように、サービスサーバ200は、管理者端末50からユーザ端末100のメールアドレスMAを受信すると(図2のT22)、メールアドレスMAを送信先アドレスとして含むと共に、Activate Token「T1」を含む電子メールEMをユーザ端末100に送信する(T30)。ユーザ端末100は、サービスサーバ200から電子メールEMを受信して(T30)、Activate Token「T1」をサービスサーバ200に送信する(図3のT42)。サービスサーバ200は、ユーザ端末100からActivate Token「T1」を受信する場合(図3のT42)に、Onetime Token「T3」をユーザ端末100に送信する(図4のT74、図6のT214)。ユーザ端末100は、サービスサーバ200からOnetime Token「T3」を受信する場合に、Onetime Token「T3」を含む通知画面SC1を表示する(図4のT76)。Onetime Token「T3」がMFP10によって取得される場合(図5のT80)に、XMPPサーバ300は、MFP10からOnetime Token「T3」を受信し(T82)、印刷実行要求をMFP10に送信する(T92)。この結果、MFP10において印刷機能が実行される(T94)。このように、サービスサーバ200及びXMPPサーバ300は、管理者端末50から受信されるユーザ端末100のメールアドレスMAを利用して、印刷機能をMFP10に実行させることができる。また、ユーザ端末100は、自身のメールアドレスMAが管理者端末50からサービスサーバ200に送信される場合に、サービスサーバ200及びXMPPサーバ300を利用して、印刷機能をMFP10に実行させることができる。このように、本実施例によると、MFP10の管理者は、ユーザ端末100のユーザにMFP10を共有させることができる。
このように、サービスサーバ200は、管理者端末50からユーザ端末100のメールアドレスMAを受信すると(図2のT22)、メールアドレスMAを送信先アドレスとして含むと共に、Activate Token「T1」を含む電子メールEMをユーザ端末100に送信する(T30)。ユーザ端末100は、サービスサーバ200から電子メールEMを受信して(T30)、Activate Token「T1」をサービスサーバ200に送信する(図3のT42)。サービスサーバ200は、ユーザ端末100からActivate Token「T1」を受信する場合(図3のT42)に、Onetime Token「T3」をユーザ端末100に送信する(図4のT74、図6のT214)。ユーザ端末100は、サービスサーバ200からOnetime Token「T3」を受信する場合に、Onetime Token「T3」を含む通知画面SC1を表示する(図4のT76)。Onetime Token「T3」がMFP10によって取得される場合(図5のT80)に、XMPPサーバ300は、MFP10からOnetime Token「T3」を受信し(T82)、印刷実行要求をMFP10に送信する(T92)。この結果、MFP10において印刷機能が実行される(T94)。このように、サービスサーバ200及びXMPPサーバ300は、管理者端末50から受信されるユーザ端末100のメールアドレスMAを利用して、印刷機能をMFP10に実行させることができる。また、ユーザ端末100は、自身のメールアドレスMAが管理者端末50からサービスサーバ200に送信される場合に、サービスサーバ200及びXMPPサーバ300を利用して、印刷機能をMFP10に実行させることができる。このように、本実施例によると、MFP10の管理者は、ユーザ端末100のユーザにMFP10を共有させることができる。
ここで、Onetime Tokenに関連する各種処理(即ち図4のT70~T74、及び、図5のT84~88の処理)が実行されない(即ちActivate Tokenの認証が成功したら直ちに本登録される)比較例を想定する。さらに、管理者が、図2のT20において、ユーザ端末100のメールアドレスMAを誤って入力することに起因して、ユーザ端末100とは異なる端末に電子メールEM(T30参照)が送信される状況を想定する。比較例では、このような状況において、当該異なる端末のユーザによって印刷実行操作が実行されると、MFP10において印刷が実行され得る。一方、本実施例では、端末が仮登録されている状態で印刷実行操作が実行されても、Onetime TokenがMFP10に入力されないと、MFP10において印刷が実行されない。上記の異なる端末のユーザは、通常、MFP10の近くに行くことができない。このため、管理者がメールアドレスを誤って入力したとしても、上記の異なる端末のユーザによって印刷実行操作が実行されることに起因してMFP10において印刷が実行されるという事象を抑制することができる。即ち、管理者がMFP10を共有させることを望むユーザに対して、MFP10を適切に共有させることができる。
また、Onetime Token「T3」は、ユーザ端末100のユーザがMFP10にOnetime Token「T3」を入力する場合(図5のT80参照)に、MFP10からXMPPサーバ300を介して、サービスサーバ200に送信される。従って、サービスサーバ200においてOnetime Token「T3」の認証が成功する(即ちユーザ端末100が本登録される)ことは、ユーザ端末100のユーザがMFP10の近くに行くことができるユーザであることを意味する。即ち、ユーザ端末100が本登録される状況では、管理者がMFP10を共有させることを望むユーザに適切に共有させることができたことを意味する。従って、サービスサーバ200は、本登録されているユーザ端末100から印刷実行指示を受信する場合(図5のT102)に、Onetime Token「T3」がMFP10に入力されなくても、MFP10に印刷を実行させる(T114)。このために、サービスサーバ200は、本登録されているユーザ端末100のユーザに印刷物を迅速に提供することができる。また、当該ユーザが実行すべき操作(即ちOnetime Token「T3」のMFP10への入力)が減るので、ユーザの利便性を向上させることができる。
(対応関係)
管理者端末50、ユーザ端末100、MFP10が、それぞれ、「第1の端末装置」、「第2の端末装置」、「機能実行装置」の一例である。サービスサーバ200とXMPPサーバ300との組み合わせが、「サーバ」の一例であり、サービスサーバ200、XMPPサーバ300が、それぞれ、「第1のサーバ」、「第2のサーバ」の一例である。ユーザ端末100の表示部114が、「出力部」の一例である。メールアドレスMAが、「アドレス情報」の一例である。Activate Token「T1」、Onetime Token「T3」、Access Token「T2」が、それぞれ、「第1の認証情報」、「第2の認証情報(及び関連情報)」、「第3の認証情報」の一例である。図2のT36のURLを選択する操作が、「送信操作」の一例である。ケースAでは、印刷機能が「第1(及び第2)の機能」の一例であり、ケースBでは、スキャン機能が「第1(及び第2)の機能」の一例である。図4のT60の印刷実行操作(及び図6のT202のスキャン実行操作)が、「第1の機能実行操作」の一例である。図5のT100の印刷実行操作(及び図7のT242のスキャン実行操作)が、「第2の機能実行操作」の一例である。図4のT62の印刷実行指示(及び図6のT204のスキャン実行指示)が、「第1の機能実行指示」の一例である。図5のT102の印刷実行指示(及び図7のT244のスキャン実行指示)が、「第2の機能実行指示」の一例である。図5のT90の印刷送信指示(及び図7のT220のスキャン送信指示)が、「要求送信指示」の一例である。図5のT92の印刷実行要求(及び図7のT222のスキャン実行要求)が、「第1の機能実行要求」の一例である。図5のT112の印刷実行要求(及び図7のT252のスキャン実行要求)が、「第2の機能実行要求」の一例である。
管理者端末50、ユーザ端末100、MFP10が、それぞれ、「第1の端末装置」、「第2の端末装置」、「機能実行装置」の一例である。サービスサーバ200とXMPPサーバ300との組み合わせが、「サーバ」の一例であり、サービスサーバ200、XMPPサーバ300が、それぞれ、「第1のサーバ」、「第2のサーバ」の一例である。ユーザ端末100の表示部114が、「出力部」の一例である。メールアドレスMAが、「アドレス情報」の一例である。Activate Token「T1」、Onetime Token「T3」、Access Token「T2」が、それぞれ、「第1の認証情報」、「第2の認証情報(及び関連情報)」、「第3の認証情報」の一例である。図2のT36のURLを選択する操作が、「送信操作」の一例である。ケースAでは、印刷機能が「第1(及び第2)の機能」の一例であり、ケースBでは、スキャン機能が「第1(及び第2)の機能」の一例である。図4のT60の印刷実行操作(及び図6のT202のスキャン実行操作)が、「第1の機能実行操作」の一例である。図5のT100の印刷実行操作(及び図7のT242のスキャン実行操作)が、「第2の機能実行操作」の一例である。図4のT62の印刷実行指示(及び図6のT204のスキャン実行指示)が、「第1の機能実行指示」の一例である。図5のT102の印刷実行指示(及び図7のT244のスキャン実行指示)が、「第2の機能実行指示」の一例である。図5のT90の印刷送信指示(及び図7のT220のスキャン送信指示)が、「要求送信指示」の一例である。図5のT92の印刷実行要求(及び図7のT222のスキャン実行要求)が、「第1の機能実行要求」の一例である。図5のT112の印刷実行要求(及び図7のT252のスキャン実行要求)が、「第2の機能実行要求」の一例である。
図2のT22の処理、T30の処理が、それぞれ、「サーバ」の「アドレス情報受信部」、「第1の認証情報送信部」によって実行される処理の一例である。図3のT42の処理、T50の処理が、それぞれ、「サーバ」の「第1の認証情報受信部」、「第3の認証情報送信部」によって実行される処理の一例である。図4のT62の処理(及び図6のT204の処理)が、「サーバ」の「第1の指示受信部」によって実行される処理の一例である。図4のT74の処理(及び図6のT214の処理)が、「サーバ」の「第2の認証情報送信部」によって実行される処理の一例である。図5のT82の処理が、「サーバ」の「第2の認証情報受信部」によって実行される処理の一例である。図5のT92の処理(及び図7のT222の処理)が、「サーバ」の「第1の要求送信部」によって実行される処理の一例である。図5のT102の処理(及び図7のT244の処理)が、「サーバ」の「第2の指示受信部」によって実行される処理の一例である。図5のT112の処理(及び図7のT252の処理)が、「第2の要求送信部」によって実行される処理の一例である。
図5のT84の処理が、「第1のサーバ」の「第3の認証情報受信部」によって実行される処理の一例である。図5のT90の処理(及び図7のT220の処理)が、「第1のサーバ」の「要求送信指示送信部」によって実行される処理の一例である。図5のT84の処理が、「第2のサーバ」の「第4の認証情報送信部」によって実行される処理の一例である。図5のT90の処理(及び図7のT220の処理)が、「第2のサーバ」の「要求送信指示受信部」によって実行される処理の一例である。
図3のT42の処理、T50の処理が、それぞれ、「アプリケーションプログラム」の「第1の認証情報送信部」、「第2の認証情報受信部」によって実行される処理の一例である。図4のT62の処理(及び図6のT204の処理)が、「アプリケーションプログラム」の「第1の指示送信部」によって実行される処理の一例である。図4のT74の処理(及び図6のT214の処理)が、「アプリケーションプログラム」の「第1の認証情報受信部」によって実行される処理の一例である。図4のT76の処理(及び図6のT216の処理)が、「アプリケーションプログラム」の「出力制御部」によって実行される処理の一例である。図5のT102の処理(及び図7のT244の処理)が、「アプリケーションプログラム」の「第2の指示送信部」によって実行される処理の一例である。
以上、本明細書が開示する技術の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)「第1(及び第2)の機能」は、上記の実施例の印刷機能及びスキャン機能に限定されず、例えば、FAX機能等であってもよい。
(変形例2)管理者端末50は、図2のT22において、ユーザ端末100の電話番号を含む共有設定指示をサービスサーバ200に送信してもよい。この場合、サービスサーバ200は、T30において、電子メールEMに代えて、上記の電話番号を送信先とするSMS(Short Message Serviceの略)を送信してもよい。本変形例では、ユーザ端末100の電話番号が、「アドレス情報」の一例である。
(変形例3)アプリ138は、図4のT74において、サービスサーバ200からOnetime Token「T3」を受信する場合に、Onetime Token「T3」をNFC(Near Field Communicationの略)I/Fに供給してもよい。さらに、アプリ138は、ユーザ端末100をMFP10に近づけることをユーザに促すメッセージを表示してもよい。この場合、ユーザ端末100がMFP10に近づけられることによって、ユーザ端末100とMFP10との間にNFC接続が確立される。そして、MFP10は、確立済みのNFC接続を利用して、ユーザ端末100からOnetime Token「T3」を取得する。本変形例では、NFCI/Fが、「出力部」の一例であり、Onetime Token「T3」のNFCI/Fへの供給が、「アプリケーションプログラム」の「出力制御部」によって実行される処理の一例である。また、別の変形例では、MFP10は、ユーザ端末100がMFP10に近づけられることによって、BT(Bluetooth(登録商標)の略)I/F、Wi-Fi(登録商標)I/F等を介して、ユーザ端末100からOnetime Token「T3」を取得してもよい。本変形例では、BTI/F、Wi-FiI/F等のI/Fが、「出力部」の一例であり、Onetime Token「T3」の各種I/Fへの供給が、「アプリケーションプログラム」の「出力制御部」によって実行される処理の一例である。また、別の変形例では、アプリ138は、図4のT74において、サービスサーバ200からOnetime Token「T3」を受信する場合に、Onetime Token「T3」をコード化することによって得られるコード画像(例えばバーコード、QRコード(登録商標)等)を表示してもよい。この場合、MFP10は、ユーザ端末100に表示されたコード画像を読み取って、当該コード画像がデコードされることによって、Onetime Token「T3」を取得してもよい。本変形例では、コード画像が、「関連情報」の一例であり、ユーザ端末100の表示部114が、「出力部」の一例である。また、コード画像の表示が、「アプリケーションプログラム」の「出力制御部」によって実行される処理の一例である。
(変形例4)サービスサーバ200は、図3のT46において、Access Token「T2」を生成すると共に、Onetime Token「T3」を生成してもよい。この場合、サービスサーバ200は、T50において、Access Token「T2」と、Onetime Token「T3」と、の双方をアプリ138に送信してもよい。一般的に言うと、「サーバ」の「第2の認証情報送信部」が「第2の認証情報」を「第2の端末装置」に送信するタイミングは、上記の実施例の形態に限定されない。
(変形例5)上記の変形例4の状況において、ユーザは、MFP10のスキャン実行部20に原稿を載置(図6のT200参照)した後に、Onetime Token「T3」の入力を含むスキャン実行操作をMFP10に実行してもよい。この場合、原稿のスキャンが実行される前に、Onetime Token「T3」がXMPPサーバ300を介してサービスサーバ200に送信される(図6で参照する図5のT80~T84参照)。そして、サービスサーバ200において、Onetime Token「T3」の認証が成功する場合(図5のT86参照)に、図5のT88の処理、及び、図7のT220~T230と同様の処理が実行される。本変形例では、「サーバ」の「第1の指示受信部」を省略可能であり、「アプリケーションプログラム」の「第1の指示送信部」を省略可能である。
(変形例6)3個のToken(即ちActivate Token、Access Token、及びOnetime Token)は、同一のTokenであってもよいし、3個のTokenのうちの2個のTokenが同一のTokenであり、残りの1個のTokenのみが異なっていてもよい。一般的に言うと、「第1の認証情報」と「第2の認証情報」と「第3の認証情報」とは、同一の認証情報であってもよいし、3個の認証情報のうちの2個が同一の認証情報であってもよい。特に、「第3の認証情報」が「第1の認証情報」と同一の認証情報である本変形例では、図4のT46~T52の処理を省略可能である。このような変形例では、「サーバ」の「第3の認証情報送信部」を省略可能であり、「アプリケーションプログラム」の「第2の認証情報受信部」を省略可能である。
(変形例7)図5のT92において、印刷実行要求がMFP10に送信された後に、アプリ138からスキャン実行指示(図6のT204参照)が受信される場合に、サービスサーバ200は、Onetime Token「T3」をアプリ138に送信しなくてもよい。本変形例では、印刷機能、スキャン機能が、それぞれ、「第1の機能」、「第2の機能」の一例である。一般的に言うと、「第1の機能」と「第2の機能」とは、同じ機能であってもよいし、異なる機能であってもよい。
(変形例8)サービスサーバ200は、仮登録フラグを記憶しなくてもよい。この場合、サービスサーバ200は、アプリ138から印刷実行指示が受信される毎に、Onetime Tokenを生成してアプリ138に送信してもよい。そして、XMPPサーバ300は、MFP10から当該Onetime Tokenが受信される場合に、印刷実行要求をMFP10に送信してもよい。本変形例では、「サーバ」の「第2の指示受信部」及び「第2の要求送信部」を省略可能であり、「アプリケーションプログラム」の「第2の指示送信部」を省略可能である。
(変形例9)サービスサーバ200は、デバイステーブル240に代えて、仮登録テーブルと本登録テーブルとの2個のテーブルを記憶してもよい。本変形例では、図2のT26において、デバイスID「M1」とActivate Token「T1」とが関連付けて仮登録テーブルに記憶される。また、図3のT48において、各種情報が仮登録テーブルに記憶される。そして、図5のT88の処理に代えて、各種情報を本登録テーブルに記憶する処理が実行される。
(変形例10)上記の実施例では、「サーバ」は、サービスサーバ200とXMPPサーバ300とによって構成されていたが、変形例では、「サーバ」は、単一のサーバによって構成されていてもよい。一般的に言うと、「サーバ」は、「第1のサーバ」と「第2のサーバ」とを備えなくてもよい。
(変形例11)サービスサーバ200は、図2のT30において、本文にActivate Token「T1」を含む電子メールを送信してもよい。この場合、アプリ138は、当該電子メールを見たユーザによって手動で起動され他後に、Activate Token「T1」が手動で入力されることによって、Activate Token「T1」をサービスサーバ200に送信してもよい。
(変形例12)上記の各実施例では、図2~図7の処理がソフトウェア(例えばプログラム36,236、アプリ138、又はメーラ140)によって実行されるが、これらの各処理の少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
本明細書または図面に説明した技術要素は、単独で、あるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:通信システム、6:インターネット、10:MFP、12,112:操作部、14,114:表示部、16,116,216:通信I/F、18:印刷実行部、20:スキャン実行部、30,130,230:制御部、32,132,232:CPU、34,134,234:メモリ、36,236:プログラム、50:管理者端末、100:ユーザ端末、136:OSプログラム、138:印刷アプリケーション、238:アカウントテーブル、240:デバイステーブル、300:XMPPサーバ
Claims (15)
- サーバであって、
第1の端末装置から、前記第1の端末装置とは異なる第2の端末装置のアドレス情報を受信するアドレス情報受信部と、
前記第1の端末装置から前記アドレス情報が受信される場合に、前記アドレス情報を利用して、第1の認証情報を前記第2の端末装置に送信する第1の認証情報送信部と、
前記第1の認証情報が前記第2の端末装置に送信された後に、前記第2の端末装置において、前記第1の認証情報を前記サーバに送信するための送信操作が実行される場合に、前記第2の端末装置から前記第1の認証情報を受信する第1の認証情報受信部と、
前記第2の端末装置から前記第1の認証情報が受信された後に、第2の認証情報を前記第2の端末装置に送信する第2の認証情報送信部と、
前記第2の認証情報が前記第2の端末装置に送信された後に、前記第2の認証情報が機能実行装置によって取得される場合に、前記機能実行装置から前記第2の認証情報を受信する第2の認証情報受信部と、
前記機能実行装置から前記第2の認証情報が受信される場合に、第1の機能を前記機能実行装置に実行させるための第1の機能実行要求を前記機能実行装置に送信する第1の要求送信部と、
を備える、サーバ。 - 前記サーバは、さらに、
前記第2の端末装置から前記第1の認証情報が受信された後に、前記第2の端末装置において、前記第1の機能を前記機能実行装置に実行させるための第1の機能実行操作が実行される場合に、前記第2の端末装置から第1の機能実行指示を受信する第1の指示受信部を備え、
前記第2の認証情報送信部は、前記第2の端末装置から前記第1の機能実行指示が受信される場合に、前記第2の認証情報を前記第2の端末装置に送信する、請求項1に記載のサーバ。 - 前記サーバは、さらに、
前記第2の端末装置から前記第1の認証情報が受信される場合に、第3の認証情報を前記第2の端末装置に送信する第3の認証情報送信部を備え、
前記第1の指示受信部は、前記第3の認証情報が前記第2の端末装置に送信された後に、前記第2の端末装置において前記第1の機能実行操作が実行される場合に、前記第2の端末装置から前記第1の機能実行指示と前記第3の認証情報とを受信し、
前記第2の認証情報送信部は、前記第2の端末装置から前記第1の機能実行指示と前記第3の認証情報とが受信される場合に、前記第2の認証情報を前記第2の端末装置に送信する、請求項2に記載のサーバ。 - 前記サーバは、さらに、
前記機能実行装置から前記第2の認証情報が受信されることに応じて、前記第1の機能実行要求が前記機能実行装置に送信された後に、前記第2の端末装置において、第2の機能を前記機能実行装置に実行させるための第2の機能実行操作が実行される場合に、前記第2の端末装置から第2の機能実行指示を受信する第2の指示受信部と、
前記第2の端末装置から前記第2の機能実行指示が受信される場合に、前記第2の認証情報を前記第2の端末装置に送信することなく、前記第2の機能を前記機能実行装置に実行させるための第2の機能実行要求を前記機能実行装置に送信する第2の要求送信部と、
を備える、請求項2又は3に記載のサーバ。 - 前記アドレス情報は、前記第2の端末装置のメールアドレスであり、
前記第1の認証情報送信部は、前記メールアドレスである前記アドレス情報を送信先アドレスとして含む電子メールであって、前記第1の認証情報を含む前記電子メールを前記第2の端末装置に送信することによって、前記第1の認証情報を前記第2の端末装置に送信する、請求項1から4のいずれか一項に記載のサーバ。 - 前記サーバは、第1のサーバ及び第2のサーバを備え、
前記第1のサーバは、前記アドレス情報受信部と、前記第1の認証情報送信部と、前記第1の認証情報受信部と、前記第2の認証情報送信部と、を備え、
前記第2のサーバは、前記第2の認証情報受信部と、前記第1の要求送信部と、を備え、
前記第2のサーバは、さらに、前記機能実行装置から前記第2の認証情報が受信される場合に、前記第2の認証情報を前記第1のサーバに送信する第4の認証情報送信部を備え、
前記第1のサーバは、さらに、
前記第2のサーバから、前記第2の認証情報を受信する第3の認証情報受信部と、
前記第2のサーバから前記第2の認証情報が受信される場合に、前記機能実行装置への前記第1の機能実行要求の送信を前記第2のサーバに指示する要求送信指示を前記第2のサーバに送信する要求送信指示送信部と、
を備え、
前記第2のサーバは、さらに、前記第1のサーバから、前記要求送信指示を受信する要求送信指示受信部を備え、
前記第2のサーバの前記第1の要求送信部は、前記第1のサーバから前記要求送信指示が受信される場合に、前記第1の機能実行要求を前記機能実行装置に送信する、請求項1から5のいずれか一項に記載のサーバ。 - 前記第1の機能は、印刷機能である、請求項1から6のいずれか一項に記載のサーバ。
- 前記第1の機能は、スキャン機能である、請求項1から6のいずれか一項に記載のサーバ。
- サーバのためのコンピュータプログラムであって、
前記コンピュータプログラムは、前記サーバのコンピュータを、以下の各部、即ち、
第1の端末装置から、前記第1の端末装置とは異なる第2の端末装置のアドレス情報を受信するアドレス情報受信部と、
前記第1の端末装置から前記アドレス情報が受信される場合に、前記アドレス情報を利用して、第1の認証情報を前記第2の端末装置に送信する第1の認証情報送信部と、
前記第1の認証情報が前記第2の端末装置に送信された後に、前記第2の端末装置において、前記第1の認証情報を前記サーバに送信するための送信操作が実行される場合に、前記第2の端末装置から前記第1の認証情報を受信する第1の認証情報受信部と、
前記第2の端末装置から前記第1の認証情報が受信された後に、第2の認証情報を前記第2の端末装置に送信する第2の認証情報送信部と、
前記第2の認証情報が前記第2の端末装置に送信された後に、前記第2の認証情報が機能実行装置によって取得される場合に、前記機能実行装置から前記第2の認証情報を受信する第2の認証情報受信部と、
前記機能実行装置から前記第2の認証情報が受信される場合に、第1の機能を前記機能実行装置に実行させるための第1の機能実行要求を前記機能実行装置に送信する第1の要求送信部と、
として機能させる、コンピュータプログラム。 - 第2の端末装置のためのアプリケーションプログラムであって、
前記アプリケーションプログラムは、前記第2の端末装置のコンピュータを、以下の各部、即ち、
前記第2の端末装置において、第1の認証情報をサーバに送信するための送信操作が実行される場合に、前記第1の認証情報を前記サーバに送信する第1の認証情報送信部であって、前記サーバにおいて、前記第2の端末装置とは異なる第1の端末装置から前記第2の端末装置のアドレス情報が受信される場合に、前記アドレス情報が利用されて、前記第1の認証情報が前記サーバから前記第2の端末装置に送信される、前記第1の認証情報送信部と、
前記第1の認証情報が前記サーバに送信された後に、前記サーバから第2の認証情報を受信する第1の認証情報受信部と、
前記サーバから前記第2の認証情報が受信される場合に、前記第2の認証情報に関連する関連情報を出力部に出力させる出力制御部であって、前記関連情報が出力されることに応じて前記第2の認証情報が機能実行装置によって取得される場合に、前記機能実行装置から前記サーバに前記第2の認証情報が送信され、第1の機能を前記機能実行装置に実行させるための第1の機能実行要求が前記サーバから前記機能実行装置に送信される、前記出力制御部と、
として機能させる、アプリケーションプログラム。 - 前記アプリケーションプログラムは、前記コンピュータを、さらに、
前記第1の認証情報が前記サーバに送信された後に、前記第2の端末装置において、前記第1の機能を前記機能実行装置に実行させるための第1の機能実行操作が実行される場合に、第1の機能実行指示を前記サーバに送信する第1の指示送信部として機能させ、
前記第1の認証情報受信部は、前記第1の機能実行指示が前記サーバに送信される場合に、前記サーバから前記第2の認証情報を受信する、請求項10に記載のアプリケーションプログラム。 - 前記アプリケーションプログラムは、前記コンピュータを、さらに、
前記第1の認証情報が前記サーバに送信される場合に、前記サーバから第3の認証情報を受信する第2の認証情報受信部として機能させ、
前記第1の指示送信部は、前記サーバから前記第3の認証情報が受信された後に、前記第2の端末装置において前記第1の機能実行操作が実行される場合に、前記第1の機能実行指示と前記第3の認証情報とを前記サーバに送信し、
前記第1の認証情報受信部は、前記第1の機能実行指示と前記第3の認証情報とが前記サーバに送信される場合に、前記サーバから前記第2の認証情報を受信する、請求項11に記載のアプリケーションプログラム。 - 前記アプリケーションプログラムは、前記コンピュータを、さらに、
前記機能実行装置から前記サーバに前記第2の認証情報が送信されることに応じて、前記第1の機能実行要求が前記サーバから前記機能実行装置に送信された後に、前記第2の端末装置において、第2の機能を前記機能実行装置に実行させるための第2の機能実行操作が実行される場合に、第2の機能実行指示を前記サーバに送信する第2の指示送信部であって、前記第2の機能実行指示が前記サーバに送信される場合に、前記サーバにおいて、前記第2の認証情報が送信されることなく、前記第2の機能を前記機能実行装置に実行させるための第2の機能実行要求が前記機能実行装置に送信される、前記第2の指示送信部として機能させる、請求項11又は12に記載のアプリケーションプログラム。 - 前記第1の機能は、印刷機能である、請求項10から13のいずれか一項に記載のアプリケーションプログラム。
- 前記第1の機能は、スキャン機能である、請求項10から13のいずれか一項に記載のアプリケーションプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021030753A JP2022131686A (ja) | 2021-02-26 | 2021-02-26 | サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021030753A JP2022131686A (ja) | 2021-02-26 | 2021-02-26 | サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022131686A true JP2022131686A (ja) | 2022-09-07 |
Family
ID=83153398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021030753A Pending JP2022131686A (ja) | 2021-02-26 | 2021-02-26 | サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022131686A (ja) |
-
2021
- 2021-02-26 JP JP2021030753A patent/JP2022131686A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6152767B2 (ja) | 機能実行機器と可搬型デバイス | |
US10097377B2 (en) | System and method of sharing contents using messenger | |
JP2019036062A (ja) | 通信装置 | |
US20200236107A1 (en) | Shared terminal that authenticates a user based on a terminal identifier | |
JP6149658B2 (ja) | 機能実行機器 | |
US20210105375A1 (en) | Information processing system, information processing method, and information processing apparatus | |
US20150205510A1 (en) | Information processing system, terminal apparatus, and control method for terminal apparatus | |
US9462063B2 (en) | Network device search system that allows information processing terminal to identify network device | |
JP2022131686A (ja) | サーバ、サーバのためのコンピュータプログラム、及び、端末装置のためのアプリケーションプログラム | |
JP2015069560A (ja) | 機能実行機器と可搬型デバイス | |
US20230008310A1 (en) | Communication device, non-transitory computer-readable recording medium storing computer-readable instructions for communication device, non-transitory computer-readable recording medium storing computer-readable instructions for server, and server | |
US11704079B2 (en) | Output system, information processing system, including circuitry to generate a character string to perform authentication for a user, and authentication method | |
US11762612B2 (en) | Information processing apparatus, information processing system, and information processing method for managing authentication information across multiple information processing devices, information processing apparatuses, and information processing systems | |
US20220308809A1 (en) | Information processing apparatus, information processing system, and non-transitory computer readable medium | |
JP7180471B2 (ja) | 端末装置のためのコンピュータプログラム及び端末装置 | |
JP2019036801A (ja) | 画像処理装置 | |
JP7176203B2 (ja) | 端末装置のためのコンピュータプログラムと端末装置 | |
JP7484340B2 (ja) | 端末装置のためのコンピュータプログラムと端末装置と通信装置 | |
JP6361785B2 (ja) | 機能実行機器と可搬型デバイス | |
US11656817B2 (en) | System and method for transmitting electronic data associated with a user identified based on source identification information | |
JP2021121900A (ja) | 通信システム、サーバ、及び、サーバのためのコンピュータプログラム | |
US11516368B2 (en) | Information processing device, image forming apparatus, control method thereof, and storage medium for sending job information | |
GB2486629A (en) | Method for printing an electronic document from a mobile device on a network printer. | |
JP2022085626A (ja) | 通信装置及び通信装置のためのコンピュータプログラム | |
JP2024065336A (ja) | 端末装置及び端末装置のための第1のコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240216 |