(57)【要約】【課題】  ソフトウェアＡＰを使用する用途に応じて、ユーザに手間をかけることなくソフトウェアＡＰのＳＳＩＤを切り替えることのできる仕組みを提供することを目的とする。【解決手段】  ＭＦＰ１０２は、通信端末とダイレクト無線通信を行うＡＰを起動することができる。また、ＭＦＰ１０２は、ソフトウェアＡＰを起動する用途に合わせて、異なるモードでソフトウェアＡＰを起動するよう制御する。前記情報処理装置の所定の設定を行う第１のモードでアクセスポイントを起動する場合は、所定のフォーマットを満たすＳＳＩＤでソフトウェアＡＰを起動するよう制御し（図８）、第１のモードとは異なる第２のモードでアクセスポイントを起動する指示を受け付けた場合は、前記所定のフォーマットを満たさないＳＳＩＤでソフトウェアＡＰを起動するよう制御する（図９）。【選択図】  図１
2018137686.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
外部端末とダイレクト無線通信を行うためのアクセスポイントを起動する起動手段と、
前記情報処理装置の所定の設定を行う第１のモードのアクセスポイントを起動する場合は、所定のフォーマットを満たすＳＳＩＤでアクセスポイントを起動するよう前記起動手段を制御し、前記第１のモードとは異なる第２のモードのアクセスポイントを起動する指示を受け付けた場合は、前記所定のフォーマットを満たさないＳＳＩＤでアクセスポイントを起動するよう前記起動手段を制御する制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
ＳＳＩＤを記憶する記憶手段を更に有し、
前記制御手段は、前記第１のモードでアクセスポイントを起動する指示を受け付けた場合は、前記記憶手段に記憶されたＳＳＩＤに基づいて、前記所定のフォーマットを満たすＳＳＩＤを生成し、当該生成されたＳＳＩＤでアクセスポイントを起動するよう前記起動手段を制御し、前記第２のモードでアクセスポイントを起動する指示を受け付けた場合は、前記記憶手段に記憶された前記ＳＳＩＤに基づいて、前記所定のフォーマットを満たさないＳＳＩＤを生成し、当該生成されたＳＳＩＤでアクセスポイントを起動するよう前記起動手段を制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶手段に記憶されたＳＳＩＤが所定のフォーマットを満たしているか否かを判定する判定手段を更に備えることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記判定手段は、予め記憶された所定の文字列パターンに合致する文字列が前記ＳＳＩＤに含まれている場合に、所定のフォーマットを満たしていると判定することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記ダイレクト無線通信を使用して外部装置から前記情報処理装置の設定を変更させる設定サービスを外部端末に提供する提供手段と、
前記設定機能の使用を開始する指示又は使用を停止するユーザ指示を受け付ける受付手段と、を備え、
前記制御手段は、前記受付手段によって前記設定サービスの使用を開始するユーザ指示を受け付けたことに従って、前記第１のモードでアクセスポイントを起動することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記制御手段は、前記第１のモードでアクセスポイントを起動する場合に、現在のアクセスポイントの状態を記憶しておき、前記受付手段によって前記設定サービスの使用を停止するユーザ指示を受け付けたことに従って、前記第１のモードのアクセスポイントを停止し、尚且つ、前記記憶した状態に基づいて、前記第１のモードのアクセスポイントを停止した後のアクセスポイントの状態を制御することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
外部端末とダイレクト無線通信を行うためのアクセスポイントを複数のモードで起動可能な情報処理装置であって、
情報処理装置の所定の設定を行う第１のモードで使用するアクセスポイントの設定と、前記第１のモードとは異なる第２のモードで使用するアクセスポイントの設定を記憶する記憶手段と、
前記第１のモードで使用するアクセスポイントの設定変更をユーザから受け付ける第１の受付手段と、
前記第２のモードで使用するアクセスポイントの設定変更をユーザから受け付ける第２の受付手段と、
前記第１の受付手段によって前記設定変更をユーザから受け付けた場合は、設定変更後のＳＳＩＤが所定のフォーマットを満たすＳＳＩＤとなるよう変換して、前記記憶手段に記憶するよう制御し、前記第２の受付手段によって前記設定変更をユーザから受け付けた場合は、設定変更後のＳＳＩＤが前記所定のフォーマットを満たさないＳＳＩＤとなるよう変換して、前記記憶手段に記憶するよう制御する制御手段と、
を有することを特徴とする情報処理装置。
【請求項８】
情報処理装置の制御方法であって、
外部端末とダイレクト無線通信を行うためのアクセスポイントを起動する起動工程と、
前記情報処理装置の所定の設定を行う第１のモードのアクセスポイントを起動する指示を受け付けた場合は、所定のフォーマットを満たすＳＳＩＤでアクセスポイントを起動するよう前記起動工程を制御し、前記第１のモードとは異なる第２のモードのアクセスポイントを起動する指示を受け付けた場合は、前記所定のフォーマットを満たさないＳＳＩＤでアクセスポイントを起動するよう前記起動工程を制御する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項９】
外部端末とダイレクト無線通信を行うためのアクセスポイントを複数のモードで起動可能な情報処理装置の制御方法であって、
情報処理装置の所定の設定を行う第１のモードで使用するアクセスポイントの設定と、前記第１のモードとは異なる第２のモードで使用するアクセスポイントの設定を記憶部に記憶する記憶工程と、
前記第１のモードで使用するアクセスポイントの設定変更をユーザから受け付ける第１の受付工程と、
前記第２のモードで使用するアクセスポイントの設定変更をユーザから受け付ける第２の受付工程と、を有し
前記記憶工程は、前記第１の受付工程で前記設定変更をユーザから受け付けた場合は、設定変更後のＳＳＩＤが所定のフォーマットを満たすＳＳＩＤとなるよう変換して前記記憶部に記憶するよう制御し、前記第２の受付工程で前記設定変更をユーザから受け付けた場合は、設定変更後のＳＳＩＤが前記所定のフォーマットを満たさないＳＳＩＤとなるよう変換して、前記記憶部に記憶するよう制御することを特徴とする情報処理装置の制御方法。
【請求項１０】
請求項８又は９に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の目的でソフトウェアアクセスポイントを起動する情報処理装置に関するものである。
【背景技術】
【０００２】
複合機やプリンタ等の情報処理装置には無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）機能を備えるものが増えている。これらの情報処理装置の中には、装置自身がアクセスポイント（ＡＰ）として動作するソフトウェアＡＰ機能を備え、外部の中継装置を介さずに通信端末との間で無線接続を確立し、情報の送受信を行うことができるものがある（ダイレクト無線通信と呼ぶ）。例えば、特許文献１には、モバイル端末との間で無線接続を確立し、当該確立した無線接続を用いて、モバイル端末と音声データや写真データの送受信を行う情報処理装置が記載されている。
【０００３】
また、近年、情報処理装置の初期設定をユーザの所持する通信端末と連携して行うことができる情報処理装置が知られている。例えば、これらの情報処理装置を購入したユーザは、スマートフォンやタブレットなどの通信端末を用いて、情報処理装置が起動するソフトウェアＡＰに接続し、情報処理装置の初期設定を行う。
【０００４】
初期設定の一例として、情報処理装置の無線ネットワークの設定などがある。このように通信端末と情報処理装置を連携させて、情報処理装置の無線ネットワークの設定を行う方式が、複数のＩｏＴ（Ｉｎｔｅｒｎｅｔ  Ｏｆ  Ｔｈｉｎｇｓ）の推進団体によって策定され始めている。
【０００５】
例えば、「Ａｌｌｓｅｅｎ  Ａｌｌｉａｎｃｅ」が推進するＩｏＴ規格であるＡｌｌＪｏｙｎ（登録商標）には、通信端末を使用してデバイスの無線ネットワーク設定を行うフレームワークとして、Ｏｎｂｏａｒｄｉｎｇサービスが策定されている。
【０００６】
ＡｌｌＪｏｙｎのＯｎｂｏａｒｄｉｎｇサービスでは、オフィスネットワークやホームネットワークに参加するための無線ネットワークの設定を受信する情報処理装置などのデバイスをＯｎｂｏａｒｄｅｅと称する。また、Ｏｎｂｏａｒｄｅｅが提供するソフトウェアＡＰに接続し、無線ネットワークの設定をＯｎｂｏａｒｄｅｅに送信する通信端末をＯｎｂｏａｒｄｅｒと称する。
【０００７】
Ｏｎｂｏａｒｄｅｒは、Ｏｎｂｏａｒｄｅｅが提供するソフトウェアＡＰに接続し、Ｏｎｂｏａｒｄｅｅに対して無線ネットワークの設定を送信する。Ｏｎｂｏａｒｄｅｅは、Ｏｎｂｏａｒｄｅｒから受信した無線ネットワークの設定に基づいて、接続先の無線ネットワークの設定を行い外部のＡＰに接続できるようになる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３−２０５９８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
近年、ダイレクト無線通信を使用して通信端末から印刷やスキャンを行うモバイル連携の機能を備えるプリンタや複合機等の情報処理装置がある。このようなプリンタや複合機等の情報処理装置において、通信端末からダイレクト無線通信を使用して情報処理装置のネットワークの設定を行えるようにすることが考えられる。
【００１０】
この場合、情報処理装置は、モバイル連携のためにダイレクト無線通信を使用するケースや初期設定のためにダイレクト無線通信を使用するケースなど、複数の異なる目的でソフトウェアＡＰを使用することになる。
【００１１】
ここで、初期設定のためにダイレクト無線通信を使用するケースでは、情報処理装置は初期設定の規格に適合するソフトウェアＡＰを起動する必要がある。例えば、ソフトウェアＡＰを識別するためのＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）や暗号化方式を、当該初期設定の規格に適合する設定で起動する必要がある。例えば、初期設定にＡｌｌＪｏｙｎのＯｎｂｏａｒｄｉｎｇサービスを利用する場合、Ｏｎｂｏａｒｄｅｅとなる情報処理装置は、ＳＳＩＤに「ＡＪ」を含むソフトウェアＡＰを立ち上げる必要がある。
【００１２】
ここで、モバイル印刷のためにダイレクト無線通信を使用するケースなど、初期設定とは異なる目的でソフトウェアＡＰを使用する場合にも、同一のフォーマットのＳＳＩＤでソフトウェアＡＰを起動すると、ユーザに対して混乱を招く可能性がある。
【００１３】
また、情報処理装置のソフトウェアＡＰの設定は、ユーザが変更可能である。従って、ソフトウェアＡＰのＳＳＩＤの設定が「ＡＪ」を含まない設定に変更された場合、Ｏｎｂｏａｒｄｉｎｇサービスに則った初期設定が行えない恐れがある。
【００１４】
本発明は上記の問題点に少なくとも１つに鑑みなされたものである。本発明の情報処理装置は、ソフトウェアＡＰを使用する用途に応じて、ユーザに手間をかけることなくソフトウェアＡＰのＳＳＩＤを切り替えることのできる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記の目的を達成するために本発明の情報処理装置は、情報処理装置であって、外部端末とダイレクト無線通信を行うためのアクセスポイントを起動する起動手段と、前記情報処理装置の所定の設定を行う第１のモードのアクセスポイントを起動する場合は、所定のフォーマットを満たすＳＳＩＤでソフトウェアＡＰを起動するよう前記起動手段を制御し、前記第１のモードとは異なる第２のモードのアクセスポイントを起動する指示を受け付けた場合は、前記所定のフォーマットを満たさないＳＳＩＤでソフトウェアＡＰを起動するよう前記起動手段を制御する制御手段と、を有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ソフトウェアＡＰを使用する用途に応じて、ユーザに手間をかけることなくソフトウェアＡＰのＳＳＩＤを切り替えることができるようになる。
【図面の簡単な説明】
【００１７】
【図１】システムの概要を示す図である。
【図２】通信端末１０１のハードウェア構成を示す図である。
【図３】通信端末１０１のソフトウェア構成を示す図である。
【図４】ＭＦＰ１０２のハードウェア構成を示す図である。
【図５】ＭＦＰ１０２のソフトウェア構成を示す図である。
【図６】ＭＦＰ１０２の操作部に表示される画面を説明する図である。
【図７】通信端末１０１の操作部に表示される画面を説明する図である。
【図８】ＭＦＰ１０２の制御を示すフローチャートである。
【図９】ＭＦＰ１０２の制御を示すフローチャートである。
【図１０】ＭＦＰ１０２の制御を示すフローチャートである。
【図１１】ＭＦＰ１０２の操作部に表示される画面を説明する図である。
【図１２】ＭＦＰ１０２の制御を示すフローチャートである。
【図１３】ＭＦＰ１０２の制御を示すフローチャートである。
【図１４】変形例におけるソフトウェアＡＰの生成規則を説明する図である。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための実施形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１９】
＜第１の実施形態＞
まず図１を用いて、本発明に係る通信システムの構成を説明する。本実施形態に係るシステムは、通信端末１０１、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０２、及びＡＰ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ）１０３を含む。
【００２０】
通信端末１０１は、ＩＥＥＥ８０２．１１規格（以下、８０２．１１規格と呼ぶ）に基づく無線通信を実行可能である。ユーザがＡＰ１０３に接続するためのＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）やセキュリティキーを通信端末１０１に入力することで、通信端末１０１はＡＰ１０３の提供するネットワークに接続できる。
【００２１】
ＭＦＰ１０２は、ネットワークを介して印刷データを受信して印刷を行うことができる情報処理装置である。ＭＦＰ１０２の無線ネットワーク設定として、ＡＰ１０３に接続するためのＳＳＩＤやセキュリティキーが設定されると、通信端末１０１とＭＦＰ１０２は、ＡＰ１０３を介して無線通信を行えるようになる。
【００２２】
以降本実施形態では、通信端末１０１とＭＦＰ１０２が、外部のＡＰ１０３を介して無線通信を実行することをインフラ無線通信と呼ぶ。また、通信端末１０１とＭＦＰ１０２が、外部のＡＰ１０３を介して無線通信を実行する接続形態をインフラ接続と呼ぶ。
【００２３】
インフラ接続状態の通信端末１０１は、ＡＰ１０３を介してＭＦＰ１０２と通信する。通信端末１０１は、ＡＰ１０３を介してＭＦＰ１０２に印刷ジョブを送信することができる。また、印刷ジョブを受信したＭＦＰ１０２は、印刷ジョブに基づく印刷を実行する。
【００２４】
また、ＭＦＰ１０２はアクセスポイントモードで動作することもできる。アクセスポイントモードで動作する場合、ＭＦＰ１０２は、ソフトウェアアクセスポイントとして動作する。ＭＦＰ１０２は、ＳＳＩＤとセキュリティキーを生成し、自身がＡＰであるように振る舞う。
【００２５】
ＭＦＰ１０２がアクセスポイントモードで動作する場合、通信端末１０１はＭＦＰ１０２の提供するソフトウェアＡＰに接続することができる。
【００２６】
ユーザは、ＭＦＰ１０２が提供するソフトウェアＡＰに接続するためのＳＳＩＤとセキュリティキーを通信端末１０１に入力する。通信端末１０１は入力された接続情報に基づいてＭＦＰ１０２の提供するソフトウェアＡＰに接続する。ＭＦＰ１０２の提供するＡＰに接続した通信端末１０１は、ＡＰ１０３のような中継装置を介することなく、ＭＦＰ１０２と直接無線通信を実行することができる。以降、本実施形態では、通信端末が、ＡＰ１０３のような中継装置を介することなく、ＭＦＰ１０２と直接無線通信を実行する形態をダイレクト無線通信と呼ぶ。
【００２７】
通信端末１０１は、ダイレクト無線通信を使用して、ＭＦＰ１０２と通信することができる。通信端末１０１は、ＭＦＰ１０２が接続すべき外部のＡＰの設定を行うことができる。また、通信端末１０１は、ダイレクト無線通信を利用してＭＦＰ１０２に接続することにより、ＡＰ１０３を介すことなく、印刷を行うことができる。
【００２８】
このように、通信端末１０１は、インフラ接続によるインフラ無線通信又はダイレクト無線通信を利用してＭＦＰ１０２と通信することができる。
【００２９】
なお、本実施形態では、通信端末の一例としてスマートフォンやタブレットＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を例示しているがこれに限定されるものではない。スマートフォンやタブレットＰＣは無線通信を実行可能な通信端末の一例であり、デスクトップＰＣなどの他の通信端末であってもよい。
【００３０】
また、本実施形態では、通信端末と連携して初期設定を行う情報処理装置の一例としてＭＦＰを例示しているがこれに限定されるものではない。ダイレクト無線通信を行うことができる様々なデバイスに適用することができる。例えば、単機能のスキャナ、プリンタ、３Ｄプリンタなどの情報処理装置に適用することもできる。また、テレビ、冷蔵庫、カメラなどの情報処理装置に適用することができる。また、ウェアラブル端末などのネットワーク設定に適用することもできる。
【００３１】
＜通信端末＞
次に図２を用いて、通信端末１０１のハードウェア構成を説明する。制御部１１０に含まれるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１２又はストレージ１１４に記憶された制御プログラムを読み出して、通信端末１０１を制御する。
【００３２】
制御部１１０は、バスに接続されたＣＰＵ１１１、ＲＯＭ１１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１３、ストレージ１１４、無線ＬＡＮ  Ｉ／Ｆ（インタフェース）１１７、操作部Ｉ／Ｆ１１５、カメラＩ／Ｆ１１８を含む。
【００３３】
ＣＰＵ１１１は制御部１１０全体の動作を制御する中央演算装置（プロセッサ）である。ＲＡＭ１１３は揮発性メモリであり、ワークエリア、ＲＯＭ１１２及びストレージ１１４に格納された各種制御プログラムを展開するための一時記憶領域として用いられる。
【００３４】
ＲＯＭ１１２は不揮発性メモリであり、通信端末１０１のブートプログラムなどが格納されている。ストレージ１１４はＲＡＭ１１３と比較して大容量な不揮発性のフラッシュメモリである。ストレージ１１４には、通信端末１０１の制御用プログラムが格納されている。また、後述するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）３１０やアプリケーション３００もストレージ１１４に格納されている。
【００３５】
ＣＰＵ１１１は通信端末の起動時、ＲＯＭ１１２に格納されているブートプログラムを実行する。このブートプログラムは、ストレージ１１４に格納されているＯＳ３１０のプログラムを読み出し、ＲＡＭ１１３上に展開するためのものである。ＣＰＵ１１１はブートプログラムを実行すると、続けてＲＡＭ１１３上に展開したＯＳ３１０のプログラムを実行し、通信端末１０１の制御を行う。また、ＣＰＵ１１１は制御用プログラムによる動作に用いるデータもＲＡＭ１１３上に格納して読み書きを行う。
【００３６】
なお、通信端末１０１は、１つのＣＰＵ１１１が後述するフローチャートに示す各処理を実行するものとするが、他の態様であっても構わない。例えば、複数のＣＰＵやマイクロプロセッサ（ＭＰＵ）が協働して後述するフローチャートに示す各処理を実行するようにすることもできる。また、一部の処理をＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等のハードウェア回路を用いて実行するようにしても良い。
【００３７】
操作部Ｉ／Ｆ１１５は、操作部１１６と制御部１１０を接続する。操作部１１６は、ユーザのタッチ操作を検出可能なタッチパネルと、各種画面を表示する表示パネルを備えている。操作部１１６は、情報を表示する表示部やユーザの指示を受け付ける受付部として機能する。操作部１１６には、ＯＳ３１０や印刷アプリケーション３００が提供する各種画面が表示される。また、ユーザは操作部１１６に指などのオブジェクトを用いてタッチ操作を行うことで、通信端末１０１に所望の操作指示を入力することができる。また操作部１１６には、ハードウェアキーが備えられている。ユーザはハードウェアキーを押下して通信端末１０１に操作指示を入力することもできる。
【００３８】
カメラＩ／Ｆ１１８は、制御部１１０とカメラ１１９を接続する。カメラ１１９はユーザの撮像指示に応じて撮像する。カメラ１１９によって撮像された写真は、ストレージ１１４の所定の領域に記憶される。
【００３９】
無線ＬＡＮ  Ｉ／Ｆ１１７は、８０２．１１規格に準拠する無線通信を行うための無線クライアントの機能を提供する。無線ＬＡＮ  Ｉ／Ｆ１１７は、外部のＡＰに接続して８０２．１１規格に準拠する無線通信を実行する。外部のＡＰは、アクセスポイントモードで動作するＭＦＰ１０２であってもよいし、ＡＰ１０３であってもよい。
【００４０】
＜通信端末１０１のソフトウェア構成＞
次に図３を用いて、通信端末１０１のソフトウェア構成を説明する。図３は、ＣＰＵ１１１がＲＯＭ１１２やストレージ１１４に記憶されている制御プログラムを読み出すことで実現されるソフトウェアの機能ブロック図である。
【００４１】
ＯＳ３１０は、通信端末１０１全体の動作を制御するための基本的なソフトウェアである。通信端末１０１には、後述するアプリケーション３００を含め、様々なアプリケーションをインストールすることができる。ＯＳ３１０はこれらのアプリケーションとの間で情報をやり取りし、アプリケーションから受けた指示に従って、操作パネル２０５に表示する画面を変更することができる。また、アプリケーションから受けた指示に従って、無線ＬＡＮ  Ｉ／Ｆ１１７による無線通信を制御する。ＯＳ３１０は、無線ＬＡＮ  Ｉ／Ｆ１１７によりＡＰに接続すると、無線通信の履歴としてＡＰに関する情報をストレージ１１４に記憶する。ユーザはＡＰに関する情報を、ＯＳ３１０が提供する無線設定の画面（図示省略）で確認することができる。また、アプリケーション３００は、ＯＳがＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）又はアプリケーション向けのフレームワークとして提供する関数を呼び出し、ＯＳ３１０が管理するＡＰに関する情報を取得することができる。
【００４２】
また、後述するアプリケーション３００は、ＯＳがＡＰＩ又はアプリケーション向けのフレームワークとして提供する関数を呼び出すことで、無線ＬＡＮ  Ｉ／Ｆ１１７を制御して周辺のＡＰを検索することができる。
【００４３】
アプリケーション３００は、通信端末１０１にインストールされたアプリケーションである。図３では図示していないが、通信端末１０１には、アプリケーション３００の他に様々な目的のアプリケーションをインストールすることができる。アプリケーション３００は、通信端末１０１のユーザに通信端末１０１の周囲に存在する情報処理装置のネットワーク設定を行うための機能を提供する。また、アプリケーション３００は、ネットワーク設定が行われたＭＦＰなどの情報処理装置に印刷を行わせる印刷機能についても提供する。
【００４４】
＜ＭＦＰ＞
次に、ＭＦＰ１０２について説明する。図４は、ＭＦＰ１０２のハードウェア構成を示すブロック図である。ＭＦＰ１０２は画像を読み取る読取機能、シートに画像を印刷する印刷機能を有する。
【００４５】
ＣＰＵ１３１を含む制御部１３０は、ＭＦＰ１０２全体の動作を制御する。ＣＰＵ１３１は、ＲＯＭ１３２又はストレージ１３４に記憶された制御プログラムを読み出して、印刷制御や読取制御などの各種制御を行う。ＲＯＭ１３２は、ＣＰＵ１３１で実行可能な制御プログラムを格納する。ＲＡＭ１３３は、ＣＰＵ１３１の主記憶メモリであり、ワークエリア又は各種制御プログラムの命令を展開するための一時記憶領域として用いられる。ストレージ１３４は、印刷データ、画像データ、各種プログラム、及び各種設定情報を記憶する記憶部である。
【００４６】
なお、本実施形態のＭＦＰ１０２では、１つのＣＰＵ１３１が１つのメモリ（ＲＡＭ１３３）を用いて後述するフローチャートに示す各処理を実行するものとするが、他の様態であっても構わない。例えば複数のプロセッサ、ＲＡＭ、ＲＯＭ、及びストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。
【００４７】
操作部Ｉ／Ｆ１３５は、操作部１３６と制御部１３０を接続する。操作部１３６には、タッチパネル機能を有する液晶表示部や各種ハードキーなどが備えられ、情報を表示する表示部やユーザ指示を受け付ける受付部として機能する。
【００４８】
読取部Ｉ／Ｆ１３７は、読取部１３８と制御部１３０を接続する。読取部１３８は原稿を読み取って、読取画像を生成する。生成された読取画像は情報処理装置に送信されたり、印刷に用いられたりする。
【００４９】
印刷部Ｉ／Ｆ１３９は、印刷部１４０と制御部１３０を接続する。印刷部１４０は外部から受信した印刷データに基づいてシートに画像を印刷する。
【００５０】
また、制御部１３０は、有線ＬＡＮ  Ｉ／Ｆ１４１を介して図示省略のネットワークに接続される。有線ＬＡＮ  Ｉ／Ｆ１４１は、図示省略のネットワーク上の情報処理装置に画像や情報を送信したり、ＬＡＮ１００上の情報処理装置から印刷データや情報を受信したりする。
【００５１】
更に、制御部１３０は、無線ＬＡＮ  Ｉ／Ｆ１４２を備えている。無線ＬＡＮ  Ｉ／Ｆ１４２は、外部のＡＰに接続して無線通信を行うための無線クライアントの機能及び、ＭＦＰ１０２がＡＰとして振る舞うソフトウェアＡＰの機能を提供する。
【００５２】
ＭＦＰ１０２の無線ネットワーク設定として、ＡＰ１０３に接続するためのＳＳＩＤやセキュリティキーが設定されると、ＭＦＰ１０２は、ＡＰ１０３を介して無線通信を行えるようになる。
【００５３】
また、ソフトウェアＡＰは、アクセスポイントモードがＯＮの場合に起動する。ユーザによりアクセスポイントモードがＯＮに設定された場合、ＣＰＵ１３１は、無線ＬＡＮ  Ｉ／Ｆ１４２と協働して、外部装置が接続可能なソフトウェアＡＰとして振る舞う。ソフトウェアＡＰに接続するためのＳＳＩＤとセキュリティキーはユーザ操作に応じてＭＦＰ１０２の操作部１３６に表示される。
【００５４】
＜ＭＦＰ１０２のソフトウェア構成＞
次に図５を用いて、ＭＦＰ１０２のソフトウェア構成を説明する。図５は、ＣＰＵ１３１がＲＯＭ１３２やストレージ１３４に記憶されている制御プログラムを読み出すことで実現されるソフトウェアの機能とストレージ１３４のデータの保存領域を示すブロック図である。ＯＳ１５０は、ＭＦＰ１０２全体の動作を制御するための基本的なソフトウェアである。ＵＩ１５１は、操作部Ｉ／Ｆ１３５を介して、操作部１３６に表示する画面を制御するソフトウェアである。ソフトウェアＡＰ１５２は、無線ＬＡＮ  Ｉ／Ｆ１４２と協働して、ソフトウェアＡＰを起動するソフトウェアである。ソフトウェアＡＰ１５２は、ソフトウェアＡＰ設定１５５に記憶されたＳＳＩＤ、ネットワークキー、暗号化タイプの設定に基づいてソフトウェアＡＰを起動する。ソフトウェアＡＰ設定１５５は、ソフトウェアＡＰを起動する場合の設定情報を記憶するストレージ１３４内の記憶領域である。
【００５５】
なお、本実施形態のＭＦＰ１０２は１つのソフトウェアＡＰを起動することが可能である。また、本実施形態のＭＦＰ１０２は、無線クライアントの機能及びソフトウェアＡＰの機能を同時に動作できるものとする。即ち、物理的な無線ネットワークインタフェースは１つであるが、論理的なネットワークインタフェースとしては、ソフトウェアＡＰとして使用するためのＩ／Ｆと、無線クライアントとして外部のＡＰに接続するためのＩ／Ｆの２つを有することになる。ここでは、説明のためインフラモードで外部のＡＰとデータを送受信するためのＩ／Ｆを「ｗｌａｎ０」と呼ぶこととする。また、ソフトウェアＡＰを介してデータを送受信するためのＩ／Ｆを「ｗｌａｎ１」と呼ぶこととする。ソフトウェアＡＰ１５２は、無線ＬＡＮ  Ｉ／Ｆ１４２と協働して「ｗｌａｎ１」のＩ／ＦをソフトウェアＡＰとして動作させる。
【００５６】
設定サービス１５３は、外部端末と連携してＭＦＰ１０２の設定を行うためのサービスである。設定サービス１５３は、ＭＦＰ１０２が起動しているソフトウェアＡＰを介して通信端末１０１などの外部端末から設定値を受信する。また、受信した設定値に基づいて、ＭＦＰ１０２の動作設定を変更する。例えば、設定サービス１５３は、外部端末からＭＦＰ１０２が接続すべき外部のＡＰの設定（無線ネットワークの設定）を受信すると、当該設定を無線ＬＡＮ設定１５６に記憶する。無線ＬＡＮ設定１５６は、ＭＦＰ１０２が外部のＡＰ（例えば、ＡＰ１０３）に接続するために、必要となる接続情報を記憶するストレージ１３４内の領域である。ＭＦＰ１０２は、無線ＬＡＮ設定１５６に記憶された接続情報に基づいて外部のＡＰへの無線接続を行う。
【００５７】
プリントサービス１５４は、外部から印刷データを受信し、当該受信した印刷データに基づくプリントを行うためのサービスである。プリントサービス１５４は、有線ＬＡＮ  Ｉ／Ｆ１４１や無線ＬＡＮ  Ｉ／Ｆ１４２を介して外部装置から印刷データを受信する。なお、プリントサービス１５４は、無線ＬＡＮ  Ｉ／Ｆ１４２を介して外部装置から印刷データを受信する場合、「ｗｌａｎ１」として動作させている論理ネットワークＩ／Ｆを介したダイレクト無線通信で印刷データを受信することもできる。また、「ｗｌａｎ０」として動作させている論理ネットワークＩ／Ｆを介したインフラ無線通信で印刷データを受信することもできる。印刷データを受信したプリントサービス１５４は、印刷部１４０と協働して、受信した印刷データに基づく画像をシートに印刷する。
【００５８】
ここで、本実施形態のＭＦＰ１０２は、外部装置とダイレクト無線通信を行うためのソフトウェアＡＰを複数の用途で使用する。まず、通信端末１０１からダイレクト無線通信を使用して印刷データを受信するためにソフトウェアＡＰを使用するケースがある。また、ユーザの所有する通信端末１０１を介してＭＦＰ１０２のネットワークの初期設定を行う場合の情報の送受信を行う場合も、ソフトウェアＡＰを使用するケースがある。
【００５９】
ここで、通信端末１０１を介してＭＦＰ１０２のネットワークの初期設定を行う場合、デバイス同士は、標準規格や、独自規格などで予め定められたシーケンスに則って情報のやり取りを行うことになる。この場合、初期設定用のソフトウェアＡＰであることが、設定アプリケーション側で容易に分かるよう所定のフォーマットに則ったＳＳＩＤで起動することが求められることがある。例えば、「ＡｌｌＪｏｙｎ」のＯｎｂｏａｒｄｉｎｇサービスで規定されたシーケンスに則って通信を行う場合、デバイスは、ＳＳＩＤの名称を「＊＿ＡＪ」としたソフトウェアＡＰを起動する必要がある。なお、＊は任意の文字列を示している。以降、本実施形態では、＊を任意の文字列を示す符号として取り扱う。
【００６０】
また、本実施形態では、ＭＦＰ１０２の設定サービスをユーザ操作によりＯＮ又はＯＦＦに切り替えることができるようにしている。これは、ＭＦＰ１０２の設定が済んだ後は、外部から不用意に設定変更がなされないように設定サービスをＯＦＦにしたいユーザがいることを考慮している。
【００６１】
ここで、設定サービスがＯＦＦに設定されているにもかかわらず、ＭＦＰ１０２が起動しているソフトウェアＡＰのＳＳＩＤの名称が「＊＿ＡＪ」となっていると、問題が生じる場合がある。例えば、ＭＦＰ１０２の設定サービスがＯＦＦの場合、ＭＦＰ１０２は、設定アプリケーションとの連携を行うことができない。しかしながら、設定アプリケーション側からは、設定可能なＭＦＰのソフトウェアＡＰが周囲にあると判断されてしまい、ユーザを混乱させる恐れがある。例えば、ユーザが設定アプリケーションから設定を進めようとしても、設定サービスを起動していないＭＦＰ１０２とは連携できずエラーとなってしまう恐れがある。
【００６２】
本実施形態では、上記の問題点を踏まえ、ソフトウェアＡＰを使用する用途に応じて、ユーザに手間をかけることなくソフトウェアＡＰのＳＳＩＤを切り替えることをできるようにする。具体的には、所定の設定サービスの起動中は、起動するソフトウェアＡＰのＳＳＩＤを所定のフォーマットに沿ったＳＳＩＤとなるように制御を行う。また、印刷データの受信など、所定の設定サービスとは異なる目的でソフトウェアＡＰを起動する場合は、当該所定のフォーマットとは異なるＳＳＩＤとなるように制御を行う。
【００６３】
まず、ソフトウェアＡＰのＳＳＩＤとセキュリティキーの設定について説明する。図６は、ＭＦＰ１０２の操作部１３６に表示される画面を例示するものである。メインメニュー画面１６０は、ＭＦＰ１０２が備える各種機能（例えば、コピー機能やスキャン機能）及び設定メニューを選択する為のメニュー画面である。ユーザによりコピー機能やスキャン機能のボタンが選択されたことを検知すると、ＭＦＰ１０２は、ＭＦＰ１０２が備えるコピー機能やスキャン機能を実行するための画面に遷移する。
【００６４】
また、ユーザにより設定ボタン１６５が選択されたことを検知すると、ＭＦＰ１０２は、操作部１３６に表示する画面を、設定項目を選択する設定画面（図示省略）に遷移する。設定画面では、印刷に関する設定や、省電力に関する設定、ネットワークに関する設定など、様々な設定を行うことができる。そのため同一画面内で全ての設定を行うことは困難である。従って設定項目ごとに個別の設定画面に遷移して、複数の機能の設定を行うものとする。ＭＦＰ１０２は、図示省略の設定画面を介してネットワークに関する設定を行うボタンがユーザにより選択されたことに応じて、操作部１３６に表示する画面をネットワークに関する設定画面１６２に遷移する。
【００６５】
ユーザは、設定画面１６２を介してＭＦＰ１０２が備えている有線ＬＡＮ  Ｉ／Ｆ１４１の設定や、無線ＬＡＮ  Ｉ／Ｆ１４２の設定を行うことができる。また、ユーザは、ソフトウェアＡＰ設定ボタン１６７を選択して、ダイレクト無線通信で使用するソフトウェアＡＰの設定を行うことができる。
【００６６】
ユーザは、ソフトウェアＡＰ設定ボタン１６７を選択することにより、ソフトウェアＡＰ起動時のＳＳＩＤやセキュリティキーを設定する画面１６３を表示することができる。画面１６３を介して設定された接続情報は、プリント向けにソフトウェアＡＰを起動する場合と設定向けにソフトウェアＡＰを起動する場合とで共通に使用される。
【００６７】
画面１６３には、ＳＳＩＤ・セキュリティキーを入力するための、テキストボックス１６８が表示される。ユーザは、テキストボックス１６８の領域を選択し、図示省略のソフトウェアキーボードを使用して、ＳＳＩＤやセキュリティキーの設定を編集することができる。設定キーが選択されると、ＭＦＰ１０２は、テキストボックス１６８を介して編集されたＳＳＩＤ・セキュリティキーに基づいて、ＭＦＰ１０２が起動するソフトウェアＡＰの設定を変更する。
【００６８】
また、画面１６３には、ワンタイムのＳＳＩＤ及びセキュリティキーを利用する設定１６９や個人毎のＳＳＩＤを利用する設定１７０などを行うこともできる。ワンタイムのＳＳＩＤ及びセキュリティキーを利用する設定がＯＮに設定されると、ＭＦＰ１０２がソフトウェアＡＰを起動する場合に、ランダムなＳＳＩＤとセキュリティキーでソフトウェアＡＰを起動する設定となる。個人毎のＳＳＩＤとは、ログイン機能によりＭＦＰ１０２の利用者（ユーザ）が特定できている場合に使用するログインユーザ毎に異なるＳＳＩＤとセキュリティキーである。個人毎のＳＳＩＤは、ＭＦＰ１０２内や外部の連携サーバ内に格納されたユーザデータベース（図示省略）から取得しても良いし、ユーザデータベース内に格納された個人情報に基づいて自動生成しても良い。ワンタイムＳＳＩＤの利用と個人毎のＳＳＩＤの利用が共にＯＦＦの場合は、テキストボックス１６８を介して編集され、記憶されたＳＳＩＤ及びセキュリティキーの設定に基づいてソフトウェアＡＰを起動する。
【００６９】
次に、通信端末１０１とＭＦＰ１０２とが連携して、ＭＦＰ１０２の設定を行う方法について説明する。本実施形態では、設定の一例として、ＭＦＰ１０２がインフラ接続に使用する無線ネットワークの設定を行うことについて説明する。ユーザは、設定画面１６２にて、設定サービスの起動ボタン１６８を選択することで、設定サービスの起動画面１６４を表示することができる。画面１６４では、設定サービスの起動操作又は停止操作を行うことができる。ここで、ＭＦＰ１０２は、設定サービスの起動中は、所定のフォーマットに則ったＳＳＩＤ（例えば、「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」）のソフトウェアＡＰを起動するよう制御する。設定サービスと、設定サービス用のソフトウェアＡＰが起動すると、ＭＦＰ１０２は、通信端末１０１の設定アプリケーションと連携可能な状態となる。
【００７０】
＜通信端末１０１を用いる無線ネットワーク設定＞
次に、通信端末１０１側のシーケンスについて説明する。図７は、通信端末１０１の操作部１１６に表示される設定画面を例示するものである。画面７０１は、設定アプリケーション３００が表示する操作メニュー画面の一例である。画面７０１にて、ボタン７０６を選択することで、アクセスポイントを検索することができる。ボタン７０６が選択された場合、通信端末１０１は、アクセスポイントの検索を行い、設定対象デバイスを選択するための画面７０２を表示する。ここで、通信端末１０１は、自身が無線設定を行うことができる対応デバイスの発見を容易にするため、検索で見つかったＳＳＩＤの中から、ＳＳＩＤの先頭又は末尾に所定の文字列が含まれているアクセスポイントを抽出して表示する。所定の文字列が含まれていないＳＳＩＤについては、画面７０２には表示しない。本実施形態では、ＳＳＩＤが「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」となっているアクセスポイントをリスト表示するものとする。
【００７１】
ユーザはリストからＭＦＰ１０２のアクセスポイントを選択して接続ボタン７０７を押下することにより、通信端末１０１と、ＭＦＰ１０２の接続を確立することができる。接続を確立すると、印刷装置の設定項目を選択する画面７０３が表示される。ユーザはボタン７０８を選択し、印刷装置が接続すべき外部のアクセスポイントの情報を入力する画面７０４を表示する。例えばユーザは、ＡＰ１０３のＳＳＩＤとセキュリティキーを入力して、設定ボタン７０９を押下する。なお、本実施形態では、ユーザがＳＳＩＤとセキュリティキーを入力する場合を例示しているが、これに限定されるものではない。例えば、通信端末１０１は、ＳＳＩＤの末尾が「＿ＳｅｔｔｉｎｇＭｏｄｅ」ではない周囲のアクセスポイントを検索してリスト表示し、その中からユーザに選択させるようにしても良い。また、通信端末１０１が過去に接続したことのあるアクセスポイントをリスト表示し、その中からユーザに選択させるようにしてもよい。
【００７２】
通信端末１０１は設定ボタンが押下されたことを検知すると、ＭＦＰ１０２が接続すべきアクセスポイントの情報をダイレクト無線通信を使用してＭＦＰ１０２に送信する。送信が完了すると設定の完了を示す画面７０５を表示する。
【００７３】
一方、ＭＦＰ１０２は、通信端末１０１から受信した無線ＬＡＮのアクセスポイントの情報を使用して、自身の無線ネットワークの設定を行う。例えば、画面７０４に示すＳＳＩＤ「ＡＰ１０３」、セキュリティキー「７６５６４３２１」を接続先の無線ネットワーク設定としてストレージ１３４内の無線ＬＡＮ設定１５６に記憶する。記憶が完了すると、無線ＬＡＮ  Ｉ／Ｆ１４２をリセットし、新しいネットワーク設定に基づいて外部のＡＰへの接続を試行する。従って、ＭＦＰ１０２は、通信端末１０１から受信した無線ネットワークの設定に基づいて外部のＡＰが提供する無線ネットワークに参加することができる。
【００７４】
＜外部連携＞
図６の説明に戻り、通信端末１０１から印刷データを受け付ける際の画面について説明する。ユーザは、メインメニュー画面１６０のモバイルからプリントボタン１６６を押下することで、画面１６１を表示することができる。画面１６１では、無線ダイレクト通信を利用して印刷データを受け付けるプリント連携などに使用する汎用のソフトウェアＡＰの起動・停止操作を行うことができる。ソフトウェアＡＰの起動中は、ソフトウェアＡＰにアクセスするための情報（ＳＳＩＤ、セキュリティキー）が画面１６１に表示される。なお、本実施形態では、モバイル連携の一例として、ＭＦＰ１０２から印刷データを受信するプリント連携を例示したが、これに限定されるものではない。例えば、ＭＦＰ１０２は、読取部１３８で原稿を読み取って得られた読取画像をダイレクト無線通信で通信端末１０１に送信するスキャン連携を行うこともできる。また、ＭＦＰ１０２の共有ボックスに蓄積されたファイルや画像を通信端末１０１にダウンロードするボックス連携などを行うこともできる。
【００７５】
本実施形態では、プリント連携や、スキャン連携、ボックス連携などに代表される外部連携のためにソフトウェアＡＰを起動する場合は、設定サービス用の所定のフォーマットとは異なるＳＳＩＤでソフトウェアＡＰを起動するよう制御する。
【００７６】
ソフトウェアＡＰを使用する用途に応じて、ユーザに手間をかけることなくソフトウェアＡＰのＳＳＩＤを切り替える具体的な方法について、図８乃至図１０のフローチャートを用いて説明する。図８乃至図１０のフローチャートに示す各動作（ステップ）は、ＣＰＵ１３１がＲＯＭ１３２又はストレージ１３４に記憶された各制御モジュールを実現するためのプログラムをＲＡＭ１３３に読み出し、実行することにより実現される。なお、フローチャートで示す処理は、制御プログラムであるＯＳ１５０、ＵＩ１５１、ソフトウェアＡＰ１５２、設定サービス１５３が協働して実現しているものとする。
【００７７】
図８は、画面１６４においてユーザが設定サービスの起動ボタン１７１を押下した際のＭＦＰ１０２の動作を示すフローチャートである。Ｓ８０１では、ＣＰＵ１３１は、画面１６４においてユーザがボタン１７１を押下したことを検知すると、設定サービスの起動処理を開始する。Ｓ８０２では、ＣＰＵ１３１は、現在のソフトウェアＡＰの状態を記憶する。ソフトウェアＡＰを起動していない場合は、ソフトウェアＡＰを起動していない旨を記憶する。また、ソフトウェアＡＰが起動中の場合は、ソフトウェアＡＰが起動中である旨を記憶する。また、ソフトウェアＡＰが起動中の場合は更に、現在起動しているソフトウェアＡＰの設定（ＳＳＩＤ、セキュリティキー、暗号化方式）を記憶する。なお、Ｓ８０２の処理は、設定サービスを終了する場合に、設定サービスを起動する前のソフトウェアＡＰの状態を復元するための情報を記憶する処理である。
【００７８】
次にＳ８０３では、ＣＰＵ１３１は、以下のいずれかの手段においてＳＳＩＤとセキュリティキーを取得又は生成する。ソフトウェアＡＰが起動中の場合は、起動中のソフトウェアＡＰのＳＳＩＤとセキュリティキーを取得する。一方、ソフトウェアＡＰが停止中の場合は、ソフトウェアＡＰの設定に基づいてこれから起動するソフトウェアＡＰのＳＳＩＤとセキュリティキーを取得する。ワンタイムＳＳＩＤと個人毎のＳＳＩＤの利用設定がＯＦＦの場合は、ストレージ１３４に記憶したＳＳＩＤとセキュリティキーの設定を取得する。一方、ワンタイムＳＳＩＤの利用設定がＯＮの場合、ＣＰＵ１３１は、ＳＳＩＤとセキュリティキーをランダム生成する。また、個人毎のＳＳＩＤの利用設定がＯＮの場合は、設定サービスの起動を指示したユーザのアカウントに紐づいたＳＳＩＤとセキュリティキーを取得する。
【００７９】
Ｓ８０４では、ＣＰＵ１３１は、Ｓ８０３で取得又は生成したＳＳＩＤが所定のフォーマットを満たしているか否かを判定する。所定のフォーマットを満たしている場合は、Ｓ８０５の処理をスキップし、処理をＳ８０６に進める。所定のフォーマットを満たしていない場合は、処理をＳ８０５に進める。例えば、本実施形態では、「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」のフォーマットを満たすか否かを判断する。ＣＰＵ１３１は、予め記憶された所定の文字列パターン（「＿ＳｅｔｔｉｎｇＭｏｄｅ」）に合致する文字列が取得したＳＳＩＤに含まれているかどうか判断する。一致する文字列が含まれている場合は、更にその文字列の位置が所定の位置（例えば、本実施形態では末尾）に位置しているか否かを判断する。一致する文字列が含まれており、尚且つ、当該文字列が所定位置に位置している場合に、所定のフォーマットを満たしていると判断する。一方、一致する文字列が含まれていない、又は一致する文字列が含まれている場合であっても、当該文字列の位置が所定位置でない場合は、所定のフォーマットを満たしていないと判断する。なお、本実施形態では、所定位置として末尾を例示しているがこれに限定されるものではない。例えば、所定位置は先頭であってもよい。また、本実施形態では、所定のフォーマットが「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」である場合を例示しているがこれに限定されるものではない。設定サービスの規格によっては、規格の設立時期や別規格との統合などで、元々は別規格の設定サービスで使用するフォーマットと統合後のフォーマットなど複数のフォーマットを容認するケースが考えられる。この場合、ＣＰＵ１３１は、設定サービスで使用できる複数のフォーマット（ＳＳＩＤの命名規則）をストレージ１４４に記憶しておき、当該複数のフォーマットのいずれか１つを満たしているかどうかを判定するようにすればよい。いずれか１つのフォーマットを満たしている場合は、Ｓ８０６の処理に進み、何れのフォーマットも満たしていない場合は、処理をＳ８０５に進める。
【００８０】
Ｓ８０５では、ＣＰＵ１３１は、取得したＳＳＩＤに基づいて所定のフォーマットを満たすＳＳＩＤを生成する。本実施形態では、一例として、「＊＿ｓｅｔｔｉｎｇＭｏｄｅ」）のフォーマットを満たすＳＳＩＤとなるように制御する。例えば、ＣＰＵ１３１は、ＳＳＩＤの末尾に「＿ＳｅｔｔｉｎｇＭｏｄｅ」を加えることで所定のフォーマットを満たすＳＳＩＤを生成する。なお、設定サービスや設定アプリケーションが準拠する規格にＳＳＩＤの最大文字数などの条件が既定されている場合は、当該条件を満たすよう文字列操作を行い、規格に則ったＳＳＩＤを生成するものとする。
【００８１】
Ｓ８０６では、ＣＰＵ１３１は、設定サービスを起動する。ここで、設定サービスの起動とは、外部から設定サービス１５３が提供する設定機能を利用できない状態から、外部から設定サービス１５３が提供する設定機能を利用できる状態に遷移させることを意味する。例えば、一例として、ＣＰＵ１３１は、停止状態の設定サービスを起動状態に遷移させ、設定サービス１５３を外部から利用可能にする。なお、設定サービスの起動は、これに限定されるものではない。例えば、ＣＰＵ１３１は、パケットフィルタリングやポートフィルタリングによる通信制御により、設定サービス１５３の外部からの利用可否を異ならせるようにしてもよい。この場合、設定サービス１５３は起動状態で外部からの通信を待ち受けている。ＣＰＵ１３１は、パケットフィルタリングやポートフィルタリングによる通信制御のルールを切り替えることで、外部から設定サービスが提供する設定機能を利用できる状態と、外部から設定サービスが提供する設定機能を利用できない状態を切り替える。
【００８２】
Ｓ８０７では、ＣＰＵ１３１は、所定のフォーマットを満たすＳＳＩＤでソフトウェアＡＰを起動する。ＣＰＵ１３１は、既にソフトウェアＡＰが起動している場合は、起動中のソフトウェアＡＰを停止して、所定のフォーマットを満たすＳＳＩＤでソフトウェアＡＰを起動する。
【００８３】
以上説明した図８の一連の処理により、設定サービスを起動する場合に、所定のフォーマットを満たすＳＳＩＤでソフトウェアＡＰを立ち上げることができるようになる。
【００８４】
続いて、図９を用いて、プリント連携や、スキャン連携、ボックス連携などに代表される外部連携のためにソフトウェアＡＰを起動する場合に、設定サービス用の所定のフォーマットとは異なるＳＳＩＤのソフトウェアＡＰを起動する制御について説明する。
【００８５】
図９は、画面１６１において外部連携の目的でソフトウェアＡＰの起動を指示した際のＭＦＰ１０２の動作を示すフローチャートである。Ｓ９０１では、ＣＰＵ１３１は、画面１６１においてユーザがボタン１７３を押下したことを検知すると、ソフトウェアＡＰの起動処理を開始する。Ｓ９０２では、ＣＰＵ１３１は、設定サービスが起動しているか否かを判断する。設定サービスが起動している場合は、処理をＳ９０３に進め、設定サービスが起動していない場合は、処理をＳ９０４に進める。
【００８６】
Ｓ９０３では、ＣＰＵ１３１は、設定サービスを外部から利用できない状態に遷移させる。また、起動中のソフトウェアＡＰを停止する。
【００８７】
Ｓ９０４では、ＣＰＵ１３１は、ソフトウェアＡＰの設定に基づきソフトウェアＡＰとして使用すべきＳＳＩＤとセキュリティキーを取得又は生成する。ワンタイムＳＳＩＤと個人毎のＳＳＩＤの利用設定がＯＦＦの場合は、ストレージ１３４に記憶したＳＳＩＤとセキュリティキーの設定を取得する。一方、ワンタイムＳＳＩＤの利用設定がＯＮの場合、ＣＰＵ１３１は、ＳＳＩＤとセキュリティキーをランダム生成する。また、個人毎のＳＳＩＤの利用設定がＯＮの場合は、設定サービスの起動を指示したユーザのアカウントに紐づいたＳＳＩＤとセキュリティキーを取得する。ＳＳＩＤとセキュリティキーの取得又は生成が完了すると、処理をＳ９０５に進める。
【００８８】
Ｓ９０５では、ＣＰＵ１３１は取得したＳＳＩＤが所定のフォーマットを満たすか否かを判定する。所定のフォーマットを満たす場合は、処理をＳ９０６に進め、所定のフォーマットを満たさない場合は、Ｓ９０６の処理をスキップし、処理をＳ９０７に進める。
【００８９】
Ｓ９０６では、ＣＰＵ１３１は、Ｓ９０４で取得したＳＳＩＤに基づいて所定のフォーマットを満たさないＳＳＩＤを生成する。例えば、ＣＰＵ１３１は、ＳＳＩＤの末尾に含まれる「＿ＳｅｔｔｉｎｇＭｏｄｅ」を削除して、所定のフォーマットを満たさないＳＳＩＤを生成する。
【００９０】
Ｓ９０７では、ＣＰＵ１３１は、所定のフォーマットとは異なるＳＳＩＤでソフトウェアＡＰを起動する。
【００９１】
一連の処理により、ユーザが印刷などに用いるソフトウェアＡＰを起動する指示を行う場合は、設定サービス用の所定のフォーマットを満たさないＳＳＩＤでソフトウェアＡＰを起動することができる。
【００９２】
続けて設定サービスを終了する場合の制御について図１０のフローチャートを用いて説明する。図１０は、画面１６４においてユーザが設定サービスの停止を指示した際のＭＦＰ１０２の動作を示すフローチャートである。Ｓ１００１では、ＣＰＵ１３１は、画面１６４においてユーザがボタン１７２を押下したことを検知して設定サービスの停止処理を開始する。Ｓ１００２では、ＣＰＵ１３１は、設定サービスを外部から利用できない状態に遷移させる。また、起動中のソフトウェアＡＰを停止する。次に、Ｓ１００３では、ＣＰＵ１３１は、Ｓ８０２で記憶した設定サービスを起動する前のソフトウェアＡＰの状態を取得する。
【００９３】
Ｓ１００４では、ＣＰＵ１３１は、Ｓ１００３で取得した設定サービスを開始する前のソフトウェアＡＰの状態に基づいて、ソフトウェアＡＰが起動していたか否かを判断する。ソフトウェアＡＰを起動していないことが記憶されている場合は、一連の処理を終了する。一方、ソフトウェアＡＰの状態としてソフトウェアＡＰを起動していたことが記憶されている場合は、Ｓ１００５に処理を進める。
【００９４】
Ｓ１００５では、ＣＰＵ１３１は、Ｓ８０２で記憶したソフトウェアＡＰの設定（ＳＳＩＤ、セキュリティキー、暗号化方式）を取得する。Ｓ１００６では、ＣＰＵ１３１は、取得したソフトウェアＡＰの設定に基づいて、ソフトウェアＡＰを起動する。Ｓ１００５の処理によって、設定サービス起動前のソフトウェアＡＰの状態を復元することができる。
【００９５】
以上説明した通り、本実施形態では、アクセスポイント機能の利用用途に連動して、自動的に適切なＳＳＩＤに切り替えてソフトウェアＡＰを起動できるようになる。従って、ユーザがソフトウェアＡＰの設定を手動で変更する手間を省くことができる。また、ユーザが設定サービスを起動する操作を行ったことをトリガとして、自動的に当該設定サービスが対応する規格に則ったソフトウェアＡＰを起動するよう制御する。従って、ユーザは、ＩｏＴ規格や設定規格などの仕様を意識することなく、設定サービスを利用できるようになる。
【００９６】
また、設定サービスを起動していない場合に、設定サービス用のＳＳＩＤでソフトウェアＡＰが起動することを抑制することができる。従って、ユーザの混乱を抑制することができる。
【００９７】
＜第２の実施形態＞
第１の実施形態では、画面１６３に示すようにソフトウェアＡＰを使用する用途によらず、共通のソフトウェアＡＰの設定を設ける形態における制御について説明した。一方、第２の実施形態では、ソフトウェアＡＰを使用する用途ごとに、異なる設定を記憶できるように構成する。また、第２の実施形態では、ソフトウェアＡＰの設定変更を受け付ける時に、ソフトウェアＡＰを使用する用途ごとに、適切なＳＳＩＤが記憶されるよう制御を行うことについて説明する。
【００９８】
図１１は、ＭＦＰ１０２の操作部１３６に表示される画面を示すものである。画面１８１は、第１の実施形態の画面１６３（図６）に代えて表示する、第２の実施形態におけるソフトウェアＡＰの設定画面を例示している。ＭＦＰ１０２は、設定画面１６２からソフトウェアＡＰの設定ボタンが選択されたことに従って、操作部１３６の表示を画面１８１に遷移する。
【００９９】
画面１８１には、外部連携に使用する汎用のソフトウェアＡＰの設定を行うための設定ボタン１８４と、設定サービス専用のソフトウェアＡＰの設定を行うための設定ボタン１８５が表示される。ユーザは、設定ボタン１８４を選択して、外部連携で使用する汎用のソフトウェアＡＰの設定変更を行うことができる。ＭＦＰ１０２は、画面１８２を介して設定変更を受け付ける。画面１８２の設定ボタン１８６が選択されると、ＭＦＰ１０２は、画面１８２を介して受け付けた設定をＭＦＰ１０２の設定として適用する。また、ユーザは、設定ボタン１８５を選択して、設定サービス専用のソフトウェアＡＰの設定を変更することができる。ＭＦＰ１０２は、画面１８３を介して設定変更を受け付ける。画面１８３を介して設定ボタン１８７が選択されると、ＭＦＰ１０２は画面１８３を介して受け付けた設定をＭＦＰ１０２の設定として適用する。
【０１００】
なお、汎用のソフトウェアＡＰの設定及び設定サービス専用のソフトウェアＡＰの設定は、ストレージ１３４内のソフトウェアＡＰ設定１５５に記憶されるものとする。
【０１０１】
ＭＦＰ１０２は、ソフトウェアＡＰを起動する用途に応じて、ソフトウェアＡＰ設定１５５に記憶されている設定を使い分ける。例えば、図６の画面１６１を介してソフトウェアＡＰの起動が指示された場合は、汎用のソフトウェアＡＰの設定を用いてソフトウェアＡＰを起動する。また、例えば、図６の画面１６４を介した設定サービスの起動に伴って、ソフトウェアＡＰを起動する場合は、設定サービス用のソフトウェアＡＰの設定を用いてソフトウェアＡＰを起動する。
【０１０２】
続いて、第２の実施形態におけるソフトウェアＡＰの設定変更に関する制御について図１２及び図１３のフローチャートを用いて説明する。図１２及び図１３のフローチャートに示す各動作（ステップ）は、ＣＰＵ１３１がＲＯＭ１３２又はストレージ１３４に記憶された各制御モジュールを実現するためのプログラムをＲＡＭ１３３に読み出し、実行することにより実現される。なお、フローチャートで示す処理は、制御プログラムであるＯＳ１５０、ＵＩ１５１とが協働して実現しているものとする。
【０１０３】
図１２は、画面１８２において汎用のソフトウェアＡＰの設定操作を行った際のＭＦＰ１０２の動作を示すフローチャートである。Ｓ１２０１では、ＣＰＵ１３１は、画面１８２においてユーザが設定ボタン１８４を押下したことを検知してプリント用のソフトウェアＡＰの設定処理を開始する。Ｓ１２０２では、ＣＰＵ１３１は、ユーザが画面１８２を介して入力したＳＳＩＤを取得する。
【０１０４】
Ｓ１２０３では、ＣＰＵ１３１は、取得したＳＳＩＤが所定のフォーマットを満たしているか否かを判定する。所定のフォーマットを満たしている場合は、処理をＳ１２０４へ進め、所定のフォーマットを満たしていない場合は、Ｓ１２０４の処理をスキップし、処理をＳ１２０５に進める。
【０１０５】
Ｓ１２０４では、ＣＰＵ１３１は、Ｓ１２０２で取得したＳＳＩＤに基づいて所定のフォーマットを満たさないＳＳＩＤを生成する。例えば、ＣＰＵ１１１は、ＳＳＩＤの末尾に含まれる「＿ＳｅｔｔｉｎｇＭｏｄｅ」を削除して、所定のフォーマットを満たさないＳＳＩＤを生成し、画面１８１に反映する。なお、Ｓ１２０３及びＳ１２０４の処理は、設定サービスの規格に適合する所定のフォーマットを満たすＳＳＩＤが、汎用のソフトウェアＡＰ用のＳＳＩＤとして設定変更されることを抑制するための例外処理である。この処理により、ユーザにより所定のフォーマットを満たすＳＳＩＤが入力された場合であっても、所定のフォーマットを満たさないＳＳＩＤに変換することができる。
【０１０６】
Ｓ１２０５では、ＣＰＵ１３１は、画面１８１に入力されているＳＳＩＤ及びその他の設定項目に基づいて、汎用のソフトウェアＡＰの設定をストレージ１３４のソフトウェアＡＰ設定１５５に記憶する。記憶が完了すると、外部連携などに使用する汎用のソフトウェアＡＰの設定変更を完了する。
【０１０７】
なお、Ｓ１２０３において、取得したＳＳＩＤが所定のフォーマットを満たしていると判定した場合に、登録できない旨を示すエラー通知を表示し、再度ＳＳＩＤの入力を促すようにしてもよい。エラー通知としては、設定できない文字列が含まれる旨と、該当する文字列をユーザに通知するものとする。この処理により当該文字列を含まないＳＳＩＤでなければ登録できない旨をユーザに通知することができる。
【０１０８】
図１３は、画面１８３において設定サービス用のソフトウェアＡＰの設定操作を行った際のＭＦＰ１０２の動作を示すフローチャートである。Ｓ１３０１では、ＣＰＵ１３１は、画面１８１においてユーザが設定ボタン１８５を押下したことを検知して設定サービス専用のソフトウェアＡＰの設定処理を開始する。Ｓ１３０２では、ＣＰＵ１３１は、ユーザが画面１８３に入力したＳＳＩＤを取得する。Ｓ１３０３では、ＣＰＵ１３１は、Ｓ１３０２で取得したＳＳＩＤが所定のフォーマットを満たしているか否かを判定する。所定のフォーマットを満たしている場合は、Ｓ１３０４の処理をスキップし、処理をＳ１３０５に進め、所定のフォーマットを満たしていない場合は、処理をＳ１３０４に進める。
【０１０９】
Ｓ１３０４では、ＣＰＵ１３１は、Ｓ１３０２で取得したＳＳＩＤに基づいて所定のフォーマットを満たすＳＳＩＤを生成し、画面１８３に反映する。本実施形態では、一例として、「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」）のフォーマットを満たすＳＳＩＤとなるように制御する。例えば、ＣＰＵ１３１は、ＳＳＩＤの末尾に「＿ＳｅｔｔｉｎｇＭｏｄｅ」を加えることで所定のフォーマットを満たすＳＳＩＤを生成する。なお、設定サービスや設定アプリケーションが準拠する規格にＳＳＩＤの最大文字数などの条件が既定されている場合は、当該条件を満たすよう文字列操作を行い、規格に則ったＳＳＩＤを生成するものとする。なお、Ｓ１３０４の処理は、設定サービスの規格に適合する所定のフォーマットを満たすＳＳＩＤとなるように、自動的に修正を行うユーザ補助の処理である。この処理により、ユーザにより所定のフォーマットを満たさないＳＳＩＤが入力された場合であっても、所定のフォーマットを満たすＳＳＩＤに変換することができる。
【０１１０】
Ｓ１３０５では、ＣＰＵ１３１は、画面１８３を介して受け付けたセキュリティキーとＳＳＩＤを設定サービス用のソフトウェアＡＰとしてストレージ１３４のソフトウェアＡＰ設定１５５に記憶する。記憶が完了すると、設定サービス用のソフトウェアＡＰの設定変更を完了する。
【０１１１】
また、Ｓ１３０３において、ＳＳＩＤが所定のフォーマットを満たしていないと判定した場合に、登録できない旨を示すエラー通知を表示し、再度ＳＳＩＤの入力を促すようにしてもよい。
【０１１２】
以上説明したように、本実施形態では、ソフトウェアＡＰの用途ごとに、異なる設定（ＳＳＩＤ、セキュリティキー、暗号化モード）を記憶しておく。従って、ソフトウェアＡＰを起動する目的に合わせて、異なるＳＳＩＤのソフトウェアＡＰを起動できるようになる。
【０１１３】
また、各々のソフトウェアＡＰの設定変更を受け付ける場合には、変更後のＳＳＩＤのチェックを行う。従って、適切でないＳＳＩＤに設定変更されてしまうことを抑制することができる。また、設定サービス用のＳＳＩＤの設定変更を行う場合は、設定サービスの規格に則ったＳＳＩＤとなるよう自動的に修正を行う。従って、設定サービスの起動時には、所定のフォーマットに則ったＳＳＩＤのソフトウェアＡＰを起動できる。
【０１１４】
なお、本実施形態における設定サービスは、外部端末と連携してＭＦＰの設定を行うためのサービスであり、通信端末１０１などの外部端末から設定値を受信する。また、受信した設定値に基づいて、ＭＦＰ１０１の設定を変更する連携サービスである。
【０１１５】
これらの設定サービスは、ＯＣＦ（Ｏｐｅｎ  Ｃｏｎｎｅｃｔｉｖｉｔｙ  Ｆｏｕｎｄａｔｉｏｎ）やＡｌｌＳｅｅｎなどの団体が推進するＩｏＴ規格に則って外部端末と連携するものであってもよい。また、ＭＦＰのベンダーが独自に提供している設定アプリケーションと連携する設定サービスであってもよい。クラウドを介した印刷ソリューションなどを提供する設定アプリケーションと連携する設定サービスであってもよい。
【０１１６】
＜変形例＞
第１の実施形態では、所定のフォーマットの一例として、「＊＿ＳｅｔｔｉｎｇＭｏｄｅ」を満たすＳＳＩＤとする場合を例示したがこれに限定されるものではない。例えば、汎用のソフトウェアＡＰのＳＳＩＤは、「＊＿Ｐｒｉｎｔｅｒ」となるように、制御することもできる。即ち、ソフトウェアＡＰを起動する用途ごとにＳＳＩＤを異ならせるようにすることもできる。例えば、ＭＦＰ１０２がダイレクト無線通信を使用する複数のサービスに対応している場合、各々のサービス用に起動するソフトウェアＡＰが、異なるＳＳＩＤとなるように制御する。
【０１１７】
この場合、ＭＦＰ１０２は、予め定義されたＳＳＩＤの生成規則（ルール）に基づいて、サービスごとに起動するソフトウェアＡＰを異ならせる。図１４は、ＳＳＩＤの生成規則を説明するための図である。例えば、生成規則としては、ソフトウェアＡＰを立ち上げる用途、対応するサービス、ＳＳＩＤに付加する文字列や、当該文字列を付ける位置（末尾又は先頭）が対応づけて記憶される。ＭＦＰ１０２は、ソフトウェアＡＰを起動する場合に、起動する用途又は起動するサービスに対応づけて記憶されている付加文字列及び規則を取得する。また、取得した付加文字列及び規則を満たすようなＳＳＩＤを生成して、ソフトウェアＡＰを起動するようにすればよい。
【０１１８】
＜その他の実施形態＞
本発明は、上述の各実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣやＦＰＧＡ）によっても実現可能である。
【符号の説明】
【０１１９】
１０１  通信端末
１０２  ＭＦＰ
１３１  ＣＰＵ
１３４  ストレージ
１４２  無線ＬＡＮ  Ｉ／Ｆ
【図１】
2018137686.tif 000003
【図２】
2018137686.tif 000004
【図３】
2018137686.tif 000005
【図４】
2018137686.tif 000006
【図５】
2018137686.tif 000007
【図６】
2018137686.tif 000008
【図７】
2018137686.tif 000009
【図８】
2018137686.tif 000010
【図９】
2018137686.tif 000011
【図１０】
2018137686.tif 000012
【図１１】
2018137686.tif 000013
【図１２】
2018137686.tif 000014
【図１３】
2018137686.tif 000015
【図１４】
2018137686.tif 000016