(57)【要約】【課題】デバイスを制御するアプリケーションプログラムのセットアップについて、ユーザの手間を軽減する技術を提供すること。【解決手段】セットアップ方法は、デバイスの種別を識別する第１情報を含むダウンロード要求を情報処理装置がダウンロードサーバに送信するダウンロード要求ステップと、ダウンロードサーバが第１情報とダウンロード要求の送信元を示す第２情報とを関連付けて記憶する記憶ステップと、ダウンロードサーバがインストーラを送信するインストーラ送信ステップと、情報処理装置が第１情報の送信を要求する送信要求をダウンロードサーバに送信するデバイス情報要求ステップと、送信要求を受信したダウンロードサーバが記憶されている第１情報を読み出して送信するデバイス情報送信ステップと、情報処理装置が第１情報に対応するデバイスを検索して決定する決定ステップと、を含む。【選択図】図２
2019175100.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムのセットアップ方法において、
前記アプリケーションプログラムのダウンロードを要求するダウンロード要求であって、デバイスの種別を識別する第１情報を含む前記ダウンロード要求を、情報処理装置によって、前記アプリケーションプログラムのインストーラを記憶するダウンロードサーバに送信するダウンロード要求ステップと、
前記ダウンロードサーバが前記ダウンロード要求を受信した場合に、前記ダウンロードサーバによって、受信した前記ダウンロード要求の送信元を示す第２情報と前記第１情報とを関連付けてメモリに記憶する記憶ステップと、
前記ダウンロードサーバが前記ダウンロード要求を受信した場合に、前記ダウンロードサーバによって、前記インストーラを前記第２情報が示す前記情報処理装置に送信するインストーラ送信ステップと、
前記情報処理装置が前記インストーラを受信した後、所定のタイミングで、前記メモリに記憶された前記第１情報の送信を要求する送信要求を、前記情報処理装置によって、前記ダウンロードサーバに送信するデバイス情報要求ステップと、
前記ダウンロードサーバが前記送信要求を受信した場合に、前記ダウンロードサーバによって、受信した前記送信要求の送信元を示す第３情報と一致する前記第２情報を前記メモリから検索し、検索された前記第２情報に関連付けられた前記第１情報を前記メモリから読み出し、読み出した前記第１情報を、前記第３情報が示す前記情報処理装置に送信するデバイス情報送信ステップと、
前記情報処理装置が前記ダウンロードサーバから前記第１情報を受信した後、前記情報処理装置によって、受信した前記第１情報に対応するデバイスを検索し、検索されたデバイスを前記アプリケーションプログラムで選択されるデバイスに決定する決定ステップと、
を含むことを特徴とするセットアップ方法。
【請求項２】
請求項１に記載するセットアップ方法において、
前記所定のタイミングは、前記インストーラの実行中のタイミングであり、
前記デバイス情報要求ステップでは、
前記インストーラの実行中に、前記送信要求を前記ダウンロードサーバに送信し、
前記決定ステップでは、
前記インストーラの実行中に、前記ダウンロードサーバから前記第１情報を受信し、前記アプリケーションプログラムで選択されるデバイスを決定する、
ことを特徴とするセットアップ方法。
【請求項３】
請求項１に記載するセットアップ方法において、
前記所定のタイミングは前記アプリケーションプログラムの起動時のタイミングであり、
前記デバイス情報要求ステップでは、
前記アプリケーションプログラムの実行中に、前記送信要求を前記ダウンロードサーバに送信し、
前記決定ステップでは、
前記アプリケーションプログラムの実行中に、前記ダウンロードサーバから前記第１情報を受信し、前記アプリケーションプログラムで選択されるデバイスを決定する、
ことを特徴とするセットアップ方法。
【請求項４】
請求項１に記載するセットアップ方法において、
前記所定のタイミングは、前記インストーラの実行中のタイミングであり、
前記デバイス情報要求ステップでは、
前記インストーラの実行中に、前記送信要求を前記ダウンロードサーバに送信し、前記ダウンロードサーバから前記第１情報を受信し、受信した前記第１情報を前記アプリケーションプログラムが読み出し可能なファイルに記憶し、
前記決定ステップでは、
前記アプリケーションプログラムの実行中に、前記ファイルに記憶された前記第１情報を読み出し、読み出した前記第１情報に対応するデバイスを検索し、検索されたデバイスを前記アプリケーションプログラムで選択されるデバイスに決定する、
ことを特徴とするセットアップ方法。
【請求項５】
請求項１から請求項４のいずれか１つに記載するセットアップ方法において、
前記第２情報は、前記情報処理装置のＩＰアドレスである、
ことを特徴とするセットアップ方法。
【請求項６】
請求項１から請求項４のいずれか１つに記載するセットアップ方法において、
前記第２情報は、前記情報処理装置と接続されたルータのＩＰアドレスである、
ことを特徴とするセットアップ方法。
【請求項７】
請求項１から請求項５のいずれか１つに記載するセットアップ方法において、
前記ダウンロード要求は、前記第１情報をクエリ形式で含んだ前記ダウンロードサーバのＵＲＬにより構成されている、
ことを特徴とするセットアップ方法。
【請求項８】
通信インターフェースと、
制御部と、
を備えるダウンロードサーバであって、
前記制御部は、
デバイスを制御するアプリケーションプログラムであって、前記アプリケーションプログラムのインストーラを情報処理装置が受信した後の所定のタイミングで、デバイスの種別を識別する第１情報の送信を要求する送信要求を、前記情報処理装置に送信させ、前記送信要求に応じて前記情報処理装置が受信する前記第１情報に対応するデバイスを前記情報処理装置に検索させ、検索されたデバイスを制御対象のデバイスに決定する前記アプリケーションプログラムの、ダウンロードを要求するダウンロード要求を、前記通信インターフェースを介して受信するダウンロード要求受信処理であって、前記ダウンロード要求には前記第１情報が含まれる前記ダウンロード要求受信処理と、
前記ダウンロード要求受信処理にて前記ダウンロード要求を受信した場合に、受信した前記ダウンロード要求の送信元を示す第２情報と前記第１情報とを関連付けてメモリに記憶する記憶処理と、
前記ダウンロード要求受信処理にて前記ダウンロード要求を受信した場合に、前記アプリケーションプログラムのインストーラを、前記通信インターフェースを介して、前記第２情報が示す前記情報処理装置に送信するインストーラ送信処理と、
前記通信インターフェースを介して、前記送信要求を前記情報処理装置から受信する送信要求受信処理と、
前記送信要求受信処理にて前記送信要求を受信した場合に、受信した前記送信要求の送信元を示す第３情報と一致する前記第２情報を前記メモリから検索し、検索された前記第２情報に関連付けられた前記第１情報を前記メモリから読み出し、読み出した前記第１情報を、前記通信インターフェースを介して、前記第３情報が示す前記情報処理装置に送信する送信要求応答処理と、
を実行することを特徴とするダウンロードサーバ。
【請求項９】
請求項８に記載するダウンロードサーバにおいて、
前記制御部は、
前記記憶処理にて前記第２情報および前記第１情報を前記メモリに記憶したタイミングから所定時間が経過した場合、前記第２情報および前記第１情報を前記メモリから削除する削除処理を実行する、
ことを特徴とするダウンロードサーバ。
【請求項１０】
請求項８または請求項９に記載するダウンロードサーバにおいて、
前記ダウンロード要求は、前記第１情報をクエリ形式で含んだ前記ダウンロードサーバのＵＲＬにより構成されている、
ことを特徴とするダウンロードサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に開示される技術分野は、デバイスを制御するアプリケーションプログラムのセットアップ方法およびダウンロードサーバに関する。
【背景技術】
【０００２】
プリンタやスキャナ等のデバイスを制御するアプリケーションプログラムがある。このようなアプリケーションプログラムに関する技術としては、例えば特許文献１がある。特許文献１には、印刷アプリケーションをインストールした後、その印刷アプリケーションがプリンタを検索し、検索されたプリンタの中から１つのプリンタを選択する構成が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１７７５０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
アプリケーションプログラムでデバイスを制御するためには、アプリケーションプログラムが用意した画面を介して、ユーザの操作によってそのデバイスを選択する必要がある。このデバイスの選択操作はユーザにとって手間であり、改善の余地がある。
【０００５】
本明細書に開示される技術は、前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは、デバイスを制御するアプリケーションプログラムのセットアップについて、ユーザの手間を軽減する技術を提供することにある。
【課題を解決するための手段】
【０００６】
この課題の解決を目的としてなされたセットアップ方法は、アプリケーションプログラムのセットアップ方法において、前記アプリケーションプログラムのダウンロードを要求するダウンロード要求であって、デバイスの種別を識別する第１情報を含む前記ダウンロード要求を、情報処理装置によって、前記アプリケーションプログラムのインストーラを記憶するダウンロードサーバに送信するダウンロード要求ステップと、前記ダウンロードサーバが前記ダウンロード要求を受信した場合に、前記ダウンロードサーバによって、受信した前記ダウンロード要求の送信元を示す第２情報と前記第１情報とを関連付けてメモリに記憶する記憶ステップと、前記ダウンロードサーバが前記ダウンロード要求を受信した場合に、前記ダウンロードサーバによって、前記インストーラを前記第２情報が示す前記情報処理装置に送信するインストーラ送信ステップと、前記情報処理装置が前記インストーラを受信した後、所定のタイミングで、前記メモリに記憶された前記第１情報の送信を要求する送信要求を、前記情報処理装置によって、前記ダウンロードサーバに送信するデバイス情報要求ステップと、前記ダウンロードサーバが前記送信要求を受信した場合に、前記ダウンロードサーバによって、受信した前記送信要求の送信元を示す第３情報と一致する前記第２情報を前記メモリから検索し、検索された前記第２情報に関連付けられた前記第１情報を前記メモリから読み出し、読み出した前記第１情報を、前記第３情報が示す前記情報処理装置に送信するデバイス情報送信ステップと、前記情報処理装置が前記ダウンロードサーバから前記第１情報を受信した後、前記情報処理装置によって、受信した前記第１情報に対応するデバイスを検索し、検索されたデバイスを前記アプリケーションプログラムで選択されるデバイスに決定する決定ステップと、を含むことを特徴としている。
【０００７】
本明細書に開示されるセットアップ方法では、情報処理装置から行うダウンロード要求にデバイスの種別を識別する第１情報が含まれ、ダウンロード要求を受信したダウンロードサーバは、ダウンロード要求の送信元を示す情報である第２情報と、第１情報とを関連付けて記憶する。その後、ダウンロード要求を送信した情報処理装置は、第１情報の送信を要求する送信要求をダウンロードサーバに送信する。ダウンロードサーバは、送信要求の送信元を示す情報である第３情報と一致する第２情報に関連付けて記憶されている第１情報を読み出し、情報処理装置に送信する。情報処理装置は、受信した第１情報に基づいて、アプリケーションプログラムで選択されるデバイスを自動的に決定する。従って、ユーザの操作によってデバイスを選択する手間が不要であり、ユーザの手間が軽減されている。
【０００８】
上記セットアップ方法にて実行されるアプリケーションプログラムが組み込まれた情報処理装置、アプリケーションプログラムを格納するコンピュータにて読取可能な記憶媒体、及びアプリケーションプログラムの機能を実現するための制御方法も、新規で有用である。
【発明の効果】
【０００９】
本明細書に開示される技術によれば、デバイスを制御するアプリケーションプログラムのセットアップについて、ユーザの手間を軽減する技術が実現される。
【図面の簡単な説明】
【００１０】
【図１】ダウンロードシステムの電気的構成を示すブロック図である。
【図２】セットアップの手順の例を示すシーケンス図である。
【図３】機種情報テーブルの例を示す説明図である。
【図４】セットアップの手順の例を示すシーケンス図である。
【図５】セットアップの手順の例を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
以下、第１の実施の形態にかかるセットアップ方法について、添付図面を参照しつつ詳細に説明する。本形態は、アプリケーションプログラム（以下、「アプリ」とする）を、ダウンロードしてセットアップする方法を具体化した実施の形態を開示するものである。
【００１２】
本形態のセットアップ方法では、例えば、図１に示すように、インターネット１００に接続可能なパーソナルコンピュータ（以下、「ＰＣ」とする）１０１は、インターネット１００を介してダウンロードサーバ１０２にアクセスして、印刷アプリ４２をダウンロードする。ＰＣ１０１は、情報処理装置の一例である。本方法にてセットアップされる印刷アプリ４２は、プリンタ等のデバイスを制御するアプリである。
【００１３】
ＰＣ１０１は、各種のプログラムの実行が可能な装置である。ＰＣ１０１は、図１に示すように、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、不揮発性メモリ１４と、を含むコントローラ１０を備えている。さらに、操作部１５と、ネットワークインターフェース（以下、「ネットワークＩＦ」とする）１６と、ＵＳＢインターフェース（以下、「ＵＳＢ−ＩＦ」とする）１７と、を備え、これらがコントローラ１０に電気的に接続されている。なお、図１中のコントローラ１０は、ＰＣ１０１の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にＰＣ１０１に存在する単一のハードウェアを表すとは限らない。
【００１４】
ＲＯＭ１２には、ＰＣ１０１を起動するための起動プログラム等が記憶されている。ＲＡＭ１３は、各種の処理が実行される際の作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ１４は、例えば、ＨＤＤ、フラッシュメモリであり、各種のプログラムや画像データ等のデータや各種設定を記憶する領域として利用される。ＣＰＵ１１は、ＲＯＭ１２や不揮発性メモリ１４から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。
【００１５】
操作部１５は、例えば、ディスプレイ等の表示装置と、キーボード、マウス等の入力装置とを含み、ユーザによる操作を受け付けるとともに情報の表示を行うハードウェアである。操作部１５は、タッチパネル等の入力機能と出力機能との両方を備えるユーザインターフェースであっても良い。
【００１６】
ネットワークＩＦ１６は、インターネット１００を介して外部装置と通信を行うためのハードウェアを含む。ネットワークＩＦ１６の通信方式は、無線でも有線でもよく、ＬＡＮ、Ｗｉ−Ｆｉ（登録商標）など、どのような規格の方式でもよい。本形態では、ＰＣ１０１は、ルータ１０３を介してインターネット１００に接続される。ルータ１０３は、ネットワーク間を中継して接続する装置である。また、ＵＳＢ−ＩＦ１７は、例えば、プリンタ等のデバイスとの通信を行うためのハードウェアを含む。なお、デバイスは、ネットワークＩＦ１６にて接続されても良い。
【００１７】
ＰＣ１０１の不揮発性メモリ１４には、ブラウザ４１を含む，各種のプログラムが記憶されている。ブラウザ４１は、ウェブページを表示するプログラムである。また、ＰＣ１０１は、印刷アプリ４２のインストーラをダウンロードした場合、ダウンロードしたインストーラを不揮発性メモリ１４に記憶する。また、印刷アプリ４２のセットアップが終了した後は、印刷アプリ４２が不揮発性メモリ１４に記憶される。
【００１８】
ダウンロードサーバ１０２は、図１に示すように、制御部２１と、操作部２２と、通信インターフェース（以下、「通信ＩＦ」とする）２３と、メモリ２４と、を含み、各種のプログラムの実行が可能な装置である。通信ＩＦ２３は、インターネット１００を介して外部装置と通信を行うためのハードウェアを含む。なお、ダウンロードサーバ１０２は、１台の装置で構成されているとは限らず、複数台の装置の協働によって動作するものであってもよい。例えば、メモリ２４の少なくとも一部は、ダウンロードサーバ１０２からアクセス可能な他の装置に設けられていてもよい。その場合でも、以下では、「ダウンロードサーバ１０２のメモリ２４」と記載する。
【００１９】
本形態のダウンロードサーバ１０２のメモリ２４は、例えば、ＲＯＭ、ＲＡＭ、ＨＤＤを含み、各種のプログラムやデータが記憶されている。メモリ２４には、例えば、ダウンロードプログラム（以下、「ＤＬプログラム」とする）４６と、印刷アプリ４２のインストーラ４７と、が記憶されている。なお、図１では、１つのインストーラ４７のみを示しているが、ダウンロードサーバ１０２は、例えば、印刷アプリ４２のインストーラ４７を含む複数種のアプリやマニュアル等を記憶しており、ダウンロード要求されたプログラムやデータを選択してダウンロード要求を送信した装置に送信する。
【００２０】
続いて、印刷アプリ４２をＰＣ１０１にセットアップする動作について、図２〜図３を参照して説明する。なお、以下の説明における処理および処理ステップは、基本的に、インストーラ４７などのプログラムに記述された命令に従ったＣＰＵ１１や制御部２１の処理を示す。また、ＰＣ１０１やダウンロードサーバ１０２のＯＳによる処理を区別せずに記載する。
【００２１】
ＰＣ１０１のユーザは、例えば、プリンタを新規に購入した場合、購入したプリンタをＰＣ１０１にて制御するための印刷アプリ４２をダウンロードして入手する。ＰＣ１０１は、例えば、プリンタの製造メーカや印刷アプリ４２の製造メーカによって提供されているウェブページ等を介して、印刷アプリ４２のセットアップを指示するユーザ操作を受け付ける。ＰＣ１０１は、例えば、図２のシーケンス図に示すように、ダウンロードサーバ１０２と通信し、印刷アプリ４２のセットアップを行う。
【００２２】
ＰＣ１０１は、ユーザ操作に基づいて、ブラウザ４１を起動して（手順５１）、ウェブページを表示し、ＵＲＬの入力を受け付ける（手順５２）。このＵＲＬは、製品のマニュアル等に記載されているものでよい。
【００２３】
ＵＲＬには、ダウンロード要求先であるダウンロードサーバ１０２のＤＬプログラム４６を動作させる情報に加え、クエリパラメータとして、プリンタの機種情報が含まれている。例えば、以下の（例１）のＵＲＬでは、「？」より右側の文字列が、「modelA」の機種情報を含むクエリパラメータである。クエリパラメータに含まれる機種情報は、デバイスの種別を識別する情報であって、第１情報の一例であり、クエリパラメータによって機種情報を含むＵＲＬは、第１情報をクエリ形式で含むＵＲＬの一例である。
http://www.xxxxx.co.jp/product/appName?printer=modelA  …（例１）
【００２４】
そして、プリンタの機種ごとに、ＵＲＬに含まれるクエリパラメータが異なる。例えば、上記の（例１）とは異なる機種である「modelB」では、ダウンロード要求用のＵＲＬは、例えば、以下の（例２）のＵＲＬである。
http://www.xxxxx.co.jp/product/appName?printer=modelB  …（例２）
【００２５】
ダウンロード要求用のＵＲＬは、選択された機種が異なっていてもクエリパラメータ以外の部分は同一であり、ダウンロードサーバ１０２のＤＬプログラム４６を動作させることを示している。ダウンロードサーバ１０２は、クエリパラメータを含むダウンロード要求を受信した場合、ＤＬプログラム４６を動作させ、クエリパラメータから機種情報を取得する。ダウンロード要求用のＵＲＬは、ダウンロード要求の一例であり、手順５３は、ダウンロード要求ステップ及びダウンロード要求受信処理の一例である。
【００２６】
そして、ダウンロードサーバ１０２は、図２に示すように、受け付けたダウンロード要求を送信したＩＰアドレスであって、インストーラ４７を送信する送信先を示すＩＰアドレスと、ＵＲＬのクエリパラメータから取得した機種情報とを関連付けて記憶する（手順５４）。ダウンロード要求を送信したＰＣ１０１を示すＩＰアドレスは、第２情報の一例である。手順５４は、記憶ステップ及び記憶処理の一例である。
【００２７】
ダウンロードサーバ１０２は、メモリ２４に、例えば、図３に示すように、機種情報テーブル８１を備える。機種情報テーブル８１には、ＩＰアドレス８１１と、機種情報８１２と、受信日時８１３と、が関連付けて記憶される。ＩＰアドレス８１１は、ダウンロード要求を送信した装置を示すＩＰアドレスの情報である。なお、通常、ＰＣ１０１がルータ１０３に接続され、ルータ１０３を介してダウンロード要求が送信される。ルータ１０３を介してダウンロード要求が送信される場合のＩＰアドレス８１１は、ルータ１０３のＩＰアドレスである。ルータ１０３のＩＰアドレスも、ＰＣ１０１を示すＩＰアドレスの一例である。
【００２８】
機種情報８１２は、ダウンロード要求のクエリパラメータに含まれる機種情報である。なお、ダウンロード要求にクエリパラメータが含まれていない場合、ダウンロードサーバ１０２は、機種情報テーブル８１への記憶を行わない。受信日時８１３は、ダウンロードサーバ１０２がこのダウンロード要求を受信した日時の情報である。
【００２９】
そして、ダウンロードサーバ１０２は、図２に示すように、ダウンロード要求を受け付けた印刷アプリ４２のインストーラ４７をＰＣ１０１に送信する（手順５５）。手順５５は、インストーラ送信ステップ及びインストーラ送信処理の一例である。ＰＣ１０１は、ダウンロードサーバ１０２から送信されるインストーラ４７を受信し、不揮発性メモリ１４に記憶させる（手順５６）。インストーラ４７の受信が完了したら、ＰＣ１０１は、操作部１５に、例えば、ダウンロードが終了した情報と、インストール開始の指示を受け付けるためのボタンと、を表示させる。
【００３０】
そして、ＰＣ１０１は、ユーザ操作によってインストール開始の指示を受け付けると（手順５７）、インストーラ４７を起動させ、印刷アプリ４２のインストールを開始する（手順５８）。ＰＣ１０１は、インストーラ４７によるインストール開始からインストール終了までの期間中に、ダウンロードサーバ１０２へ機種情報の送信を要求する送信要求を送信する（手順５９）。手順５９は、デバイス情報要求ステップの一例である。そして、手順５９の実行タイミングであって、インストーラ４７の実行中のタイミングは、所定のタイミングの一例である。
【００３１】
ダウンロードサーバ１０２は、ＰＣ１０１から送信された送信要求を受信する（手順５９）。つまり、手順５９は、送信要求受信処理の一例でもある。そして、ダウンロードサーバ１０２は、機種情報テーブル８１のＩＰアドレス８１１から、送信要求の送信元を示すＩＰアドレスと一致するものを検索する。送信要求を送信したＰＣ１０１を示すＩＰアドレスは、第３情報の一例である。さらに、ダウンロードサーバ１０２は、一致するＩＰアドレス８１１が見つかったら、そのＩＰアドレス８１１に関連付けて記憶されている機種情報８１２を読み出す（手順６０）。
【００３２】
機種情報テーブル８１には、手順５４にて、ダウンロード要求の送信元を示すＩＰアドレス８１１に関連付けて、ダウンロード要求に含まれる機種情報８１２が記憶されている。ダウンロード要求を送信した時と、送信要求を送信した時とで、ＰＣ１０１のＩＰアドレスが一致していれば、ダウンロードサーバ１０２は、機種情報テーブル８１から該当する機種情報８１２を検索できる。なお、ダウンロード後、すぐにインストールを開始させるユーザが多いことから、ＩＰアドレスは一致している可能性が高い。
【００３３】
そして、図２に示すように、ダウンロードサーバ１０２は、手順６０にて読み出した機種情報８１２を、送信要求を送信したＰＣ１０１に送信する（手順６１）。手順６１は、デバイス情報送信ステップ及び送信要求応答処理の一例である。さらに、ダウンロードサーバ１０２は、送信した機種情報８１２及び関連付けられているＩＰアドレス８１１を、機種情報テーブル８１から削除する（手順６２）。
【００３４】
ＰＣ１０１は、インストーラ４７の実行中に、ダウンロードサーバ１０２から送信される機種情報８１２を受信する（手順６１）。さらに、インストーラ４７は、受信した機種情報８１２に基づいて、印刷アプリ４２の印刷対象の機種に関する情報を、ＰＣ１０１の不揮発性メモリ１４に記憶させる（手順６３）。インストーラ４７は、ＰＣ１０１に、例えば、印刷アプリ４２が読み出し可能な所定の記憶場所にファイルを作成させ、受信した機種情報８１２に基づく情報を作成したファイルへ記憶させる。
【００３５】
なお、ダウンロードサーバ１０２は、送信要求の送信元を示すＩＰアドレスと一致するＩＰアドレス８１１が機種情報テーブル８１に無かった場合、手順６１にて、機種情報８１２が無いことを示す情報を送信し、手順６２をスキップする。ＰＣ１０１は、インストーラ４７の実行中に受信した情報が機種情報８１２が無いことを示す情報であった場合、手順６３をスキップする。
【００３６】
そして、ＰＣ１０１は、ユーザ操作によって、印刷アプリ４２の起動の指示を受け付ける（手順６４）。ＰＣ１０１は、印刷アプリ４２の実行中に、所定の記憶場所から機種情報８１２に基づく情報を読み出し、例えば、ブロードキャストまたはマルチキャストを行って、読み出した情報に対応するプリンタを検索する（手順６５）。さらに、ＰＣ１０１は、検索されたプリンタを、印刷アプリ４２での印刷対象の装置として、自動的に決定する（手順６６）。手順６６は、決定ステップの一例である。
【００３７】
機種情報８１２は、ダウンロード要求のプリンタの機種の情報であることから、印刷アプリ４２の初期設定として、当該プリンタの機種が設定される。つまり、印刷アプリ４２は、印刷アプリ４２のインストーラ４７のダウンロード要求時に含まれた機種のプリンタを、印刷対象の装置として自動的に決定する。例えば、機種ごとに印刷アプリ４２にて選択できる機能や設定画面が異なっていれば、印刷アプリ４２は、機種情報８１２に対応する印刷設定画面を表示させる。
【００３８】
なお、手順６５にて、機種情報８１２に対応するプリンタが複数検索された場合には、ＰＣ１０１は、そのうちの１つに自動的に決定しても良いし、ユーザの選択を受け付けても良い。また、印刷アプリ４２の起動後、所定の記憶場所に機種に関する情報が記憶されていない場合、ＰＣ１０１は、手順６５と手順６６に代えて、印刷アプリ４２にて制御可能な全ての機種のプリンタを検索する。そして、ＰＣ１０１は、印刷アプリ４２の初期設定として、検索されたプリンタのうちから、ユーザによる選択を受け付けるとよい。
【００３９】
そして、ダウンロードサーバ１０２は、例えば、定期的に、機種情報テーブル８１に記憶されている受信日時８１３を確認し、受信から所定時間が経過した情報が含まれるか否かを判断する。そして、ダウンロードサーバ１０２は、図２に示すように、機種情報テーブル８１に記憶してから所定時間が経過した情報であるＩＰアドレス８１１と機種情報８１２と受信日時８１３とを、機種情報テーブル８１から削除する（手順６７）。手順６７は、削除処理の一例である。
【００４０】
なお、定期的とは、例えば、１時間に１回、１日に１回が該当する。また、確認のタイミングは、定期的に限らず、機種情報テーブル８１の容量が所定量を超えた場合、または、ユーザの指示を受け付けた場合、としてもよい。また、所定時間としては、例えば、６時間、１２時間、１日が該当する。適宜削除することにより、ダウンロードサーバ１０２のメモリ２４に保存される機種情報テーブル８１の容量が制限され、メモリ２４の負荷が軽減される。
【００４１】
以上、詳細に説明したように、本形態のセットアップ方法によれば、ダウンロードサーバ１０２は、印刷アプリ４２のインストーラ４７のダウンロード要求時のＩＰアドレス８１１と、ＵＲＬのクエリパラメータに含まれる機種情報８１２とを関連付けて機種情報テーブル８１に記憶する。ＰＣ１０１は、インストーラ４７によるインストールの実行中に、ダウンロードサーバ１０２に送信要求を送信する。ダウンロードサーバ１０２は、送信要求の送信元を示すＩＰアドレスを機種情報テーブル８１のＩＰアドレス８１１から検索し、該当するＩＰアドレス８１１に関連付けて記憶されている機種情報８１２を送信する。ＰＣ１０１は、受信した機種情報８１２に対応するプリンタを検索し、検索されたプリンタを印刷アプリ４２で選択されるプリンタに自動的に決定する。従って、印刷アプリ４２で実際にデバイスを制御するために必要なデバイスの選択操作を省くことができる。
【００４２】
続いて、第２の実施の形態にかかるセットアップ方法について、添付図面を参照しつつ説明する。本形態では、ＰＣ１０１は、インストーラ４７の実行中には、インストールのみを行い、印刷アプリ４２の実行中に送信要求を送信する。この点、インストーラ４７の実行中に送信要求を送信する第１の形態と異なる。本形態のセットアップ方法は、第１の形態のセットアップ方法と比較して、送信要求の送信タイミングが異なるのみであり、同じ手順については、同じ符号を付して説明を省略する。
【００４３】
本形態のセットアップ方法では、図４に示すように、ＰＣ１０１は、インストール開始の指示を受け付けたら（手順５７）、インストーラ４７による印刷アプリ４２のインストールを行う（手順５８）。その後、ＰＣ１０１は、ユーザ操作によって、印刷アプリ４２の起動の指示を受け付ける（手順６４）。
【００４４】
ＰＣ１０１は、印刷アプリ４２の起動の指示を受け付けると、印刷アプリ４２を起動させた後、ダウンロードサーバ１０２へ機種情報の送信を要求する送信要求を送信する（手順７１）。手順７１にて送信される要求は、第１の形態の手順５９（図２参照）にて送信される要求と同じ情報を含む。本形態では、手順７１は、デバイス情報要求ステップの一例である。そして、手順７１の実行タイミングであって、印刷アプリ４２の実行中のタイミングは、所定のタイミングの一例である。なお、手順７１の実行タイミングは、印刷の実行前であれば良く、例えば、印刷アプリ４２の初回の起動時のタイミングでもよいし、印刷実行の指示を受け付けた後であってもよい。また、ＰＣ１０１は、印刷アプリ４２の起動時にプリンタが未選択になっている場合に、手順７１を行うとしてもよい。
【００４５】
ダウンロードサーバ１０２は、手順７１によってＰＣ１０１から送信された送信要求を受信する。手順７１は、送信要求受信処理の一例でもある。そして、ダウンロードサーバ１０２は、機種情報テーブル８１のＩＰアドレス８１１から、送信要求の送信元を示すＩＰアドレスと一致するものを検索する。さらに、ダウンロードサーバ１０２は、一致するＩＰアドレス８１１が見つかったら、そのＩＰアドレス８１１に関連付けて記憶されている機種情報８１２を読み出す（手順７２）。
【００４６】
そして、図４に示すように、ダウンロードサーバ１０２は、読み出した機種情報８１２を、送信要求を送信したＰＣ１０１に送信する（手順７３）。手順７３は、デバイス情報送信ステップ及び送信要求応答処理の一例である。さらに、ダウンロードサーバ１０２は、送信した機種情報８１２及び関連付けられているＩＰアドレス８１１を、機種情報テーブル８１から削除する（手順７４）。
【００４７】
ＰＣ１０１は、例えば、ブロードキャストまたはマルチキャストを行って、受信した機種情報８１２に対応するプリンタを検索する（手順６５）。さらに、ＰＣ１０１は、検索されたプリンタを、印刷アプリ４２での印刷対象の装置として、自動的に決定する（手順６６）。
【００４８】
以上、詳細に説明したように、本形態では、ＰＣ１０１は、送信要求の送信と、プリンタの決定とを、いずれも、印刷アプリ４２の実行中に行う。本形態のセットアップ方法によっても、印刷アプリ４２で選択されるデバイスが自動的に決定されることから、デバイスの選択操作を省くことができる。
【００４９】
本形態によれば、インストーラ４７は、インストールを実行するのみであるので、第１の形態に比較してインストールが短時間で終了する可能性が高い。一方、インストール終了後、印刷アプリ４２を起動する前に、ＰＣ１０１が終了またはリセットされることがあり、その場合、ＩＰアドレスが変更される可能性がある。ダウンロード要求の送信時と送信要求の送信時とでＩＰアドレスが異なると、ダウンロードサーバ１０２は、機種情報テーブル８１からＩＰアドレス８１１を見つけられないことになり、機種情報８１２を取得できない可能性がある。第１の形態では、インストーラ４７が送信要求を行うので、そのような不具合を回避できる。
【００５０】
続いて、第３の実施の形態にかかるセットアップ方法について、添付図面を参照しつつ説明する。本形態では、ＰＣ１０１は、インストーラ４７の実行中に、機種情報８１２の受信とプリンタの決定とを実行する。この点、インストーラ４７は受信した機種情報８１２を記憶するのみである第１の形態とも、機種情報８１２の受信を印刷アプリ４２の実行中に行う第２の形態とも異なる。本形態のセットアップ方法は、第１の形態のセットアップ方法と比較して、プリンタの決定タイミングが異なるのみであり、同じ手順については、同じ符号を付して説明を省略する。
【００５１】
本形態のセットアップ方法では、図５に示すように、ＰＣ１０１は、インストール開始の指示を受け付けたら（手順５７）、インストーラ４７による印刷アプリ４２のインストールを開始する（手順５８）。さらに、第１の形態と同様に、インストーラ４７の実行中に、ＰＣ１０１は、ダウンロードサーバ１０２へ機種情報の送信を要求する送信要求を送信する（手順５９）。手順５９は、デバイス情報要求ステップの一例である。そして、手順５９の実行タイミングであって、インストーラ４７の実行中のタイミングは、所定のタイミングの一例である。
【００５２】
本形態では、ＰＣ１０１は、インストーラ４７の実行中に、ダウンロードサーバ１０２から送信される機種情報８１２を受信し（手順６１）、受信した機種情報８１２に対応するプリンタを検索する（手順７５）。そして、ＰＣ１０１は、検索されたプリンタを、印刷アプリ４２での印刷対象の装置として、自動的に決定する（手順７６）。手順７６は、決定ステップの一例である。そして、インストーラ４７は、ＰＣ１０１に、例えば、印刷アプリ４２が読み出し可能な所定の記憶場所に、決定したプリンタ情報を記憶させる（手順７７）。
【００５３】
本形態によれば、インストーラ４７の実行中にプリンタが決定されるので、印刷アプリ４２の起動後にプリンタの検索を行う必要はなく、起動後の処理が簡便になる。一方、インストール時には対象のプリンタがＰＣ１０１に接続されていない可能性があり、その場合、ＰＣ１０１は、ダウンロードサーバ１０２から受信した機種情報８１２に合致するプリンタが見つからないことから、デバイスの決定に失敗する可能性がある。第１の形態や第２の形態では、印刷アプリ４２の起動後にデバイスの決定を行うので、そのような不具合を回避できる。
【００５４】
なお、本明細書に開示される各実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、ＰＣ１０１に接続されるデバイスは、プリンタに限らず、コピー機、複合機等、印刷アプリ４２にて制御される装置であればよい。また、ＰＣ１０１に接続されるプリンタは、複数台でもよい。
【００５５】
また、例えば、実施の形態の方法によってセットアップされるアプリは、印刷アプリ４２に限らず、スキャンのためのアプリであっても良い。その場合、デバイスは、スキャナ等の画像データを取得する装置が対象となる。
【００５６】
また、例えば、実施の形態では、ダウンロードの指示と、インストールの指示と、アプリ起動の指示と、をそれぞれユーザ操作によって受け付けるとしたが、これに限らない。例えば、ＰＣ１０１は、ダウンロードの指示を受け付けた場合、ダウンロードとインストールとを連続して行っても良い。また、ＰＣ１０１は、インストールの指示を受け付けた場合、インストールの終了後に、インストーラ４７が自動的に印刷アプリ４２を起動させても良い。
【００５７】
また、例えば、手順６２による削除は行わなくても良い。つまり、ダウンロードサーバ１０２は、送信要求に応じて機種情報８１２を送信した後も、機種情報８１２を記憶していても良い。例えば、所定時間の経過を待って、手順６７にて削除するのみでも良い。
【００５８】
また、ユーザによるＵＲＬの入力は、ウェブページからの入力に限らない。例えば、ＵＲＬの情報を含むＱＲコード（登録商標）を用いてもよい。前述したクエリパラメータが付加されたインストーラ４７のＵＲＬを含むＱＲコードを、プリンタのパッケージや説明書、プリンタの外装等に、印刷あるいは貼付しておいてもよい。例えば、スマートフォンやタブレットコンピュータでは、カメラを備えている場合が多い。これらの装置で印刷アプリ４２を使用するユーザにとっては、カメラでＱＲコードを読み取り、ＱＲコードを解析するアプリを利用してそのＵＲＬにアクセスするのみでよい。このようにすれば、ユーザにデバイスの選択操作を意識させることなく、ダウンロードサーバ１０２は、機種情報を取得できる。特に、パッケージや外装の場合、対象のプリンタの機種に対応する１種類のＱＲコードのみでよいことから、ユーザにデバイスの選択を意識させなくてよい。
【００５９】
また、実施の形態に開示されている処理は、単一のＣＰＵ、複数のＣＰＵ、ＡＳＩＣなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【００６０】
１１  ＣＰＵ
１４  不揮発性メモリ
２１  制御部
２３  通信ＩＦ
２４  メモリ
４２  印刷アプリ
４７  インストーラ
１００  インターネット
１０１  ＰＣ
１０２  ダウンロードサーバ
【図１】
2019175100.tif 000003
【図２】
2019175100.tif 000004
【図３】
2019175100.tif 000005
【図４】
2019175100.tif 000006
【図５】
2019175100.tif 000007