(57)【要約】【課題】コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能な情報処理装置、マージ方法及びプログラムを提供する。【解決手段】それぞれが、第１の情報を管理する複数のクラウドサーバ４０のうちの対応するクラウドサーバ４０から、当該クラウドサーバ４０に応じた態様で第１の情報を取得可能な複数の第１の情報取得部１５１−１〜１５１−ｎと、第２の情報を取得する第２の情報取得部１５２と、複数の第１の情報取得部１５１のうちのいずれかにより取得された第１の情報と第２の情報取得部１５２により取得された第２の情報とをマージするマージ部１５３と、第１の情報と第２の情報とがマージされたマージ情報に基づく処理を行う処理部１５４と、を備える。【選択図】図４
2018152833.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが、第１の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第１の情報を取得可能な複数の第１の情報取得部と、
第２の情報を取得する第２の情報取得部と、
前記複数の第１の情報取得部のうちのいずれかにより取得された前記第１の情報と前記第２の情報取得部により取得された前記第２の情報とをマージするマージ部と、
前記第１の情報と前記第２の情報とがマージされたマージ情報に基づく処理を行う処理部と、
を備える情報処理装置。
【請求項２】
前記第１の情報は、複数のレコードで構成されており、
前記第２の情報は、複数のレコードで構成されており、
前記マージ部は、前記第１の情報に含まれる複数のレコードのうち前記第２の情報に含まれる複数のレコードのいずれにも対応しない１以上のレコードを、前記第２の情報にマージする請求項１に記載の情報処理装置。
【請求項３】
前記マージ部は、前記第１の情報に含まれる複数のレコードのうち前記第２の情報に含まれる複数のレコードのいずれにも対応しない１以上のレコードを、更新日時の新しい順に前記第２の情報にマージする請求項２に記載の情報処理装置。
【請求項４】
前記第１の情報及び前記第２の情報は、アドレス帳に関する情報であり、
前記マージ情報は、マージ後のアドレス帳に関する情報であり、
前記処理部は、前記マージ情報を登録する処理を行う請求項１〜３のいずれか１つに記載の情報処理装置。
【請求項５】
前記第１の情報は、全てのユーザが参照可能な共有アドレス帳、または、特定のユーザのみ参照可能な個人アドレス帳であり、
前記第１の情報取得部は、
前記共有アドレス帳を定期的に取得し、
ユーザの認証後に、該ユーザを識別するためのアカウント情報を利用して前記個人アドレス帳を取得する、
請求項３に記載の情報処理装置。
【請求項６】
前記第１の情報取得部により前記共有アドレス帳が取得された場合、
前記第２の情報取得部は、前記情報処理装置で管理されている前記共有アドレス帳を示す前記第２の情報を取得し、前記マージ部は、前記第１の情報取得部により取得された前記共有アドレス帳と、前記第２の情報取得部により取得された前記第２の情報とをマージし、前記処理部は、該マージ後のアドレス帳を示す前記マージ情報を登録する処理を行い、
前記第１の情報処理部により前記個人アドレス帳が取得された場合、
前記第２の情報取得部は、前記情報処理装置で管理されている前記個人アドレス帳を示す前記第２の情報を取得し、前記マージ部は、前記第１の情報取得部により取得された前記個人アドレス帳と、前記第２の情報取得部により取得された前記第２の情報とをマージし、前記処理部は、該マージ後のアドレス帳を示す前記マージ情報を登録する処理を行う、
請求項５に記載の情報処理装置。
【請求項７】
前記第１の情報取得部は、
ユーザの認証後であって、かつ、前記情報処理装置で管理されている前記個人アドレス帳に、前記クラウドから取得した前記個人アドレス帳をマージして、前記情報処理装置で管理されている前記個人アドレス帳を更新する同期処理が完了してから一定時間を経過した場合に、前記個人アドレス帳を取得する、
請求項５または６に記載の情報処理装置。
【請求項８】
前記複数の第１の情報取得部、前記第２の情報取得部、前記マージ部、及び前記処理部は、それぞれ、コンポーネントであり、
実行対象の１以上のコンポーネント及び実行順序が定義されたワークフロー情報を設定する設定部と、
前記ワークフロー情報に基づいて、前記実行対象の１以上のコンポーネントを前記実行順序で実行する実行制御部と、を備え、
前記ワークフロー情報では、前記実行対象の１以上のコンポーネントとして、前記複数の第１の情報取得部の少なくともいずれか、前記第２の情報取得部、前記マージ部、及び前記処理部が定義され、前記実行順序として、前記複数の第１の情報取得部の少なくともいずれか、前記第２の情報取得部、前記マージ部、前記処理部という順序が定義されている請求項１〜７のいずれか１つに記載の情報処理装置。
【請求項９】
複数の第１の情報取得部の少なくともいずれかが、第１の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第１の情報を取得する第１の取得ステップと、
第２の情報取得部が、第２の情報を取得する第２の取得ステップと、
マージ部が、前記複数の第１の情報取得部のうちのいずれかにより取得された前記第１の情報と前記第２の情報取得部により取得された前記第２の情報とをマージするマージステップと、
処理部が、前記第１の情報と前記第２の情報とがマージされたマージ情報に基づく処理を行う処理ステップと、
を含むマージ方法。
【請求項１０】
それぞれが、第１の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第１の情報を取得可能な複数の第１の情報取得部と、
第２の情報を取得する第２の情報取得部と、
前記複数の第１の情報取得部のうちのいずれかにより取得された前記第１の情報と前記第２の情報取得部により取得された前記第２の情報とをマージするマージ部と、
前記第１の情報と前記第２の情報とがマージされたマージ情報に基づく処理を行う処理部と、
してコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、マージ方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、複合機などの情報処理装置が、ＬＤＡＰ（Lightweight  Directory  Access  Protocol）サーバやＡｃｔｉｖｅＤｉｒｅｃｔｏｒｙなどのアドレス帳を一元管理するイントラネット上のサーバと連携することで、当該サーバで管理されているアドレス帳を、情報処理装置で管理しているアドレス帳に同期する技術が知られている（例えば、特許文献１参照）。
【０００３】
このような技術では、一般的に、イントラネット上のサーバからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ、及びマージ後のアドレス帳を情報処理装置に登録するような機能を有するソフトウェアを情報処理装置にインストールしておくことで、アドレス帳を管理するイントラネット上のサーバと情報処理装置とを連携させる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、近年では、インターネット上でアドレス帳などの情報を管理するようなクラウドサービスも提供されているが、このような、インターネット上でアドレス帳などの情報を管理するクラウドサービスでは、サービス毎に、データの管理形式や取得形式（プロトコル）などの仕様が異なることが一般的である。
【０００５】
このため、インターネット上でアドレス帳などの情報を管理するクラウドサービスと情報処理装置とを連携させる場合、連携する可能性がある全てのクラウドサービスに対応できるよう、クラウドサービス毎に、上述したようなソフトウェアを開発しておく必要があり、人的コストや金銭コストなど様々なコストがかさんでしまう。
【０００６】
本発明は、上記事情に鑑みてなされたものであり、コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能な情報処理装置、マージ方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理装置は、それぞれが、第１の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第１の情報を取得可能な複数の第１の情報取得部と、第２の情報を取得する第２の情報取得部と、前記複数の第１の情報取得部のうちのいずれかにより取得された前記第１の情報と前記第２の情報取得部により取得された前記第２の情報とをマージするマージ部と、前記第１の情報と前記第２の情報とがマージされたマージ情報に基づく処理を行う処理部と、を備える。
【発明の効果】
【０００８】
本発明によれば、コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能という効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態の情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、本実施形態の情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】図３は、本実施形態のクラウドサーバのハードウェア構成の一例を示すブロック図である。
【図４】図４は、本実施形態の情報処理装置の機能構成の一例を示すブロック図である。
【図５】図５は、本実施形態のワークフロー情報作成画面の一例を示す図である。
【図６】図６は、本実施形態の第１の情報における１名分のアドレス帳の一例を示す図である。
【図７】図７は、本実施形態の第２の情報における１名分のアドレス帳の一例を示す図である。
【図８】図８は、本実施形態の変換情報の一例を示す図である。
【図９】図９は、本実施形態のマージ結果（マージ情報）の一例を示す図である。
【図１０】図１０は、本実施形態のアドレス帳同期設定画面の一例を示す図である。
【図１１】図１１は、本実施形態の処理の手順の流れの一例を示すシーケンス図である。
【図１２】図１２は、本実施形態の同期処理の手順の流れの一例を示すシーケンス図である。
【図１３】図１３は、本実施形態のマージ処理の手順の流れの一例を示すフローチャートである。
【図１４】図１４は、変形例１の第１の情報における１名分のアドレス帳の一例を示す図である。
【図１５】図１５は、変形例１のマージ処理の手順の流れの一例を示すフローチャートである。
【図１６】図１６は、クラウドサーバが管理するアドレス帳を示す図である。
【図１７】図１７は、変形例の情報処理システムの動作手順の一例を示すシーケンス図である。
【図１８】図１８は、変形例の共有アドレス帳の同期処理の手順の流れの一例を示すシーケンス図である。
【図１９】図１９は、変形例の共有アドレス帳の同期処理のワークフロー情報が示すワークフローの一例を示す図である。
【図２０】図２０は、変形例の情報処理システムの動作手順の一例を示すシーケンス図である。
【図２１】図２１は、情報処理装置が管理するアカウント情報の一例を示す図である。
【図２２】図２２は、変形例の個人アドレス帳の同期処理の手順の流れの一例を示すシーケンス図である。
【図２３】図２３は、変形例の個人アドレス帳の同期処理のワークフロー情報が示すワークフローの一例を示す図である。
【図２４】図２４は、変形例の実行制御部の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しながら、本発明にかかる情報処理装置、マージ方法及びプログラムの実施形態を詳細に説明する。
【００１１】
図１は、本実施形態の情報処理システム１の構成の一例を示すブロック図である。図１に示すように、情報処理システム１は、情報処理装置１０と、ユーザ端末２０と、携帯端末３０と、クラウドサーバ４０−１〜４０−ｎ（ｎは２以上の自然数）と、を備える。
【００１２】
情報処理装置１０及びユーザ端末２０は、イントラネット２に接続され、クラウドサーバ４０−１〜４０−ｎは、インターネット４に接続されている。また、イントラネット２とインターネット４とは、ファイアウォール３を介して接続されている。つまり本実施形態では、情報処理装置１０及びユーザ端末２０は、イントラネット２、ファイアウォール３、及びインターネット４を介して、クラウドサーバ４０−１〜４０−ｎと通信可能に接続されている。
【００１３】
携帯端末３０は、３Ｇや４Ｇなどの電話回線又はＷｉ‐Ｆｉ（登録商標）などを利用してインターネット４に接続可能であり、インターネット４を介して、クラウドサーバ４０−１〜４０−ｎと通信可能に接続できる。
【００１４】
イントラネット２は、ＬＡＮ（Local  Area  Network）であってもよいし、ＷＡＮ（Wide  Area  Network）であってもよい。イントラネット２、ファイアウォール３、及びインターネット４で構成されるネットワークは、有線で構成されていてもよいし、無線で構成されていてもよいし、両者を併用して構成されていてもよい。
【００１５】
本実施形態では、情報処理装置１０は、複合機（ＭＦＰ：Multifunction  Peripheral）やファクシミリ装置等の画像形成装置である場合を例に取り説明するが、これに限定されるものではない。複合機は、複写機能、印刷機能、スキャナ機能、及びファクシミリ機能のうち少なくとも２つの機能を有するものである。
【００１６】
図２は、本実施形態の情報処理装置１０のハードウェア構成の一例を示すブロック図である。図２に示すように、本実施形態の情報処理装置１０は、ＡＤＦ（Auto  Document  Feeder：原稿自動搬送装置）１０１と、スキャナユニット１０２と、排紙トレイ１０３と、ディスプレイパネル１０４と、給紙テーブル１０５と、プリントエンジン１０６と、排紙トレイ１０７と、ネットワークＩ／Ｆ１０８と、コントローラ１１０と、を備える。
【００１７】
ネットワークＩ／Ｆ１０８は、情報処理装置１０がイントラネット２を介した通信を行うためのインタフェースであり、Ｅｔｈｅｒｎｅｔ（登録商標）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェースなどが挙げられる。ネットワークＩ／Ｆ１０８は、例えば、ＴＣＰ／ＩＰプロトコルによる通信が可能である。また、ネットワークＩ／Ｆ１０８は、情報処理装置１０がファクシミリとして機能する際に、ファクシミリ送信を実行するためのインタフェースとしても機能する。このため、ネットワークＩ／Ｆ１０８は、電話回線にも接続されている。
【００１８】
コントローラ１１０は、情報処理装置１０の各部を制御するものであり、ＣＰＵ（Central  Processing  Unit）１１１と、ＲＯＭ（Read  Only  Memory）１１２と、ＲＡＭ（Random  Access  Memory）１１３と、ＡＳＩＣ（Application  Specific  Integrated  Circuit）１１４と、ＨＤＤ（Hard  Disk  Drive）１１５と、を有する。
【００１９】
ＣＰＵ１１１は、ＲＡＭ１１３をワークエリアとしてＲＯＭ１１２又はＨＤＤ１１５などに格納されたプログラムを実行する。これにより、ＣＰＵ１１１は、情報処理装置１０全体の動作を制御する。具体的には、ＣＰＵ１１１は、スキャナユニット１０２の駆動を制御してスキャン動作を実現したり、プリントエンジン１０６の駆動を制御してプリント動作を実現したりする。
【００２０】
またＣＰＵ１１１は、ディスプレイパネル１０４に情報表示を行ったり、ディスプレイパネル１０４を介して入力された情報をＣＰＵ１１１に通知したりする。またＣＰＵ１１１は、ネットワークＩ／Ｆ１０８を介して外部から情報を受信したり、外部へ情報を送信したりする。
【００２１】
ＡＳＩＣ１１４は、印刷出力すべき画像情報に基づいて描画情報を生成する。この描画情報とは、プリントエンジン１０６が画像形成動作において形成すべき画像を描画するための情報である。また、ＡＳＩＣ１１４は、スキャナユニット１０２から入力される撮像データ（スキャンデータ）を処理し、画像データを生成する。この画像データは、スキャナ動作の結果物として、ＨＤＤ１１５に格納されたり、ネットワークＩ／Ｆ１０８を介してファクシミリ送信などで外部に出力されたりする。
【００２２】
本実施形態の情報処理装置１０は、上記のような構成を有しているため、例えば、原稿をスキャンして画像データを取り込み、取り込んだ画像データに対してプログラムに従ったデータ処理を実行したりすることができる。
【００２３】
図１に戻り、クラウドサーバ４０−１〜４０−ｎは、インターネット上でアドレス帳を管理し、外部要求に応じて、アドレス帳を追加登録したり、外部に提供したりするサーバ装置であり、それぞれ、１台以上のコンピュータにより実現できる。本実施形態では、クラウドサーバ４０−１〜４０−ｎは、それぞれ、異なる運営主体により運営されており、アドレス帳のデータの管理形式や取得形式（プロトコル）などの仕様が互いに異なる場合を例に取り説明するが、これに限定されるものではない。なお、以下の説明では、クラウドサーバ４０−１〜４０−ｎを各々区別する必要がない場合は、単にクラウドサーバ４０と称する場合がある。
【００２４】
図３は、本実施形態のクラウドサーバ４０のハードウェア構成の一例を示すブロック図である。図３に示すように、クラウドサーバ４０は、ＣＰＵ（Central  Processing  Unit）やＧＰＵ（Graphics  Processing  Unit）などの制御装置４０１と、ＲＯＭ（Read  Only  Memory）やＲＡＭ（Random  Access  Memory）などの主記憶装置４０２と、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）などの補助記憶装置４０３と、ディスプレイなどの表示装置４０４と、キーボードやマウスなどの入力装置４０５と、通信インタフェースなどの通信装置４０６と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００２５】
制御装置４０１は、主記憶装置４０２のＲＡＭをワークエリアとして主記憶装置４０２のＲＯＭや補助記憶装置４０３などに格納されたプログラムを実行することで、インターネット上でアドレス帳を管理する機能を実現する。
【００２６】
図１に戻り、ユーザ端末２０は、情報処理装置１０に対し、各種設定を行うための端末装置であり、例えば、ＰＣ（Personal  Computer）やスマートデバイスなどが挙げられるが、これらに限定されるものではない。
【００２７】
携帯端末３０は、クラウドサーバ４０に対し、アドレス帳の追加登録などを行うものであり、スマートデバイスや携帯電話などが挙げられるが、これらに限定されるものではない。
【００２８】
なお、ユーザ端末２０や携帯端末３０のハードウェア構成については、クラウドサーバ４０と同様の構成により実現できる。
【００２９】
図４は、本実施形態の情報処理装置１０の機能構成の一例を示すブロック図である。図４に示すように、情報処理装置１０は、作成部１２０と、ワークフロー記憶部１３０と、設定部１４０と、実行制御部１５０と、アドレス帳記憶部１６０と、機能実行部１７０と、を含む。作成部１２０、設定部１４０、実行制御部１５０、及び機能実行部１７０は、例えば、ＣＰＵ１１１、ＲＡＭ１１３、及びネットワークＩ／Ｆ１０８などにより実現できる。ワークフロー記憶部１３０及びアドレス帳記憶部１６０は、例えば、ＨＤＤ１１５やＲＡＭ１１３などにより実現できる。
【００３０】
作成部１２０は、実行対象の１以上のコンポーネント及び実行順序が定義されたワークフロー情報を作成し、ワークフロー記憶部１３０に記憶する。コンポーネントは、部品化された（部品単位の）ソフトウェアであり、複数のコンポーネントを組み合わせることで、目的の機能を実行するようなソフトウェア（アプリケーション）を生成することができる。つまり、ワークフロー情報では、目的の機能を実行するために必要なコンポーネントの組み合わせ及びその実行順序が定義される。
【００３１】
なお、コンポーネントの実体は、後述する実行制御部１５０が保持しているので、ワークフロー情報に、実行対象のコンポーネントの実体を含める必要はない。ワークフロー情報では、実行対象のコンポーネントを識別可能な情報（例えば、実行対象のコンポーネントのＩＤ）を用いて、実行対象の１以上のコンポーネント及び実行順序が定義されていればよい。
【００３２】
作成部１２０は、例えば、図５に示すようなワークフロー情報作成画面を生成し、ユーザからの操作入力に基づいて、ワークフロー情報を作成する。図５に示す例では、画面の左側の欄にコンポーネントを示すコンポーネント情報の一覧が表示されており、ユーザは、コンポーネント情報の一覧の中から、実行対象の１以上のコンポーネントのコンポーネント情報を選択し（ドラッグ＆ドロップすることにより）、画面の右側の欄に実行する順番に並べる。これにより、作成部１２０は、ワークフロー情報を作成する。ここでは、クラウドＡからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ処理、マージ後のアドレス帳の登録という４つのコンポーネントをこの順序で実行することが定義されたワークフロー情報となっている。
【００３３】
なお本実施形態では、ワークフロー情報作成画面は、ＷｅｂのＵＩとしてユーザ端末２０などに提供され、ユーザは、ユーザ端末２０に表示されたワークフロー情報作成画面上でワークフロー情報を作成するための操作入力を行うような形態を想定しているが、これに限定されるものではない。例えば、ワークフロー情報作成画面をクラウド上のサービスとして提供してもよいし、情報処理装置１０上のツールとして提供してもよい。
【００３４】
設定部１４０は、作成部１２０により作成され、ワークフロー記憶部１３０に記憶されているワークフロー情報を実行制御部１５０に設定する。なお本実施形態では、ワークフロー記憶部１３０には、作成部１２０により作成されたワークフロー情報が記憶されている場合を例に取り説明するが、これに限定されず、予め固定のワークフロー情報（デフォルトのワークフロー情報）を記憶しておいてもよい。
【００３５】
実行制御部１５０は、複数種類のコンポーネントを保持しており、設定部１４０により設定されたワークフロー情報に基づいて、保持している複数種類のコンポーネントの中から実行対象の１以上のコンポーネントを実行順序で実行する。
【００３６】
以下では、ワークフロー情報に基づいて実行される目的の機能が、情報処理装置１０で管理されているアドレス帳に、クラウドサーバ４０で管理されているアドレス帳を同期する機能（詳細には、情報処理装置１０で管理されているアドレス帳に、クラウドサーバ４０で管理されているアドレス帳をマージして、情報処理装置１０で管理されているアドレス帳を更新する機能）である場合を例に取り説明するが、これに限定されるものではない。更に、設定部１４０により設定されたワークフロー情報が、前述した、クラウドＡからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ処理、マージ後のアドレス帳の登録という４つのコンポーネントを、この順序で実行することが定義されたワークフロー情報である場合を例に取り説明するが、これに限定されるものではない。
【００３７】
実行制御部１５０は、複数種類のコンポーネントとして、例えば、図５で説明したコンポーネント情報の一覧に含まれる各コンポーネントを保持している。但し、前述のとおり、本実施形態では、ワークフロー情報に基づいて実行される目的の機能が、クラウドサーバ４０で管理されているアドレス帳を同期する機能である場合を例に取り説明するため、図４では、実行制御部１５０が保持するコンポーネントとして、第１の情報取得部１５１−１〜１５１−ｎ、第２の情報取得部１５２、マージ部１５３、及び処理部１５４のみを例示している。
【００３８】
なお、ワークフロー情報で定義されている、クラウドＡからのアドレス帳の取得というコンポーネントは第１の情報取得部１５１−１に相当し、情報処理装置からのアドレス帳の取得というコンポーネントは第２の情報取得部１５２に相当し、両アドレス帳のマージ処理というコンポーネントはマージ部１５３に相当し、マージ後のアドレス帳の登録というコンポーネントは処理部１５４に相当するものとする。
【００３９】
まず、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（クラウドＡからのアドレス帳の取得）に基づいて、第１の情報取得部１５１−１を実行する。これにより、第１の情報取得部１５１−１は、第１の情報を管理する複数のクラウドサーバ４０−１〜４０−ｎのうちの、第１の情報取得部１５１−１に対応するクラウドであるクラウドサーバ４０−１から、当該クラウドサーバ４０−１に応じた態様で第１の情報を取得する。
【００４０】
第１の情報は、クラウドサーバ４０で管理されているアドレス帳に関する情報であり、複数のレコードで構成されている。詳細には、第１の情報は、複数名のアドレス帳から成る情報であり、１名分のアドレス帳がレコードという単位で構成されている。
【００４１】
第１の情報取得部１５１−１は、クラウドサーバ４０−１から第１の情報を取得するために用意されたコンポーネントであり、クラウドサーバ４０−１の仕様（データの管理形式や取得形式（プロトコル））に合わせて取得動作を行う。本実施形態では、第１の情報取得部１５１−１は、クラウドサーバ４０−１により提供されているＷｅｂＡｐｉを利用することで（リクエストを行うことで）、クラウドサーバ４０−１の仕様に合わせて取得動作を行うものとするが、これに限定されるものではない。
【００４２】
図６は、本実施形態の第１の情報における１名分のアドレス帳（レコード）の一例を示す図である。図６に示す例では、第１の情報における１名分のアドレス帳（レコード）は、レコードの識別子であるｉｄ、名前（漢字）を示すｎａｍｅ、名前（カナ）を示すｎａｍｅＫａｎａ、電話番号を示すｐｈｏｎｅＮｕｍ、ファックス番号を示すｆａｘＮｕｍ、及び電子メールのアドレスを示すｅｍａｉｌを含んで構成されている。
【００４３】
なお本実施形態では、ワークフロー情報で定義されていないため、実行制御部１５０により実行されないが、第１の情報取得部１５１−２〜１５１−ｎは、それぞれ、第１の情報を管理する複数のクラウドサーバ４０−１〜４０−ｎのうちの、対応するクラウドであるクラウドサーバ４０−２〜４０−ｎから、当該クラウドサーバ４０に応じた態様で第１の情報を取得可能である。
【００４４】
このように本実施形態では、クラウドサーバ４０毎に、当該クラウドサーバ４０専用の情報取得コンポーネントが用意されているため、クラウドサーバ４０毎に、データの管理形式や取得形式（プロトコル）などの仕様が異なっていても対応できる。特に本実施形態では、機能単位でソフトウェアを用意するのではなく、コンポーネント単位でソフトウェアを用意するため、クラウドサーバ４０毎に、アドレス帳を同期する機能を実現するためのソフトウェアを開発する必要はなく、差分部分のみ（クラウドサーバ４０毎に仕様が異なる取得部分のみ）の開発で済むため、人的コストや金銭コストなどの各種コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能となる。
【００４５】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（情報処理装置からのアドレス帳の取得）に基づいて、第２の情報取得部１５２を実行する。これにより、第２の情報取得部１５２は、第２の情報を取得する。
【００４６】
第２の情報は、情報処理装置１０で管理されているアドレス帳に関する情報であり、複数のレコードで構成されている。詳細には、第２の情報は、複数名のアドレス帳から成る情報であり、１名分のアドレス帳がレコードという単位で構成されている。
【００４７】
本実施形態では、第２の情報は、アドレス帳記憶部１６０に記憶されているため、第２の情報取得部１５２は、アドレス帳記憶部１６０から第２の情報を取得する。
【００４８】
図７は、本実施形態の第２の情報における１名分のアドレス帳（レコード）の一例を示す図である。図７に示す例では、第２の情報における１名分のアドレス帳（レコード）は、レコードの識別子であるｉｄ、名前（漢字）を示すｎａｍｅ、名前（カナ）を示すｐｈｏｎｅｔｉｃＮａｍｅ、電話番号を示すｐｈｏｎｅＮｕｍｂｅｒ、ファックス番号を示すｆａｘＮｕｍｂｅｒ、及び電子メールのアドレスを示すｍａｉｌＡｄｄｒｅｓｓを含んで構成されている。
【００４９】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（両アドレス帳のマージ処理）に基づいて、マージ部１５３を実行する。これにより、マージ部１５３は、第１の情報取得部１５１−１〜１５１−ｎのうちの第１の情報取得部１５１−１により取得された第１の情報と、第２の情報取得部１５２により取得された第２の情報と、をマージする。具体的には、マージ部１５３は、第１の情報に含まれる複数のレコードのうち第２の情報に含まれる複数のレコードのいずれにも対応（一致）しない１以上のレコードを、第２の情報にマージする。なお、対応（一致）の有無は、データがユニークであることが保証されているメールアドレス、名前、電話番号、又はこれらの組み合わせが互いに一致するか否かで行えばよい。
【００５０】
また、図６及び図７から明らかなように、情報処理装置１０とクラウドサーバ４０とでは、同一の要素を異なる属性（ラベル）で管理することも多い。例えば、図６及び図７に示す例では、クラウドサーバ４０では、名前（カナ）をｎａｍｅＫａｎａという属性（ラベル）で管理しているが、情報処理装置１０では、名前（カナ）をｐｈｏｎｅｔｉｃＮａｍｅという属性（ラベル）で管理している。
【００５１】
このためマージ部１５３は、図８に示すような変換情報（テーブル）を保持しておき、第１の情報に含まれるレコードを第２の情報にマージする際には、この変換情報を使用して、当該レコードを構成する要素の属性（ラベル）を第２の情報に含まれるレコードを構成する要素の属性（ラベル）に変換してマージする。図８に示す変換情報は、各装置が同一の要素をどのような名称（ラベル）で管理しているのかの対応関係を示した情報である。なお、図８に示す変換情報（テーブル）を予めＨＤＤ１１５などの記憶装置に格納しておいてもよい。これにより、第１の情報に含まれるレコードを第２の情報にマージしても、第１の情報に含まれるレコードを構成する要素の属性（ラベル）を、第２の情報に含まれるレコードを構成する要素の属性（ラベル）に対応させることができる。
【００５２】
本実施形態では、マージ部１５３が、図８に示す変換情報を使用して、第１の情報に含まれるレコードを構成する要素の属性（ラベル）を第２の情報に含まれるレコードを構成する要素の属性（ラベル）に変換する場合を例に取り説明したが、これに限定されず、第１の情報取得部１５１−１〜１５１−ｎが行うようにしてもよい。この場合、各第１の情報取得部１５１が、クラウドサーバ４０から第１の情報を取得する際に、当該第１の情報に含まれるレコードを構成する要素の属性（ラベル）を、第２の情報に含まれるレコードを構成する要素の属性（ラベル）に変換する処理を行うようにしておけばよい。
【００５３】
図９は、本実施形態のマージ結果（マージ情報）の一例を示す図である。図８に示す例では、図７で説明した第２の情報（情報処理装置１０で管理されているアドレス帳）に、図６で説明した第１の情報（クラウドサーバ４０−１で管理されているアドレス帳）をマージした場合のマージ結果を示している。
【００５４】
なお本実施形態では、マージ部１５３は、第１の情報に含まれる複数のレコードのうち第２の情報に含まれる複数のレコードのいずれにも対応しない１以上のレコードを、第２の情報にマージする場合、即ち、第２の情報に含まれる複数のレコードを上書きせずに新規レコードを追加する態様でマージする場合を例に取り説明したが、マージの態様はこれに限定されるものではなく、第２の情報に含まれる複数のレコードを上書きする態様でマージしてもよい。
【００５５】
このような設定は、例えば、図１０に示すようなアドレス帳同期設定画面で設定しておけばよい。図１０に示すアドレス帳同期設定画面は、アドレス帳の同期に関する設定を行うための画面であり、アドレス帳の同期を行うタイミング（手動か自動か）やどのような態様でマージを行うか（上書きの有無）などを設定できる。
【００５６】
なお本実施形態では、アドレス帳同期設定画面は、ＷｅｂのＵＩとしてユーザ端末２０などに提供され、ユーザは、ユーザ端末２０に表示されたアドレス帳同期設定画面上でワークフロー情報を作成するための操作入力を行うような形態を想定しているが、これに限定されるものではない。例えば、アドレス帳同期設定画面をクラウド上のサービスとして提供してもよいし、情報処理装置１０上のツールとして提供してもよい。
【００５７】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（マージ後のアドレス帳の登録）に基づいて、処理部１５４を実行する。これにより、処理部１５４は、マージ部１５３により第１の情報と第２の情報とがマージされたマージ情報に基づく処理を行う。本実施形態では、マージ情報は、マージ後のアドレス帳に関する情報であり、処理部１５４は、当該マージ情報をアドレス帳記憶部１６０に登録する処理を行う。
【００５８】
機能実行部１７０は、情報処理装置１０が有する機能を実行するための制御を行う。情報処理装置１０が有する機能としては、例えば、プリント機能、スキャン機能、ファクシミリ機能、及びスキャンｔｏＥｍａｉｌ機能などが挙げられるが、これらに限定されるものではない。
【００５９】
プリント機能の場合、機能実行部１７０は、プリントアプリを実行することで、給紙テーブル１０５及びプリントエンジン１０６を制御し、給紙テーブル１０５から給紙された用紙に画像を印刷するプリント機能を実行する。また、スキャン機能の場合、機能実行部１７０は、スキャンアプリを実行することで、ＡＤＦ１０１及びスキャナユニット１０２を制御して、ＡＤＦ１０１から搬送された原稿をスキャンして、当該原稿の画像データを取得する。
【００６０】
また、ファクシミリ機能の場合、機能実行部１７０は、ファクシミリアプリを実行する。これにより、機能実行部１７０は、アドレス帳記憶部１６０に記憶されているアドレス帳に関する情報（第２の情報、マージ情報）をディスプレイパネル１０４に表示して、ユーザにファクシミリの送信先の電話番号を入力させる。そして機能実行部１７０は、ＡＤＦ１０１及びスキャナユニット１０２を制御して、ＡＤＦ１０１から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へファクシミリ送信する。
【００６１】
また、スキャンｔｏＥｍａｉｌ機能の場合、機能実行部１７０は、スキャンｔｏＥｍａｉｌアプリを実行する。これにより、機能実行部１７０は、アドレス帳記憶部１６０に記憶されているアドレス帳に関する情報（第２の情報、マージ情報）をディスプレイパネル１０４に表示して、ユーザにファクシミリの送信先のメールアドレスを入力させる。そして機能実行部１７０は、ＡＤＦ１０１及びスキャナユニット１０２を制御して、ＡＤＦ１０１から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へ電子メールで送信する。
【００６２】
図１１は、本実施形態の処理の手順の流れの一例を示すシーケンス図である。図１１に示す例では、携帯端末３０からクラウドサーバ４０に第１の情報（アドレス帳に関する情報）を登録し、情報処理装置１０が、第１の情報（アドレス帳に関する情報）を自身が管理している第２の情報（アドレス帳に関する情報）にマージして利用する場合を例にとり説明するが、これに限定されるものではない。
【００６３】
まず、携帯端末３０は、ユーザからクラウドサーバ４０に登録するための第１の情報（アドレス帳に関する情報）の入力を受け付け（ステップＳ１０１）、クラウドサーバ４０に登録要求を行う（ステップＳ１０３）。
【００６４】
続いて、クラウドサーバ４０は、携帯端末３０から登録要求が行われた第１の情報（アドレス帳に関する情報）をクラウドサーバ４０に登録し（ステップＳ１０５）、登録結果を携帯端末３０に通知する（ステップＳ１０７）。
【００６５】
なお、ステップＳ１０１〜Ｓ１０５までの処理は、携帯端末３０上のＷｅｂブラウザやアプリケーションを使用して、ユーザが第１の情報を手動で入力することにより行われてもよいし、携帯端末３０により撮影された名刺などの画像をクラウドサーバ４０側でＯＣＲ（Optical  Character  Recognition）処理して第１の情報を抽出することにより行われてもよい。
【００６６】
続いて、情報処理装置１０の実行制御部１５０は、アドレス帳の同期を行うタイミングになると、同期処理を実行する（ステップＳ１０９）。なお、アドレス帳の同期を行うタイミングについては、前述のとおり、図１０に示すアドレス帳同期設定画面で設定できる。同期処理の詳細については、後述する。
【００６７】
続いて、情報処理装置１０の機能実行部１７０は、ユーザから機能の実行要求を受け付ける（ステップＳ１１１）。ここでは、受け付けられた機能の実行要求が、ファクシミリ機能であるため、機能実行部１７０は、ファクシミリアプリを実行する場合を例に取り説明するが、これに限定されるものではない。
【００６８】
続いて、情報処理装置１０の機能実行部１７０は、アドレス帳記憶部１６０に記憶されているマージ情報（アドレス帳に関する情報）をディスプレイパネル１０４に表示して（ステップＳ１１３）、ユーザにファクシミリの送信先（宛先）の電話番号を入力させる（ステップＳ１１５）。そして機能実行部１７０は、ユーザから送信の実行要求を受け付けると、ＡＤＦ１０１及びスキャナユニット１０２を制御して、ＡＤＦ１０１から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へファクシミリ送信する（ステップＳ１１７）。
【００６９】
図１２は、本実施形態の同期処理の手順の流れの一例を示すシーケンス図である。
【００７０】
まず、設定部１４０は、ワークフロー記憶部１３０に記憶されているワークフロー情報を実行制御部１５０に設定する（ステップＳ２０１）。
【００７１】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（クラウドＡからのアドレス帳の取得）に基づいて、第１の情報取得部１５１−１に実行要求を行う（ステップＳ２０３）。
【００７２】
これにより、第１の情報取得部１５１−１は、第１の情報を管理する複数のクラウドサーバ４０−１〜４０−ｎのうちの、第１の情報取得部１５１−１に対応するクラウドであるクラウドサーバ４０−１から、当該クラウドサーバ４０−１に応じた態様で第１の情報（アドレス帳に関する情報）を取得し（ステップＳ２０５）、取得結果を実行制御部１５０に通知する（ステップＳ２０７）。
【００７３】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（情報処理装置からのアドレス帳の取得）に基づいて、第２の情報取得部１５２に実行要求を行う（ステップＳ２０９）。
【００７４】
これにより、第２の情報取得部１５２は、アドレス帳記憶部１６０から第２の情報（アドレス帳に関する情報）を取得し（ステップＳ２１１）、取得結果を実行制御部１５０に通知する（ステップＳ２１３）。
【００７５】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（両アドレス帳のマージ処理）に基づいて、マージ部１５３に実行要求を行う（ステップＳ２１５）。
【００７６】
これにより、マージ部１５３は、第１の情報に含まれる複数のレコードのうち第２の情報に含まれる複数のレコードのいずれにも対応しない１以上のレコードを、第２の情報にマージし（ステップＳ２１７）、マージ結果を実行制御部１５０に通知する（ステップＳ２１９）。なお、マージ処理の詳細については、後述する。
【００７７】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（マージ後のアドレス帳の登録）に基づいて、処理部１５４に実行要求を行う（ステップＳ２２１）。
【００７８】
これにより、処理部１５４は、マージ部１５３により第１の情報と第２の情報とがマージされたマージ情報（マージ後のアドレス帳に関する情報）をアドレス帳記憶部１６０に登録する処理を行い（ステップＳ２２３）、マージ結果を実行制御部１５０に通知する（ステップＳ２２５）。
【００７９】
図１３は、本実施形態のマージ処理の手順の流れの一例を示すフローチャートである。図１３に示す例では、第２の情報に含まれる複数のレコードを上書きせずに新規レコードを追加する態様でマージする場合を例に取り説明するが、これに限定されるものではない。
【００８０】
まず、マージ部１５３は、第１の情報取得部１５１−１により取得された第１の情報（アドレス帳に関する情報）から未処理のレコードを取得する（ステップＳ３０１）。
【００８１】
続いて、マージ部１５３は、取得したレコードに対応するレコードが、第２の情報取得部１５２により取得された第２の情報に含まれているか否かを判定する（ステップＳ３０３）。この判定は、前述したように、データがユニークであることが保証されているメールアドレス、名前、電話番号、又はこれらの組み合わせが互いに一致するか否かで行えばよい。
【００８２】
そして、含まれている場合（ステップＳ３０３でＹｅｓ）、マージ部１５３は、当該レコードを前述した図８に示す変換情報を使用して、この変換情報を使用して、当該レコードを構成する要素の属性（ラベル）を第２の情報に含まれるレコードを構成する要素の属性（ラベル）に変換して、マージ対象に追加し（ステップＳ３０５）、含まれていない場合（ステップＳ３０３でＮｏ）、マージ部１５３は、ステップＳ３０５の処理を行わない。
【００８３】
続いて、マージ部１５３は、第１の情報に含まれる全てのレコードを処理するまでステップＳ３０１〜Ｓ３０５の処理を繰り返し（ステップＳ３０７でＮｏ）、第１の情報に含まれる全てのレコードを処理すると（ステップＳ３０７でＹｅｓ）、マージ対象に追加されたレコードを第２の情報にマージ（追加）する（ステップＳ３０９）。
【００８４】
以上のように本実施形態では、クラウドサーバ４０毎に、当該クラウドサーバ４０専用の情報取得コンポーネントが用意されているため、クラウドサーバ４０毎に、データの管理形式や取得形式（プロトコル）などの仕様が異なっていても対応できる。特に本実施形態では、機能単位でソフトウェアを用意するのではなく、コンポーネント単位でソフトウェアを用意するため、クラウドサーバ４０毎に、アドレス帳を同期する機能を実現するためのソフトウェアを開発する必要はなく、差分部分のみ（クラウドサーバ４０毎に仕様が異なる取得部分のみ）の開発で済むため、人的コストや金銭コストなどの各種コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能となる。
【００８５】
例えば、ユーザは、同期に使用するアドレス帳を管理しているクラウドサーバ４０を変更する場合には、前述した図５に示すワークフロー情報作成画面において、変更後のクラウドサーバ４０からのアドレス帳の取得を行うコンポーネントを選択して、ワークフロー情報を作成すればよい。
【００８６】
また本実施形態によれば、スマートデバイスなどの携帯端末３０から登録したアドレス帳を利用した機能の実行が可能となる。
【００８７】
また本実施形態によれば、クラウドサーバ４０で管理されているアドレス帳を情報処理装置１０のアドレス帳に同期して機能を実行するため、ネットワークの接続ができないような場合であっても、クラウドサーバ４０で管理されていたアドレス帳を利用した機能の実行が可能となる。
【００８８】
（変形例１）
上記実施形態において、マージ部１５３は、第１の情報に含まれる複数のレコードのうち第２の情報に含まれる複数のレコードのいずれにも対応しない１以上のレコードを、更新日時の新しい順に第２の情報にマージするようにしてもよい。
【００８９】
一般的に、情報処理装置１０側に登録可能なアドレス帳のレコード数はさほど多くない。このため、クラウド４０で管理されているアドレス帳（第１の情報）のうち情報処理装置１０側で管理されていない全てのアドレス帳を、情報処理装置１０で管理されているアドレス帳（第２の情報）にマージしようとすると、途中で上限に達してしまうことが多い。このため、上記のように更新日時の新しい順に第２の情報にマージすることで、優先度の高いレコード（最近使用されたレコード）を優先的に情報処理装置１０で管理されているアドレス帳（第２の情報）にマージすることが可能となる。
【００９０】
この場合、少なくとも第１の情報のレコードは、図１４に示すように、最終更新日時を示すｌａｓｔＡｃｃｅｓｓＤａｔａを含んで構成される。なお、最終更新日時の属性は、クラウドサーバ４０で管理されている段階から第１の情報のレコードに含まれていればそのまま使用し、クラウドサーバ４０で管理されている段階では第１の情報のレコードに含まれていなければ、情報処理装置１０側で付加すればよい。また、第２の情報のレコードにも、最終更新日時の属性を含めるようにしてもよい。この場合、最終更新日時は、機能実行部１７０により使用されると更新される。
【００９１】
図１５は、変形例１のマージ処理の手順の流れの一例を示すフローチャートである。まず、ステップＳ４０１〜ステップＳ４０７までの処理は、図１３に示すフローチャートのステップＳ３０１〜ステップＳ３０７までの処理と同様である。
【００９２】
続いて、マージ部１５３は、第１の情報に含まれる全てのレコードを処理すると（ステップＳ４０７でＹｅｓ）、マージ対象に追加されたレコードを更新日時の新しい順にソートし（ステップＳ４０９）、更新日時の新しい順に第２の情報にマージ（追加）する（ステップＳ４１１）。
【００９３】
（変形例２）
上記実施形態では、アドレス帳の同期処理を例に取り説明したが、同期対象はアドレス帳に限定されず、例えば、書誌情報などにも適用できる。また、上記実施形態で説明したワークフローは、アドレス帳の同期処理に限定されず、例えば、クラウドで管理されているアドレス帳をＣＳＶ（Comma-Separated  Values）データとして、社内サーバなどのローカルサーバにバックアップするようなワークフローにも適用できる。
【００９４】
（変形例３）
また上記実施形態では、図８に示すような変換情報を利用することでマージ部１５３を１種類のコンポーネントで実現する場合を例に取り説明したが、第１の情報と第２の情報との組み合わせ（クラウドサーバ４０の種類）毎に、マージ部１５３（コンポーネント）を用意するようにしてもよい。このようにすれば、図８に示すような変換情報が不要となる。
【００９５】
（変形例４）
例えば前述の第１の情報は、全てのユーザが参照可能な共有アドレス帳、または、特定のユーザのみ参照可能な個人アドレス帳であってもよい。以下の説明では、第１の情報取得部１５１−１〜１５１−ｎを互いに区別しない場合は「第１の情報取得部１５１」と表記する場合がある。
【００９６】
本変形例では、第１の情報取得部１５１は、対応するクラウドサーバ４０から共有アドレス帳を定期的に取得する。また、第１の情報取得部１５１は、ユーザの認証後に、該ユーザを識別するためのアカウント情報を利用して、対応するクラウドサーバ４０から個人アドレス帳を取得する。
【００９７】
第１の情報取得部１５１により共有アドレス帳が取得された場合、マージ部１５３は、該共有アドレス帳と、第２の情報取得部１５２により取得された、情報処理装置１０で管理されている共有アドレス帳を示す第２の情報とをマージし、処理部１５４は、該マージ後のアドレス帳を示すマージ情報を登録する処理を行う。
【００９８】
また、第１の情報取得部１５１により個人アドレス帳が取得された場合、マージ部１５３は、該個人アドレス帳と、第２の情報取得部１５２により取得された、情報処理装置１０で管理されている個人アドレス帳を示す第２の情報とをマージし、処理部１５４は、該マージ後のアドレス帳を示すマージ情報を登録する処理を行う。
【００９９】
さらに、第１の情報取得部１５１は、ユーザの認証後であって、かつ、情報処理装置１０で管理されている個人アドレス帳に、クラウドサーバ４０から取得した個人アドレス帳をマージして、情報処理装置１０で管理されている個人アドレス帳を更新する同期処理が完了してから一定時間を経過した場合に、個人アドレス帳を取得する。つまり、個人アドレス帳の同期処理の完了後、一定期間を経過している場合に限り、次の個人アドレス帳の同期処理が実行される。以下、本変形例の具体的な内容を説明する。
【０１００】
各装置の基本的な構成は上述の実施形態と同様であるが、本変形例におけるアドレス帳記憶部１６０は、共有アドレス帳を記憶する記憶領域と、個人アドレス帳を記憶する記憶領域とを有している。また、クラウドサーバ４０は、共有アドレス帳と個人アドレス帳とを管理する。図１６に示すように、クラウドサーバ４０は、レコード（アドレス帳）の識別子であるｉｄごとに、アドレス帳（この例では、ｎａｍｅ、ｎａｍｅＫａｎａ、ｐｈｏｎｅＮｕｍ、ｆａｘＮｕｍ、ｅｍａｉｌから構成される）と、共有アドレス帳か個人アドレス帳かを識別するための種別と、個人アドレス帳にアクセスする権限を有するユーザを識別するためのアカウント情報とを対応付けて管理（記憶）する。
【０１０１】
図１７は、携帯端末３０からクラウドサーバ４０に共有アドレス帳を登録し、情報処理装置１０が、クラウドサーバ４０から共有アドレス帳を取得し、その取得した共有アドレス帳を、自身が管理している共有アドレス帳を示す第２の情報にマージして利用する場合の情報処理システム１の動作手順の一例を示すシーケンス図である。
【０１０２】
まず、携帯端末３０は、ユーザからクラウドサーバ４０に登録するための共有アドレス帳の入力を受け付け（ステップＳ５０１）、クラウドサーバ４０に登録要求を行う（ステップＳ５０３）。
【０１０３】
続いて、クラウドサーバ４０は、携帯端末３０から登録要求が行われた共有アドレス帳をクラウドサーバ４０に登録し（ステップＳ５０５）、登録結果を携帯端末３０に通知する（ステップＳ５０７）。
【０１０４】
なお、ステップＳ５０１〜Ｓ５０５までの処理は、携帯端末３０上のＷｅｂブラウザやアプリケーションを使用して、ユーザが共有アドレス帳を手動で入力することにより行われてもよいし、携帯端末３０により撮影された名刺などの画像をクラウドサーバ４０側でＯＣＲ（Optical  Character  Recognition）処理して共有アドレス帳を抽出することにより行われてもよい。
【０１０５】
続いて、情報処理装置１０の実行制御部１５０は、共有アドレス帳の同期処理を行うタイミングになると、共有アドレス帳の同期処理を実行する（ステップＳ５０９）。なお、アドレス帳の同期を行うタイミングについては、前述のとおり、図１０に示すアドレス帳同期設定画面で設定できる。共有アドレス帳の同期処理の詳細については、後述する。
【０１０６】
続いて、情報処理装置１０の機能実行部１７０は、ユーザから機能の実行要求を受け付ける（ステップＳ５１１）。ここでは、受け付けられた機能の実行要求が、ファクシミリ機能であるため、機能実行部１７０は、ファクシミリアプリを実行する場合を例に取り説明するが、これに限定されるものではない。
【０１０７】
続いて、情報処理装置１０の機能実行部１７０は、アドレス帳記憶部１６０に記憶されているマージ情報（アドレス帳に関する情報）をディスプレイパネル１０４に表示して（ステップＳ５１３）、ユーザにファクシミリの送信先（宛先）の電話番号を入力させる（ステップＳ５１５）。そして機能実行部１７０は、ユーザから送信の実行要求を受け付けると、ＡＤＦ１０１及びスキャナユニット１０２を制御して、ＡＤＦ１０１から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザにより入力された送信先へファクシミリ送信する（ステップＳ５１７）。
【０１０８】
図１８は、本変形例の共有アドレス帳の同期処理（図１７のステップＳ５０９）の手順の流れの一例を示すシーケンス図である。
【０１０９】
まず設定部１４０は、ワークフロー記憶部１３０に記憶されている、共有アドレス帳の同期処理のワークフロー情報を実行制御部１５０に設定する（ステップＳ６０１）。図１９は、この場合のワークフロー情報により示されるワークフローの一例を示す図である。
【０１１０】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図１９参照）に基づいて、第１の情報取得部１５１に実行要求を行う（ステップＳ６０３）。
【０１１１】
これにより、第１の情報取得部１５１は、対応するクラウドサーバ４０から、共有アドレス帳を取得し（ステップＳ６０５）、取得結果を実行制御部１５０に通知する（ステップＳ６０７）。
【０１１２】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図１９参照）に基づいて、第２の情報取得部１５２に実行要求を行う（ステップＳ６０９）。
【０１１３】
これにより、第２の情報取得部１５２は、アドレス帳記憶部１６０から第２の情報（情報処理装置１０で管理されている共有アドレス帳）を取得し（ステップＳ６１１）、取得結果を実行制御部１５０に通知する（ステップＳ６１３）。
【０１１４】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図１９参照）に基づいて、マージ部１５３に実行要求を行う（ステップＳ６１５）。
【０１１５】
マージ部１５３は、クラウドサーバ４０から取得した共有アドレス帳が、情報処理装置１０で管理されている共有アドレス帳に存在しない場合は、クラウドサーバ４０から取得した共有アドレス帳と、情報処理装置１０で管理されている共有アドレス帳とをマージし（ステップＳ６１７）、そのマージ結果を実行制御部１５０に通知する（ステップＳ６１９）。
【０１１６】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図１９参照）に基づいて、処理部１５４に実行要求を行う（ステップＳ６２１）。
【０１１７】
これにより、処理部１５４は、マージ部１５３によりマージされたマージ情報をアドレス帳記憶部１６０に登録する処理を行い（ステップＳ６２３）、マージ結果を実行制御部１５０に通知する（ステップＳ６２５）。
【０１１８】
図２０は、携帯端末３０からクラウドサーバ４０に個人アドレス帳を登録し、情報処理装置１０が、クラウドサーバ４０から個人アドレス帳を取得し、その取得した個人アドレス帳を、自身が管理している個人アドレス帳を示す第２の情報にマージして利用する場合の情報処理システム１の動作手順の一例を示すシーケンス図である。
【０１１９】
まず、携帯端末３０は、ユーザからクラウドサーバ４０に登録するための個人アドレス帳の入力を受け付け（ステップＳ７０１）、クラウドサーバ４０に登録要求を行う（ステップＳ７０３）。例えばアドレス帳登録時に「公開する／しない」が選択できる場合、「公開しない」を選択して登録することもできる。
【０１２０】
続いて、クラウドサーバ４０は、携帯端末３０から登録要求が行われた個人アドレス帳をクラウドサーバ４０に登録し（ステップＳ７０５）、登録結果を携帯端末３０に通知する（ステップＳ７０７）。ここでは、個人アドレス帳の登録時、クラウドサーバ４０は、携帯端末３０からのアクセス時に使用したアカウントに紐付けて個人アドレス帳を登録する。
【０１２１】
なお、ステップＳ７０１〜Ｓ７０５までの処理は、携帯端末３０上のＷｅｂブラウザやアプリケーションを使用して、ユーザが個人アドレス帳を手動で入力することにより行われてもよいし、携帯端末３０により撮影された名刺などの画像をクラウドサーバ４０側でＯＣＲ（Optical  Character  Recognition）処理して個人アドレス帳を抽出することにより行われてもよい。
【０１２２】
続いて、情報処理装置１０は、ユーザの認証処理を行う（ステップＳ７０９）。認証処理とは、ユーザが情報処理装置１０を使用する権限を有するか否かを判断するための処理である。例えば情報処理装置１０は、使用権限を有するユーザごとに、該ユーザを識別するためのアカウント情報（この例ではアカウントのみであるが、例えばアカウントとパスワードの組み合わせなどであってもよい）を予め登録しておき、ユーザから入力されたアカウント情報が、予め登録されたアカウント情報と一致する場合に限り、該ユーザは情報処理装置１０を使用する権限を有すると認める（該ユーザを認証する）ことができる。
【０１２３】
ユーザが認証された後、情報処理装置１０の実行制御部１５０は、個人アドレス帳の同期処理を実行する（ステップＳ７１１）。個人アドレス帳の同期処理の詳細については、後述する。このときの同期処理時にクラウドサーバ４０から個人アドレス帳を取得するためのアカウント情報（クラウドサーバ４０において、クラウドサーバ４０が管理しているアドレス帳に紐付けられたアカウント情報）は、情報処理装置１０にログインしているユーザのアカウント情報を使用する。情報処理装置用のアカウント情報と、クラウドサーバ用のアカウント情報とが同一である場合は、前述の認証処理に用いた情報処理装置用のアカウント情報をそのまま使用することができる。異なる場合は、例えば図２１に示すように、情報処理装置１０は、情報処理装置用のアカウント情報（この例ではアカウントのみ）に対して、クラウドサーバ用のアカウント情報（この例ではアカウントとパスワードの組み合わせ）を紐付けて管理し、認証されたユーザのアカウント情報（ログイン時のアカウント情報）に紐付くクラウドサーバ用のアカウント情報を用いることもできる。
【０１２４】
ステップＳ７１３〜ステップＳ７１９の処理内容は、図１７のステップＳ５１１〜ステップＳ５１７の処理内容と同様である。
【０１２５】
図２２は、本変形例の個人アドレス帳の同期処理（図２０のステップＳ７１１）の手順の流れの一例を示すシーケンス図である。
【０１２６】
まず設定部１４０は、ワークフロー記憶部１３０に記憶されている、個人アドレス帳の同期処理のワークフロー情報を実行制御部１５０に設定する（ステップＳ８０１）。図２３は、この場合のワークフロー情報により示されるワークフローの一例を示す図である。
【０１２７】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図２３参照）に基づいて、第１の情報取得部１５１に実行要求を行う（ステップＳ８０３）。
【０１２８】
これにより、第１の情報取得部１５１は、対応するクラウドサーバ４０から、ログイン中のユーザを識別するためのアカウント情報に紐付く個人アドレス帳を取得し（ステップＳ８０５）、取得結果を実行制御部１５０に通知する（ステップＳ８０７）。
【０１２９】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図２３参照）に基づいて、第２の情報取得部１５２に実行要求を行う（ステップＳ８０９）。
【０１３０】
これにより、第２の情報取得部１５２は、アドレス帳記憶部１６０から第２の情報（情報処理装置１０で管理されている個人アドレス帳）を取得し（ステップＳ８１１）、取得結果を実行制御部１５０に通知する（ステップＳ８１３）。
【０１３１】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図２３参照）に基づいて、マージ部１５３に実行要求を行う（ステップＳ８１５）。
【０１３２】
マージ部１５３は、クラウドサーバ４０から取得した個人アドレス帳が、情報処理装置１０で管理されている個人アドレス帳に存在しない場合は、クラウドサーバ４０から取得した個人アドレス帳と、情報処理装置１０で管理されている個人アドレス帳とをマージし（ステップＳ８１７）、そのマージ結果を実行制御部１５０に通知する（ステップＳ８１９）。
【０１３３】
続いて、実行制御部１５０は、設定部１４０により設定されたワークフロー情報（図２３参照）に基づいて、処理部１５４に実行要求を行う（ステップＳ８２１）。
【０１３４】
これにより、処理部１５４は、マージ部１５３によりマージされたマージ情報をアドレス帳記憶部１６０に登録する処理を行い（ステップＳ８２３）、マージ結果を実行制御部１５０に通知する（ステップＳ８２５）。
【０１３５】
また、本変形例では、個人アドレス帳の同期処理を、ユーザがログインした後のアプリケーション使用時に実施した場合、前回に個人アドレス帳を取得したばかりでも同期処理を行うケースが考えられる。この場合、同期処理を完了した後の個人アドレス帳の変更が殆どないにも関わらず重い処理を実行してしまうため、システムの負荷が増大するという問題が発生する。この問題を解決するため、本変形例では、個人アドレス帳の同期処理完了時にその完了日時をＨＤＤ１１５等の記憶装置に保持し、一定期間経過した場合のみ同期処理を行うようにする。図２４は、この場合の処理フローを示す図である。
【０１３６】
図２４に示すように、ユーザのログイン後、実行制御部１５０は、個人アドレス帳同期処理の完了日時を記憶装置から取得する（ステップＳ９０１）。次に、実行制御部１５０は一定時間が経過したか否かを確認する（ステップＳ９０２）。ステップＳ９０２の結果が肯定の場合（ステップＳ９０２：Ｙｅｓ）、実行制御部１５０は同期処理を実行する（ステップＳ９０３）。この処理内容は上述したとおりである。同期処理が完了すると（ステップＳ９０４：Ｙｅｓ）、実行制御部１５０は、その完了日時を記憶装置に保存する制御を行う（ステップＳ９０５）。
【０１３７】
以上の本変形例では、ユーザが情報処理装置１０に認証された後、その認証されたユーザのアカウント情報を利用して個人アドレス帳の同期処理を行う。つまり、本変形例によれば、全てのユーザがアクセス可能な共有アドレス帳だけでなく、特定のユーザのアカウント情報を使用する場合にのみアクセス可能な個人アドレス帳も同期可能な情報処理装置１０を提供することができる。
【０１３８】
（プログラム）
上記実施形態及び変形例の情報処理装置１０で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【０１３９】
また、上記実施形態及び変形例の情報処理装置１０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施形態及び変形例の情報処理装置１０で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記実施形態及び変形例の情報処理装置１０で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【０１４０】
上記実施形態及び変形例の情報処理装置１０で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、ＣＰＵがＲＯＭからプログラムをＲＡＭ上に読み出して実行することにより、上記各機能部がコンピュータ上で実現されるようになっている。
【０１４１】
なお、上記実施形態及び変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１４２】
１  情報処理システム
２  イントラネット
３  ファイアウォール
４  インターネット
１０  情報処理装置
２０  ユーザ端末
３０  携帯端末
４０−１〜４０−ｎ（４０）  クラウドサーバ
１２０  作成部
１３０  ワークフロー記憶部
１４０  設定部
１５０  実行制御部
１５１−１〜１５１−ｎ  第１の情報取得部
１５２  第２の情報取得部
１５３  マージ部
１５４  処理部
１６０  アドレス帳記憶部
１７０  機能実行部
【先行技術文献】
【特許文献】
【０１４３】
【特許文献１】特開２０１４−１４９７８１号公報
【図１】
2018152833.tif 000003
【図２】
2018152833.tif 000004
【図３】
2018152833.tif 000005
【図４】
2018152833.tif 000006
【図５】
2018152833.tif 000007
【図６】
2018152833.tif 000008
【図７】
2018152833.tif 000009
【図８】
2018152833.tif 000010
【図９】
2018152833.tif 000011
【図１０】
2018152833.tif 000012
【図１１】
2018152833.tif 000013
【図１２】
2018152833.tif 000014
【図１３】
2018152833.tif 000015
【図１４】
2018152833.tif 000016
【図１５】
2018152833.tif 000017
【図１６】
2018152833.tif 000018
【図１７】
2018152833.tif 000019
【図１８】
2018152833.tif 000020
【図１９】
2018152833.tif 000021
【図２０】
2018152833.tif 000022
【図２１】
2018152833.tif 000023
【図２２】
2018152833.tif 000024
【図２３】
2018152833.tif 000025
【図２４】
2018152833.tif 000026