(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024065336
(43)【公開日】2024-05-15
(54)【発明の名称】端末装置及び端末装置のための第1のコンピュータプログラム
(51)【国際特許分類】
H04N 1/00 20060101AFI20240508BHJP
G06F 3/12 20060101ALI20240508BHJP
G06F 21/33 20130101ALI20240508BHJP
【FI】
H04N1/00 C
G06F3/12 329
G06F3/12 322
G06F3/12 388
G06F21/33
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022174154
(22)【出願日】2022-10-31
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】山本 亮
【テーマコード(参考)】
5C062
【Fターム(参考)】
5C062AA02
5C062AA05
5C062AA13
5C062AA29
5C062AB20
5C062AB22
5C062AB23
5C062AB38
5C062AB42
5C062AC02
5C062AC04
5C062AC05
5C062AC22
5C062AC34
5C062AE07
5C062AE15
5C062AF02
5C062AF12
(57)【要約】
【課題】ユーザから2回の承諾を得るための技術を提供する。
【解決手段】 端末装置は、インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を第1のコンピュータプログラムに従って実行する。特定のサービスは、端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、利用開始処理は、第1のコンピュータプログラムを利用した特定のサーバへのアクセスの承諾を求める第1の画面を表示部に表示させる第1の表示処理と、利用開始処理が完了するまでの間に、通信装置に記憶されている第2のコンピュータプログラムを利用した特定のサーバへのアクセスの承諾を求める第2の画面を表示部に表示させる第2の表示処理と、を含む。
【選択図】
図3
【特許請求の範囲】
【請求項1】
端末装置であって、
第1のコンピュータプログラムを記憶するメモリと、
表示部と、
インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を前記第1のコンピュータプログラムに従って実行する処理実行部であって、
前記特定のサービスは、前記端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、
前記利用開始処理は、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第1の画面を前記表示部に表示させる第1の表示処理と、
前記利用開始処理が完了するまでの間に、前記通信装置に記憶されている第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第2の画面を前記表示部に表示させる第2の表示処理と、
を含み、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第1の指示が、前記第1の画面に従って前記端末装置に入力され、かつ、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第2の指示が、前記第2の画面に従って前記端末装置に入力される場合に、前記利用開始処理が完了する、前記処理実行部と、
前記第1の指示が前記端末装置に入力される場合に、前記第1の指示が前記端末装置に入力されたことを示す第1の通知を前記特定のサーバに送信する第1の送信部と、
前記第2の指示が前記端末装置に入力される場合に、前記第2の指示が前記端末装置に入力されたことを示す第2の通知を前記特定のサーバに送信する第2の送信部と、
を備える、端末装置。
【請求項2】
前記利用開始処理は、さらに、
前記第1の指示が入力される場合に、前記特定のサーバから認証情報を受信する受信処理を含み、
前記端末装置は、さらに、
前記特定のサーバから前記認証情報が受信される場合に、前記認証情報を外部に出力する出力部を備え、
前記認証情報は、前記特定のサーバが前記通信装置を認証するための情報であり、
前記端末装置によって出力された前記認証情報は、前記通信装置に入力される、請求項1に記載の端末装置。
【請求項3】
前記第2のコンピュータプログラムは、前記通信装置に入力された前記認証情報を前記特定のサーバに送信する機能を有し、
前記特定のサーバは、前記通信装置から受信した前記認証情報を利用した認証が成功する場合に、前記通信装置を識別する情報を前記特定のサーバに登録する、請求項2に記載の端末装置。
【請求項4】
前記メモリは、さらに、前記第1のコンピュータプログラムとは異なる第3のコンピュータプログラムを記憶し、
前記出力部は、前記第3のコンピュータプログラムに従って、前記認証情報を前記通信装置に送信することによって、前記認証情報を外部に出力する、請求項2に記載の端末装置。
【請求項5】
前記出力部は、前記認証情報を複数個の前記通信装置に送信する、請求項4に記載の端末装置。
【請求項6】
前記利用開始処理は、さらに、
前記利用開始処理が完了するまでの間に、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られているのか否かを判断する判断処理を含み、
前記判断処理において、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られていないと判断される場合に、前記第2の表示処理が実行され、
前記判断処理において、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られていると判断される場合に、前記第2の表示処理は実行されない、請求項1から5のいずれか一項に記載の端末装置。
【請求項7】
前記第1の指示は、前記第1の画面内の第1のボタンを選択することであり、
前記第2の指示は、前記第2の画面内の第2のボタンを選択することである、請求項1から5のいずれか一項に記載の端末装置。
【請求項8】
前記通信装置は、印刷機能を有し、
前記特定のサービスは、前記端末装置から前記通信装置への印刷データの送信を仲介するサービスであり、
前記第2のコンピュータプログラムは、前記第1の通知及び前記第2の通知が前記特定のサーバに送信された後に、前記特定のサーバから前記印刷データを受信する機能を有する、請求項1から5のいずれか一項に記載の端末装置。
【請求項9】
端末装置のための第1のコンピュータプログラムであって、
前記端末装置は、
表示部と、
コンピュータと、
を備え、
前記第1のコンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を実行する処理実行部であって、
前記特定のサービスは、前記端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、
前記利用開始処理は、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第1の画面を前記表示部に表示させる第1の表示処理と、
前記利用開始処理が完了するまでの間に、前記通信装置に記憶されている第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第2の画面を前記表示部に表示させる第2の表示処理と、
を含み、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第1の指示が、前記第1の画面に従って前記端末装置に入力され、かつ、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第2の指示が、前記第2の画面に従って前記端末装置に入力される場合に、前記利用開始処理が完了する、前記処理実行部と、
前記第1の指示が前記端末装置に入力される場合に、前記第1の指示が前記端末装置に入力されたことを示す第1の通知を前記特定のサーバに送信する第1の送信部と、
前記第2の指示が前記端末装置に入力される場合に、前記第2の指示が前記端末装置に入力されたことを示す第2の通知を前記特定のサーバに送信する第2の送信部と、
として機能する、第1のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、サービスを提供するサーバと通信する端末装置に関する。
【背景技術】
【0002】
特許文献1には、プリンタに関するサービスを提供するサーバが開示されている。ユーザは、プリンタとは異なるPC等の端末装置を利用してサービスを契約する。サービスの契約では、端末装置は、アカウント作成等のための第1の通信をサーバと実行し、プリンタは、シリアル番号の登録等のための第2の通信をサーバと実行する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
第1の通信は、端末装置に記憶されている第1のコンピュータプログラムによって実行され、第2の通信は、プリンタに記憶されている第2のコンピュータプログラムによって実行される。ここで、各コンピュータプログラムが利用される前に、各コンピュータプログラムの利用についてユーザに承諾を求めることが想定される。これは、ユーザの承諾が無い状態で、各コンピュータプログラムが利用されると、ユーザが不安に感じ得るからである。一方、2回の承諾のうちの片方の承諾が得られない状態では、ユーザはサービスを受けられない。本明細書では、ユーザから2回の承諾を得るための技術を提供する。
【課題を解決するための手段】
【0005】
本明細書が開示する端末装置は、第1のコンピュータプログラムを記憶するメモリと、表示部と、インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を前記第1のコンピュータプログラムに従って実行する処理実行部であって、前記特定のサービスは、前記端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、前記利用開始処理は、前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第1の画面を前記表示部に表示させる第1の表示処理と、前記利用開始処理が完了するまでの間に、前記通信装置に記憶されている第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第2の画面を前記表示部に表示させる第2の表示処理と、を含み、前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第1の指示が、前記第1の画面に従って前記端末装置に入力され、かつ、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第2の指示が、前記第2の画面に従って前記端末装置に入力される場合に、前記利用開始処理が完了する、前記処理実行部と、前記第1の指示が前記端末装置に入力される場合に、前記第1の指示が前記端末装置に入力されたことを示す第1の通知を前記特定のサーバに送信する第1の送信部と、前記第2の指示が前記端末装置に入力される場合に、前記第2の指示が前記端末装置に入力されたことを示す第2の通知を前記特定のサーバに送信する第2の送信部と、を備える。
【0006】
上記の構成によれば、第1のコンピュータプログラムによって実行される利用開始処理の中で、第1のコンピュータプログラムを利用した特定のサーバへのアクセスの承諾だけでなく、端末装置とは異なる通信装置に記憶されている第2のコンピュータプログラムを利用した特定のサーバへのアクセスの承諾も得ることができる。即ち、第1のコンピュータプログラムによって実行される利用開始処理の中で、ユーザから2種類のコンピュータプログラムに対応する2回の承諾をまとめて得ることができる。
【0007】
上記の端末装置を実現するためのコンピュータプログラム、及び、当該コンピュータプログラムを記憶するコンピュータ可読記憶媒体も新規で有用である。
【図面の簡単な説明】
【0008】
【
図3】
図3は、サーバから登録トークンを取得するための処理を示すシーケンス図である。
【
図4】
図4は、複数個のプリンタをサーバに登録するための処理を示すシーケンス図である。
【
図5】
図5は、ファームウエアを利用したサーバへのアクセスの承諾を求める処理を示すシーケンス図である。
【発明を実施するための形態】
【0009】
(通信システム2の構成;
図1)
通信システム2は、端末装置10と、プリンタ100と、プリンタ200と、サーバ300と、を備える。端末装置10は、例えば、スマートフォン、タブレットPC、ラップトップPC、デスクトップPCである。プリンタ100は、印刷機能を有する周辺装置、例えば端末装置10の周辺装置である。変形例では、プリンタ100は、印刷機能に加えて、スキャン機能、FAX機能等を実行可能な多機能機であってもよい。端末装置10及びプリンタ100は、LAN4に接続されている。LAN4は、有線又は無線である。LAN4は、インターネット6に接続されている。サーバ300は、インターネット6に接続されている。LAN4に接続されている装置、例えば、端末装置10は、LAN4及びインターネット6を介して、サーバ300と通信するように構成されている。なお、LAN4に接続されているプリンタの個数は、2個に限らず、例えば、1個でもいいし、3個以上でもよい。
【0010】
プリンタ100及び200は、特定の組織によって利用される所定の場所に設置される。特定の組織は、例えば、会社であり、所定の場所は、例えば、事務所である。プリンタ100及び200は、特定の組織に所属する複数人のユーザによって利用される。複数人のユーザは、管理者と、管理者によって管理される個別ユーザと、を含む。
【0011】
(端末装置10の構成;
図1)
端末装置10は、操作部12と、表示部14と、LANインターフェース16と、制御部30と、を備える。各部12、14、16、30は、バス線に接続されている。なお、以下ではインターフェースを「I/F」と記載する。
【0012】
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示を端末装置10に入力することができる。表示部14は、様々な情報を表示させるディスプレイである。表示部14は、いわゆるタッチスクリーン(即ち操作部12)として機能しもよい。LANI/F16は、LAN4を介した通信を実行するためのI/Fであり、LAN4に接続されている。
【0013】
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されている各プログラム40、42、44に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。operating system(OS)プログラム40は、端末装置10の基本的な動作を制御する。トークン取得アプリ42は、サーバ300から登録トークンを取得するためのアプリケーションプログラムである。トークン取得アプリ42は、トークン取得アプリ42を識別するプログラムID「pr1」を含む。登録トークンは、プリンタ(例えば100)をサーバ300に登録するために利用される。登録アプリ44は、複数個のプリンタをサーバ300に登録するためのアプリケーションプログラムである。
【0014】
トークン取得アプリ42及び登録アプリ44は、プリンタ100及び200のベンダによって提供される。なお、以下では、プリンタ100及び200のベンダを「プリンタベンダ」と記載する。トークン取得アプリ42及び登録アプリ44は、例えば、インターネット上のサーバから端末装置10にインストールされる。なお、変形例では、トークン取得アプリ42及び登録アプリ44は、プリンタベンダとは異なる事業者によって提供されてもよい。
【0015】
(プリンタ100及び200の構成;
図1)
プリンタ100は、プリンタ100の動作を制御するファームウエア140を記憶する。ファームウエア140は、ファームウエア140を識別するプログラムID「pr2」を含む。
【0016】
また、プリンタ100は、プリンタ100を識別するシリアル番号SN1を記憶する。シリアル番号SN1は、プリンタ100の製造時にプリンタベンダによって割り当てられる。
【0017】
プリンタ200は、プリンタ200を識別するシリアル番号SN2を記憶する点を除いて、プリンタ100と同様である。プリンタ200は、プリンタ100と同じファームウエア140を記憶する。
【0018】
(サーバ300の構成;
図1、
図2)
サーバ300は、端末装置10からプリンタ(例えば100)への印刷データの送信を仲介する仲介サービスを提供する。サーバ300は、仲介サービスを利用するための利用プログラムを作成した事業者、例えば、プリンタベンダからの要求に応じて、利用プログラムを識別するプログラムIDを発行する。利用プログラムは、例えば、トークン取得アプリ42、ファームウエア140である。例えば、プリンタベンダは、サーバ300によって発行されたプログラムID「pr1」をトークン取得アプリ42に記述する。
【0019】
サーバ300は、仲介サービスを提供するための情報を管理する各テーブル350、352、354、356を記憶する。
【0020】
IDテーブル350は、サーバ300が発行したプログラムIDを管理する。IDテーブル350は、複数個のプログラムIDを記憶する。
図2に示すように、IDテーブル350は、プログラムIDに関連付けて、作成者名と、権限情報と、を記憶する。作成者名は、プログラムIDによって識別される利用プログラムを作成した事業者の名前である。権限情報は、サーバ300が有する複数個の機能のうち、プログラムIDによって識別される利用プログラムに許可されている1個以上の機能のリストを示す。
【0021】
組織テーブル352は、仲介サービスを利用する組織を管理する。組織テーブル352は、組織IDと、ユーザIDと、パスワードと、を関連付けて記憶する。組織テーブル352は、複数個の組織IDを記憶する。
図2に示すように、複数個のユーザIDと複数個のパスワードが1個の組織IDに関連付けて記憶される。
【0022】
組織IDは、組織を識別する。ユーザIDは、組織に所属するユーザを識別する。例えば、ユーザID「admin」とユーザID「user1」が組織ID「org1」に関連付けて記憶される。ユーザID「admin」は、組織ID「org1」によって識別される組織に所属する管理者を識別し、ユーザID「user1」は、組織ID「org1」によって識別される組織に所属する個別ユーザを識別する。なお、以下では、組織ID「org1」によって識別される組織を組織「org1」と記載し、ユーザID「admin」によって識別される管理者を管理者「admin」と記載する。
【0023】
承諾テーブル354は、組織IDと、承諾情報と、を関連付けて記憶する。承諾情報は、組織IDによって識別される組織に所属する管理者から利用プログラムを利用したサーバ300へのアクセスの承諾が得られていることを示す。例えば、サーバ300は、管理者「admin」からトークン取得アプリ42を利用したサーバ300へのアクセスの承諾が得られる場合に、組織ID「org1」に関連付けて承諾情報CI1を承諾テーブル354に記憶する。承諾情報CI1は、例えば、トークン取得アプリ42を識別するプログラムID「pr1」に対応するフラグ値である。なお、変形例では、承諾情報CI1は、プログラムID「pr1」そのものであってもよい。また、例えば、サーバ300は、管理者「admin」からファームウエア140を利用したサーバ300へのアクセスの承諾が得られる場合に、組織ID「org1」に関連付けて承諾情報CI2を承諾テーブル354に記憶する。
【0024】
登録テーブル356は、仲介サービスが提供される組織で利用されるプリンタを登録する。登録テーブル356は、組織IDと、シリアル番号と、アクセストークンと、を関連付けて記憶する。アクセストークンは、サーバ300に登録されたプリンタとサーバ300との間の通信を認証するための情報である。
【0025】
図2に示すように、複数個のシリアル番号と複数個のアクセストークンが1個の組織IDに関連付けて記憶される。登録テーブル356にシリアル番号が記憶されることは、当該シリアル番号によって識別されるプリンタがサーバ300に登録されたことを意味する。
【0026】
(登録トークンの取得;
図3)
図3を参照して、サーバ300から登録トークンを取得するための処理について説明する。以下では、理解の容易化のために、端末装置10のCPU32がトークン取得アプリ42に従って実行する動作を、CPU32を主体として記載せずに、トークン取得アプリ42を主体として記載する。また、以下の各通信の全てはLANI/F16とLAN4を介して実行されるので、以下では、「LANI/F16を介して」及び「LAN4を介して」という説明を省略する。また、端末装置10とサーバ300との間の通信は、インターネット6を介して実行されるので、以下では、「インターネット6を介して」という説明を省略する。また、以下では、トークン取得アプリ42を「アプリ42」と記載する場合がある。
【0027】
図3の初期状態では、組織「org1」に所属する管理者「admin」からサーバ300へのアクセスの承諾が何ら得られていない。このため、サーバ300の承諾テーブル354は、組織ID「org1」に関連付けて、承諾情報CI1及びCI2を記憶していない。
【0028】
端末装置10は、ユーザからの所定の操作に応じて、アプリ42を起動する。T12では、アプリ42は、ログイン画面を表示部14に表示する。ログイン画面は、ユーザID及びパスワードを入力するための入力欄を含む。
【0029】
管理者「admin」は、T14において、ユーザID「admin」とパスワード「xxxx」をT12で表示されたログイン画面に入力する。これにより、アプリ42は、T16において、サーバ300との間にログインセッションを確立する。
【0030】
T20では、アプリ42は、ユーザからの所定の操作に応じて、登録トークンの送信を要求する登録トークン要求をサーバ300に送信する。登録トークン要求は、アプリ42を識別するプログラムID「pr1」を含む。
【0031】
サーバ300は、T20において、アプリ42から登録トークン要求を受信すると、T22において、管理者「admin」からアプリ42を利用したサーバ300へのアクセスの承諾が得られているのかを判断する。具体的には、サーバ300は、組織テーブル352から、現在ログインしているユーザID「admin」に関連付けて記憶されている組織ID「org1」を取得する。サーバ300は、承諾情報CI1が取得済みの組織ID「org1」に関連付けて承諾テーブル354に記憶されているのか否かを判断する。本ケースでは、サーバ300は、T22において、取得済みの組織ID「org1」に関連付けて承諾情報CI1が承諾テーブル354に記憶されていないと判断し、T24以降の処理に進む。なお、仮に、サーバ300が、取得済みの組織ID「org1」に関連付けて承諾情報CI1が承諾テーブル354に記憶されていると判断する場合には、T24に代えて、特定の通知をアプリ42に送信する。特定の通知は、管理者「admin」から承諾が得られていることを通知する信号である。これにより、アプリ42は、T26をスキップして、T40に進む。
【0032】
T24では、サーバ300は、アプリ42を利用したサーバ300へのアクセスの承諾を要求するアプリ承諾要求をアプリ42に送信する。アプリ承諾要求は、IDテーブル350においてT20の登録トークン要求に含まれるプログラムID「pr1」に関連付けて記憶されている情報、即ち、作成者名「AAA.Ltd」と権限情報AI1とを含む。
【0033】
アプリ42は、T24において、サーバ300からアプリ承諾要求を受信すると、T26において、承諾要求画面SC1を表示部14に表示する。承諾要求画面SC1は、アプリ42を利用したサーバ300へのアクセスの承諾を管理者「admin」に求める承諾ボタンBT1を含む。承諾要求画面SC1は、アプリ42の名称と、アプリ承諾要求に含まれる作成者名「AAA.Ltd」と、を表示する。また、図示省略するが、承諾要求画面SC1は、アプリ承諾要求に含まれる権限情報AI1によって示される機能、即ち、アプリ42に許可されている機能のリストを表示する。なお、承諾要求画面SC1は、キャンセルボタンを含み、仮に、キャンセルボタンが選択される場合には、T28以降がスキップされ、
図3の処理が終了する。
【0034】
本ケースでは、管理者「admin」は、承諾要求画面SC1内の情報、即ち、作成者名「AAA.Ltd」と権限情報AI1によって示されるリストとを見て、アプリ42を利用したサーバ300へのアクセスを承諾する。T28では、管理者「admin」は、承諾要求画面SC1内の承諾ボタンBT1を選択する。
【0035】
アプリ42は、T28において、操作部12から承諾ボタンBT1が選択されたことを示す信号を取得すると、T30において、アプリ承諾通知をサーバ300に送信する。アプリ承諾通知は、承諾ボタンBT1が選択されたことをサーバ300に通知するための信号である。
【0036】
サーバ300は、T30において、アプリ42からアプリ承諾通知を受信すると、T32において、組織ID「org1」に関連付けて、承諾情報CI1を承諾テーブル354に記憶する。
【0037】
また、アプリ42は、T30に続くT40において、ファームウエア確認信号をサーバ300に送信する。ファームウエア確認信号は、管理者「admin」からファームウエア140を利用したサーバ300へのアクセスの承諾が得られているのか否かを確認するための信号である。ファームウエア確認信号は、ファームウエア140を識別するプログラムID「pr2」を含む。プログラムID「pr2」は、アプリ42に予め記憶されている。
【0038】
サーバ300は、T40において、アプリ42からファームウエア確認信号を受信すると、T42において、管理者「admin」からファームウエア140を利用したサーバ300へのアクセスの承諾が得られているのかを判断する。具体的には、サーバ300は、組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されているのか否かを判断する。本ケースでは、サーバ300は、T42において、組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されていないと判断し、T44以降の処理に進む。なお、仮に、サーバ300が、組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されていると判断する場合には、T44をスキップして、T60に進む。
【0039】
T44では、サーバ300は、ファームウエア140を利用したサーバ300へのアクセスの承諾を要求するファームウエア承諾要求をアプリ42に送信する。ファームウエア承諾要求は、IDテーブル350においてT40のファームウエア確認信号に含まれるプログラムID「pr2」に関連付けて記憶されている情報、即ち、作成者名「AAA.Ltd」と権限情報AI2とを含む。
【0040】
アプリ42は、T44において、サーバ300からファームウエア承諾要求を受信すると、T46において、承諾要求画面SC2を表示部14に表示する。承諾要求画面SC2は、ファームウエア140を利用したサーバ300へのアクセスの承諾を管理者「admin」に求める承諾ボタンBT2を含む。承諾要求画面SC2は、ファームウエア140の名称と、ファームウエア承諾要求に含まれる作成者名「AAA.Ltd」と、を表示する。また、図示省略するが、承諾要求画面SC2は、ファームウエア承諾要求に含まれる権限情報AI2によって示される1個以上の機能のリストを表示する。なお、承諾要求画面SC2は、キャンセルボタンを含み、仮に、キャンセルボタンが選択される場合には、T48以降がスキップされ、
図3の処理が終了する。
【0041】
本ケースでは、管理者「admin」は、承諾要求画面SC2内の情報、即ち、作成者名「AAA.Ltd」と権限情報AI2によって示されるリストとを見て、ファームウエア140を利用したサーバ300へのアクセスを承諾する。T48では、管理者「admin」は、承諾要求画面SC2内の承諾ボタンBT2を選択する。
【0042】
アプリ42は、T48において、操作部12から承諾ボタンBT2が選択されたことを示す信号を取得すると、T50において、ファームウエア承諾通知をサーバ300に送信する。ファームウエア承諾通知は、承諾ボタンBT2が選択されたことをサーバ300に通知するための信号である。
【0043】
サーバ300は、T50において、アプリ42からファームウエア承諾通知を受信すると、T52において、組織ID「org1」に関連付けて、承諾情報CI2を承諾テーブル354に記憶する。この結果、アプリ42とファームウエア140との双方について承諾が得られたことを示す情報がサーバ300に記憶される。
【0044】
続くT60では、サーバ300は、登録トークンRT1を生成する。T62では、サーバ300は、組織ID「org1」に関連付けて、登録トークンRT1をサーバ300に記憶する。T64では、サーバ300は、登録トークンRT1をアプリ42に送信する。登録トークンRT1を利用してプリンタが登録されるので、管理者「admin」は、ユーザID及びパスワードをプリンタに入力しなくてもよい。なお、T60からT64の処理が実行されるタイミングは、
図3に示すタイミングに限らず、例えば、T30とT40の間に実行されてもよい。一般的に言えば、登録トークンRT1の生成、記憶、及び、送信は、T30のアプリ承諾通知の受信後に実行されればよい。
【0045】
アプリ42を利用したアクセスの承諾及びファームウエア140を利用したアクセスの承諾の双方が得られると、
図3の処理が完了する。
【0046】
(プリンタの登録;
図4)
図4では、複数個のプリンタをサーバ300に登録するための処理について説明する。
図4は、
図3のT64の続きである。以下では、理解の容易化のために、端末装置10のCPU32が登録アプリ44に従って実行する動作を、CPU32を主体として記載せずに、登録アプリ44を主体として記載する。また、以下では、登録アプリ44を「アプリ44」と記載する場合がある。
【0047】
端末装置10は、ユーザからの所定の操作に応じて、アプリ44を起動する。なお、変形例では、
図3のT64での登録トークンRT1の受信をトリガとして、アプリ42がアプリ44を起動してもよい。
【0048】
アプリ44は、LAN4に接続されているプリンタ100及び200を検索する。アプリ44は、登録トークンRT1を検索された1個以上のプリンタに送信する。本ケースでは、アプリ44は、T102において、登録トークンRT1をプリンタ100に送信し、T104において、登録トークンRT1をプリンタ200に送信する。例えば、T102とT104の処理は、同じタイミングで実行されてもよい。また、例えば、所定の時間内において、T102とT104の処理が、順次に実行されてもよい。所定の時間は、例えば、5秒である。プリンタ100及び200の双方は、登録トークンRT1を利用した同様の処理を実行する。以下では、プリンタ100が実行する処理について説明する。
【0049】
プリンタ100は、T110において、プリンタ100の登録をサーバ300に要求する登録要求をサーバ300に送信する。登録要求は、T102で受信した登録トークンRT1と、プリンタ100を識別するシリアル番号SN1と、ファームウエア140を識別するプログラムID「pr2」と、を含む。
【0050】
サーバ300は、T110において、プリンタ100から登録要求を受信すると、登録要求に含まれる登録トークンRT1と一致する登録トークンがサーバ300に記憶されているのか否かを判断する。本ケースでは、登録要求に含まれる登録トークンRT1は、
図3のT62で記憶された登録トークンRT1と一致する。これにより、サーバ300は、登録要求の送信元のプリンタ100が
図3の処理を実行した管理者「admin」によって管理されていることを認証する。そして、T112では、サーバ300は、登録トークンRT1に関連付けて記憶されている組織ID「org1」を特定する。
【0051】
続くT114は、登録要求に含まれるプログラムID「pr2」が利用される点を除いて、
図3のT42と同様である。本ケースでは、
図3のT52において、ファームウエア140を利用したサーバ300へのアクセスの承諾が管理者「admin」から得られ、承諾テーブル354には、承諾情報CI2が既に記憶されている。本ケースでは、T114において、サーバ300は、組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されていると判断し、T116以降の処理に進む。なお、仮に、組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されていないと判断される場合には、T116以降の処理は実行されない。この場合、サーバ300は、プリンタ100の登録に失敗したことを示す通知をプリンタ100に送信する。
【0052】
T116では、サーバ300は、アクセストークンAT1を生成する。アクセストークンAT1は、プリンタ100とサーバ300との間の通信を認証するための情報である。T118では、サーバ300は、T112で特定された組織ID「org1」に関連付けて、登録要求内のシリアル番号SN1と、生成済みのアクセストークンAT1と、を登録テーブル356に記憶する。これにより、プリンタ100がサーバ300に登録される。
【0053】
T120では、サーバ300は、プリンタ100の登録が成功したことを示す成功通知をプリンタ100に送信する。成功通知は、アクセストークンAT1を含む。
【0054】
また、アプリ44は、T102及びT104において登録トークンRT1をプリンタ100及び200に送信した後に、登録確認信号をプリンタ100及び200のそれぞれに繰り返し送信する。登録確認信号は、プリンタの登録の成功を確認するためのポーリング信号である。
【0055】
T130では、アプリ44は、プリンタ100がサーバ300から成功通知を受信した後に、登録確認信号をプリンタ100に送信する。T132では、アプリ44は、プリンタ100からプリンタ100の登録が成功したことを示す成功応答を登録確認信号に対する応答として受信する。これにより、アプリ44は、プリンタ100の登録が成功したことを知ることができる。
【0056】
また、サーバ300は、T120の後のT140において、成功通知に含まれるアクセストークンAT1を利用して、サーバ300との間の常時接続を確立する。常時接続が確立されると、サーバ300は、プリンタ100からの要求を受信することなく、LAN4のファイヤーオールを超えて、信号をプリンタ100に送信することができる。常時接続は、例えば、Extensible Messaging and Presence Protocol(XMPP)に従った接続、Hypertext Transfer Protocol Secure(HTTPS)に従った接続である。常時接続の確立により、ユーザは、仲介サービスを利用することができる。
【0057】
例えば、ユーザは、仲介サービスを利用するために、端末装置10を操作して、サーバ300にログインする。端末装置10は、ユーザからの指示に応じて、印刷データをサーバ300に送信する。サーバ300は、端末装置10から要求を受信することなく、常時接続を利用して、端末装置10から受信した印刷データをプリンタ100に送信する。プリンタ100は、サーバ300から印刷データを受信すると、印刷データに従った画像の印刷を実行する。
【0058】
プリンタ200についても、T110からT140と同様の処理が実行され、登録テーブル356にプリンタ200のシリアル番号SN2とプリンタ200で利用されるアクセストークンAT2が記憶される。これにより、ユーザは、プリンタ200でも仲介サービスを利用することができる。
【0059】
(ファームウエア承認のための他の方法;
図5)
図5を参照して、ファームウエア140を利用したサーバ300へのアクセスの承諾を求める他の方法について説明する。
図5の処理は、
図3のT40からT52の処理に代えて、
図3の処理とは別に実行される。プリンタ100及び200は、印刷機能に加えて、サーバとして動作するサーバ機能を有する。サーバ機能では、プリンタ100及び200は、設定画面を端末装置に提供する。例えば、ユーザは、プリンタ100から提供された設定画面を操作して、プリンタ100の設定、例えば、ネットワーク設定を変更することができる。
【0060】
端末装置10は、ユーザからの指示に応じて、端末装置10にインストールされているブラウザプログラムに従って、HTTPコマンドをプリンタ100に送信する。ここで、HTTPは、Hyper Text Transfer Protocolである。なお、
図5において端末装置10が実行する処理は、ブラウザプログラムに従って実行される。
【0061】
T204では、端末装置10は、T202のHTTPコマンドに対する応答として、プリンタ100から設定画面情報を受信する。
【0062】
T206では、端末装置10は、設定画面情報に対応する設定画面を表示部14に表示する。設定画面は、プリンタ100の各種設定を変更するためのボタンを含む。本実施例では、設定画面は、ファームウエア140を利用したサーバ300へのアクセスを承諾するための所定のボタンを含む。
【0063】
ユーザは、T208において、設定画面内の所定のボタンを選択する。端末装置10は、所定のボタンの選択に応じて、T210において、通信実行要求をプリンタ100に送信する。
【0064】
プリンタ100は、T210において、端末装置10から通信実行要求を受信すると、T212において、プログラムID「pr2」をサーバ300に送信する。T214では、プリンタ100は、サーバ300からログイン要求を受信する。T216では、プリンタ100は、サーバ300から受信したログイン要求に従って、ログイン画面情報を端末装置10に送信する。ログイン画面情報は、ログイン画面に対応する情報である。
【0065】
端末装置10は、T216において、プリンタ100からログイン画面情報を受信すると、T218において、ログイン画面を表示部14に表示する。
【0066】
管理者「admin」は、T220において、ユーザID「admin」とパスワード「xxxx」をT218で表示されたログイン画面に入力する。これにより、端末装置10は、T222において、ログイン画面に入力された情報をサーバ300に送信する。これにより、T224において、端末装置10とサーバ300との間にログインセッションが確立される。
【0067】
サーバ300は、T224において、端末装置10との間にログインセッションを確立すると、T226に進む。T226は、
図3のT42と同様である。本ケースでは、取得済みの組織ID「org1」に関連付けて承諾情報CI2が承諾テーブル354に記憶されていない。このため、サーバ300は、T226において、管理者「admin」からファームウエア140を利用したサーバ300へのアクセスの承諾が得られていないと判断し、T228に進む。T228は、
図3のT44と同様である。
【0068】
端末装置10は、T228において、サーバ300からファームウエア承諾要求を受信すると、T232において、承諾要求画面SC2を表示部14に表示する。T234、T236は、
図3のT48、T50と同様である。
【0069】
サーバ300は、T236において、端末装置10からファームウエア承諾要求を受信すると、T240において、組織ID「org1」に関連付けて、承諾情報CI2を承諾テーブル354に記憶する。なお、本ケースでは、
図3の処理の実行の前に
図5の処理が実行される。このため、現時点にて、承諾テーブル354には、承諾情報CI1は記憶されていない。
【0070】
T242では、サーバ300は、T240の処理が完了したことを示す完了通知をプリンタ100に送信する。
【0071】
プリンタ100は、T242において、サーバ300から完了通知を受信すると、T244において、通知画面情報を端末装置10に送信する。通知画面情報は、T240の処理が完了したことを通知するための通知画面に対応する情報である。
【0072】
端末装置10は、T244において、プリンタ100から通知画面情報を受信すると、T246において、通知画面を表示部14に表示する。これにより、管理者「admin」は、承諾ボタンBT2の選択に応じた処理がサーバ300で完了したことを知ることができる。
【0073】
(本実施例の効果)
本実施例の構成によれば、トークン取得アプリ42によって実行される
図3の処理の中で、トークン取得アプリ42を利用したサーバ300へのアクセスの承諾(
図3のT26)だけでなく、端末装置10とは異なるプリンタ100に記憶されているファームウエア140を利用したサーバ300へのアクセスの承諾(T48)も得ることができる。即ち、トークン取得アプリ42によって実行される
図3の処理の中で、ユーザから2種類のコンピュータプログラム、即ち、トークン取得アプリ42とファームウエア140に対応する2回の承諾をまとめて得ることができる。
【0074】
例えば、
図3のT40からT52の処理が実行されない比較例が想定される。この比較例では、例えば、管理者「admin」は、
図5の処理によって、ファームウエア140を利用したサーバ300へのアクセスを承諾する。しかし、管理者が
図5の処理を忘れると、
図3の処理に続けて
図4の処理が実行されても、
図4のT114において、ファームウエア140の承諾が得られていないと判断される。この結果、プリンタ100のサーバ300への登録が失敗する。
【0075】
これに対して、本実施例の構成によれば、
図3のT48において、トークン取得アプリ42の承諾だけでなく、ファームウエア140の承諾も得ることができる。ファームウエア140の承諾が得られていないことに起因して、プリンタ100のサーバ300への登録が失敗することを抑制することができる。ユーザは、2種類の承諾を別々のタイミングでしなくてもよい。これにより、ユーザの利便性が向上する。
【0076】
また、端末装置10は、登録アプリ44を利用して、登録トークンRT1をプリンタ100に送信する(
図4のT102)。登録トークンRT1をプリンタ100に手入力する構成と比較して、ユーザの利便性が向上する。なお、変形例では、上記の比較例の構成を採用してもよい。さらに、登録アプリ44は、ユーザからの1回の指示、例えば、登録アプリ44を起動する指示で、登録トークンRT1を複数個のプリンタに送信する機能を有する(T102及びT104)。これにより、ユーザの利便性がさらに向上する。
【0077】
また、
図3のT42の判断が実行されない比較例が想定される。この比較例では、ファームウエア140の承諾が得られている場合でも、
図3の処理において、承諾要求画面SC2が端末装置10に表示される。本実施例では、
図3のT42の判断により、承諾要求画面SC2が不必要に表示されることを抑制することができる。なお、変形例では、T42の判断が実行されない比較例の構成が採用されてもよい。
【0078】
(対応関係)
端末装置10、トークン取得アプリ42、登録アプリ44が、それぞれ、「端末装置」、「第1のコンピュータプログラム」、「第3のコンピュータプログラム」の一例である。メモリ34、表示部14が、それぞれ、「メモリ」、「表示部」の一例である。LANI/F16を介して登録トークンRT1をサーバ300に送信する制御部30が、「出力部」の一例である。サーバ300、仲介サービスが、それぞれ、「特定のサーバ」、「特定のサービス」の一例である。プリンタ100、ファームウエア140が、それぞれ、「通信装置」、「第2のコンピュータプログラム」の一例である。
図3の処理が、「利用開始処理」の一例である。
図3のT26、T46、T64、T42が、それぞれ、「第1の表示処理」、「第2の表示処理」、「受信処理」、「判断処理」の一例である。承諾要求画面SC1、承諾要求画面SC2、承諾ボタンBT1、承諾ボタンBT2が、それぞれ、「第1の画面」、「第2の画面」、「第1のボタン」、「第2のボタン」の一例である。承諾ボタンBT1の選択、承諾ボタンBT2の選択が、それぞれ、「第1の指示」、「第2の指示」の一例である。T30のアプリ承諾通知、T50のファームウエア承諾通知が、それぞれ、「第1の通知」、「第2の通知」の一例である。登録トークンRT1が、「認証情報」の一例である。
【0079】
図3のT26及びT48が、「処理実行部」によって実現される処理の一例である。T30、T50が、それぞれ、「第1の送信部」、「第2の送信部」によって実現される処理の一例である。
【0080】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0081】
(変形例1)「第1の指示」は、承諾要求画面SC1内の承諾ボタンBT1の選択に限らず、例えば、キーボードの所定のボタンの選択であってもよい。「第2の指示」も、承諾要求画面SC2内の承諾ボタンBT2の選択に限らず、例えば、キーボードの所定のボタンの選択であってもよい。
【0082】
(変形例2)
図3のT64、
図4のT102、及び、T104の処理は実行されなくてもよい。本変形例では、「受信処理」及び「出力部」を省略可能である。
【0083】
(変形例3)登録トークンRT1は、例えば、表示部14に表示されてもよい。また、登録トークンRT1をコード化した情報コード、例えば、バーコード、2次元コードが表示部14に表示されてもよい。本変形例では、上記の情報を表示部14に表示する制御部30が、「出力部」の一例である。
【0084】
(変形例4)登録トークンRT1を複数個のプリンタに送信する指示は、1回の指示でなくてもよい。例えば、
図4のT104を実行するために指示が、T102を実行するための指示とは別のタイミングで行われてもよい。
【0085】
(変形例5)「特定のサービス」は、例えば、プリンタ100の状態を収集して管理するサービス、プリンタ100の消耗品の使用量を収集して消耗品を自動発送するサービスであってもよい。
【0086】
(変形例6)「通信装置」は、プリンタに限らず、例えば、デスクトップPC、ラップトップPCであってもよい。
【0087】
(変形例7)上記の実施例では、CPU32がプログラム40、42、及び、44を実行することによって、
図3から
図5の各処理が実現される。これに代えて、いずれかの処理は、論理回路等のハードウェアによって実現されてもよい。
【0088】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【0089】
本特許出願時の特許請求の範囲において、各請求項が一部の請求項のみに従属している場合であっても、各請求項が当該一部の請求項のみに従属可能であることに限定されない。技術的に矛盾しない範囲において、各請求項は、出願時に従属していない他の請求項にも従属可能である。即ち、各請求項の技術は以下のように様々に組み合わせることができる。
(項目1)
端末装置であって、
第1のコンピュータプログラムを記憶するメモリと、
表示部と、
インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を前記第1のコンピュータプログラムに従って実行する処理実行部であって、
前記特定のサービスは、前記端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、
前記利用開始処理は、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第1の画面を前記表示部に表示させる第1の表示処理と、
前記利用開始処理が完了するまでの間に、前記通信装置に記憶されている第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第2の画面を前記表示部に表示させる第2の表示処理と、
を含み、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第1の指示が、前記第1の画面に従って前記端末装置に入力され、かつ、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第2の指示が、前記第2の画面に従って前記端末装置に入力される場合に、前記利用開始処理が完了する、前記処理実行部と、
前記第1の指示が前記端末装置に入力される場合に、前記第1の指示が前記端末装置に入力されたことを示す第1の通知を前記特定のサーバに送信する第1の送信部と、
前記第2の指示が前記端末装置に入力される場合に、前記第2の指示が前記端末装置に入力されたことを示す第2の通知を前記特定のサーバに送信する第2の送信部と、
を備える、端末装置。
(項目2)
前記利用開始処理は、さらに、
前記第1の指示が入力される場合に、前記特定のサーバから認証情報を受信する受信処理を含み、
前記端末装置は、さらに、
前記特定のサーバから前記認証情報が受信される場合に、前記認証情報を外部に出力する出力部を備え、
前記認証情報は、前記特定のサーバが前記通信装置を認証するための情報であり、
前記端末装置によって出力された前記認証情報は、前記通信装置に入力される、項目1に記載の端末装置。
(項目3)
前記第2のコンピュータプログラムは、前記通信装置に入力された前記認証情報を前記特定のサーバに送信する機能を有し、
前記特定のサーバは、前記通信装置から受信した前記認証情報を利用した認証が成功する場合に、前記通信装置を識別する情報を前記特定のサーバに登録する、項目2に記載の端末装置。
(項目4)
前記メモリは、さらに、前記第1のコンピュータプログラムとは異なる第3のコンピュータプログラムを記憶し、
前記出力部は、前記第3のコンピュータプログラムに従って、前記認証情報を前記通信装置に送信することによって、前記認証情報を外部に出力する、項目2又は3に記載の端末装置。
(項目5)
前記出力部は、前記認証情報を複数個の前記通信装置に送信する、項目4に記載の端末装置。
(項目6)
前記利用開始処理は、さらに、
前記利用開始処理が完了するまでの間に、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られているのか否かを判断する判断処理を含み、
前記判断処理において、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られていないと判断される場合に、前記第2の表示処理が実行され、
前記判断処理において、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾が得られていると判断される場合に、前記第2の表示処理は実行されない、項目1から5のいずれか一項に記載の端末装置。
(項目7)
前記第1の指示は、前記第1の画面内の第1のボタンを選択することであり、
前記第2の指示は、前記第2の画面内の第2のボタンを選択することである、項目1から6のいずれか一項に記載の端末装置。
(項目8)
前記通信装置は、印刷機能を有し、
前記特定のサービスは、前記端末装置から前記通信装置への印刷データの送信を仲介するサービスであり、
前記第2のコンピュータプログラムは、前記第1の通知及び前記第2の通知が前記特定のサーバに送信された後に、前記特定のサーバから前記印刷データを受信する機能を有する、項目1から7のいずれか一項に記載の端末装置。
(項目9)
端末装置のための第1のコンピュータプログラムであって、
前記端末装置は、
表示部と、
コンピュータと、
を備え、
前記第1のコンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
インターネット上の特定のサーバによって提供される特定のサービスの利用を開始するための利用開始処理を実行する処理実行部であって、
前記特定のサービスは、前記端末装置とは異なる通信装置を利用するユーザに提供されるサービスであり、
前記利用開始処理は、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第1の画面を前記表示部に表示させる第1の表示処理と、
前記利用開始処理が完了するまでの間に、前記通信装置に記憶されている第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスの承諾を求める第2の画面を前記表示部に表示させる第2の表示処理と、
を含み、
前記第1のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第1の指示が、前記第1の画面に従って前記端末装置に入力され、かつ、前記第2のコンピュータプログラムを利用した前記特定のサーバへのアクセスを承諾する第2の指示が、前記第2の画面に従って前記端末装置に入力される場合に、前記利用開始処理が完了する、前記処理実行部と、
前記第1の指示が前記端末装置に入力される場合に、前記第1の指示が前記端末装置に入力されたことを示す第1の通知を前記特定のサーバに送信する第1の送信部と、
前記第2の指示が前記端末装置に入力される場合に、前記第2の指示が前記端末装置に入力されたことを示す第2の通知を前記特定のサーバに送信する第2の送信部と、
として機能する、第1のコンピュータプログラム。
【符号の説明】
【0090】
2 :通信システム
4 :LAN
6 :インターネット
10 :端末装置
12 :操作部
14 :表示部
16 :LANI/F
30 :制御部
32 :CPU
34 :メモリ
40 :トークン取得アプリ
44 :一括登録アプリ
100、200 :プリンタ
140 :ファームウエア
300 :サーバ
350 :IDテーブル
352 :組織テーブル
354 :承諾テーブル
356 :登録テーブル
AI1、AI2 :権限情報
AT1、AT2 :アクセストークン
BT1、BT2 :承諾ボタン
CI1、CI2 :承諾情報
RT1 :登録トークン
SC1、SC2 :承諾要求画面
SN1、SN2 :シリアル番号