(57)【要約】      （修正有）【課題】画像形成装置等の電子装置が複数の機能を実現する際の低コスト化とアプリのバージョンアップ作業の軽減化を計る。【解決手段】電子装置（ＭＦＰ）が、外部サーバ上のアプリ（外部アプリ）とネットワーク等の通信回線を介して通信することにより、その外部アプリを利用して動作を実行する。これにより、複数の電子装置で共通のアプリを使用できるため、その各電子装置は低コストで複数の機能を利用できることになる。【選択図】図１
2006114020.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションを利用して動作を実行する電子装置であって、
外部装置と通信回線を介して通信する通信手段と、
該手段によって前記外部装置と通信することにより、該外部装置内のアプリケーションを利用して動作を実行する制御手段と
を設けたことを特徴とする電子装置。
【請求項２】
請求項１記載の電子装置において、
当該電子装置の起動通知を前記通信手段によって前記外部装置へ送信する装置起動通知送信手段と、
該手段による送信に対して、前記外部装置から前記通信手段によって前記ア  プリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録手段と
を設けたことを特徴とする電子装置。
【請求項３】
請求項２記載の電子装置において、
前記装置起動通知送信手段は、当該電子装置への電源投入時に、当該電子装置の起動通知を前記外部装置へ送信することを特徴とする電子装置。
【請求項４】
請求項１記載の電子装置において、
前記制御手段は、前記外部装置から前記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行することを特徴とする電子装置。
【請求項５】
請求項４記載の電子装置において、
前記外部装置から前記通信手段によって前記動作の実行要求を受けた場合に、該要求の正当性を確認するための認証処理を行う認証手段と、
該手段による認証が成功した場合に、前記動作の実行を許可する動作実行許可手段と
を設けたことを特徴とする電子装置。
【請求項６】
請求項５記載の電子装置において、
前記認証手段は、前記動作の実行要求に付加されている認証情報を用いて前記認証処理を行うことを特徴とする電子装置。
【請求項７】
請求項６記載の電子装置において、
前記認証情報は、アプリケーション固有の識別情報であり、
前記認証手段は、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功とすることを特徴とする電子装置。
【請求項８】
請求項６記載の電子装置において、
前記認証情報は、アプリケーションの種別を示す種別情報であり、
前記認証手段は、該種別情報を予め登録されている種別情報と照合し、両識別情報が一致した場合に認証成功とすることを特徴とする電子装置。
【請求項９】
請求項６記載の電子装置において、
前記認証情報は、アプリケーション固有の識別情報とアプリケーションの種別を示す種別情報とからなり、
前記認証手段は、該識別情報および種別情報を予め登録されている識別情報および種別情報とそれぞれ照合し、両識別情報および両種別情報がいずれも一致した場合に認証成功とすることを特徴とする電子装置。
【請求項１０】
請求項４記載の電子装置において、
当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定する識別情報設定手段と、
前記外部装置から前記通信手段によって前記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を前記識別情報設定手段によって設定された識別情報と照合し、両識別情報が一致した場合に前記動作の実行を許可又は拒否する動作実行許可／拒否手段と
を設けたことを特徴とする電子装置。
【請求項１１】
請求項４記載の電子装置において、
前記外部装置から前記通信手段によって前記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別する回線種判別手段と、
該手段による判別結果に応じて前記動作の実行を許可又は拒否する動作実行許可／拒否手段と
を設けたことを特徴とする電子装置。
【請求項１２】
請求項４記載の電子装置において、
前記外部装置から前記通信手段によって何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別する実行要求判別手段と、
該手段によって正常な要求でないと判別された回数を計数する異常回数計数手段と、
該手段による計数値が所定値に達した場合に、前記動作の実行を拒否する動作実行拒否手段と
を設けたことを特徴とする電子装置。
【請求項１３】
請求項１記載の電子装置において、
前記外部装置から前記通信手段によって接続要求を受けた場合に、当該電子装置の利用可能（接続許可）通知を該外部装置へ送信する装置利用可能通知送信手段を設け、
前記制御手段は、前記装置利用可能通知送信手段による送信に対して、前記外部装置から前記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行することを特徴とする電子装置。
【請求項１４】
請求項１３記載の電子装置において、
前記外部装置から前記通信手段によって接続要求を受けた場合に、該要求に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録手段を設けたことを特徴とする電子装置。
【請求項１５】
請求項１３記載の電子装置において、
前記外部装置から前記通信手段によって接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行う認証手段と、
該手段による認証が成功した場合に、前記装置利用可能通知送信手段による送信を許可する送信許可手段と
を設けたことを特徴とする電子装置。
【請求項１６】
請求項１５記載の電子装置において、
前記認証手段は、前記接続要求に付加されている認証情報を用いて前記認証処理を行うことを特徴とする電子装置。
【請求項１７】
請求項１６記載の電子装置において、
前記認証情報は、アプリケーション固有の識別情報であり、
前記認証手段は、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功とすることを特徴とする電子装置。
【請求項１８】
請求項１３記載の電子装置において、
前記通信手段は、前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う手段を有し、
該手段によって行われた通信シーケンスから前記接続要求の正当性を確認するための認証処理を行う認証手段と、
該手段による認証が成功した場合に、前記装置利用可能通知送信手段による送信を許可する送信許可手段と
を設けたことを特徴とする電子装置。
【請求項１９】
請求項１８記載の電子装置において、
前記認証手段は、前記通信シーケンスが前記プロトコルに従っているか否かを判定し、従っている場合に認証成功とすることを特徴とする電子装置。
【請求項２０】
請求項１３記載の電子装置において、
前記外部装置から前記通信手段によって接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行う第１の認証手段と、
該手段による認証が成功した場合に、前記装置利用可能通知送信手段による送信を許可する送信許可手段と、
前記装置利用可能通知送信手段による送信に対して、前記外部装置から前記通信手段によって前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証手段と、
該手段による認証が成功した場合に、前記動作の実行を許可する動作実行許可手段と
を設けたことを特徴とする電子装置。
【請求項２１】
請求項１３記載の電子装置において、
前記通信手段は、前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う手段を有し、
該手段によって行われた通信シーケンスから前記接続要求の正当性を確認するための第１の認証処理を行う第１の認証手段と、
該手段による認証が成功した場合に、前記装置利用可能通知送信手段による送信を許可する送信許可手段と、
前記装置利用可能通知送信手段による送信に対して、前記外部装置から前記通信手段によって前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証手段と、
該手段による認証が成功した場合に、前記動作の実行を許可する動作実行許可手段と
を設けたことを特徴とする電子装置。
【請求項２２】
請求項２記載の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、
前記外部装置に、
アプリケーション記憶手段と、
前記電子装置と通信回線を介して通信する通信手段と、
前記電子装置から前記通信手段によって該電子装置の起動通知を受けた場合に、アプリケーション利用可能通知を前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションに関する情報を付加して前記通信手段によって前記電子装置へ送信するアプリケーション利用可能通知送信手段と
を設けたことを特徴とする電子装置システム。
【請求項２３】
請求項４記載の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、
前記外部装置に、
アプリケーション記憶手段と、
前記電子装置と通信回線を介して通信する通信手段と、
前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を前記通信手段によって前記電子装置へ送信する動作実行要求送信手段と
を設けたことを特徴とする電子装置システム。
【請求項２４】
請求項１３記載の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、
前記外部装置に、
アプリケーション記憶手段と、
前記電子装置と通信回線を介して通信する通信手段と、
接続要求を前記通信手段によって前記電子装置へ送信する接続要求送信手段と、
該手段による送信に対して、前記電子装置から該電子装置の利用可能通知を受けた後、前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を前記通信手段によって前記電子装置へ送信する動作実行要求送信手段と
を設けたことを特徴とする電子装置システム。
【請求項２５】
請求項２４記載の電子装置システムにおいて、
前記外部装置の接続要求送信手段は、前記アプリケーションの起動時に、接続要求を前記通信手段によって前記電子装置へ送信することを特徴とする電子装置システム。
【請求項２６】
請求項２４記載の電子装置システムにおいて、
前記外部装置に、操作手段を設け、
前記外部装置の接続要求送信手段は、前記操作手段による操作により、接続要求を前記通信手段によって前記電子装置へ送信することを特徴とする電子装置システム。
【請求項２７】
請求項１４記載の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、
前記外部装置に、
アプリケーション記憶手段と、
前記電子装置と通信回線を介して通信する通信手段と、
接続要求を前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションに関する情報を付加して前記通信手段によって前記電子装置へ送信する接続要求送信手段と、
該手段による送信に対して、前記電子装置から該電子装置の利用可能通知を受けた後、前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を前記通信手段によって前記電子装置へ送信する動作実行要求送信手段と
を設けたことを特徴とする電子装置システム。
【請求項２８】
請求項１３記載の電子装置を複数備え、その各電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、
前記外部装置に、
操作手段と、
アプリケーション記憶手段と、
前記電子装置と前記通信回線を介して通信する通信手段と、
接続要求を前記通信手段によって前記各電子装置へ送信する接続要求送信手段と、
該手段による送信に対して、利用可能な電子装置から利用可能通知を受けた後、該電子装置へ前記操作手段によって指定された機能の有無を前記通信手段によって問い合わせる機能問合手段と、
該手段による問い合わせに対して、その問い合わせの結果を受けた場合に、前記利用可能な電子装置のうちの前記指定された機能を実現可能な電子装置を選択する装置選択手段と、
前記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによって前記指定された機能を実現するための動作の実行要求を前記通信手段によって前記装置選択手段により選択された電子装置へ送信する動作実行要求送信手段と
を設けたことを特徴とする電子装置システム。
【請求項２９】
アプリケーションを利用して動作を実行する電子装置における制御方法であって、
外部装置と通信回線を介して通信することにより、該外部装置内のアプリケーションを利用して動作を実行することを特徴とする制御方法。
【請求項３０】
請求項２９記載の電子装置における制御方法において、
当該電子装置の起動通知を前記外部装置へ送信し、その送信に対して該外部装置からアプリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録することを特徴とする制御方法。
【請求項３１】
請求項３０記載の電子装置における制御方法において、
当該電子装置への電源投入時に、当該電子装置の起動通知を前記外部装置へ送信することを特徴とする制御方法。
【請求項３２】
請求項２９記載の電子装置における制御方法において、
前記外部装置から該外部装置内のアプリケーションによる動作の実行要求通知を受けた場合に、該動作を実行することを特徴とする制御方法。
【請求項３３】
請求項３２記載の電子装置における制御方法において、
前記外部装置から前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための認証処理を行い、認証が成功した場合に前記動作の実行を許可することを特徴とする制御方法。
【請求項３４】
請求項３２記載の電子装置における制御方法において、
当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定しておき、前記外部装置から前記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を前記設定された識別情報と照合し、両識別情報が一致した場合に前記動作の実行を許可又は拒否することを特徴とする制御方法。
【請求項３５】
請求項３２記載の電子装置における制御方法において、
前記外部装置から前記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別し、その判別結果に応じて前記動作の実行を許可又は拒否することを特徴とする制御方法。
【請求項３６】
請求項３２記載の電子装置における制御方法において、
前記外部装置から何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別して、正常な要求でない回数を計数し、その計数値が所定値に達した場合に、前記動作の実行を拒否することを特徴とする制御方法。
【請求項３７】
請求項２９記載の電子装置における制御方法において、
前記外部装置から接続要求を受けた場合に、当該電子装置の利用可能（接続許可）通知を該外部装置へ送信し、その送信に対して前記外部装置から前記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行することを特徴とする電子装置。
【請求項３８】
請求項３７記載の電子装置における制御方法において、
前記外部装置から接続要求を受けた場合に、該実行要求に付加されている利用可能なアプリケーションに関する情報を登録することを特徴とする制御方法。
【請求項３９】
請求項３７記載の電子装置における制御方法において、
前記外部装置から接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行い、認証が成功した場合に前記利用可能通知を許可することを特徴とする制御方法。
【請求項４０】
請求項３７記載の電子装置において、
前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該実行要求の正当性を確認するための通信シーケンスを行い、その通信シーケンスから前記接続要求の正当性を確認するための認証処理を行い、認証が成功した場合に前記利用可能通知を許可することを特徴とする制御方法。
【請求項４１】
請求項３７記載の電子装置における制御方法において、
前記外部装置から接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行い、認証が成功した場合に前記利用可能通知の送信を許可し、その送信に対して前記外部装置から前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行い、認証が成功した場合に前記動作の実行を許可することを特徴とする制御方法。
【請求項４２】
請求項３７記載の電子装置における制御方法において、
前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行い、その通信シーケンスから前記接続要求の正当性を確認するための第１の認証処理を行い、認証が成功した場合に前記利用可能通知の送信を許可し、その送信に対して前記外部装置から前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行い、認証が成功した場合に前記動作の実行を許可することを特徴とする制御方法。
【請求項４３】
アプリケーションを利用して動作を実行する電子装置のコンピュータに、
外部装置と通信回線を介して通信する通信機能と、
該機能によって前記外部装置と通信することにより、該外部装置内のアプリケーションを利用して動作を実行する制御機能と
を実現させるためのプログラム。
【請求項４４】
請求項１記載のプログラムにおいて、
前記コンピュータに、
当該電子装置の起動通知を前記通信機能によって前記外部装置へ送信する装置起動通知送信機能と、
該機能による送信に対して、前記外部装置から前記通信機能によって前記アプリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録機能と
を実現させるためのプログラム。
【請求項４５】
請求項４４記載のプログラムにおいて、
前記装置起動通知送信機能は、当該電子装置への電源投入時に、当該電子装置の起動通知を前記外部装置へ送信することを特徴とするプログラム。
【請求項４６】
請求項４３記載のプログラムにおいて、
前記制御機能は、前記外部装置から前記通信機能によって該外部装置内のアプリケーションによる動作の実行要求通知を受けた場合に、該動作を実行することを特徴とするプログラム。
【請求項４７】
請求項４６記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための認証処理を行う認証機能と、
該機能による認証が成功した場合に、前記動作の実行を許可する動作実行許可機能と
を実現させるためのプログラム。
【請求項４８】
請求項４７記載のプログラムにおいて、
前記認証機能は、前記動作の実行要求に付加されている認証情報を用いて前記認証処理を行うことを特徴とするプログラム。
【請求項４９】
請求項４８記載のプログラムにおいて、
前記認証情報は、アプリケーション固有の識別情報であり、
前記認証機能は、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功とすることを特徴とするプログラム。
【請求項５０】
請求項４８記載のプログラムにおいて、
前記認証情報は、アプリケーションの種別を示す種別情報であり、
前記認証機能は、該種別情報を予め登録されている種別情報（当該電子装置で実行可能な動作を実現するためのアプリケーションの種別情報）と照合し、両識別情報が一致した場合に認証成功とすることを特徴とするプログラム。
【請求項５１】
請求項４８記載のプログラムにおいて、
前記認証情報は、アプリケーション固有の識別情報とアプリケーションの種別を示す種別情報とからなり、
前記認証機能は、該識別情報および種別情報を予め登録されている識別情報および種別情報とそれぞれ照合し、両識別情報および両種別情報がいずれも一致した場合に認証成功とすることを特徴とするプログラム。
【請求項５２】
請求項４６記載のプログラムにおいて、
前記コンピュータに、
当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定する識別情報設定機能と、
前記外部装置から前記通信機能によって前記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を前記識別情報設定機能によって設定された識別情報と照合し、両識別情報が一致した場合に前記動作の実行を許可又は拒否する動作実行許可／拒否機能と
を実現させるためのプログラム。
【請求項５３】
請求項４６記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって前記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別する回線種判別機能と、
該機能による判別結果に応じて前記動作の実行を許可又は拒否する動作実行許可／拒否機能と
を実現させるためのプログラム。
【請求項５４】
請求項４６記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別する実行要求判別機能と、
該機能によって正常な要求でないと判別された回数を計数する異常回数計数機能と、
該機能による計数値が所定値に達した場合に、前記動作の実行を拒否する動作実行拒否機能と
を実現させるためのプログラム。
【請求項５５】
請求項４３記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって接続要求を受けた場合に、当該電子装置の利用可能を該外部装置へ送信する装置利用可能通知送信機能を実現させ、
前記制御機能は、前記装置利用可能通知送信機能による送信に対して、前記外部装置から前記通信機能によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行することを特徴とするプログラム。
【請求項５６】
請求項５５記載のプログラムにおいて、
前記コンピュータに、
アプリケーション情報記憶機能と、
前記外部装置から前記通信機能によって接続要求を受けた場合に、該接続要求に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録機能と
を実現させるためのプログラム。
【請求項５７】
請求項５５記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行う認証機能と、
該機能による認証が成功した場合に、前記装置利用可能通知送信機能による送信を許可する送信許可機能と
を実現させるためのプログラム。
【請求項５８】
請求項５７記載のプログラムにおいて、
前記認証機能は、前記接続要求に付加されている認証情報を用いて前記認証処理を行うことを特徴とするプログラム。
【請求項５９】
請求項５８記載のプログラムにおいて、
前記認証情報は、アプリケーション固有の識別情報であり、
前記認証機能は、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功とすることを特徴とするプログラム。
【請求項６０】
請求項５５記載のプログラムにおいて、
前記通信機能は、前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う機能を有し、
該機能によって行われた通信シーケンスから前記接続要求の正当性を確認するための認証処理を行う認証機能と、
該機能による認証が成功した場合に、前記装置利用可能通知送信機能による送信を許可する送信許可機能と
を実現させるためのプログラム。
【請求項６１】
請求項６０記載のプログラムにおいて、
前記認証機能は、前記通信シーケンスが前記プロトコルに従っているか否かを判定し、従っている場合に認証成功とすることを特徴とするプログラム。
【請求項６２】
請求項５５記載のプログラムにおいて、
前記コンピュータに、
前記外部装置から前記通信機能によって接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行う第１の認証機能と、
該機能による認証が成功した場合に、前記装置利用可能通知送信機能による送信を許可する送信許可機能と、
前記装置利用可能通知送信機能による送信に対して、前記外部装置から前記通信機能によって前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証機能と、
該機能による認証が成功した場合に、前記動作の実行を許可する動作実行許可機能と
を実現させるためのプログラム。
【請求項６３】
請求項５５記載のプログラムにおいて、
前記通信機能は、前記外部装置から接続要求を受けた場合に、前記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う機能を有し、
該機能によって行われた通信シーケンスから前記接続要求の正当性を確認するための認証処理を行う第１の認証機能と、
該機能による認証が成功した場合に、前記装置利用可能通知送信機能による送信を許可する送信許可機能と、
前記装置利用可能通知送信機能による送信に対して、前記外部装置から前記通信機能によって前記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証機能と、
該機能による認証が成功した場合に、前記動作の実行を許可する動作実行許可機能と
を実現させるためのプログラム。
【請求項６４】
請求項４３乃至６３のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置（スキャナ装置等の画像読取装置やデジタル複写機，プリンタ，ファクシミリ装置，デジタル複合機等の画像形成装置など）等の電子装置、その電子装置と通信回線を介して接続する外部装置とを備えた電子装置システム、上記電子装置における制御方法、その電子装置のコンピュータに実行させるプログラム、およびそのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
例えば、近年、画像形成部（プロッタ部）と画像読取部（スキャナ部）とファクシミリ（ＦＡＸ）通信部と画像処理部（コントローラ）などを組み合わせて構成し、コピー機能（複写機能），プリンタ機能，スキャナ機能，ファクシミリ機能等の各機能を自由に選択して使用できるデジタル複合機等の多機能の画像形成装置が、多くのユーザに利用されるようになっている。
【０００３】
従来のこのような多機能の画像形成装置は、一般に複写機ベースで構成されており、その全機能の一部を使用することによりプリンタやスキャナとして動作させたり、ＦＡＸ通信部を追加することによりファクシミリ装置としても使用できるようにしたりしていた。
ところで、各機能を自由に選択して実行させるために、各機能毎にその機能を実現するためのアプリケーション（以下単に「アプリ」ともいう）を備える必要があるが、従来は、それらのアプリを全て１台の画像形成装置に備えていた（例えば特許文献１参照）。
【特許文献１】特開２００２−８４３８３号公報
【０００４】
なお、アプリ（アプリケーション）とは、アプリケーション・ソフトウェア又はアプリケーション・プログラムのことを指す。このアプリは、ユーザインタフェースを行う部分で、ユーザに提供する機能を実現するためのものであり、コピー機能を実現するためのアプリ（コピーアプリ）、プリンタ機能を実現するためのアプリ（プリンタアプリ）、スキャナ機能を実現するためのアプリ（スキャナアプリ）、ＦＡＸ（ファクシミリ）機能を実現するためのアプリ（ＦＡＸアプリ）などがある。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した多機能の画像形成装置において、利用すべき機能を実現するためのアプリを全て備えることは、コストアップにつながる。また、アプリの数が多いほど、アプリ（機能）をバージョンアップさせるためのサービスマンによる作業の回数が多くなる。
この発明は、上記の点に鑑みてなされたものであり、画像形成装置等の電子装置が複数の機能を実現する際の低コスト化とアプリのバージョンアップ作業の軽減化を計ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、上記の目的を達成するため、電子装置、その電子装置と通信回線を介して接続する外部装置とを備えた電子装置システム、上記電子装置における制御方法、その電子装置のコンピュータに実行させるプログラム、およびそのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【０００７】
請求項１の発明による電子装置は、アプリケーションを利用して動作（コピー動作，プリント動作，スキャン動作，ファクス動作など）を実行する電子装置であって、外部装置と通信回線を介して通信する通信手段と、該手段によって上記外部装置と通信することにより、該外部装置内のアプリケーションを利用して動作を実行する制御手段とを設けたものである。
【０００８】
請求項２の発明による電子装置は、請求項１の電子装置において、当該電子装置の起動通知を上記通信手段によって上記外部装置へ送信する装置起動通知送信手段と、該手段による送信に対して、上記外部装置から上記通信手段によって上記アプリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録手段とを設けたものである。
請求項３の発明による電子装置は、請求項２の電子装置において、上記装置起動通知送信手段が、当該電子装置への電源投入時に、当該電子装置の起動通知を上記外部装置へ送信するものである。
【０００９】
請求項４の発明による電子装置は、請求項１の電子装置において、上記制御手段が、上記外部装置から上記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行するものである。
請求項５の発明による電子装置は、請求項４の電子装置において、上記外部装置から上記通信手段によって上記動作の実行要求を受けた場合に、該要求の正当性を確認するための認証処理を行う認証手段と、該手段による認証が成功した場合に、上記動作の実行を許可する動作実行許可手段とを設けたものである。
【００１０】
請求項６の発明による電子装置は、請求項５の電子装置において、上記認証手段が、上記動作の実行要求に付加されている認証情報を用いて上記認証処理を行うものである。
請求項７の発明による電子装置は、請求項６の電子装置において、上記認証情報を、アプリケーション固有の識別情報とし、上記認証手段が、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功としたものである。
【００１１】
請求項８の発明による電子装置は、請求項６の電子装置において、上記認証情報を、アプリケーションの種別を示す種別情報とし、上記認証手段が、該種別情報を予め登録されている種別情報（当該電子装置で実行可能な動作を実現するためのアプリケーションの種別情報）と照合し、両識別情報が一致した場合に認証成功としたものである。
請求項９の発明による電子装置は、請求項６の電子装置において、上記認証情報を、アプリケーション固有の識別情報とアプリケーションの種別を示す種別情報とによって構成し、上記認証手段が、該識別情報および種別情報を予め登録されている識別情報および種別情報とそれぞれ照合し、両識別情報および両種別情報がいずれも一致した場合に認証成功としたものである。
【００１２】
請求項１０の発明による電子装置は、請求項４の電子装置において、当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定する識別情報設定手段と、上記外部装置から上記通信手段によって上記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を上記識別情報設定手段によって設定された識別情報と照合し、両識別情報が一致した場合に上記動作の実行を許可又は拒否する動作実行許可／拒否手段とを設けたものである。
【００１３】
請求項１１の発明による電子装置は、請求項４の電子装置において、上記外部装置から上記通信手段によって上記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別する回線種判別手段と、該手段による判別結果に応じて上記動作の実行を許可又は拒否する動作実行許可／拒否手段とを設けたものである。
請求項１２の発明による電子装置は、請求項４の電子装置において、上記外部装置から上記通信手段によって何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別する実行要求判別手段と、該手段によって正常な要求でないと判別された回数を計数する異常回数計数手段と、該手段による計数値が所定値に達した場合に、上記動作の実行を拒否する動作実行拒否手段とを設けたものである。
【００１４】
請求項１３の発明による電子装置は、請求項１の電子装置において、上記外部装置から上記通信手段によって接続要求を受けた場合に、当該電子装置の利用可能（接続許可）通知を該外部装置へ送信する装置利用可能通知送信手段を設け、上記制御手段が、上記装置利用可能通知送信手段による送信に対して、上記外部装置から上記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行するものである。
請求項１４の発明による電子装置は、請求項１３の電子装置において、上記外部装置から上記通信手段によって接続要求を受けた場合に、該要求に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録手段を設けたものである。
【００１５】
請求項１５の発明による電子装置は、請求項１３の電子装置において、上記外部装置から上記通信手段によって接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行う認証手段と、該手段による認証が成功した場合に、上記装置利用可能通知送信手段による送信を許可する送信許可手段とを設けたものである。
請求項１６の発明による電子装置は、請求項１５の電子装置において、上記認証手段が、上記接続要求に付加されている認証情報を用いて上記認証処理を行うものである。
請求項１７の発明による電子装置は、請求項１６の電子装置において、上記認証情報を、アプリケーション固有の識別情報とし、上記認証手段が、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功としたものである。
【００１６】
請求項１８の発明による電子装置は、請求項１３の電子装置において、上記通信手段が、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う手段を備え、該手段によって行われた通信シーケンスから上記接続要求の正当性を確認するための認証処理を行う認証手段と、該手段による認証が成功した場合に、上記装置利用可能通知送信手段による送信を許可する送信許可手段とを設けたものである。
請求項１９の発明による電子装置は、請求項１８の電子装置において、上記認証手段が、上記通信シーケンスが上記プロトコルに従っているか否かを判定し、従っている場合に認証成功としたものである。
【００１７】
請求項２０の発明による電子装置は、請求項１３の電子装置において、上記外部装置から上記通信手段によって接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行う第１の認証手段と、該手段による認証が成功した場合に、上記装置利用可能通知送信手段による送信を許可する送信許可手段と、上記装置利用可能通知送信手段による送信に対して、上記外部装置から上記通信手段によって上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証手段と、該手段による認証が成功した場合に、上記動作の実行を許可する動作実行許可手段とを設けたものである。
【００１８】
請求項２１の発明による電子装置は、請求項１３の電子装置において、上記通信手段に、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う手段を備え、該手段によって行われた通信シーケンスから上記接続要求の正当性を確認するための第１の認証処理を行う第１の認証手段と、該手段による認証が成功した場合に、上記装置利用可能通知送信手段による送信を許可する送信許可手段と、上記装置利用可能通知送信手段による送信に対して、上記外部装置から上記通信手段によって上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証手段と、該手段による認証が成功した場合に、上記動作の実行を許可する動作実行許可手段とを設けたものである。
【００１９】
請求項２２の発明による電子装置システムは、請求項２の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、上記外部装置に、アプリケーション記憶手段と、上記電子装置と通信回線を介して通信する通信手段と、上記電子装置から上記通信手段によって該電子装置の起動通知を受けた場合に、アプリケーション利用可能通知を上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションに関する情報を付加して上記通信手段によって上記電子装置へ送信するアプリケーション利用可能通知送信手段とを設けたものである。
【００２０】
請求項２３の発明による電子装置システムは、請求項４の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、上記外部装置に、アプリケーション記憶手段と、上記電子装置と通信回線を介して通信する通信手段と、上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を上記通信手段によって上記電子装置へ送信する動作実行要求送信手段とを設けたものである。
【００２１】
請求項２４の発明による電子装置システムは、請求項１３の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、上記外部装置に、アプリケーション記憶手段と、上記電子装置と通信回線を介して通信する通信手段と、接続要求を上記通信手段によって上記電子装置へ送信する接続要求送信手段と、該手段による送信に対して、上記電子装置から該電子装置の利用可能通知を受けた後、上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を上記通信手段によって上記電子装置へ送信する動作実行要求送信手段とを設けたものである。
【００２２】
請求項２５の発明による電子装置システムは、請求項２４の電子装置システムにおいて、上記外部装置の接続要求送信手段が、上記アプリケーションの起動時に、接続要求を上記通信手段によって上記電子装置へ送信するものである。
請求項２６の発明による電子装置システムは、請求項２４の電子装置システムにおいて、上記外部装置に、操作手段を設け、上記外部装置の接続要求送信手段が、上記操作手段による操作により、接続要求を上記通信手段によって上記電子装置へ送信するものである。
【００２３】
請求項２７の発明による電子装置システムは、請求項１４の電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、上記外部装置に、アプリケーション記憶手段と、上記電子装置と通信回線を介して通信する通信手段と、接続要求を上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションに関する情報を付加して上記通信手段によって上記電子装置へ送信する接続要求送信手段と、該手段による送信に対して、上記電子装置から該電子装置の利用可能通知を受けた後、上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによる動作の実行要求を上記通信手段によって上記電子装置へ送信する動作実行要求送信手段とを設けたものである。
【００２４】
請求項２８の発明による電子装置システムは、請求項１３の電子装置を複数備え、その各電子装置と外部装置とを通信回線を介して通信可能に接続する電子装置システムにおいて、上記外部装置に、操作手段と、アプリケーション記憶手段と、上記電子装置と上記通信回線を介して通信する通信手段と、接続要求を上記通信手段によって上記各電子装置へ送信する接続要求送信手段と、該手段による送信に対して、利用可能な電子装置から利用可能通知を受けた後、該電子装置へ上記操作手段によって指定された機能の有無を上記通信手段によって問い合わせる機能問合手段と、該手段による問い合わせに対して、その問い合わせの結果を受けた場合に、上記利用可能な電子装置のうちの上記指定された機能を実現可能な電子装置を選択する装置選択手段と、上記アプリケーション記憶手段に記憶されている利用可能なアプリケーションによって上記指定された機能を実現するための動作の実行要求を上記通信手段によって上記装置選択手段により選択された電子装置へ送信する動作実行要求送信手段とを設けたものである。
請求項２９の発明による電子装置システムは、アプリケーションを利用して動作を実行する電子装置における制御方法であって、外部装置と通信回線を介して通信することにより、該外部装置内のアプリケーションを利用して動作を実行するものである。
【００２５】
請求項３０の発明による電子装置の制御方法は、請求項２９の制御方法において、当該電子装置の起動通知を上記外部装置へ送信し、その送信に対して該外部装置からアプリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録するものである。
請求項３１の発明による電子装置の制御方法は、請求項３０の制御方法において、当該電子装置への電源投入時に、当該電子装置の起動通知を上記外部装置へ送信するものである。
【００２６】
請求項３２の発明による電子装置の制御方法は、請求項２９の制御方法において、上記外部装置から該外部装置内のアプリケーションによる動作の実行要求通知を受けた場合に、該動作を実行するものである。
請求項３３の発明による電子装置の制御方法は、請求項３２の制御方法において、上記外部装置から上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための認証処理を行い、認証が成功した場合に上記動作の実行を許可するものである。
【００２７】
請求項３４の発明による電子装置の制御方法は、請求項３２の制御方法において、当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定しておき、上記外部装置から上記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を上記設定された識別情報と照合し、両識別情報が一致した場合に上記動作の実行を許可又は拒否するものである。
請求項３５の発明による電子装置の制御方法は、請求項３２の制御方法において、上記外部装置から上記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別し、その判別結果に応じて上記動作の実行を許可又は拒否するものである。
【００２８】
請求項３６の発明による電子装置の制御方法は、請求項３２の制御方法において、上記外部装置から何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別して、正常な要求でない回数を計数し、その計数値が所定値に達した場合に、上記動作の実行を拒否するものである。
請求項３７の発明による電子装置の制御方法は、請求項２９の制御方法において、上記外部装置から接続要求を受けた場合に、当該電子装置の利用可能（接続許可）通知を該外部装置へ送信し、その送信に対して上記外部装置から上記通信手段によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行するものである。
【００２９】
請求項３８の発明による電子装置の制御方法は、請求項３７の制御方法において、上記外部装置から接続要求を受けた場合に、該実行要求に付加されている利用可能なアプリケーションに関する情報を登録するものである。
請求項３９の発明による電子装置の制御方法は、請求項３７の制御方法において、上記外部装置から接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行い、認証が成功した場合に上記利用可能通知を許可するものである。
【００３０】
請求項４０の発明による電子装置の制御方法は、請求項３７の電子装置において、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該実行要求の正当性を確認するための通信シーケンスを行い、その通信シーケンスから上記接続要求の正当性を確認するための認証処理を行い、認証が成功した場合に上記利用可能通知を許可するものである。
請求項４１の発明による電子装置の制御方法は、請求項３７の制御方法において、上記外部装置から接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行い、認証が成功した場合に上記利用可能通知の送信を許可し、その送信に対して上記外部装置から上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行い、認証が成功した場合に上記動作の実行を許可するものである。
【００３１】
請求項４２の発明による電子装置の制御方法は、請求項３７の制御方法において、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行い、その通信シーケンスから上記接続要求の正当性を確認するための第１の認証処理を行い、認証が成功した場合に上記利用可能通知の送信を許可し、その送信に対して上記外部装置から上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行い、認証が成功した場合に上記動作の実行を許可するものである。
【００３２】
請求項４３の発明によるプログラムは、アプリケーションを利用して動作を実行する電子装置のコンピュータに、外部装置と通信回線を介して通信する通信機能と、該機能によって上記外部装置と通信することにより、該外部装置内のアプリケーションを利用して動作を実行する制御機能とを実現させるためのものである。
請求項４４の発明によるプログラムは、請求項４３のプログラムにおいて、上記コンピュータに、当該電子装置の起動通知を上記通信機能によって上記外部装置へ送信する装置起動通知送信機能と、該機能による送信に対して、上記外部装置から上記通信機能によって上記アプリケーション利用可能通知を受けた場合に、該通知に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録機能とを実現させるためのものである。
【００３３】
請求項４５の発明によるプログラムは、請求項４４のプログラムにおいて、上記装置起動通知送信機能は、当該電子装置への電源投入時に、当該電子装置の起動通知を上記外部装置へ送信するものである。
請求項４６の発明によるプログラムは、請求項４３のプログラムにおいて、上記制御機能は、上記外部装置から上記通信機能によって該外部装置内のアプリケーションによる動作の実行要求通知を受けた場合に、該動作を実行するものである。
【００３４】
請求項４７の発明によるプログラムは、請求項４６のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための認証処理を行う認証機能と、該機能による認証が成功した場合に、上記動作の実行を許可する動作実行許可機能とを実現させるためのものである。
請求項４８の発明によるプログラムは、請求項４７のプログラムにおいて、上記認証機能は、上記動作の実行要求に付加されている認証情報を用いて上記認証処理を行うものである。
【００３５】
請求項４９の発明によるプログラムは、請求項４８のプログラムにおいて、上記認証情報を、アプリケーション固有の識別情報とし、上記認証機能が、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功としたものである。
請求項５０の発明によるプログラムは、請求項４８のプログラムにおいて、上記認証情報を、アプリケーションの種別を示す種別情報とし、上記認証機能が、該種別情報を予め登録されている種別情報（当該電子装置で実行可能な動作を実現するためのアプリケーションの種別情報）と照合し、両識別情報が一致した場合に認証成功としたものである。
【００３６】
請求項５１の発明によるプログラムは、請求項４８のプログラムにおいて、上記認証情報を、アプリケーション固有の識別情報とアプリケーションの種別を示す種別情報とによって構成し、上記認証機能が、該識別情報および種別情報を予め登録されている識別情報および種別情報とそれぞれ照合し、両識別情報および両種別情報がいずれも一致した場合に認証成功としたものである。
請求項５２の発明によるプログラムは、請求項４６のプログラムにおいて、上記コンピュータに、当該電子装置へのアクセスを許可又は拒否するアプリケーション固有の識別情報を設定する識別情報設定機能と、上記外部装置から上記通信機能によって上記動作の実行要求を受けた場合に、該実行要求に付加されているアプリケーション固有の識別情報を上記識別情報設定機能によって設定された識別情報と照合し、両識別情報が一致した場合に上記動作の実行を許可又は拒否する動作実行許可／拒否機能とを実現させるためのものである。
【００３７】
請求項５３の発明によるプログラムは、請求項４６のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって上記動作の実行要求を受けた場合に、該実行要求を通した通信回線の種類を判別する回線種判別機能と、該機能による判別結果に応じて上記動作の実行を許可又は拒否する動作実行許可／拒否機能とを実現させるためのものである。
請求項５４の発明によるプログラムは、請求項４６のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって何らかの動作の実行要求を受けた場合に、該実行要求が正常な要求であるか否かを判別する実行要求判別機能と、該機能によって正常な要求でないと判別された回数を計数する異常回数計数機能と、該機能による計数値が所定値に達した場合に、上記動作の実行を拒否する動作実行拒否機能とを実現させるためのものである。
【００３８】
請求項５５の発明によるプログラムは、請求項４３のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって接続要求を受けた場合に、当該電子装置の利用可能（接続許可）を該外部装置へ送信する装置利用可能通知送信機能を実現させ、上記制御機能は、上記装置利用可能通知送信機能による送信に対して、上記外部装置から上記通信機能によって該外部装置内のアプリケーションによる動作の実行要求を受けた場合に、該動作を実行するものである。
請求項５６の発明によるプログラムは、請求項５５のプログラムにおいて、上記コンピュータに、アプリケーション情報記憶機能と、上記外部装置から上記通信機能によって接続要求を受けた場合に、該接続要求に付加されている利用可能なアプリケーションに関する情報を登録するアプリケーション情報登録機能とを実現させるためのものである。
【００３９】
請求項５７の発明によるプログラムは、請求項５５のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって接続要求を受けた場合に、該接続要求の正当性を確認するための認証処理を行う認証機能と、該機能による認証が成功した場合に、上記装置利用可能通知送信機能による送信を許可する送信許可機能とを実現させるためのものである。
請求項５８の発明によるプログラムは、請求項５７のプログラムにおいて、上記認証機能は、上記接続要求に付加されている認証情報を用いて上記認証処理を行うものである。
請求項５９の発明によるプログラムは、請求項５８のプログラムにおいて、上記認証情報を、アプリケーション固有の識別情報とし、上記認証機能が、該識別情報を予め登録されている識別情報と照合し、両識別情報が一致した場合に認証成功としたものである。
【００４０】
請求項６０の発明によるプログラムは、請求項５５のプログラムにおいて、上記通信機能に、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う機能を備え、上記コンピュータに、上記通信機能によって行われた通信シーケンスから上記接続要求の正当性を確認するための認証処理を行う認証機能と、該機能による認証が成功した場合に、上記装置利用可能通知送信機能による送信を許可する送信許可機能とを実現させるためのものである。
請求項６１の発明によるプログラムは、請求項６０のプログラムにおいて、上記認証機能が、上記通信シーケンスが上記プロトコルに従っているか否かを判定し、従っている場合に認証成功としたものである。
【００４１】
請求項６２の発明によるプログラムは、請求項５５のプログラムにおいて、上記コンピュータに、上記外部装置から上記通信機能によって接続要求を受けた場合に、該接続要求の正当性を確認するための第１の認証処理を行う第１の認証機能と、該機能による認証が成功した場合に、上記装置利用可能通知送信機能による送信を許可する送信許可機能と、上記装置利用可能通知送信機能による送信に対して、上記外部装置から上記通信機能によって上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証機能と、該機能による認証が成功した場合に、上記動作の実行を許可する動作実行許可機能とを実現させるためのものである。
【００４２】
請求項６３の発明によるプログラムは、請求項５５のプログラムにおいて、上記通信機能に、上記外部装置から接続要求を受けた場合に、上記外部装置との間で予め定められたプロトコルに従って該接続要求の正当性を確認するための通信シーケンスを行う機能を備え、上記コンピュータに、上記通信機能によって行われた通信シーケンスから上記接続要求の正当性を確認するための認証処理を行う第１の認証機能と、該機能による認証が成功した場合に、上記装置利用可能通知送信機能による送信を許可する送信許可機能と、上記装置利用可能通知送信機能による送信に対して、上記外部装置から上記通信機能によって上記動作の実行要求を受けた場合に、該実行要求の正当性を確認するための第２の認証処理を行う第２の認証機能と、該機能による認証が成功した場合に、上記動作の実行を許可する動作実行許可機能とを実現させるためのものである。
請求項６４の発明による記録媒体は、請求項４３〜６３のいずれのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００４３】
この発明によれば、複数の電子装置で共通のアプリを使用できるため、その各電子装置は低コストで複数の機能を利用できることになる。また、アプリのバージョンアップ作業の軽減化を計ることもできる。
【発明を実施するための最良の形態】
【００４４】
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
まず、この発明による電子装置システムの第１実施例である画像形成システムについて説明する。
図１は、その画像形成システムのネットワーク接続例を示す概念図である。
【００４５】
この画像形成システムは、通信機能を有する電子装置としてデジタル複合機（以下「ＭＦＰ」ともいう）１０を含む種々の画像処理装置を、外部装置として２台の外部サーバ２０（２０ａ，２０ｂ）をそれぞれ備え、それらをＬＡＮ（ローカルエリアネットワーク）等のネットワーク１によって通信可能に接続できるものである。なお、例えば、ＭＦＰ１０と外部サーバ２０は、ネットワーク１によって１対多の関係で通信することができるが、ＭＦＰ１０と外部サーバ２０とをＵＳＢやＩＥＥＥ１３９４等の通信回線によって接続することにより、ＭＦＰ１０と外部サーバ２０が１対１の関係で通信することも可能である。また、外部サーバ２０は１台であっても、あるいは３台以上あっても構わない。
【００４６】
次に、ＭＦＰ１０のハードウェア構成例について、図２を用いて具体的に説明する。
図２は、ＭＦＰ１０のハードウェア構成例を示すブロック図である。
このＭＦＰ１０は、デジタル複写機，プリンタ，ＦＡＸ装置，スキャナ装置としての機能、つまりコピー機能，プリンタ機能，ＦＡＸ機能，スキャナ機能を含む各種機能を実現できる画像形成装置であり、図２に示すように、コントローラ１１，ＦＣＵ（ファックスコントロールユニット）１２，エンジンインタフェース（以下「インタフェース」を「Ｉ／Ｆ」ともいう）１３，およびエンジン１４等によって構成されている。これらの構成が、原稿の画像読み取り，プリント（画像形成），画像データ送信等の画像処理を行うためのハードウェア資源である。
【００４７】
コントローラ１１は、後述する各アプリを利用し（各アプリから動作の要求を受け）、ＭＦＰ１０の各部を統括的に制御するものである。その制御により、各種機能を実現することができる。
ＦＣＵ１２は、ＦＡＸ装置又はモデム機能（ＦＡＸ通信機能）を有するデジタル複写機や他のＭＦＰ（デジタル複合機）等の画像形成装置等の外部装置との通信を公衆回線経由で制御するものである。
エンジンＩ／Ｆ１３は、エンジン１４をＰＣＩ（Peripheral Component Interconnect）バスに接続するためのインタフェースである。
【００４８】
エンジン１４は、原稿の画像を読み取るスキャナ（画像読取手段）、そのスキャナによって読み取られた画像データあるいは外部装置から受信したデータに基づいて用紙等の記録媒体上に画像形成（プリント）を行うプロッタ（画像形成手段）や、原稿をスキャナの画像読取位置へ自動給送する自動原稿給送装置（ＡＤＦ）、プロッタで画像形成された用紙に対してソート，穴開け，ステープル処理等の後処理を行う後処理装置などのハードウェアデバイスに相当するものである。
【００４９】
コントローラ１１は、ＣＰＵ１０１，ＡＳＩＣ（Application Specific Integrated Circuit）１０２，ＳＤＲＡＭ１０３，ＲＯＭ１０４，ＮＶＲＡＭ１０５，ＨＤＤ（ハードディスクドライブ）１０６，操作部１０７，モデム１０８，ＵＳＢ（Universal Serial Bus）・Ｉ／Ｆ１０９，ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４・Ｉ／Ｆ１１０，およびＭＡＣ（Media Access Controller）・Ｉ／Ｆ１１１等によって構成されている。なお、操作部１０７は実際にはコントローラ１１の外側に配置されている。
【００５０】
ＣＰＵ１０１は、ＡＳＩＣ１０２を介してデータ処理（各機能の制御）を行う演算処理手段である。
ＡＳＩＣ１０２は、ＣＰＵインタフェース，ＳＤＲＡＭインターフェース，ローカルバスインタフェース，ＰＣＩインタフェース，ＨＤＤインタフェース等からなる多機能デバイスボードであり、ＣＰＵ１０１の制御対象となるデバイスの共有化を図り、アーキテクチャの面からアプリ等の開発の高効率化を支援するものである。
【００５１】
このＡＳＩＣ１０２には、エンジン１４の操作命令等を受け付ける操作部１０７が直接的に接続されると共に、モデム１０８も直接的に接続される。また、ＵＳＢ・Ｉ／Ｆ１０９，ＩＥＥＥ１３９４・Ｉ／Ｆ１１０，ＭＡＣ・Ｉ／Ｆ１１１，ＦＣＵ１２，およびエンジンＩ／Ｆ１３がＰＣＩバス１１２を介して接続される。
ＳＤＲＡＭ１０３は、各種プログラムを記憶するプログラムメモリや、ＣＰＵ１０１がデータ処理を行う際に使用するワークメモリ等として使用するメインメモリである。なお、このＳＤＲＡＭ１０３の代わりに、ＤＲＡＭやＳＲＡＭを使用してもよい。
【００５２】
ＲＯＭ１０４は、種々（この例では２種類）のアプリを含むプログラムや固定データを記憶している固定メモリである。
ＮＶＲＡＭ１０５は、変更可能な種々のパラメータ等のデータを記憶する不揮発性メモリであり、電源がオフになっても記憶内容を保持するようになっている。なお、このＮＶＲＡＭ１０５として、ＲＡＭと電池を利用したバックアップ回路を集積した不揮発性ＲＡＭや、ＥＥＰＲＯＭ，フラッシュメモリ等の不揮発性メモリを使用することができる。
【００５３】
ＨＤＤ１０６は、電源のオン・オフに関係なくデータを記憶保存する記憶装置（記録媒体）である。このＨＤＤ１０６に、上述したＳＤＲＡＭ１０３内のデータ、あるいはＮＶＲＡＭ１０５内のデータを記憶しておくこともできる。
操作部１０７は、エンジン１４又は外部サーバ２０に対する操作命令（コマンド）等の情報（データ）を入力するための各種の操作キー（操作スイッチ又は操作ボタンともいう）およびＬＣＤ又はＣＲＴの文字表示器を有する操作手段である。
【００５４】
モデム１０８は、変復調手段であり、図示しない外部装置へ公衆回線経由でデータを送信する場合、そのデータを公衆回線に流せる形に変調する。また、外部装置から送られてくる変調されたデータを受信した場合、そのデータを復調する。
ＵＳＢ・Ｉ／Ｆ１０９およびＩＥＥＥ１３９４・Ｉ／Ｆ１１０はそれぞれ、外部装置（周辺機器）と直接接続して通信を行うための、ＵＳＢ規格，ＩＥＥＥ１３９４規格のインタフェース（直接インタフェース）である。
ＭＡＣ・Ｉ／Ｆ１１１は、ＬＡＮ等のネットワーク１を介して外部サーバ２０を含む外部装置と通信を行うためのネットワークインタフェースである。
なお、ＵＳＢ・Ｉ／Ｆ１０９やＩＥＥＥ１３９４・Ｉ／Ｆ１１０以外の直接インタフェースをコントローラ１１に増設することもできる。
【００５５】
次に、ＭＦＰ１０の主要な機能構成例について、図３を用いて具体的に説明する。
図３は、ＭＦＰ１０の主要な機能構成例を示すブロック図である。
このＭＦＰ１０のコントローラ１１は、通信処理部１２１，アプリ選択部１２２，アプリ情報記憶部１２３，および制御部１２４としての機能を備えている。これらの機能は、図２のＣＰＵ１０１がＲＯＭ１０４内のプログラムに従って動作し、必要に応じてＭＡＣ・Ｉ／Ｆ１１１，ＵＳＢ・Ｉ／Ｆ１０９，ＩＥＥＥ１３９４・Ｉ／Ｆ１１０を使用することにより実現できるものである。
【００５６】
通信処理部１２１は、ネットワーク１上の２台の外部サーバ２０（２０ａ，２０ｂ）にそれぞれ備えられているアプリ（以下「外部アプリ」という）２３１，２３２と通信を行ったり、直接接続された外部装置と通信を行う通信手段である。なお、外部アプリ２３１，２３２を直接接続し、それらと通信を行うこともできる。
アプリ選択部１２２は、図２のＲＯＭ１０４に記憶されているアプリ（以下「内部アプリ」という）１３１，１３２および外部アプリ２３１，２３２を含む各アプリからそれぞれ送られてくるコマンド（動作の実行要求）等のデータを受け取り、それらのデータを制御部１２４に送る（引き渡す）。また、制御部１２４からコマンド（動作指示）等のデータを受け取ると、それを内部アプリ１３１，１３２，外部アプリ２３１，２３２へ振り分けて送る。つまり、どのアプリに送るか送付先を判断し、その送付先へ受け取ったデータを送る。
【００５７】
アプリ情報記憶部１２３は、ＭＦＰ１０で利用可能なアプリに関する情報としてアプリ管理テーブルを記憶する。それによって、ＭＦＰ１０で利用可能なアプリを登録できる。このアプリ情報記憶部１２３は、図２のＳＤＲＡＭ１０３，ＮＶＲＡＭ１０５，又はＨＤＤ１０６上に存在し、情報が変わるたびに変更（更新）される。よって、このアプリ情報記憶部１２３が、アプリケーション情報登録手段としての機能を果たす。
【００５８】
制御部１２４は、通信処理部１２１，アプリ選択部１２２，操作部１０７，アプリ情報記憶部１２３，およびエンジン１４を含む各部を統括的に制御するものであり、制御手段，装置起動通知送信手段，送信許可手段（接続許可手段），および装置利用可能通知送信手段（接続許可通知送信手段）としての機能を果たす。
よって、制御部１２４は、アプリ選択部１２２，通信処理部１２１，およびネットワーク１を介して外部アプリ２３１，２３２と通信を行うことにより、内部アプリ１３１，１３２に加えて、外部アプリ２３１，２３２も利用可能になるため、多くの機能を実現することができる。
【００５９】
次に、外部サーバ２０のハードウェア構成例について、図４を用いて具体的に説明する。
図４は、外部サーバ２０のハードウェア構成例を示すブロック図である。
この外部サーバ２０は、ＰＣ（パーソナルコンピュータ）等の情報処理装置であり、図４に示すように、ＣＰＵ２０１，ＡＳＩＣ２０２，ＳＤＲＡＭ２０３，ＲＯＭ２０４，ＮＶＲＡＭ２０５，ＨＤＤ２０６，操作部２０７，モデム２０８，ＵＳＢ・Ｉ／Ｆ２０９，ＩＥＥＥ１３９４・Ｉ／Ｆ２１０，およびＭＡＣ・Ｉ／Ｆ２１１等によって構成されている。
【００６０】
この外部サーバ２０の構成は、図２によって説明したコントローラ１１の構成とほとんど同様なので、それと異なる部分についてのみ説明する。
操作部２０７は、ＭＦＰ１０に対する操作命令（コマンド）等の情報（データ）を入力するためのキーボードやマウス等の入力装置と、ＬＣＤディスプレイ又はＣＲＴディスプレイ等の表示装置とによって構成されている。なお、表示装置の表面に、例えばタッチパネルを備えることもできる。
【００６１】
次に、外部サーバ２０の主要な機能構成例について、図５を用いて具体的に説明する。
図５は、ＭＦＰ１０および外部サーバ２０ａの主要な機能構成例を示すブロック図である。なお、説明の都合上、外部アプリ２３１に後述するアプリ通信処理部２４１等の各部が備えられているように図示している。
【００６２】
外部サーバ２０ａは、アプリ通信処理部２４１，アプリ制御部２４２，および装置情報記憶部２４３としての機能を備えている。これらの機能は、図４のＣＰＵ２０１がＲＯＭ１０４に記憶されている外部アプリ２３１に従って動作し、必要に応じてＭＡＣ・Ｉ／Ｆ２１１，ＵＳＢ・Ｉ／Ｆ２０９，ＩＥＥＥ１３９４・Ｉ／Ｆ２１０を使用することにより実現できるものである。
アプリ通信処理部２４１は、ネットワーク１上のＭＦＰ１０を含む画像処理装置と通信を行ったり、直接接続された画像処理装置と通信を行う通信手段である。なお、ＭＦＰ１０等の画像処理装置を直接接続し、それらと通信を行うこともできる。
【００６３】
アプリ制御部２４２は、アプリ通信処理部２４１および装置情報記憶部２４３を制御するものであり、アプリケーション利用可能通知送信手段，動作実行要求送信手段，接続要求送信手段，機能問合手段，装置選択手段としての機能を果たす。
装置情報記憶部２４３は、外部サーバ２０ａで利用可能な画像処理装置に関する情報を記憶するアプリケーション記憶手段である。それによって、外部サーバ２０ａで利用可能な画像処理装置を登録できる。この装置情報記憶部２４３は、図４のＳＤＲＡＭ２０３，ＮＶＲＡＭ２０５，又はＨＤＤ２０６上に存在し、情報が変わるたびに変更される。
【００６４】
なお、他の外部サーバ２０ｂの主要な機能構成も、外部サーバ２０ａと略同様なので、図示および説明を省略する。また、外部サーバ２０（２０ａ，２０ｂ）上のアプリ、つまり内部アプリ１３１，１３２による処理はそれぞれ、実際には対応するＣＰＵ２０１が内部アプリ１３１，１３２に従って動作することによって実行するが、説明の都合上、以後は、内部アプリ１３１，１３２が処理を実行するものとして説明する場合もある。
【００６５】
ここで、内部アプリ１３１，１３２，外部アプリ２３１，２３２は、種々の機能を実現させるためのものである。例えば、内部アプリ１３１をコピー機能を実現させるためのコピーアプリ、内部アプリ１３２をプリンタ機能を実現させるためのプリンタアプリ、外部アプリ２３１をスキャナ機能を実現させるためのスキャナアプリ、外部アプリ２３２をＦＡＸ機能を実現させるためのＦＡＸアプリとする。あるいは、内部アプリ１３１を基本（低いバージョン）のコピー機能とプリンタ機能を実現させるためのアプリ、内部アプリ１３２を基本のスキャナ機能とＦＡＸ機能を実現させるためのアプリとし、外部アプリ２３１を高いバージョンのコピー機能とプリンタ機能を実現させるためのアプリ、外部アプリ２３２を高いバージョンのスキャナ機能とＦＡＸ機能を実現させるためのアプリとするなど、どのようなアプリであっても構わない。
【００６６】
コピー機能とは、スキャナに原稿の画像を読み取らせ、その画像データをプロッタに送って記録媒体上に画像を形成させるコピー動作を行わせる機能のことである。
プリンタ機能とは、外部サーバ２０からの画像データをそのまま又は加工処理してプロッタに送って記録媒体上に画像を形成させるプリンタ動作を行わせる機能のことである。
スキャナ機能とは、スキャナに原稿の画像を読み取らせ、その画像データをメモリ（ＳＤＲＡＭ１０３，ＮＶＲＡＭ１０５，又はＨＤＤ１０６）に記憶させるスキャナ動作を行わせる機能のことである。
【００６７】
ＦＡＸ機能とは、スキャナに原稿の画像を読み取らせ、その画像データをＦＣＵ１２によって外部装置へ送信させるＦＡＸ送信動作と、外部装置からＦＣＵ１２によって画像データを受け取り、その画像データをプロッタに送って記録媒体上に画像を形成させるＦＡＸ受信動作を行わせる機能のことである。
なお、第１実施例では、ＭＦＰ１０以外の画像処理装置として、図示しない他のＭＦＰや単体のプリンタ，スキャナをネットワーク１経由で又は直接接続しているが、更に単体のデジタル複写機やＦＡＸ装置等の他の画像処理装置も同様に接続することができる。これらの画像処理装置は、図示は省略するが、ＭＦＰ１０と同様な構成のコントローラを備え、後述するこの発明に係わる処理を行うことができる。
【００６８】
次に、上述したように構成された第１実施例の画像形成システムにおけるこの発明に係わる制御（処理）について、図６〜図１６を参照して具体的に説明する。なお、説明の都合上、内部アプリ１３１，１３２に対する処理の説明は省略する。
まず、ＭＦＰ１０等の画像処理装置の起動時のその画像処理装置と外部アプリ２３１（又は２３２）との間の通信シーケンスの第１例（認証成功例）について、図６〜図８を参照して説明する。
図６は、ＭＦＰ１０の起動時のそのＭＦＰ１０と外部アプリ２３１（又は２３２）との間の通信シーケンスの第１例を示す図である。
【００６９】
ＭＦＰ１０の制御部１２４は、ＭＦＰ１０の起動（電源オン）時に、予め登録されている利用可能なアプリ（アプリ情報記憶部１２３のアプリ管理テーブルに記憶されている情報によって示されたもの）に対して起動通知のコマンド（起動通知コマンド）を発行する。つまり、そのコマンドをアプリ選択部１２２，通信処理部１２１を介して外部サーバ２０（２０ａ，２０ｂ）上の外部アプリ２３１，２３２へ送信する（Ｓ１０２〜Ｓ１０４）。その外部アプリ２３１，２３２に対する起動通知コマンドにはそれぞれ、その外部アプリ２３１，２３２を識別するアプリ識別番号を付加するが、それはアプリ搭載場所の情報と共に図３のアプリ情報記憶部１２３から取得する（Ｓ１０１）。
【００７０】
ここで、ＭＦＰ１０と外部サーバ２０（２０ａ，２０ｂ）上の外部アプリ２３１，２３２との間でやりとりされるコマンドの構成例について、図７を参照して説明する。
図７は、そのコマンドの構成例を示す図である。
そのコマンドは、アプリ識別情報，コマンド種別，コマンド（コマンド本体），コマンド付属情報，およびコマンドの開始と終了を示すタグによって構成されている。
アプリ識別情報は、アプリを識別するための情報（アプリに関する情報）である。
【００７１】
コマンド種別は、プロッタを制御するコマンドやスキャナを制御するコマンドなど、各種コマンドの種別を示す情報（コマンドに関する情報）である。
コマンド付属情報は、コマンドを実行する上でのパラメータ（例えばスキャナに関するコマンドの場合、主走査長，副走査長，読み取り濃度など）を示す情報である。
次に、図３のアプリ情報記憶部１２３に記憶されているアプリ識別番号を含むアプリ管理テーブル（アプリに関する情報）について、表１を参照して説明する。
【００７２】
【表１】
2006114020.tif 000003
この表１に示すように、アプリ管理テーブルには、アプリ（内部アプリ１３１，１３２，外部アプリ２３１，２３２）毎にアプリ名（種類），アプリ識別番号（アプリＩＤ番号），アプリ搭載場所（ＩＰアドレス等），アプリ利用可／不可を示す情報が記憶されている。
【００７３】
図６による説明に戻る。
外部アプリ２３１，２３２はそれぞれ、外部サーバ２０ａ，２０ｂが起動していた場合には、ＭＦＰ１０からその起動通知のコマンド（装置起動通知コマンド）を受け取ると、自己の利用可能通知のコマンド（アプリ利用可能通知コマンド）をＭＦＰ１０に対して発行（応答）する（Ｓ１０５）。そのＭＦＰ１０に対するアプリ利用可能通知コマンドには、上記の装置起動通知コマンドに付加されたアプリ識別番号を付加し、ＭＦＰ１０側がその番号でアプリを識別できるようにする。
【００７４】
外部アプリ２３１又は２３２で発行されたアプリ利用可能通知コマンドは、ネットワーク１経由でＭＦＰ１０に送信され、更にそのＭＦＰ１０内の通信処理部１２１およびアプリ選択部１２２を介して制御部１２４へ送られる（Ｓ１０５〜Ｓ１０７）。
その制御部１２４は、そのアプリ利用可能通知コマンドを受け取ると、そのコマンドに付加されたアプリ識別情報からアプリの利用可能を判断できるため、アプリ情報記憶部１２３のアプリ管理テーブル内の対応するアプリ利用の可／不可を「可」とすることにより、利用可能なアプリを登録する（Ｓ１０８）。
【００７５】
また、電源が入っていない外部サーバの外部アプリからはそのアプリ利用可能通知コマンドが届かないので、対応するアプリ利用の可／不可を「不可」とする。
その場合の通信シーケンスの例を図８に示す。
図８は、ＭＦＰ１０が起動時にアプリ動作の実行を可能にするために外部アプリとの間で行う通信処理の第２例を説明するための通信シーケンスを示す図である。なお、図８において、実際には、図６に示したように、装置起動通知コマンドは、制御部１２４→アプリ選択部１２２→通信処理部１２１と順次送られるが、アプリ選択部１２２と通信処理部１２１は制御部１２４の指示に従っているだけなので、１つにまとめて図示している。
【００７６】
次に、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行（接続要求）時のその外部アプリとＭＦＰ１０等の画像処理装置との間の通信シーケンスの第１例，第２例について、図９，図１０を参照して説明する。
図９は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例（要求されたアプリ動作実行可能時の例）を示す図である。図１０は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例（要求されたアプリ動作実行不可能時の例）を示す図である。なお、図９，図１０において、実際には、図６に示したように、コマンドは、制御部１２４→アプリ選択部１２２→通信処理部１２１と順次送られるが、アプリ選択部１２２と通信処理部１２１は制御部１２４の指示に従っているだけなので、１つにまとめて図示している。
【００７７】
外部アプリ２３１のアプリ制御部２４２は、画像処理装置との接続を行うための何らかのトリガの発生時、例えば外部アプリ２３１の起動時あるいはその後の１回目の画像処理装置の機能を使用するためのユーザによる操作入力が操作部１０７上でなされた時に、予め登録されているＭＦＰ１０を含む各画像処理装置（装置情報記憶部２４３に記憶されている情報によって示されたもの）に対してアプリ接続要求コマンドを発行する。つまり、そのアプリ接続要求コマンドをアプリ通信処理部２４１によって各画像処理装置へ送信する（Ｓ１１２〜Ｓ１１３）。そのアプリ接続要求コマンドには、画像処理装置を識別する装置識別番号を付加するが、それは装置設置場所の情報と共に図５の装置情報記憶部２４３から取得する（Ｓ１１１）。
【００７８】
ここで、上記トリガには、例えば以下の（ａ）（ｂ）に示すようなものがある。
（ａ）外部サーバ２０（２０ａ）の電源オンによる外部アプリ２３１の起動
（ｂ）外部サーバ２０の電源オンによる外部アプリ２３１の起動後、最初の（画像処理装置との接続がなされていない状態での）画像処理装置の機能を使用するためのユーザによる操作部１０７上での入力操作
【００７９】
また、図５の装置情報記憶部２４３に記憶されている装置識別番号を含む画像処理装置に関する情報（装置固有情報）について、表２を参照して説明する。
【００８０】
【表２】
2006114020.tif 000004
この表２に示すように、装置情報記憶部２４３には、装置固有情報として、各画像処理装置の種類毎に装置識別番号，装置設置場所，装置利用の可／不可を示す情報が記憶されている。
【００８１】
図９による説明に戻る。
ＭＦＰ１０のアプリ選択部１２２は、外部アプリ２３１から通信処理部１２１を介してアプリ接続要求コマンドを受け取ると、そのコマンドを発行した外部アプリ２３１を判別し、その外部アプリ２３１の登録を指示する登録コマンドに外部アプリ２３１の搭載場所（ＩＰアドレス等）等の外部アプリ２３１に関する情報を付加して制御部１２４へ送る（Ｓ１１４）。
【００８２】
その制御部１２４は、その登録コマンドを受け取ると、それに付加された外部アプリ２３１に関する情報をアプリ情報記憶部１２３のアプリ管理テーブルの空いているアプリ識別情報のエリアに書き込む（対応するアプリ利用の可／不可を「可」とする）ことにより、利用可能な外部アプリ２３１を登録する（Ｓ１１５）。
アプリ情報記憶部１２３は、アプリ管理テーブルの空いているアプリ識別情報のエリアへの書き込み（登録）が完了すると、そのアプリ識別情報を制御部１２４へ応答する（Ｓ１１６）。
【００８３】
その制御部１２４は、アプリ情報記憶部１２３からアプリ識別情報の応答を受け取ると、ＭＦＰ１０の利用可能通知のコマンド（装置利用可能通知コマンド）を外部アプリ２３１に対して発行する。つまり、その装置利用可能通知コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３１へ送信する（Ｓ１１７，Ｓ１１８）。その外部アプリ２３１に対する装置利用可能通知コマンドには、先に外部アプリ２３１から受け取ったアプリ接続要求コマンドに付加された装置識別番号を付加し、外部アプリ２３１側がその番号でＭＦＰ１０を識別できるようにする。
【００８４】
外部アプリ２３１のアプリ制御部２４２は、ＭＦＰ１０からアプリ通信処理部２４１を介して装置利用可能通知コマンドを受け取ると、そのコマンドに付加された装置識別情報からＭＦＰ１０の利用可能を判断できるため、装置情報記憶部２４３内の対応する装置利用の可／不可を「可」とすることにより、利用可能なＭＦＰ１０を登録する（Ｓ１１９，Ｓ１２０）。
なお、ＭＦＰ１０以外の画像処理装置も、外部アプリ２３１からアプリ接続要求コマンドを受け取った場合には、ＭＦＰ１０と同様の処理を行うことができる。
【００８５】
その後、外部アプリ２３１のアプリ制御部２４２は、利用可能な画像処理装置のうち、例えばＭＦＰ１０の何らかの機能（スキャナ機能等）を使用する場合、対応する動作実行要求コマンドをＭＦＰ１０に対して発行する（Ｓ１２１）。
外部アプリ２３１で発行された動作実行要求コマンドは、ＭＦＰ１０に送信され、更にそのＭＦＰ１０内の通信処理部１２１およびアプリ選択部１２２を介して制御部１２４へ送られる（Ｓ１２２，Ｓ１２３）。
その制御部１２４は、動作実行要求コマンドを受け取ると、それに付加された外部アプリ２３１に関する情報と共に動作実行要求コマンドによって要求されたアプリ動作の実行権限の参照をアプリ情報記憶部１２３に対して指示する（Ｓ１２４）。
【００８６】
その指示を受けたアプリ情報記憶部１２３は、外部アプリ２３１に関する情報に基づいて、アプリ管理テーブル内の動作実行要求コマンドによって要求されたアプリ動作の実行権限（対応するアプリ利用の可／不可）を参照し、その実行が可能（対応するアプリ利用の可）であった場合には、その旨（実行可）を制御部１２４へ応答する（Ｓ１２５）。
制御部１２４は、その応答を受けると、先に受け取った動作実行要求コマンドによって要求されたアプリ動作（コピー動作，プリンタ動作，スキャナ動作，ＦＡＸ送信動作，ＦＡＸ受信動作等の画像処理動作あるいは画像処理動作の一部）を実行し、その結果を応答するコマンド（実行応答コマンド）を外部アプリ２３１に対して発行する。つまり、その実行応答コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３１へ送信する（Ｓ１２６，Ｓ１２７）。
【００８７】
もし、図１０に示すように、外部アプリ２３２（利用可能と認識していないアプリとする）で発行された動作実行要求コマンドがＭＦＰ１０に送信され、更にそのＭＦＰ１０内の通信処理部１２１およびアプリ選択部１２２を介して送られるような場合には（Ｓ１２２，Ｓ１２３）、制御部１２４およびアプリ情報記憶部１２３が以下の処理を行う。
制御部１２４は、外部アプリ２３２からの動作実行要求コマンドを受け取ると、それに付加された外部アプリ２３２に関する情報と共に動作実行要求コマンドによって要求されたアプリ動作の実行権限の参照をアプリ情報記憶部１２３に対して指示する（Ｓ１２４）。
【００８８】
その指示を受けたアプリ情報記憶部１２３は、外部アプリ２３２に関する情報に基づいて、アプリ管理テーブル内の動作実行要求コマンドによって要求されたアプリ動作の実行権限（対応するアプリ利用の可／不可）を参照し、その実行が不可能（対応するアプリ利用の不可）であった場合には、その旨（実行不可）を制御部１２４へ応答する（Ｓ１２５）。
制御部１２４は、その応答を受けると、先に受け取った動作実行要求コマンドによって要求されたアプリ動作を実行せず、その結果を応答するコマンド（実行不可応答コマンド）を外部アプリ２３２に対して発行する。つまり、その実行不可応答コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３２へ送信する（Ｓ１２６，Ｓ１２７）。
【００８９】
なお、図５の装置情報記憶部２４３に、装置固有情報（画像処理装置に関する情報）として、例えば表３に示すような更に詳細な情報を記憶することも可能である。
表３に示す装置固有情報には、表２に示した装置固有情報に、各画像処理装置毎に両面印刷機能およびステープル機能の有無を示す情報が追加されている。
外部アプリ２３１（又は２３２）で装置情報記憶部２４３内の装置固有情報を表３に示したように詳細に持つ場合、装置固有情報の持ち方は以下の（１）（２）に示す２通りが考えられる。
【００９０】
【表３】
2006114020.tif 000005
【００９１】
（１）外部アプリ２３１の装置情報記憶部２４３に予め各画像処理装置毎の詳細情報を記憶しておく。
（２）外部アプリ２３１が各画像処理装置に関する詳細情報を使用するときに、その各画像処理装置に対して使用すべき機能の有無を問い合わせる。
（１）の場合は、問い合わせの処理がないため、処理時間は短縮されるが、各画像処理装置に関する詳細情報を外部アプリ２３１で保持する記憶容量が必要になる。（２）の場合には処理時間はかかるが、各画像処理装置に関する詳細情報を外部アプリ２３１で保持しなくて済む。
【００９２】
（１）の場合に、装置情報記憶部２４３に記憶する装置固有情報（各画像処理装置に関する情報）は、表３に示したような詳細情報になる。そのような装置固有情報を外部アプリ２３１側で知る方法として、以下の（ａ）（ｂ）に示す２通りが考えられる。
（ａ）装置設置場所の情報と同じように、予め知っている。
（ｂ）外部アプリ２３１から接続要求通知コマンドをＭＦＰ１０（他の画像処理装置でもよい）へ送った場合、そのＭＦＰ１０がそのコマンドに対する応答として自己の利用可能通知のコマンド（装置利用可能通知コマンド）に自己の詳細情報を付加して外部アプリ２３１へ送信する。外部アプリ２３１は、ＭＦＰ１０から装置利用可能通知コマンドを受信すると、装置情報記憶部２４３内の対応する両面印刷機能およびステープル機能の有無を「あり」にすると共に、装置利用の可／不可を「可」とすることにより、利用可能なＭＦＰ１０を登録する（図９と略同様）。
【００９３】
（２）の場合に、外部アプリ２３１および各画像処理装置（装置情報記憶部２４３に記憶されている情報によって示されたもの）が図９によって説明した通信処理（シーケンス処理）を行った後、外部アプリ２３１から利用可能な全ての画像処理装置へ使用すべき機能（ユーザが使用したい機能）の有無の問い合わせのコマンドを送信する。このコマンドを送信する処理（機能問い合わせ処理）以降の通信処理は、例えば図１１に示すようになる。
【００９４】
そこで、外部アプリ２３１が各画像処理装置への機能の有無の問い合わせ時にその各画像処理装置との間で行う通信処理について、図１１〜図１４を参照して説明する。
図１１は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。なお、図１１において、実際には、図６に示したように、コマンドは、制御部１２４→アプリ選択部１２２→通信処理部１２１と順次送られるが、アプリ選択部１２２と通信処理部１２１は制御部１２４の指示に従っているだけなので、１つにまとめて図示している。
【００９５】
外部アプリ２３１のアプリ制御部２４２は、ＭＦＰ１０を含む各画像処理装置との間で図９によって説明した通信処理を行って利用可能な画像処理装置（ＭＦＰ１０を含む）を登録した後、画像処理装置の機能を使用するためのユーザによる操作入力が操作部１０７上でなされた時（ここではユーザが使用したい機能が指定された時）、その機能の有無の問い合わせのコマンド（装置機能問い合わせコマンド）を利用可能な各画像処理装置に対して発行する。つまり、その装置機能問い合わせコマンドをアプリ通信処理部２４１を介して各画像処理装置へ送信する（Ｓ１３２〜Ｓ１３３）。その装置機能問い合わせコマンドには、画像処理装置を識別する装置識別番号を付加するが、それは装置設置場所の情報と共に図５の装置情報記憶部２４３から取得する（Ｓ１３１）。
【００９６】
ＭＦＰ１０の制御部１２４は、その装置機能問い合わせコマンドを通信処理部１２１およびアプリ選択部１２２経由で受け取ると（Ｓ１３４）、それに付加された外部アプリ２３１に関する情報と共に外部アプリ２３１からの動作実行要求コマンドによって要求されるアプリ動作の実行権限の参照をアプリ情報記憶部１２３に対して指示する（Ｓ１３５）。
その指示を受けたアプリ情報記憶部１２３は、外部アプリ２３１に関する情報に基づいて、アプリ管理テーブル内の動作実行要求コマンドによって要求されたアプリ動作の実行権限を参照し、その実行が可能であった場合には、その旨（実行可）を制御部１２４へ応答する（Ｓ１３６）。要求されたアプリ動作の実行が不可能であった場合には、その旨（実行不可）を制御部１２４へ応答する。
【００９７】
制御部１２４は、アプリ情報記憶部１２３から実行可の応答を受けると、先に受け取った装置機能問い合わせコマンドによって指定された機能の有無をチェックし、その結果を応答するコマンド（装置機能応答コマンド）を外部アプリ２３１に対して発行する。つまり、その装置機能応答コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３１へ送信する（Ｓ１３７，Ｓ１３８）。その外部アプリ２３１に対する装置機能応答コマンドには、先に外部アプリ２３１から受け取った装置機能問い合わせコマンドに付加された装置識別番号を付加する。
制御部１２４は、アプリ情報記憶部１２３から実行不可の応答を受けた場合には、アプリ動作を実行できない旨を応答するコマンド（実行不可応答コマンド）を外部アプリ２３１に対して発行する。
なお、ＭＦＰ１０以外の画像処理装置も、外部アプリ２３１から装置機能問い合わせコマンドを受信した場合には、ＭＦＰ１０と同様の処理を行うことができる。
【００９８】
外部アプリ２３１のアプリ制御部２４２は、ＭＦＰ１０を含む画像処理装置からそれぞれ装置機能応答コマンドをアプリ通信処理部２４１経由で受け（Ｓ１３９）、そのコマンドから操作部２０７上の操作で指定された機能（ユーザが使用したい機能）を持つ画像処理装置が見つからなかったことを認識した場合には、例えば図１２に示すような警告画面を図４の操作部２０７（表示装置）上に表示し、指定された機能が使用できない旨をユーザに知らせると共に他の機能の指定（機能設定変更）を促す。
【００９９】
また、装置機能応答コマンドから操作部２０７上の操作で指定された機能を持つ画像処理装置が見つかったことを認識した場合には、その画像処理装置を選択する処理を行う。
この処理には、以下の（Ａ）（Ｂ）に示す２通りの方法が考えられる。
（Ａ）操作部２０７上の操作で指定された機能を持つ画像処理装置（検索した画像処理装置）を自動的に選択し、どの画像処理装置を使ったかをユーザに通知する。
（Ｂ）検索した画像処理装置に関する情報を操作部２０７上に一覧表示し、ユーザに画像処理装置を選択してもらう。
【０１００】
（Ａ）の場合の画像処理装置の自動選択の基準としては、指定された機能を持つ画像処理装置が複数見つかった場合、その見つかった順、外部アプリ２３１に近い順、印刷速度（画像形成速度）が速い順などで画像処理装置を自動的に選択する。この場合、画像処理装置の物理的な場所や印刷速度なども他の装置情報（画像処理装置に関する情報）と同様に、外部アプリ２３１のアプリ制御部２４２が情報として知る必要がある。どの画像処理装置を使ったかユーザへの通知を操作部２０７上への表示によって行う場合の表示画面は、例えば図１３に示すようになる。
【０１０１】
（Ｂ）の場合の検索した画像処理装置に関する情報を操作部２０７上に一覧表示して、ユーザに画像処理装置を選択してもらうための表示画面は、例えば図１４に示すようになる。
外部アプリ２３１のアプリ制御部２４２は、指定された機能（ユーザが使用したい機能）を持つ画像処理装置を選択する処理を行った後、その機能を使用（実現）するために、対応する動作実行要求コマンドを選択した画像処理装置に対して発行する（Ｓ１４０）。以後のステップＳ１４１〜Ｓ１４６の通信シーケンスは、図９のステップＳ１２２〜Ｓ１２７の通信シーケンスと同様なので、説明を省略する。
なお、画像処理装置の検索は、（１）の場合では、装置情報記憶部２４３内の表３に示した装置固有情報に基づいて行い、（２）の場合では、利用可能な全ての画像処理装置へユーザが使用したい機能の有無の問い合わせのコマンドを送信することによって行う。
【０１０２】
このように、第１実施例の画像形成システムによれば、ＭＦＰ１０を含む各画像処理装置が、外部アプリと通信することにより、その外部アプリを利用して動作を実行するので、次のような効果を得ることができる。つまり、複数の画像処理装置で共通のアプリを使用できるため、その各画像処理装置が低コストで複数の機能を実現できることになる。また、アプリのバージョンアップ作業の軽減化を計ることもできる。さらに、内部アプリもそのまま利用して動作を実行することもできるため、自由度が増す。
【０１０３】
なお、ＭＦＰ１０を含む各画像処理装置は、図６によって説明したような処理（自己の起動通知により外部アプリ２３１又は２３２と通信可能に接続してその外部アプリを利用する処理）と、図９又は図１１によって説明したような通信処理（外部アプリ２３１又は２３２からの接続要求によりその外部アプリと通信可能に接続してその外部アプリを利用する処理）とを選択的に実行可能にすれば、次のような効果も得ることができる。
【０１０４】
すなわち、システムの構成要素の組み合わせが増え、自由度が増す。また、図６によって説明したような通信処理で外部アプリ２３１又は２３２と通信可能に接続できなかった場合（外部アプリ２３１又は２３２側の外部サーバ２０に電源が入っていなかった場合やネットワークの接続不可となっていた場合）でも、図９又は図１１によって説明したような通信処理で外部アプリ２３１又は２３２と通信可能に接続することが可能になるため、外部アプリを利用した動作が実行できなくなる可能性が少なくなり、信頼性が向上する。
【０１０５】
また、例えば図１５に示すように、ＭＦＰ１０が、コントローラ１１に内部アプリを搭載せず、外部アプリのみを利用してアプリ動作を実行することもできる。勿論、他の画像処理装置も同様である。
さらに、例えば図１６に示すように、ＭＦＰ１０が、コントローラ１１にアプリ情報記憶部を搭載せず、ネットワーク１上に外部記憶装置３０を接続して、そこにアプリ情報記憶部１２３を搭載し、外部記憶装置３０と通信することにより、アプリ情報記憶部１２３へアクセスして、内部アプリや外部アプリに関する情報の書き込み又は読み込み（取得）を行うようにすることもできる。勿論、他の画像処理装置も同様である。
さらにまた、ＭＦＰ１０が、ＵＳＢ・Ｉ／Ｆ１０９やＩＥＥＥ１３９４・Ｉ／Ｆ１１０等の他のインタフェースにより外部アプリ２３１又は２３２と通信可能に接続してその外部アプリを利用することもできる。勿論、他の画像処理装置も同様である。
【０１０６】
〔第２実施例〕
次に、この発明による電子装置システムの第２実施例である画像形成システムについて説明する。なお、その画像形成システムを構成するＭＦＰを含む画像処理装置と外部サーバとの接続関係およびそれらのハードウェア構成は、図１，図２，図４によって説明したものと同様なので、それらの図示および説明は省略する。
まず、ＭＦＰ１０の主要な機能構成例について、図１７を用いて具体的に説明する。
図１７はＭＦＰ１０の主要な機能構成例を示すブロック図であり、図３と対応する部分には同一符号を付してそれらの説明を省略する。
【０１０７】
ＭＦＰ１０において、認証部１２５は、外部アプリ２３１から通信処理部１２１，アプリ選択部１２２，および制御部１２４を介して動作実行要求コマンドを受け取った場合に、そのコマンドの正当性を確認するための認証処理を行う認証手段（第１の認証手段，第２の認証手段）である。この認証部１２５としての機能は、図２のＣＰＵ１０１がＲＯＭ１０４に記憶されているプログラムに従って動作することにより実現できる。
なお、制御部１２４が、制御手段，動作実行許可手段，識別情報設定手段，動作実行許可／拒否手段，回線種判別手段，実行要求判別手段，異常回数計数手段，動作実行拒否手段，送信許可手段（接続許可手段），および装置利用可能通知送信手段（接続許可通知送信手段）としての機能を果たす。
【０１０８】
次に、第２実施例の画像形成システムにおけるこの発明に係わる制御について、図１８〜図２８を参照して具体的に説明する。なお、説明の都合上、内部アプリ１３１，１３２に対する処理の説明は省略する。
〔第１制御例〕
まず、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第１例（認証成功例）について、図１８，図１９を参照して説明する。
図１８は、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例を示す図である。
【０１０９】
外部アプリ２３１（又は２３２）は、操作部２０７上の操作により、例えばネットワーク１上のいずれかの画像処理装置（ここではＭＦＰ１０とする）が使用すべき画像処理装置として選択（指定）され、且つ使用すべき機能が選択された場合に（機能の選択によってその機能を実現可能な画像処理装置を自動的に選択してもよい）、その機能を実現するための動作の実行要求コマンド（動作実行要求コマンド）を発行し、それに認証情報（アプリ正当性情報）を付加して指定された画像処理装置であるＭＦＰ１０へ送信する（Ｓ２０１）。なお、実際には、第１実施例と同様に、アプリ制御部２４２が、動作実行要求コマンドや他のコマンドをアプリ通信処理部２４１によりＭＦＰ１０へ送信する。認証情報は、動作実行要求コマンドをＭＦＰ１０へ送信する毎に、その動作実行要求コマンドに付加する。
【０１１０】
ここで、ＭＦＰ１０と外部アプリ２３１，２３２との間でやりとりされるコマンドの構成例について、図１９を参照して説明する。
図１９は、そのコマンドの構成例を示す図である。
そのコマンドは、アプリ種別情報，認証情報，コマンド種別，コマンド（コマンド本体），コマンド付属情報，およびコマンドの開始と終了を示すタグにより構成されている。
アプリ種別情報は、コピーアプリやＦＡＸアプリ等のアプリの種別を示す情報（アプリに関する情報）である。
認証情報は、動作実行要求コマンドの正当性を確認するための認証処理を行う際に使用するアプリ正当性情報である。この認証情報は、複製されないように十分な量のビット数で構成され、アプリ固有のパスワードとして利用される。
コマンド種別等の他の情報は、図７と同様なので、説明は省略する。
【０１１１】
図１８による説明に戻る。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から動作実行要求コマンドが送られてくると、それを受信（取得）してアプリ選択部１２２へ引き渡す（Ｓ２０２）。
アプリ選択部１２２は、通信処理部１２１から動作実行要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ２０３）。
制御部１２４は、アプリ選択部１２２から動作実行要求コマンドを受け取ると、それから認証情報のみを抽出し、それを認証要求コマンドに付加して認証部１２５へ引き渡す（Ｓ２０４）。
認証部１２５は、制御部１２４から認証要求コマンドを受け取ると、アプリ情報取得要求コマンドを制御部１２４へ送る（Ｓ２０５）。
【０１１２】
制御部１２４は、認証部１２５からアプリ情報取得要求コマンドを受け取ると、先に取得した動作実行要求コマンドの発行元である外部アプリ２３１に関する情報をアプリ情報記憶部１２３から取得するために、例えば外部アプリ２３１のＩＰアドレス（アプリ搭載場所情報）をアプリ情報取得要求コマンドに付加してアプリ情報記憶部１２３へ送る（Ｓ２０６）。
アプリ情報記憶部１２３は、制御部１２４からアプリ情報取得要求コマンドを受け取ると、それに付加されているＩＰアドレスから外部アプリ２３１に関する情報（アプリ情報）をアプリ管理テーブル（後述する）から読み出し、それを含むアプリ情報通知コマンドを発行（生成）して制御部１２４へ送る（Ｓ２０７）。
【０１１３】
制御部１２４は、アプリ情報記憶部１２３からアプリ情報通知コマンドを受け取る（取得する）と、それを認証部１２５へ送る（Ｓ２０８）。
認証部１２５は、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取った動作実行要求コマンドの正当性を確認するための認証処理を行う。つまり、先に受け取った動作実行要求コマンドに付加されている認証情報をアプリ情報通知コマンドに付加されているアプリ情報と照合する（Ｓ２０９）。そして、上記両情報が一致した場合に、認証が成功したと判断して（動作実行要求コマンドの正当性を確認して）、制御部１２４で先に取得された動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）の実行（アクセス）を許可し、その旨を示す情報を含むアクセス許可通知コマンドを発行し、それを制御部１２４へ送る（Ｓ２１０）。
【０１１４】
制御部１２４は、認証部１２５からアクセス許可通知コマンドを受け取ると、先に取得した動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）を実行し（Ｓ２１１）、その結果を示す情報を含む処理結果通知コマンドを発行して、それをアプリ選択部１２２へ送る（Ｓ２１２）。
アプリ選択部１２２は、制御部１２４から処理結果通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ２１３）。
通信処理部１２１は、アプリ選択部１２２から処理結果通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ２１４）。
なお、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からの動作実行要求コマンド発行時に図１８によって説明した処理と同様の処理を行うことができる。
【０１１５】
次に、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第２例（認証失敗例）について、図２０を参照して説明する。
図２０は、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
図２０によって説明する各処理のうち、ステップＳ２２１〜Ｓ２２８の処理は図１８によって説明したステップＳ２０１〜Ｓ２０８の処理と同じなので、ステップＳ２２９以降の処理について説明する。
【０１１６】
ＭＦＰ１０の認証部１２５は、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取った動作実行要求コマンドの正当性を確認するための認証処理として、その動作実行要求コマンドに付加されている認証情報をアプリ情報通知コマンドに付加されているアプリ情報と照合する（Ｓ２２９）。そして、両情報が一致しなかった場合に認証が失敗したと判断して、動作実行要求コマンドによって要求されたアプリ動作の実行（外部アプリによるアクセス）を拒否し、その旨を示す情報を含む認証否認通知コマンド（結果通知コマンド）を発行し、それを制御部１２４へ送る（Ｓ２３０）。また、図示は省略するが、不正なアクセスがあった旨の情報を操作部１０７上に表示する。
【０１１７】
制御部１２４は、認証部１２５から認証否認通知コマンドを受け取ると、それを外部アプリ２３１に対して発行する。つまり、その認証否認通知コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３１へ送信する（Ｓ２３１〜Ｓ２３３）。
外部アプリ２３１は、ＭＦＰ１０から認証否認通知コマンドを受信すると、ＭＦＰ１０へのアクセスが不正なアクセスであることを図４の操作部２０７上に表示させる。
なお、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からの動作実行要求コマンド発行時に図２０によって説明した処理と同様の処理を行うことができる。
【０１１８】
次に、ＭＦＰ１０のコントローラ１１内のＣＰＵ１０１による外部アプリからの動作実行要求コマンド取得時の処理について（認証処理について詳しく）、図２１を参照してより具体的に説明する。なお、他の画像処理装置も同様の処理を行うため、図示および説明は省略する。
図２１は、ＭＦＰ１０のコントローラ１１内のＣＰＵ１０１による外部アプリからの動作実行要求コマンド取得時の処理の一例を示すフローチャートである。
【０１１９】
ＭＦＰ１０のＣＰＵ１０１は、外部アプリ２３１（又は２３２）から送られてくる動作実行要求コマンドをＭＡＣ・Ｉ／Ｆ１１１，ＵＳＢ・Ｉ／Ｆ１０９，又はＩＥＥＥ１３９４・Ｉ／Ｆ１１０によって受信すると、図２１に示す処理ルーチンがスタートし、まずステップＳ１でその動作実行要求コマンドを取得し、ステップＳ２でその動作実行要求コマンドに付加（付属）されている認証情報（アプリ正当性情報）を抽出した後、ステップＳ３でアプリ情報記憶部１２３から対応するアプリ情報（予め登録されたもの）を取得して、ステップＳ４でアプリ接続要求コマンドの正当性を確認するための認証処理を行う。つまり、先に抽出した認証情報をそのアプリ情報と照合する。
【０１２０】
ここで、認証情報とアプリ情報について、簡単に説明しておく。
認証情報は、前述したように、動作実行要求コマンドの正当性を確認するための認証処理を行う際に使用するアプリ正当性情報であるため、動作実行要求コマンドの発行元のアプリ固有の識別情報（アプリＩＤ番号）であると良い。なお、アプリの種別を示す種別情報（アプリ種別情報）を認証情報として使用することもできる。その場合、図１９に示したコマンドから認証情報を削除することができる。
アプリ情報記憶部１２３には、例えば表４に示すようなアプリ管理テーブルが記憶されている。
【０１２１】
【表４】
2006114020.tif 000006
このアプリ管理テーブルには、ＭＦＰ１０で実行可能な動作（機能）を実現するためのアプリ（内部アプリ１３１，１３２，外部アプリ２３１，２３２）毎にアプリ名，アプリＩＤ番号（アプリ識別番号），アプリ搭載場所（ＩＰアドレス等），アプリ種別を示す情報（アプリ情報）が記憶されている。
【０１２２】
したがって、例えば動作実行要求コマンドに付加されている認証情報がアプリＩＤ番号の場合には、それと照合するアプリ情報もアプリＩＤ番号である必要がある。あるいは、動作実行要求コマンドに付加されているアプリ種別情報を認証情報として使用する場合には、それと照合するアプリ情報もアプリ種別情報である必要がある。その場合、認証部１２５が、動作実行要求コマンドに付加されているアプリ種別情報を判定する必要があるため、アプリ種別判定部としての機能を持つことになる。
図２１へ戻る。
【０１２３】
ＭＦＰ１０のＣＰＵ１０１は、動作実行要求コマンドから抽出した認証情報とアプリ情報記憶部１２３から取得したアプリ情報が一致した場合には、ステップＳ５で認証が成功した（認証情報は正当な情報である）と判断して（動作実行要求コマンドの正当性を確認して）、ステップＳ６で先に取得した動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）の実行を許可し、ステップＳ７でそのアプリ動作を実行した後、その結果を外部アプリ２３１へ送り、処理を終了する。
【０１２４】
もし、動作実行要求コマンドから抽出した認証情報とアプリ情報記憶部１２３から取得したアプリ情報が一致しなかった場合には、認証が失敗した（認証情報は不当な情報である）と判断して、ステップＳ９で先に取得した動作実行要求コマンドによって要求されたアプリ動作の実行（外部アプリによるアクセス）を拒否し、外部アプリによるアクセスが不正なアクセスであること示す情報を含む認証否認通知コマンドを発行し、それを外部アプリ２３１へ送信する。また、ステップＳ９で不正なアクセスがあった旨の情報を操作部１０７上に表示し、処理を終了する。
【０１２５】
なお、受信した動作実行要求コマンドに付加されているアプリ種別情報を認証情報として使用する場合、そのアプリ種別情報をアプリ情報記憶部１２３から取得したアプリ種別情報（ＭＦＰ１０で実行可能な動作を実現するためのアプリの種別情報）と照合する。例えば、ＦＡＸ機能を搭載していない場合、外部アプリ２３１からＦＡＸ動作の実行要求コマンドを受信すると、それに付加（付属）されているアプリ種別情報をアプリ情報記憶部１２３から取得したアプリ種別情報とを照合することにより、両情報が一致せず、認証失敗（ＦＡＸ動作を実行できない）と判断する。
【０１２６】
また、ＭＦＰ１０のＣＰＵ１０１が、認証が失敗したと判断した場合に、不正なアクセスがあった旨の情報を操作部１０７上に表示せず、不正なアクセスの履歴情報（図２のＮＶＲＡＭ１０５又はＨＤＤ１０６に記憶されている）に追加して、後でまとめて操作部１０７上に表示したり、プロッタによって用紙にプリントすることもできる。
さらに、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からの動作実行要求コマンド発行時に図２１によって説明した処理と同様の処理を行うことができる。
【０１２７】
さらにまた、図１８〜図２１によって説明した処理では、アプリ情報記憶部１２３からアプリＩＤ情報やアプリ種別情報等のアプリ情報を取得するようにしたが、そのアプリ情報は、認証部１２５が最初から保持しておくことにより、アプリ情報記憶部１２３に対して問い合わせることなく、判定するようにしてもよい。
【０１２８】
この第１制御例によっても、ＭＦＰ１０を含む各画像処理装置が、外部アプリと通信することにより、その外部アプリを利用して動作を実行するので、複数の画像処理装置で共通のアプリを使用でき、その各画像処理装置が低コストで複数の機能を実現できる。また、アプリのバージョンアップ作業の軽減化を計ることもできる。さらに、内部アプリもそのまま利用して動作を実行することができるため、自由度が増す。さらにまた、外部アプリが送信する動作実行要求コマンド一つ一つに対して正当性を確認するための認証処理を行うので、動作実行要求コマンド毎に不正な外部アプリのアクセスを排除することができる。
【０１２９】
また、動作実行要求コマンドに付加する認証情報として、アプリＩＤ情報（外部アプリ固有の識別情報）を使用するようにすれば、アプリＩＤ情報を管理テーブルとして管理し、認証処理を行う際に使用することができるため、画像処理装置への実装が容易になる。
さらに、動作実行要求コマンドに付加する認証情報として、アプリ種別情報（画像処理装置で実行可能な動作を実現するためのアプリの種別情報）を使用するようにしても、アプリ種別情報を管理テーブルとして管理し、認証処理を行う際に使用することができるため、画像処理装置への実装が容易になる。
【０１３０】
〔第２制御例〕
次に、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第１例（認証成功例）について、図２２を参照して説明する。
図２２は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例を示す図である。
【０１３１】
外部アプリ２３１（又は２３２）は、操作部２０７上の操作により、例えばネットワーク１上のいずれかの画像処理装置（ここではＭＦＰ１０とする）が使用すべき画像処理装置として選択（指定）され、且つ使用すべき機能が選択された場合に（機能の選択によってその機能を実現可能な画像処理装置を自動的に選択してもよい）、接続要求（アプリ接続要求）コマンドを発行し、それに認証情報を付加して指定された画像処理装置であるＭＦＰ１０へ送信する（Ｓ３０１）。
【０１３２】
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からアプリ接続要求コマンドが送られてくると、それを取得してアプリ選択部１２２へ引き渡す（Ｓ３０２）。
アプリ選択部１２２は、通信処理部１２１からアプリ接続要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ３０３）。
制御部１２４は、アプリ選択部１２２からアプリ接続要求コマンドを受け取ると、それから認証情報のみを抽出し、それを認証要求コマンドに付加して認証部１２５へ引き渡す（Ｓ３０４）。
【０１３３】
認証部１２５は、制御部１２４から認証要求コマンドを受け取ると、アプリ情報取得要求コマンドを制御部１２４へ送る（Ｓ３０５）。
制御部１２４は、認証部１２５からアプリ情報取得要求コマンドを受け取ると、先に取得したアプリ接続要求コマンドの発行元である外部アプリ２３１に関する情報をアプリ情報記憶部１２３から取得するために、例えば外部アプリ２３１のＩＰアドレス（アプリ搭載場所情報）をアプリ情報取得要求コマンドに付加してアプリ情報記憶部１２３へ送る（Ｓ３０６）。
【０１３４】
アプリ情報記憶部１２３は、認証部１２５からアプリ情報取得要求コマンドを受け取ると、それに付加されているＩＰアドレスから外部アプリ２３１に関する情報（アプリ情報）をアプリ管理テーブル（表４参照）から読み出し、それを含むアプリ情報通知コマンドを発行して制御部１２４へ送る（Ｓ３０７）。
制御部１２４は、アプリ情報記憶部１２３からアプリ情報通知コマンドを受け取る（取得する）と、それを認証部１２５へ送る（Ｓ３０８）。
【０１３５】
認証部１２５は、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取ったアプリ接続要求コマンドの正当性を確認するための認証処理を行う。つまり、そのアプリ接続要求コマンドに付加されている認証情報をアプリ情報通知コマンドに付加されているアプリ情報と照合し、両情報が一致するか否かを判断する（Ｓ３０９）。そして、上記両情報が一致した場合に、認証が成功したと判断して（アプリ接続要求コマンドの正当性を確認して）、ＭＦＰ１０と外部アプリ２３１との接続（ＭＦＰ１０の利用）を許可し、その旨を示す情報を含む接続許可通知コマンド（装置利用可能通知コマンドでもよい）を発行して、それを制御部１２４へ送る（Ｓ３１０）。
【０１３６】
制御部１２４は、認証部１２５から接続許可通知コマンドを受け取ってアプリ選択部１２２へ送る（Ｓ３１１）。
アプリ選択部１２２は、制御部１２４から接続許可通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ３１２）。
通信処理部１２１は、アプリ選択部１２２から接続許可通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ３１３）。
【０１３７】
外部アプリ２３１は、ＭＦＰ１０から接続許可通知コマンドを受信すると、ＭＦＰ１０と通信可能に接続されたこと、またＭＦＰ１０の利用（ＭＦＰ１０へのアクセス）が可能なことを認識し、先に選択した機能を実現するための動作の実行要求コマンド（動作実行要求コマンド）を発行してＭＦＰ１０へ送信する（Ｓ３１４）。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から動作実行要求コマンドが送られてくると、それを受信（取得）してアプリ選択部１２２へ引き渡す（Ｓ３１５）。
アプリ選択部１２２は、通信処理部１２１から動作実行要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ３１６）。
【０１３８】
制御部１２４は、アプリ選択部１２２から動作実行要求コマンドを受け取ると、その動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）を実行し（Ｓ３１７）、その結果を示す情報を含む処理結果通知コマンドを発行して、それをアプリ選択部１２２へ送る（Ｓ３１８）。
アプリ選択部１２２は、制御部１２４から処理結果通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ３１９）。
通信処理部１２１は、アプリ選択部１２２から処理結果通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ３２０）。
なお、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からのアプリ接続要求コマンド発行時に図２２によって説明した処理と同様の処理を行うことができる。
【０１３９】
次に、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第２例（認証失敗例）について、図２３を参照して説明する。
図２３は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
【０１４０】
図２３によって説明する各処理のうち、ステップＳ３２１〜Ｓ３２８の処理は図２２によって説明したステップＳ３０１〜Ｓ３０８の処理と同じなので、ステップＳ３２９以降の処理について説明する。
ＭＦＰ１０の認証部１２５は、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取ったアプリ接続要求コマンドの正当性を確認するための認証処理として、そのアプリ接続要求コマンドに付加されている認証情報をアプリ情報通知コマンドに付加されているアプリ情報と照合し、両情報が一致するか否かを判断する（Ｓ３２９）。そして、上記両情報が一致しなかった場合に認証失敗とし、その旨を示す情報を含む認証否認通知コマンド（結果通知コマンド）を発行し、それを制御部１２４へ送る（Ｓ３３０）。
【０１４１】
制御部１２４は、認証部１２５から認証否認通知コマンドを受け取ってアプリ選択部１２２へ引き渡す（Ｓ３３１）。
アプリ選択部１２２は、制御部１２４から認証否認通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ３３２）。
通信処理部１２１は、アプリ選択部１２２から認証否認通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ３３３）。
ＭＦＰ１０の通信処理部１２１は、認証否認通知コマンドを外部アプリ２３１へ送った後、その外部アプリ２３１から動作実行要求コマンドを受信すると、外部アプリ２３１との接続を拒否する接続拒否コマンドを外部アプリ２３１へ送信する（Ｓ３３４，Ｓ３３５）。
なお、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からのアプリ接続要求コマンド発行時に図２３によって説明した処理と同様の処理を行うことができる。
【０１４２】
この第２制御例によっても、ＭＦＰ１０を含む各画像処理装置が、外部アプリと通信することにより、その外部アプリを利用して動作を実行するので、複数の画像処理装置で共通のアプリを使用でき、その各画像処理装置が低コストで複数の機能を実現できる。また、アプリのバージョンアップ作業の軽減化を計ることもできる。さらに、内部アプリもそのまま利用して動作を実行することができるため、自由度が増す。さらにまた、外部アプリが送信する最初の接続要求コマンドに対して正当性を確認するための認証処理を行い、認証が成功すれば外部アプリに対してアクセス（接続）を許可し、以降の動作実行要求コマンドに対して認証処理を行わないで直ちにそのコマンドによって要求された動作（アクセス）を行うので、接続要求コマンド毎に不正な外部アプリのアクセスを排除することができる。
【０１４３】
なお、前述した認証処理は、動作実行要求コマンド又はアプリ接続要求コマンドの正当性、つまりそれらのコマンドを発行した外部アプリの正当性を確認するためのものであるが、その外部アプリを含む外部サーバの正当性を確認するようにすることもできる。
【０１４４】
〔第３制御例〕
次に、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第２例について、図２４を参照して説明する。この場合、ＭＦＰ１０のアプリ情報記憶部１２３に、各アプリ毎に異なるパスワードが記憶されているものとする。
図２４は、外部アプリ２３１（又は２３２）によるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
【０１４５】
外部アプリ２３１（又は２３２）は、操作部２０７上の操作により、例えばネットワーク１上のいずれかの画像処理装置（ここではＭＦＰ１０とする）が使用すべき画像処理装置として指定され、且つ使用すべき機能が選択された場合に（機能の選択によってその機能を実現可能な画像処理装置を自動的に選択してもよい）、アプリ接続要求コマンドを発行し、それを指定された画像処理装置であるＭＦＰ１０へ送信する（Ｓ４０１）。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からアプリ接続要求コマンドが送られてくると、パスワードを要求するパスワード要求コマンドをアプリ接続要求コマンドの発行元である外部アプリ２３１へ送信する（Ｓ４０２）。
【０１４６】
外部アプリ２３１は、ＭＦＰ１０からパスワード要求コマンドを受信（取得）すると、予め登録された（図４のＮＶＲＡＭ２０５又はＨＤＤ２０６に記憶された）パスワードを含むパスワード転送コマンドをパスワードの要求元であるＭＦＰ１０へ送信する（Ｓ４０３）。
なお、ステップＳ４０１〜Ｓ４０３の通信シーケンスが、予め定められた通信シーケンスとなる。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からパスワード転送コマンドを受信すると、それからパスワードのみを抽出し、それを認証要求コマンドに付加してアプリ選択部１２２へ引き渡す（４０４）。
【０１４７】
アプリ選択部１２２は、通信処理部１２１から認証要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ４０５）。
制御部１２４は、アプリ選択部１２２から認証要求コマンドを受け取って認証部１２５へ引き渡す（Ｓ４０６）。
認証部１２５は、制御部１２４から認証要求コマンドを受け取ると、それからパスワード（認証情報）を抽出した後、アプリ情報取得要求コマンドを制御部１２４へ送る（Ｓ４０７）。
【０１４８】
制御部１２４は、認証部１２５からアプリ情報取得要求コマンドを受け取ると、外部アプリ２３１に対応するパスワードをアプリ情報記憶部１２３から取得するために、例えば外部アプリ２３１のＩＰアドレスをアプリ情報取得要求コマンドに付加してアプリ情報記憶部１２３へ送る（Ｓ４０８）。
アプリ情報記憶部１２３は、制御部１２４からアプリ情報取得要求コマンドを受け取ると、それに付加されているＩＰアドレスから外部アプリ２３１に対応するパスワードをアプリ管理テーブルから読み出し、それを含むアプリ情報通知コマンドを発行して制御部１２４へ送る（Ｓ４０９）。
制御部１２４は、アプリ情報記憶部１２３からアプリ情報通知コマンドを受け取ると、それを認証部１２５へ送る（Ｓ４１０）。
【０１４９】
認証部１２５は、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取ったアプリ接続要求コマンドの正当性を確認するための認証処理を行う。つまり、先に受け取った認証要求コマンドに付加されているパスワードをアプリ情報通知コマンドに付加されているパスワードと照合する（Ｓ４１１）。そして、両パスワードが一致した場合に、認証が成功したと判断して（アプリ接続要求コマンドの正当性を確認して）、ＭＦＰ１０と外部アプリ２３１との接続（ＭＦＰ１０の利用）を許可し、その旨を示す情報を含む接続許可通知コマンド（装置利用可能通知コマンドでもよい）を発行して、それを制御部１２４へ送る（Ｓ４１２）。
以後のステップＳ４１３〜Ｓ４２２の通信シーケンスは、図２２のステップＳ３１１〜Ｓ３２０の通信シーケンスと同様なので、説明を省略する。
【０１５０】
なお、図２４のステップＳ４０２〜Ｓ４１１の処理に代えて、以下に示す処理を行うこともできる。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からアプリ接続要求コマンドを受信すると、認証部１２５によって生成された乱数を含むパスワード要求コマンドを外部アプリ２３１へ送信する。このとき、実際には、乱数を要求する乱数要求コマンドを発行し、それをアプリ選択部１２２および制御部１２４を介して認証部１２５に送る。それによって、認証部１２５は、乱数を生成し、それを制御部１２４およびアプリ選択部１２２を介して通信処理部１２１へ送信する。
【０１５１】
外部アプリ２３１は、ＭＦＰ１０からパスワード要求コマンドを受信すると、そのコマンドに付加されている乱数を予め定め（決め）られた方法で解析してパスワードを生成し、それを含むパスワード転送コマンドをＭＦＰ１０へ送信する。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からパスワード転送コマンドを受信すると、それからパスワードのみを抽出し、それを認証要求コマンドに付加してアプリ選択部１２２へ引き渡す。
【０１５２】
アプリ選択部１２２は、通信処理部１２１から認証要求コマンドを受け取って制御部１２４へ引き渡す。
制御部１２４は、アプリ選択部１２２から認証要求コマンドを受け取って認証部１２５へ引き渡す。
認証部１２５は、制御部１２４から認証要求コマンドを受け取ると、それからパスワードを抽出し、それを先に生成した乱数と照合することにより、アプリ接続要求コマンドの正当性を確認するための認証処理を行う。
【０１５３】
あるいは、図２４のステップＳ４０２〜Ｓ４１５の処理に代えて、以下に示す処理を行うこともできる。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１からアプリ接続要求コマンドを受信すると、第１の暗証情報（暗証番号等）を要求する第１の暗証情報要求コマンドを外部アプリ２３１へ送信する。
外部アプリ２３１は、ＭＦＰ１０から第１の暗証情報要求コマンドを受信すると、予め定められた第１の暗証情報を含む第１の暗証情報転送コマンドをＭＦＰ１０へ送信する。
【０１５４】
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から第１の暗証情報転送コマンドを受信すると、第２の暗証情報を２個要求する第２の暗証情報要求コマンドを外部アプリ２３１へ送信する。
外部アプリ２３１は、ＭＦＰ１０から第２の暗証情報要求コマンドを受信すると、予め定められた第２の暗証情報を含む第２の暗証情報転送コマンドを２回繰り返しＭＦＰ１０へ送信する。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から第２の暗証情報転送コマンドを２回受信すると、第３の暗証情報を３個要求する第３の暗証情報要求コマンドを外部アプリ２３１へ送信する。
【０１５５】
外部アプリ２３１は、ＭＦＰ１０から第３の暗証情報要求コマンドを受信すると、予め定められた第３の暗証情報含む第３の暗証情報転送コマンドを３回繰り返しＭＦＰ１０へ送信する。
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から第３の暗証情報転送コマンドを３回受信すると、通信シーケンスが予め定められたプロトコルに従っていると判定して認証が成功したと判断し、ＭＦＰ１０と外部アプリ２３１との接続を許可し、その旨を示す情報を含む接続許可通知コマンドを外部アプリ２３１へ送信する。
【０１５６】
次に、ＭＦＰ１０のコントローラ１１内のＣＰＵ１０１による外部アプリからのアプリ接続要求コマンド取得時の処理について（認証処理について詳しく）、図２５を参照してより具体的に説明する。なお、他の画像処理装置も同様の処理を行うため、図示および説明は省略する。
図２５は、ＭＦＰ１０のコントローラ１１内のＣＰＵ１０１による外部アプリからのアプリ接続要求コマンド取得時の処理の一例を示すフローチャートである。
【０１５７】
ＭＦＰ１０のＣＰＵ１０１は、外部アプリ２３１（又は２３２）から送られてくるアプリ接続要求コマンドをＭＡＣ・Ｉ／Ｆ１１１，ＵＳＢ・Ｉ／Ｆ１０９，又はＩＥＥＥ１３９４・Ｉ／Ｆ１１０によって受信すると、図２５に示す処理ルーチンがスタートし、まずステップＳ１１でそのアプリ接続要求コマンドを取得し、外部アプリ２３１との間で予め定められたプロトコルに従ってそのアプリ接続要求コマンドの正当性を確認するための通信シーケンスを行う。
【０１５８】
次に、ステップＳ１２でその通信シーケンスからアプリ接続要求コマンドの正当性を確認するための認証処理を行う。つまり、上記通信シーケンスが上記プロトコルに従っているか（例えば外部アプリ２３１から取得したパスワード転送コマンドに付加されているパスワードとアプリ情報記憶部１２３から取得したアプリ情報に付加されているパスワードが一致するか）否かを判定する。そして、上記通信シーケンスが上記プロトコルに従っている場合（例えば両パスワードが一致した場合）に、ステップＳ１３で認証が成功した（上記プロトコルは正当なプロトコルである）と判断して（アプリ接続要求コマンドの正当性を確認して）、ステップＳ１４でＭＦＰ１０と外部アプリ２３１との接続（通信）を許可し、その旨を示す情報を含む接続許可通知コマンドを外部アプリ２３１へ送信する。
【０１５９】
それによって、ステップＳ１５で外部アプリ２３１から動作実行要求コマンドを取得し、ステップＳ１６でその動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）を実行し、ステップＳ１７でその結果を外部アプリ２３１へ送信した後、ステップＳ１８で外部アプリ２３１との通信を終了し、処理を終了する。
もし、上記通信シーケンスが上記プロトコルに従っていなかった場合には、認証が失敗した（上記プロトコルは不当なプロトコルである）と判断して、ステップＳ１９で動作実行要求コマンドによって要求されたアプリ動作の実行（外部アプリによるアクセス）を拒否し、通信プロトコルが不正なプロトコルであること示す情報を含む認証否認通知コマンドを発行し、それを外部アプリ２３１へ送信する。また、ステップＳ２０で不正なアクセスがあった旨の情報を操作部１０７上に表示し、処理を終了する。
【０１６０】
なお、ＭＦＰ１０のＣＰＵ１０１が、認証が失敗したと判断した場合に、不正なアクセスがあった旨の情報を操作部１０７上に表示せず、不正なアクセスの履歴情報（図２のＮＶＲＡＭ１０５又はＨＤＤ１０６に記憶されている）に追加して、後でまとめて操作部１０７上に表示したり、プロッタによって用紙にプリントすることもできる。
また、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からの動作実行要求コマンド発行時に図２５によって説明した処理と同様の処理を行うことができる。
【０１６１】
この第３制御例によっても、第２制御例と同様の効果を得ることができる。また、ＭＦＰ１０を含む各画像処理装置が、外部アプリから接続要求を受けた場合に、その外部アプリとの間で予め定められたプロトコルに従ってその接続要求の正当性を確認するための通信シーケンスを行い、その行われた通信シーケンスから上記接続要求の正当性を確認するための認証処理を行うので、コマンドに付加された認証情報のみを用いて認証処理を行うよりも、厳重なアプリアクセス管理を実現することができる。但し、コマンドに付加された認証情報も用いて認証処理を行うようにすれば、より厳重なアプリアクセス管理を実現することができる。
【０１６２】
〔第４制御例〕
次に、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第３例（認証成功例）について、図２６を参照して説明する。
図２６は、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第３例を示す図である。なお、説明の都合上、認証部１２５が図２６のアプリＩＤ判定部１２５ａとアプリ種別判定部１２５ｂとしての機能を備えているものとする。
【０１６３】
外部アプリ２３１（又は２３２）は、操作部２０７上の操作により、例えばネットワーク１上のいずれかの画像処理装置（ここではＭＦＰ１０とする）が使用すべき画像処理装置として選択（指定）され、且つ使用すべき機能が選択された場合に（機能の選択によってその機能を実現可能な画像処理装置を自動的に選択してもよい）、その機能を実現するための動作の実行要求コマンド（動作実行要求コマンド）を発行し、それに認証情報を付加して指定された画像処理装置であるＭＦＰ１０へ送信する（Ｓ５０１）。なお、実際には、第１実施例と同様に、アプリ制御部２４２が、動作実行要求コマンドや他のコマンドをアプリ通信処理部２４１によりＭＦＰ１０へ送信する。
【０１６４】
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から動作実行要求コマンドが送られてくると、それを受信（取得）してアプリ選択部１２２へ引き渡す（Ｓ５０２）。
アプリ選択部１２２は、通信処理部１２１から動作実行要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ５０３）。
制御部１２４は、アプリ選択部１２２から動作実行要求コマンドを受け取ると、それからアプリＩＤ情報のみを抽出し、それをアプリＩＤ認証要求コマンドに付加してアプリＩＤ判定部１２５ａへ引き渡す（Ｓ５０４）。
アプリＩＤ判定部１２５ａは、制御部１２４からアプリＩＤ認証要求コマンドを受け取ると、アプリ情報取得要求コマンドを制御部１２４へ送る（Ｓ５０５）。
【０１６５】
制御部１２４は、認証部１２５からアプリ情報取得要求コマンドを受け取ると、先に取得した動作実行要求コマンドの発行元である外部アプリ２３１に関する情報をアプリ情報記憶部１２３から取得するために、例えば外部アプリ２３１のＩＰアドレス（アプリ搭載場所情報）をアプリ情報取得要求コマンドに付加してアプリ情報記憶部１２３へ送る（Ｓ５０６）。
アプリ情報記憶部１２３は、制御部１２４からアプリ情報取得要求コマンドを受け取ると、それに付加されているＩＰアドレスから外部アプリ２３１に関する情報（アプリ情報）をアプリ管理テーブルから読み出し、それを含むアプリ情報通知コマンドを発行して制御部１２４へ送る（Ｓ５０７）。
【０１６６】
制御部１２４は、アプリ情報記憶部１２３からアプリ情報通知コマンドを受け取る（取得する）と、それをアプリＩＤ判定部１２５ａへ送る（Ｓ５０８）。
アプリＩＤ判定部１２５ａは、制御部１２４からアプリ情報通知コマンドを受け取ると、制御部１２４で受け取った動作実行要求コマンドの正当性を確認するための第１の認証処理を行う。つまり、先に受け取ったアプリＩＤ認証要求コマンドに付加されているアプリＩＤ情報をアプリ情報通知コマンドに付加されているアプリ情報中のアプリＩＤ情報と照合する（Ｓ５０９）。そして、上記両アプリＩＤ情報が一致した場合に、アプリＩＤ認証が成功したと判断して、制御部１２４で先に取得された動作実行要求コマンドによって要求されたアプリ動作（コマンド処理）の実行（アクセス）を許可し、その旨を示す情報を含むアクセス許可通知コマンドを発行し、それを制御部１２４へ送る（Ｓ５１０）。
【０１６７】
制御部１２４は、アプリＩＤ判定部１２５ａからアクセス許可通知コマンドを受け取ると、先にアプリ選択部１２２から受け取った動作実行要求コマンドからアプリ種別情報のみを抽出すると共に、先にアプリ情報記憶部１２３から受け取ったアプリ情報通知コマンドからアプリ種別情報を抽出し、その２つのアプリ種別情報を含むアプリ種別判定依頼コマンドをアプリ種別判定部１２５ｂへ送る（Ｓ５１１）。
【０１６８】
アプリ種別判定部１２５ｂは、制御部１２４からアプリ種別判定依頼コマンドを受け取ると、制御部１２４で受け取った動作実行要求コマンドの正当性を確認するための第２の認証処理を行う。つまり、アプリ種別判定依頼コマンドに付加されている２つのアプリ種別情報を照合する（Ｓ５１２）。そして、上記両アプリ種別情報が一致した場合に、アプリ種別認証が成功したと判断して（動作実行要求コマンドの正当性を確認して）、制御部１２４で先に取得された動作実行要求コマンドによって要求されたアプリ動作の実行を許可し、その旨を示す情報を含むアクセス許可通知コマンドを発行し、それを制御部１２４へ送る（Ｓ５１３）。
【０１６９】
制御部１２４は、アプリ種別判定部１２５ｂからもアクセス許可通知コマンドを受け取ると、先に取得した動作実行要求コマンドによって要求されたアプリ動作を実行し（Ｓ５１４）、その結果を示す情報を含む処理結果通知コマンドを発行して、それをアプリ選択部１２２へ送る（Ｓ５１５）。
アプリ選択部１２２は、制御部１２４から処理結果通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ５１６）。
通信処理部１２１は、アプリ選択部１２２から処理結果通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ５１７）。
【０１７０】
なお、アプリＩＤ判定部１２５ａは、上記両アプリＩＤ情報が一致しなかった場合に、アプリＩＤ認証が失敗したと判断して、動作実行要求コマンドによって要求されたアプリ動作の実行を拒否し、その旨を示す情報を含む認証否認通知コマンド（結果通知コマンド）を発行し、それを制御部１２４へ送る。また、不正なアクセスがあった旨の情報を操作部１０７上に表示する。
また、アプリ種別判定部１２５ｂは、上記両アプリ種別情報が一致しなかった場合に、アプリ種別認証が失敗したと判断して、動作実行要求コマンドによって要求されたアプリ動作の実行を拒否し、その旨を示す情報を含む認証否認通知コマンドを発行し、それを制御部１２４へ送る。また、不正なアクセスがあった旨の情報を操作部１０７上に表示する。
【０１７１】
制御部１２４は、アプリＩＤ判定部１２５ａ又はアプリ種別判定部１２５ｂから認証否認通知コマンドを受け取ると、それを外部アプリ２３１に対して発行する。つまり、その認証否認通知コマンドをアプリ選択部１２２，通信処理部１２１を介して外部アプリ２３１へ送信する。
外部アプリ２３１は、ＭＦＰ１０から認証否認通知コマンドを受信すると、ＭＦＰ１０へのアクセスが不正なアクセスであることを図４の操作部２０７上に表示させる。
なお、ＭＦＰ１０以外の画像処理装置でも、外部アプリ２３１からの動作実行要求コマンド発行時に図２６によって説明した処理と同様の処理を行うことができる。
【０１７２】
この第４制御例によっても、第１制御例と同様な効果を得ることができる。但し、ＭＦＰ１０を含む各画像処理装置が、外部アプリが送信する動作実行要求コマンド一つ一つに対して正当性を確認するための認証処理を行う際に、その動作実行要求コマンドに付加されている２つの認証情報（アプリＩＤ情報，アプリ種別情報）を利用するので、不正な外部アプリのアクセスを第１制御例の場合よりも確実に排除できる。つまり、より厳重なアプリアクセス管理を実現することができる。
〔第５制御例〕
ところで、ＭＦＰ１０（他の画像形成装置でもよい）では、認証部１２５（アプリＩＤ判定部１２５ａ又はアプリ種別判定部１２５ｂ）を持たない場合、操作部１０７上のキー操作により、予めアクセスを許可（又は拒否）するアプリ固有の識別情報（アプリに関する情報）であるアプリＩＤ情報又はアプリ種別情報を設定して登録しておき（アプリ情報記憶部１２３のアプリ管理テーブルに書き込んでおき）、その登録情報に従って前述した認証処理（アプリＩＤ認証又はアプリ種別認証）を行うようにしてもよい。
【０１７３】
あるいは、外部サーバ２０上のアプリ（外部アプリ２３１，２３２）を自動で検索し、応答のあったアプリを利用可能アプリとして登録する（そのアプリに関する情報をアプリ情報記憶部１２３のアプリ管理テーブルに書き込む）機能を備えている場合、予めアクセスを許可（又は拒否）するアプリ固有の識別情報を登録しておき、ＭＦＰ１０にアクセス可能なアプリを操作部１０７上のキー操作によって（その操作はＭＦＰ１０の管理者やユーザが行う）制限するようにしてもよい。このとき、例えば図２７に示すようなアプリ（アプリケーション）選択画面を操作部１０７上に表示する。このアプリ選択画面には、登録された各アプリ毎にＩＰアドレスやアプリ名，アプリ種別等のアプリに関する情報が表示される。よって、操作部１０７上のキー操作によって（表示画面にタッチパネルが備えられていれば対応するキーへのタッチによって）アクセスを許可又は拒否するアプリを選択（指定）することにより、そのアプリのみを許可又は拒否することができる。
【０１７４】
この第５制御例によっても、第１制御例と同様な効果を得ることができる。但し、ＭＦＰ１０を含む各画像処理装置が、自己へのアクセスを許可又は拒否するアプリ固有の識別情報を予め設定（登録）しておき、外部アプリが送信する動作実行要求コマンド一つ一つに対して正当性を確認するための認証処理を行う際に、そのコマンドに付加されている識別情報（認証情報）を予め登録しておいたアプリ固有の識別情報と照合し、両識別情報が一致した場合に上記動作の実行を許可又は拒否するので、セキュリティ強度を強化させて画像処理装置を利用することができる。
【０１７５】
〔第６制御例〕
次に、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０を含む各画像処理装置との間の通信シーケンスの第３例について、図２８を参照して説明する。
図２８は、外部アプリ２３１（又は２３２）による動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第３例を示す図である。
操作部１０７上のキー操作により、制御部１２４は、予めアクセスを許可（又は拒否）する通信回線の種類を示す回線種別情報あるいは外部アプリとの通信方法の種類を示す通信方法種別情報を登録しておく（図２のＮＶＲＡＭ１０５又はＨＤＤ１０６に書き込んで保存しておく）。
【０１７６】
外部アプリ２３１（又は２３２）は、操作部２０７上の操作により、例えばネットワーク１上のいずれかの画像処理装置（ここではＭＦＰ１０とする）が使用すべき画像処理装置として選択（指定）され、且つ使用すべき機能が選択された場合に（機能の選択によってその機能を実現可能な画像処理装置を自動的に選択してもよい）、その機能を実現するための動作の実行要求コマンド（動作実行要求コマンド）を発行し、それを指定された画像処理装置であるＭＦＰ１０へ送信する（Ｓ６０１）。
【０１７７】
ＭＦＰ１０の通信処理部１２１は、外部アプリ２３１から動作実行要求コマンドが送られてくると、それを受信した後、それを通した通信回線（又は外部アプリとの通信方法）の種類を判別し、その判別結果を示す回線種別情報（又は通信方法種別情報）を動作実行要求コマンドに付加してアプリ選択部１２２へ引き渡す（Ｓ６０２）。
アプリ選択部１２２は、通信処理部１２１から動作実行要求コマンドを受け取って制御部１２４へ引き渡す（Ｓ６０３）。
制御部１２４は、アプリ選択部１２２から動作実行要求コマンドを受け取ると、認証要求コマンドを認証部１２５へ引き渡す（Ｓ６０４）。
【０１７８】
認証部１２５は、制御部１２４から認証要求コマンドを受け取ると、それに付加されている回線種別情報に応じて（その回線種別情報を予め登録された回線種別情報と照合し、その結果に応じて）、動作実行要求コマンドによって要求されたアプリ動作の実行（アクセス）を許可又は拒否する認証処理を行う（Ｓ６０５）。例えば、回線種別情報が示す通信回線がアクセスを許可するネットワークであれば、上記要求されたアプリ動作の実行を許可し、アクセスを拒否するシリアルＩ／Ｆ（ＵＳＢやＩＥＥＥ１３９４）であれば上記要求されたアプリ動作の実行を拒否する。
【０１７９】
あるいは、制御部１２４から受け取った認証要求コマンドに通信方法種別情報が付加されている場合、その通信方法種別情報に応じて（その通信方法種別情報を予め登録された通信方法種別情報と照合し、その結果に応じて）、動作実行要求コマンドによって要求されたアプリ動作の実行を許可又は拒否する認証処理を行う（Ｓ６０５）。例えば、通信方法種別情報が示す通信方法がアクセスを許可するネットワークを用いた通信方法であれば、上記要求されたアプリ動作の実行を許可し、アクセスを拒否するシリアルＩ／Ｆを用いた通信方法であれば上記要求されたアプリ動作の実行を拒否する。
【０１８０】
このような認証処理を行った後、その結果を示す情報を含む認証結果通知コマンドを発行し、それを制御部１２４へ送る（Ｓ６０６）。
制御部１２４は、認証部１２５から認証結果通知コマンドを受け取ると、認証結果通知コマンドの内容を判別し、アクセス許可を認識した場合に、先に取得した動作実行要求コマンドによって要求されたアプリ動作を実行し（Ｓ６０７）、その結果を示す情報を含む処理結果通知コマンドを発行して、それをアプリ選択部１２２へ送る（Ｓ６０８）。
アプリ選択部１２２は、制御部１２４から処理結果通知コマンドを受け取って通信処理部１２１へ引き渡す（Ｓ６０９）。
通信処理部１２１は、アプリ選択部１２２から処理結果通知コマンドを受け取ると、それを外部アプリ２３１へ送信する（Ｓ６１０）。
【０１８１】
制御部１２４は、認証部１２５から受け取った認証結果通知コマンドの内容からアクセス拒否を認識した場合には、その結果を示す情報を含むアクセス拒否通知コマンド（処理結果通知コマンド）を発行して、それをアプリ選択部１２２へ送る。
アプリ選択部１２２は、制御部１２４からアクセス拒否通知コマンドを受け取って通信処理部１２１へ引き渡す。
通信処理部１２１は、アプリ選択部１２２からアクセス拒否通知コマンドを受け取ると、それを外部アプリ２３１へ送信する。
【０１８２】
この第６制御例によっても、第１制御例と同様な効果を得ることができる。但し、ＭＦＰ１０を含む各画像処理装置が、外部アプリから動作実行要求コマンドを受けた場合に、そのコマンドを通した通信回線（又はこの時の通信方法）の種類を判別し、その判別結果に応じて動作実行要求コマンドによって要求された動作の実行を許可又は拒否するので、不正な外部アプリのアクセスをより確実に排除することができる。
【０１８３】
〔第７制御例〕
なお、ＭＦＰ１０のＣＰＵ１０１は、不正なアクセス（何らかの通知）を繰り返す外部アプリを保持するサーバがあった場合、それを危険なサーバとみなして、不正なアプリを含む（危険とみなしたサーバ上の）全てのアプリからのアクセスを拒否することもできる。
そのため、危険なサーバと判断する方法の一つとして、不正なアクセスのリトライ回数を計数（カウント）し、所定値（ある制限値）を超えると、アクセス拒否をすることなどがある。
例えば、危険を避けるため、不正なアクセスが繰り返された場合、全ての外部アプリからのアクセスを拒否する方法がある。
アクセス拒否をする判断方法としては、所定時間（一定時間）内に不正アクセスが所定値以上あった場合やある特定のサーバから不正なアクセスが所定値以上あった場合などが考えられる。
【０１８４】
それらの判断を含む制御について、もう少し詳しく説明する。
ＭＦＰ１０のＣＰＵ１０１は、外部サーバ２０から何らかの動作実行要求コマンドを受けた場合に、そのコマンドが正常なコマンドであるか否かを判別し、正常なコマンドでなかった回数（不正なアクセスのリトライ回数）を計数する。そして、その計数値が所定時間内に所定値に達した場合に、動作実行要求コマンドによって要求された動作の実行を拒否する。あるいは、外部サーバ２０から動作実行要求コマンドを受けた場合に、その送信元を判別し、その送信元が予め設定された特定の外部サーバ２０の場合にのみ、その外部サーバ２０から受けたコマンドが正常なコマンドであるか否かを判別し、正常なコマンドでなかった回数を計数する。そして、その計数値が所定値に達した場合に動作実行要求コマンドによって要求された動作の実行を拒否する。
【０１８５】
この第７制御例によっても、第１制御例と同様な効果を得ることができる。但し、ＭＦＰ１０を含む各画像処理装置が、外部アプリから動作実行要求コマンドを受けた場合に、そのコマンドが正常なコマンドであるか否かを判別して、正常な要求でない回数を計数し、その計数値が所定値に達した場合に、動作実行要求コマンドによって要求された動作の実行を拒否するので、より厳重なアプリアクセス管理を実現することができる。
【０１８６】
〔第８制御例〕
第１制御例〜第７制御例を以下の（１）〜（１０）に示すように組み合わせることもできる。
（１）第１制御例（動作実行要求コマンド受信時）と第２制御例（接続要求コマンド受信時）の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２２のステップ３０１〜Ｓ３１３の処理を行った後、図１８のステップＳ２０１〜Ｓ２１４の処理を行い、以後ステップＳ２０１〜Ｓ２１４の処理を繰り返す。
【０１８７】
（２）第２制御例と第４制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２２のステップ３０１〜Ｓ３１３の処理を行った後、図２６のステップＳ５０１〜Ｓ５１７の処理を行い、以後ステップＳ５０１〜Ｓ５１７の処理を繰り返す。
（３）第１制御例と第３制御例（パスワード）の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２４のステップ４０１〜Ｓ４１５の処理を行った後、図１８のステップＳ２０１〜Ｓ２１４の処理を行い、以後ステップＳ２０１〜Ｓ２１４の処理を繰り返す。
【０１８８】
（４）第３制御例と第４制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２４のステップ４０１〜Ｓ４１５の処理を行った後、図２６のステップＳ５０１〜Ｓ５１７の処理を行い、以後ステップＳ５０１〜Ｓ５１７の処理を繰り返す。
（５）第２制御例と第５制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２２のステップ３０１〜Ｓ３１３の処理を行った後、動作実行要求コマンドを受信する毎に第５制御例の認証処理を行う。
【０１８９】
（６）第３制御例と第５制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２４のステップ４０１〜Ｓ４１５の処理を行った後、動作実行要求コマンドを受信する毎に第５制御例の認証処理を行う。
（７）第２制御例と第６制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２２のステップ３０１〜Ｓ３１３の処理を行った後、図２８のステップＳ６０１〜Ｓ６１０の処理を行い、以後ステップＳ６０１〜Ｓ６１０の処理を繰り返す。
【０１９０】
（８）第３制御例と第６制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２４のステップ４０１〜Ｓ４１５の処理を行った後、図２８のステップＳ６０１〜Ｓ６１０の処理を行い、以後ステップＳ６０１〜Ｓ６１０の処理を繰り返す。
（９）第２制御例と第７制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２２のステップ３０１〜Ｓ３１３の処理を行った後、動作実行要求コマンドを受信する毎に第７制御例の処理を行う。
（１０）第３制御例と第７制御例の組み合わせ
この場合、ＭＦＰ１０のＣＰＵ１０１は、図２４のステップ４０１〜Ｓ４１５の処理を行った後、動作実行要求コマンドを受信する毎に第７制御例の処理を行う。
【０１９１】
なお、実際には、ＭＦＰ１０（他の画像処理装置でもよい）と通信する相手である外部アプリが１対１の場合と１対多の場合で必要な認証処理に違いがある。
ＭＦＰ１０と外部アプリが１対１の場合（ＵＳＢやＩＥＥＥ１３９４などで通信する場合）に、ＭＦＰ１０は第１制御例〜第８制御例のいずれの制御も実行できる。
それに対し、ＭＦＰ１０と外部アプリが１対多の場合（ネットワークなどで通信する場合）には、ＭＦＰ１０は、つまり第１制御例，第４制御例〜第７制御例の制御（外部アプリが送信する動作実行要求コマンド一つ一つに対して正当性を確認するための認証処理等の処理）は行えるが、第２制御例，第３制御例〜第８制御例の制御は行えない。
【０１９２】
また、例えば図２９に示すように、ＭＦＰ１０が、コントローラ１１に内部アプリを搭載せず、外部アプリのみを利用してアプリ動作を実行することもできる。勿論、他の画像処理装置も同様である。
さらに、例えば図３０に示すように、ＭＦＰ１０が、コントローラ１１にアプリ情報記憶部を搭載せず、ネットワーク１上に外部記憶装置３０を接続して、そこにアプリ情報記憶部１２３を搭載し、外部記憶装置３０と通信することにより、アプリ情報記憶部１２３へアクセスして、内部アプリや外部アプリに関する情報の書き込み又は読み込みを行うようにすることもできる。勿論、他の画像処理装置も同様である。
さらにまた、ＭＦＰ１０が、ＵＳＢ・Ｉ／Ｆ１０９やＩＥＥＥ１３９４・Ｉ／Ｆ１１０等の他のインタフェースにより外部アプリ２３１又は２３２と通信可能に接続してその外部アプリを利用することもできる。勿論、他の画像処理装置も同様である。
【０１９３】
以上、この発明を通信機能を有するＭＦＰ（デジタル複合機）等の画像処理装置およびそれと外部サーバとを通信可能に接続する画像形成システム（電子装置システム）に適用した実施例について説明したが、この発明はそれらに限られるものではなく、通信機能を有するネットワーク家電機器，自動販売機，医療機器，電源装置，空調システム，ガス・水道・電気等の計量システム，ＡＶ機器，遊戯機器などの他の電子装置、およびそれらと外部サーバとを通信可能に接続する電子装置システムにも適用可能である。
【０１９４】
また、この発明によるプログラムは、ＭＦＰ等の画像処理装置のコンピュータ（ＣＰＵ）に、この発明による通信手段，アプリケーション情報登録手段，制御手段，装置起動通知送信手段，送信許可手段（接続許可手段），装置利用可能通知送信手段（接続許可通知送信手段），認証手段，動作実行許可手段，識別情報設定手段，動作実行許可／拒否手段，回線種判別手段，実行要求判別手段，異常回数計数手段としての機能を実現させるためのプログラムであり、このようなプログラムをコンピュータに実行させることにより、上述したような効果を得ることができる。
【０１９５】
このようなプログラムは、はじめからコンピュータに備えるＲＯＭあるいはＨＤＤ等の記憶手段に格納しておいてもよいが、記録媒体であるＣＤ−ＲＯＭあるいはフレキシブルディスク，ＳＲＡＭ，ＥＥＰＲＯＭ，メモリカード等の不揮発性記録媒体（メモリ）に記録して提供することもできる。そのメモリに記録されたプログラムをコンピュータにインストールしてＣＰＵに実行させるか、ＣＰＵにそのメモリからこのプログラムを読み出して実行させることにより、上述した各手順を実行させることができる。
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部機器あるいはプログラムを記憶手段に記憶した外部機器からダウンロードして実行させることも可能である。
【産業上の利用可能性】
【０１９６】
この発明は、画像処理装置（スキャナ装置等の画像読取装置やデジタル複写機，プリンタ，ファクシミリ装置，デジタル複合機等の画像形成装置など）等の電子装置や、その電子装置のコンピュータ、その電子装置と通信回線を介して接続する外部装置とを備えた電子装置システムに適用可能である。
【図面の簡単な説明】
【０１９７】
【図１】この発明の第１実施例である画像形成システムのネットワーク接続例を示す概念図である。
【図２】図１のＭＦＰ１０のハードウェア構成例を示すブロック図である。
【図３】図１のＭＦＰ１０の主要な機能構成例を示すブロック図である。
【図４】図１の外部サーバ２０のハードウェア構成例を示すブロック図である。
【０１９８】
【図５】図１のＭＦＰ１０および外部サーバ２０ａの主要な機能構成例を示すブロック図である。
【図６】図３に示したＭＦＰ１０の起動時のそのＭＦＰ１０と外部アプリとの間の通信シーケンスの第１例を示す図である。
【図７】図３に示したＭＦＰ１０と外部アプリとの間でやりとりされるコマンドの構成例を示す図である。
【図８】図３に示したＭＦＰ１０が起動時にアプリ動作の実行を可能にするために外部アプリとの間で行う通信処理の第２例を説明するための通信シーケンスを示す図である。
【０１９９】
【図９】図３に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例を示す図である。
【図１０】図３に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２を示す図である。
【図１１】図３に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第３例を示す図である。
【図１２】図３の操作部１０７上に表示される警告画面の一例を示す図である。
【図１３】図３の外部アプリが使用した画像処理装置をユーザに知らせるための画面の一例を示す図である。
【０２００】
【図１４】図３の操作部２０７上に一覧表示されるネットワーク上の画像処理装置に関する情報の表示画面の一例を示す図である。
【図１５】図１のＭＦＰ１０の主要な機能構成の他の例を示すブロック図である。
【図１６】同じくＭＦＰ１０の主要な機能構成の更に他の例を示すブロック図である。
【図１７】第２実施例におけるＭＦＰ１０の主要な機能構成例を示すブロック図である。
【０２０１】
【図１８】図１７の外部アプリによる動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例を示す図である。
【図１９】図１７に示したＭＦＰ１０と外部アプリとの間でやりとりされるコマンドの構成例を示す図である。
【図２０】図１７に示した外部アプリによる動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
【図２１】図１７に示したＭＦＰ１０のコントローラ内のＣＰＵによる外部アプリからの動作実行要求コマンド取得時の処理の一例を示すフロー図である。
【０２０２】
【図２２】図１７に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第１例を示す図である。
【図２３】図１７に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
【図２４】図１７に示した外部アプリによるアプリ接続要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第２例を示す図である。
【図２５】図１７に示したＭＦＰ１０のコントローラ内のＣＰＵによる外部アプリからのアプリ接続要求コマンド取得時の処理の一例を示すフロー図である。
【０２０３】
【図２６】図１７に示した外部アプリによる動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第３例を示す図である。
【図２７】図１７に示した操作部１０７上に表示されるアプリ選択画面の一例を示す図である。
【図２８】図１７に示した外部アプリによる動作実行要求コマンド発行時のその外部アプリとＭＦＰ１０との間の通信シーケンスの第３例を示す図である。
【図２９】第２実施例におけるＭＦＰの主要な機能構成の他の例を示すブロック図である。
【図３０】同じくＭＦＰの主要な機能構成の更に他の例を示すブロック図である。
【符号の説明】
【０２０４】
１：ネットワーク    １０：ＭＦＰ    ２０：外部サーバ    １１：コントローラ
１０１：ＣＰＵ    １０２：ＡＳＩＣ    １０３：ＳＤＲＡＭ    １０４：ＲＯＭ
１０５：ＮＶＲＡＭ    １０６：ＨＤＤ    １０７：操作部    １０９：ＵＳＢ・Ｉ／Ｆ
１１０：ＩＥＥＥ１３９４・Ｉ／Ｆ    １１１：ＭＡＣ・Ｉ／Ｆ    
１３１，１３２：内部アプリ    １２１：通信処理部    １２２：アプリ選択部
１２３：アプリ情報記憶部    １２４：制御部    １２５：認証部
２３１，２３２：外部アプリ
【図１】
2006114020.tif 000007
【図２】
2006114020.tif 000008
【図３】
2006114020.tif 000009
【図４】
2006114020.tif 000010
【図５】
2006114020.tif 000011
【図６】
2006114020.tif 000012
【図７】
2006114020.tif 000013
【図８】
2006114020.tif 000014
【図９】
2006114020.tif 000015
【図１０】
2006114020.tif 000016
【図１１】
2006114020.tif 000017
【図１２】
2006114020.tif 000018
【図１３】
2006114020.tif 000019
【図１４】
2006114020.tif 000020
【図１５】
2006114020.tif 000021
【図１６】
2006114020.tif 000022
【図１７】
2006114020.tif 000023
【図１８】
2006114020.tif 000024
【図１９】
2006114020.tif 000025
【図２０】
2006114020.tif 000026
【図２１】
2006114020.tif 000027
【図２２】
2006114020.tif 000028
【図２３】
2006114020.tif 000029
【図２４】
2006114020.tif 000030
【図２５】
2006114020.tif 000031
【図２６】
2006114020.tif 000032
【図２７】
2006114020.tif 000033
【図２８】
2006114020.tif 000034
【図２９】
2006114020.tif 000035
【図３０】
2006114020.tif 000036