JP6852550B2 - 情報処理装置、マージ方法及びプログラム - Google Patents

情報処理装置、マージ方法及びプログラム Download PDF

Info

Publication number
JP6852550B2
JP6852550B2 JP2017091956A JP2017091956A JP6852550B2 JP 6852550 B2 JP6852550 B2 JP 6852550B2 JP 2017091956 A JP2017091956 A JP 2017091956A JP 2017091956 A JP2017091956 A JP 2017091956A JP 6852550 B2 JP6852550 B2 JP 6852550B2
Authority
JP
Japan
Prior art keywords
information
address book
unit
merge
records
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017091956A
Other languages
English (en)
Other versions
JP2018152833A (ja
Inventor
山田 和宏
和宏 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to US15/917,980 priority Critical patent/US10826986B2/en
Publication of JP2018152833A publication Critical patent/JP2018152833A/ja
Application granted granted Critical
Publication of JP6852550B2 publication Critical patent/JP6852550B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、情報処理装置、マージ方法及びプログラムに関する。
従来から、複合機などの情報処理装置が、LDAP(Lightweight Directory Access Protocol)サーバやActiveDirectoryなどのアドレス帳を一元管理するイントラネット上のサーバと連携することで、当該サーバで管理されているアドレス帳を、情報処理装置で管理しているアドレス帳に同期する技術が知られている(例えば、特許文献1参照)。
このような技術では、一般的に、イントラネット上のサーバからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ、及びマージ後のアドレス帳を情報処理装置に登録するような機能を有するソフトウェアを情報処理装置にインストールしておくことで、アドレス帳を管理するイントラネット上のサーバと情報処理装置とを連携させる。
ところで、近年では、インターネット上でアドレス帳などの情報を管理するようなクラウドサービスも提供されているが、このような、インターネット上でアドレス帳などの情報を管理するクラウドサービスでは、サービス毎に、データの管理形式や取得形式(プロトコル)などの仕様が異なることが一般的である。
このため、インターネット上でアドレス帳などの情報を管理するクラウドサービスと情報処理装置とを連携させる場合、連携する可能性がある全てのクラウドサービスに対応できるよう、クラウドサービス毎に、上述したようなソフトウェアを開発しておく必要があり、人的コストや金銭コストなど様々なコストがかさんでしまう。
本発明は、上記事情に鑑みてなされたものであり、コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能な情報処理装置、マージ方法及びプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理装置は、それぞれが、複数のレコードで構成される第1の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第1の情報を取得可能な複数の第1の情報取得部と、複数のレコードで構成される第2の情報を取得する第2の情報取得部と、前記複数の第1の情報取得部のうちのいずれかにより取得された前記第1の情報に含まれる複数のレコードのうち前記第2の情報取得部により取得された前記第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、前記第2の情報にマージするマージ部と、前記第1の情報と前記第2の情報とがマージされたマージ情報に基づく処理を行う処理部と、を備え、前記マージ部は、前記第1の情報および前記第2の情報に含まれるレコードであって、データがユニークであることが保証されているレコードが一致するか否かで前記対応の有無を判定する。
本発明によれば、コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能という効果を奏する。
図1は、本実施形態の情報処理システムの構成の一例を示すブロック図である。 図2は、本実施形態の情報処理装置のハードウェア構成の一例を示すブロック図である。 図3は、本実施形態のクラウドサーバのハードウェア構成の一例を示すブロック図である。 図4は、本実施形態の情報処理装置の機能構成の一例を示すブロック図である。 図5は、本実施形態のワークフロー情報作成画面の一例を示す図である。 図6は、本実施形態の第1の情報における1名分のアドレス帳の一例を示す図である。 図7は、本実施形態の第2の情報における1名分のアドレス帳の一例を示す図である。 図8は、本実施形態の変換情報の一例を示す図である。 図9は、本実施形態のマージ結果(マージ情報)の一例を示す図である。 図10は、本実施形態のアドレス帳同期設定画面の一例を示す図である。 図11は、本実施形態の処理の手順の流れの一例を示すシーケンス図である。 図12は、本実施形態の同期処理の手順の流れの一例を示すシーケンス図である。 図13は、本実施形態のマージ処理の手順の流れの一例を示すフローチャートである。 図14は、変形例1の第1の情報における1名分のアドレス帳の一例を示す図である。 図15は、変形例1のマージ処理の手順の流れの一例を示すフローチャートである。 図16は、クラウドサーバが管理するアドレス帳を示す図である。 図17は、変形例の情報処理システムの動作手順の一例を示すシーケンス図である。 図18は、変形例の共有アドレス帳の同期処理の手順の流れの一例を示すシーケンス図である。 図19は、変形例の共有アドレス帳の同期処理のワークフロー情報が示すワークフローの一例を示す図である。 図20は、変形例の情報処理システムの動作手順の一例を示すシーケンス図である。 図21は、情報処理装置が管理するアカウント情報の一例を示す図である。 図22は、変形例の個人アドレス帳の同期処理の手順の流れの一例を示すシーケンス図である。 図23は、変形例の個人アドレス帳の同期処理のワークフロー情報が示すワークフローの一例を示す図である。 図24は、変形例の実行制御部の動作例を示すフローチャートである。
以下、添付図面を参照しながら、本発明にかかる情報処理装置、マージ方法及びプログラムの実施形態を詳細に説明する。
図1は、本実施形態の情報処理システム1の構成の一例を示すブロック図である。図1に示すように、情報処理システム1は、情報処理装置10と、ユーザ端末20と、携帯端末30と、クラウドサーバ40−1〜40−n(nは2以上の自然数)と、を備える。
情報処理装置10及びユーザ端末20は、イントラネット2に接続され、クラウドサーバ40−1〜40−nは、インターネット4に接続されている。また、イントラネット2とインターネット4とは、ファイアウォール3を介して接続されている。つまり本実施形態では、情報処理装置10及びユーザ端末20は、イントラネット2、ファイアウォール3、及びインターネット4を介して、クラウドサーバ40−1〜40−nと通信可能に接続されている。
携帯端末30は、3Gや4Gなどの電話回線又はWi‐Fi(登録商標)などを利用してインターネット4に接続可能であり、インターネット4を介して、クラウドサーバ40−1〜40−nと通信可能に接続できる。
イントラネット2は、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。イントラネット2、ファイアウォール3、及びインターネット4で構成されるネットワークは、有線で構成されていてもよいし、無線で構成されていてもよいし、両者を併用して構成されていてもよい。
本実施形態では、情報処理装置10は、複合機(MFP:Multifunction Peripheral)やファクシミリ装置等の画像形成装置である場合を例に取り説明するが、これに限定されるものではない。複合機は、複写機能、印刷機能、スキャナ機能、及びファクシミリ機能のうち少なくとも2つの機能を有するものである。
図2は、本実施形態の情報処理装置10のハードウェア構成の一例を示すブロック図である。図2に示すように、本実施形態の情報処理装置10は、ADF(Auto Document Feeder:原稿自動搬送装置)101と、スキャナユニット102と、排紙トレイ103と、ディスプレイパネル104と、給紙テーブル105と、プリントエンジン106と、排紙トレイ107と、ネットワークI/F108と、コントローラ110と、を備える。
ネットワークI/F108は、情報処理装置10がイントラネット2を介した通信を行うためのインタフェースであり、Ethernet(登録商標)やUSB(Universal Serial Bus)インタフェースなどが挙げられる。ネットワークI/F108は、例えば、TCP/IPプロトコルによる通信が可能である。また、ネットワークI/F108は、情報処理装置10がファクシミリとして機能する際に、ファクシミリ送信を実行するためのインタフェースとしても機能する。このため、ネットワークI/F108は、電話回線にも接続されている。
コントローラ110は、情報処理装置10の各部を制御するものであり、CPU(Central Processing Unit)111と、ROM(Read Only Memory)112と、RAM(Random Access Memory)113と、ASIC(Application Specific Integrated Circuit)114と、HDD(Hard Disk Drive)115と、を有する。
CPU111は、RAM113をワークエリアとしてROM112又はHDD115などに格納されたプログラムを実行する。これにより、CPU111は、情報処理装置10全体の動作を制御する。具体的には、CPU111は、スキャナユニット102の駆動を制御してスキャン動作を実現したり、プリントエンジン106の駆動を制御してプリント動作を実現したりする。
またCPU111は、ディスプレイパネル104に情報表示を行ったり、ディスプレイパネル104を介して入力された情報をCPU111に通知したりする。またCPU111は、ネットワークI/F108を介して外部から情報を受信したり、外部へ情報を送信したりする。
ASIC114は、印刷出力すべき画像情報に基づいて描画情報を生成する。この描画情報とは、プリントエンジン106が画像形成動作において形成すべき画像を描画するための情報である。また、ASIC114は、スキャナユニット102から入力される撮像データ(スキャンデータ)を処理し、画像データを生成する。この画像データは、スキャナ動作の結果物として、HDD115に格納されたり、ネットワークI/F108を介してファクシミリ送信などで外部に出力されたりする。
本実施形態の情報処理装置10は、上記のような構成を有しているため、例えば、原稿をスキャンして画像データを取り込み、取り込んだ画像データに対してプログラムに従ったデータ処理を実行したりすることができる。
図1に戻り、クラウドサーバ40−1〜40−nは、インターネット上でアドレス帳を管理し、外部要求に応じて、アドレス帳を追加登録したり、外部に提供したりするサーバ装置であり、それぞれ、1台以上のコンピュータにより実現できる。本実施形態では、クラウドサーバ40−1〜40−nは、それぞれ、異なる運営主体により運営されており、アドレス帳のデータの管理形式や取得形式(プロトコル)などの仕様が互いに異なる場合を例に取り説明するが、これに限定されるものではない。なお、以下の説明では、クラウドサーバ40−1〜40−nを各々区別する必要がない場合は、単にクラウドサーバ40と称する場合がある。
図3は、本実施形態のクラウドサーバ40のハードウェア構成の一例を示すブロック図である。図3に示すように、クラウドサーバ40は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などの制御装置401と、ROM(Read Only Memory)やRAM(Random Access Memory)などの主記憶装置402と、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの補助記憶装置403と、ディスプレイなどの表示装置404と、キーボードやマウスなどの入力装置405と、通信インタフェースなどの通信装置406と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
制御装置401は、主記憶装置402のRAMをワークエリアとして主記憶装置402のROMや補助記憶装置403などに格納されたプログラムを実行することで、インターネット上でアドレス帳を管理する機能を実現する。
図1に戻り、ユーザ端末20は、情報処理装置10に対し、各種設定を行うための端末装置であり、例えば、PC(Personal Computer)やスマートデバイスなどが挙げられるが、これらに限定されるものではない。
携帯端末30は、クラウドサーバ40に対し、アドレス帳の追加登録などを行うものであり、スマートデバイスや携帯電話などが挙げられるが、これらに限定されるものではない。
なお、ユーザ端末20や携帯端末30のハードウェア構成については、クラウドサーバ40と同様の構成により実現できる。
図4は、本実施形態の情報処理装置10の機能構成の一例を示すブロック図である。図4に示すように、情報処理装置10は、作成部120と、ワークフロー記憶部130と、設定部140と、実行制御部150と、アドレス帳記憶部160と、機能実行部170と、を含む。作成部120、設定部140、実行制御部150、及び機能実行部170は、例えば、CPU111、RAM113、及びネットワークI/F108などにより実現できる。ワークフロー記憶部130及びアドレス帳記憶部160は、例えば、HDD115やRAM113などにより実現できる。
作成部120は、実行対象の1以上のコンポーネント及び実行順序が定義されたワークフロー情報を作成し、ワークフロー記憶部130に記憶する。コンポーネントは、部品化された(部品単位の)ソフトウェアであり、複数のコンポーネントを組み合わせることで、目的の機能を実行するようなソフトウェア(アプリケーション)を生成することができる。つまり、ワークフロー情報では、目的の機能を実行するために必要なコンポーネントの組み合わせ及びその実行順序が定義される。
なお、コンポーネントの実体は、後述する実行制御部150が保持しているので、ワークフロー情報に、実行対象のコンポーネントの実体を含める必要はない。ワークフロー情報では、実行対象のコンポーネントを識別可能な情報(例えば、実行対象のコンポーネントのID)を用いて、実行対象の1以上のコンポーネント及び実行順序が定義されていればよい。
作成部120は、例えば、図5に示すようなワークフロー情報作成画面を生成し、ユーザからの操作入力に基づいて、ワークフロー情報を作成する。図5に示す例では、画面の左側の欄にコンポーネントを示すコンポーネント情報の一覧が表示されており、ユーザは、コンポーネント情報の一覧の中から、実行対象の1以上のコンポーネントのコンポーネント情報を選択し(ドラッグ&ドロップすることにより)、画面の右側の欄に実行する順番に並べる。これにより、作成部120は、ワークフロー情報を作成する。ここでは、クラウドAからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ処理、マージ後のアドレス帳の登録という4つのコンポーネントをこの順序で実行することが定義されたワークフロー情報となっている。
なお本実施形態では、ワークフロー情報作成画面は、WebのUIとしてユーザ端末20などに提供され、ユーザは、ユーザ端末20に表示されたワークフロー情報作成画面上でワークフロー情報を作成するための操作入力を行うような形態を想定しているが、これに限定されるものではない。例えば、ワークフロー情報作成画面をクラウド上のサービスとして提供してもよいし、情報処理装置10上のツールとして提供してもよい。
設定部140は、作成部120により作成され、ワークフロー記憶部130に記憶されているワークフロー情報を実行制御部150に設定する。なお本実施形態では、ワークフロー記憶部130には、作成部120により作成されたワークフロー情報が記憶されている場合を例に取り説明するが、これに限定されず、予め固定のワークフロー情報(デフォルトのワークフロー情報)を記憶しておいてもよい。
実行制御部150は、複数種類のコンポーネントを保持しており、設定部140により設定されたワークフロー情報に基づいて、保持している複数種類のコンポーネントの中から実行対象の1以上のコンポーネントを実行順序で実行する。
以下では、ワークフロー情報に基づいて実行される目的の機能が、情報処理装置10で管理されているアドレス帳に、クラウドサーバ40で管理されているアドレス帳を同期する機能(詳細には、情報処理装置10で管理されているアドレス帳に、クラウドサーバ40で管理されているアドレス帳をマージして、情報処理装置10で管理されているアドレス帳を更新する機能)である場合を例に取り説明するが、これに限定されるものではない。更に、設定部140により設定されたワークフロー情報が、前述した、クラウドAからのアドレス帳の取得、情報処理装置からのアドレス帳の取得、両アドレス帳のマージ処理、マージ後のアドレス帳の登録という4つのコンポーネントを、この順序で実行することが定義されたワークフロー情報である場合を例に取り説明するが、これに限定されるものではない。
実行制御部150は、複数種類のコンポーネントとして、例えば、図5で説明したコンポーネント情報の一覧に含まれる各コンポーネントを保持している。但し、前述のとおり、本実施形態では、ワークフロー情報に基づいて実行される目的の機能が、クラウドサーバ40で管理されているアドレス帳を同期する機能である場合を例に取り説明するため、図4では、実行制御部150が保持するコンポーネントとして、第1の情報取得部151−1〜151−n、第2の情報取得部152、マージ部153、及び処理部154のみを例示している。
なお、ワークフロー情報で定義されている、クラウドAからのアドレス帳の取得というコンポーネントは第1の情報取得部151−1に相当し、情報処理装置からのアドレス帳の取得というコンポーネントは第2の情報取得部152に相当し、両アドレス帳のマージ処理というコンポーネントはマージ部153に相当し、マージ後のアドレス帳の登録というコンポーネントは処理部154に相当するものとする。
まず、実行制御部150は、設定部140により設定されたワークフロー情報(クラウドAからのアドレス帳の取得)に基づいて、第1の情報取得部151−1を実行する。これにより、第1の情報取得部151−1は、第1の情報を管理する複数のクラウドサーバ40−1〜40−nのうちの、第1の情報取得部151−1に対応するクラウドであるクラウドサーバ40−1から、当該クラウドサーバ40−1に応じた態様で第1の情報を取得する。
第1の情報は、クラウドサーバ40で管理されているアドレス帳に関する情報であり、複数のレコードで構成されている。詳細には、第1の情報は、複数名のアドレス帳から成る情報であり、1名分のアドレス帳がレコードという単位で構成されている。
第1の情報取得部151−1は、クラウドサーバ40−1から第1の情報を取得するために用意されたコンポーネントであり、クラウドサーバ40−1の仕様(データの管理形式や取得形式(プロトコル))に合わせて取得動作を行う。本実施形態では、第1の情報取得部151−1は、クラウドサーバ40−1により提供されているWebApiを利用することで(リクエストを行うことで)、クラウドサーバ40−1の仕様に合わせて取得動作を行うものとするが、これに限定されるものではない。
図6は、本実施形態の第1の情報における1名分のアドレス帳(レコード)の一例を示す図である。図6に示す例では、第1の情報における1名分のアドレス帳(レコード)は、レコードの識別子であるid、名前(漢字)を示すname、名前(カナ)を示すnameKana、電話番号を示すphoneNum、ファックス番号を示すfaxNum、及び電子メールのアドレスを示すemailを含んで構成されている。
なお本実施形態では、ワークフロー情報で定義されていないため、実行制御部150により実行されないが、第1の情報取得部151−2〜151−nは、それぞれ、第1の情報を管理する複数のクラウドサーバ40−1〜40−nのうちの、対応するクラウドであるクラウドサーバ40−2〜40−nから、当該クラウドサーバ40に応じた態様で第1の情報を取得可能である。
このように本実施形態では、クラウドサーバ40毎に、当該クラウドサーバ40専用の情報取得コンポーネントが用意されているため、クラウドサーバ40毎に、データの管理形式や取得形式(プロトコル)などの仕様が異なっていても対応できる。特に本実施形態では、機能単位でソフトウェアを用意するのではなく、コンポーネント単位でソフトウェアを用意するため、クラウドサーバ40毎に、アドレス帳を同期する機能を実現するためのソフトウェアを開発する必要はなく、差分部分のみ(クラウドサーバ40毎に仕様が異なる取得部分のみ)の開発で済むため、人的コストや金銭コストなどの各種コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能となる。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(情報処理装置からのアドレス帳の取得)に基づいて、第2の情報取得部152を実行する。これにより、第2の情報取得部152は、第2の情報を取得する。
第2の情報は、情報処理装置10で管理されているアドレス帳に関する情報であり、複数のレコードで構成されている。詳細には、第2の情報は、複数名のアドレス帳から成る情報であり、1名分のアドレス帳がレコードという単位で構成されている。
本実施形態では、第2の情報は、アドレス帳記憶部160に記憶されているため、第2の情報取得部152は、アドレス帳記憶部160から第2の情報を取得する。
図7は、本実施形態の第2の情報における1名分のアドレス帳(レコード)の一例を示す図である。図7に示す例では、第2の情報における1名分のアドレス帳(レコード)は、レコードの識別子であるid、名前(漢字)を示すname、名前(カナ)を示すphoneticName、電話番号を示すphoneNumber、ファックス番号を示すfaxNumber、及び電子メールのアドレスを示すmailAddressを含んで構成されている。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(両アドレス帳のマージ処理)に基づいて、マージ部153を実行する。これにより、マージ部153は、第1の情報取得部151−1〜151−nのうちの第1の情報取得部151−1により取得された第1の情報と、第2の情報取得部152により取得された第2の情報と、をマージする。具体的には、マージ部153は、第1の情報に含まれる複数のレコードのうち第2の情報に含まれる複数のレコードのいずれにも対応(一致)しない1以上のレコードを、第2の情報にマージする。なお、対応(一致)の有無は、データがユニークであることが保証されているメールアドレス、名前、電話番号、又はこれらの組み合わせが互いに一致するか否かで行えばよい。
また、図6及び図7から明らかなように、情報処理装置10とクラウドサーバ40とでは、同一の要素を異なる属性(ラベル)で管理することも多い。例えば、図6及び図7に示す例では、クラウドサーバ40では、名前(カナ)をnameKanaという属性(ラベル)で管理しているが、情報処理装置10では、名前(カナ)をphoneticNameという属性(ラベル)で管理している。
このためマージ部153は、図8に示すような変換情報(テーブル)を保持しておき、第1の情報に含まれるレコードを第2の情報にマージする際には、この変換情報を使用して、当該レコードを構成する要素の属性(ラベル)を第2の情報に含まれるレコードを構成する要素の属性(ラベル)に変換してマージする。図8に示す変換情報は、各装置が同一の要素をどのような名称(ラベル)で管理しているのかの対応関係を示した情報である。なお、図8に示す変換情報(テーブル)を予めHDD115などの記憶装置に格納しておいてもよい。これにより、第1の情報に含まれるレコードを第2の情報にマージしても、第1の情報に含まれるレコードを構成する要素の属性(ラベル)を、第2の情報に含まれるレコードを構成する要素の属性(ラベル)に対応させることができる。
本実施形態では、マージ部153が、図8に示す変換情報を使用して、第1の情報に含まれるレコードを構成する要素の属性(ラベル)を第2の情報に含まれるレコードを構成する要素の属性(ラベル)に変換する場合を例に取り説明したが、これに限定されず、第1の情報取得部151−1〜151−nが行うようにしてもよい。この場合、各第1の情報取得部151が、クラウドサーバ40から第1の情報を取得する際に、当該第1の情報に含まれるレコードを構成する要素の属性(ラベル)を、第2の情報に含まれるレコードを構成する要素の属性(ラベル)に変換する処理を行うようにしておけばよい。
図9は、本実施形態のマージ結果(マージ情報)の一例を示す図である。図8に示す例では、図7で説明した第2の情報(情報処理装置10で管理されているアドレス帳)に、図6で説明した第1の情報(クラウドサーバ40−1で管理されているアドレス帳)をマージした場合のマージ結果を示している。
なお本実施形態では、マージ部153は、第1の情報に含まれる複数のレコードのうち第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、第2の情報にマージする場合、即ち、第2の情報に含まれる複数のレコードを上書きせずに新規レコードを追加する態様でマージする場合を例に取り説明したが、マージの態様はこれに限定されるものではなく、第2の情報に含まれる複数のレコードを上書きする態様でマージしてもよい。
このような設定は、例えば、図10に示すようなアドレス帳同期設定画面で設定しておけばよい。図10に示すアドレス帳同期設定画面は、アドレス帳の同期に関する設定を行うための画面であり、アドレス帳の同期を行うタイミング(手動か自動か)やどのような態様でマージを行うか(上書きの有無)などを設定できる。
なお本実施形態では、アドレス帳同期設定画面は、WebのUIとしてユーザ端末20などに提供され、ユーザは、ユーザ端末20に表示されたアドレス帳同期設定画面上でワークフロー情報を作成するための操作入力を行うような形態を想定しているが、これに限定されるものではない。例えば、アドレス帳同期設定画面をクラウド上のサービスとして提供してもよいし、情報処理装置10上のツールとして提供してもよい。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(マージ後のアドレス帳の登録)に基づいて、処理部154を実行する。これにより、処理部154は、マージ部153により第1の情報と第2の情報とがマージされたマージ情報に基づく処理を行う。本実施形態では、マージ情報は、マージ後のアドレス帳に関する情報であり、処理部154は、当該マージ情報をアドレス帳記憶部160に登録する処理を行う。
機能実行部170は、情報処理装置10が有する機能を実行するための制御を行う。情報処理装置10が有する機能としては、例えば、プリント機能、スキャン機能、ファクシミリ機能、及びスキャンtoEmail機能などが挙げられるが、これらに限定されるものではない。
プリント機能の場合、機能実行部170は、プリントアプリを実行することで、給紙テーブル105及びプリントエンジン106を制御し、給紙テーブル105から給紙された用紙に画像を印刷するプリント機能を実行する。また、スキャン機能の場合、機能実行部170は、スキャンアプリを実行することで、ADF101及びスキャナユニット102を制御して、ADF101から搬送された原稿をスキャンして、当該原稿の画像データを取得する。
また、ファクシミリ機能の場合、機能実行部170は、ファクシミリアプリを実行する。これにより、機能実行部170は、アドレス帳記憶部160に記憶されているアドレス帳に関する情報(第2の情報、マージ情報)をディスプレイパネル104に表示して、ユーザにファクシミリの送信先の電話番号を入力させる。そして機能実行部170は、ADF101及びスキャナユニット102を制御して、ADF101から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へファクシミリ送信する。
また、スキャンtoEmail機能の場合、機能実行部170は、スキャンtoEmailアプリを実行する。これにより、機能実行部170は、アドレス帳記憶部160に記憶されているアドレス帳に関する情報(第2の情報、マージ情報)をディスプレイパネル104に表示して、ユーザにファクシミリの送信先のメールアドレスを入力させる。そして機能実行部170は、ADF101及びスキャナユニット102を制御して、ADF101から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へ電子メールで送信する。
図11は、本実施形態の処理の手順の流れの一例を示すシーケンス図である。図11に示す例では、携帯端末30からクラウドサーバ40に第1の情報(アドレス帳に関する情報)を登録し、情報処理装置10が、第1の情報(アドレス帳に関する情報)を自身が管理している第2の情報(アドレス帳に関する情報)にマージして利用する場合を例にとり説明するが、これに限定されるものではない。
まず、携帯端末30は、ユーザからクラウドサーバ40に登録するための第1の情報(アドレス帳に関する情報)の入力を受け付け(ステップS101)、クラウドサーバ40に登録要求を行う(ステップS103)。
続いて、クラウドサーバ40は、携帯端末30から登録要求が行われた第1の情報(アドレス帳に関する情報)をクラウドサーバ40に登録し(ステップS105)、登録結果を携帯端末30に通知する(ステップS107)。
なお、ステップS101〜S105までの処理は、携帯端末30上のWebブラウザやアプリケーションを使用して、ユーザが第1の情報を手動で入力することにより行われてもよいし、携帯端末30により撮影された名刺などの画像をクラウドサーバ40側でOCR(Optical Character Recognition)処理して第1の情報を抽出することにより行われてもよい。
続いて、情報処理装置10の実行制御部150は、アドレス帳の同期を行うタイミングになると、同期処理を実行する(ステップS109)。なお、アドレス帳の同期を行うタイミングについては、前述のとおり、図10に示すアドレス帳同期設定画面で設定できる。同期処理の詳細については、後述する。
続いて、情報処理装置10の機能実行部170は、ユーザから機能の実行要求を受け付ける(ステップS111)。ここでは、受け付けられた機能の実行要求が、ファクシミリ機能であるため、機能実行部170は、ファクシミリアプリを実行する場合を例に取り説明するが、これに限定されるものではない。
続いて、情報処理装置10の機能実行部170は、アドレス帳記憶部160に記憶されているマージ情報(アドレス帳に関する情報)をディスプレイパネル104に表示して(ステップS113)、ユーザにファクシミリの送信先(宛先)の電話番号を入力させる(ステップS115)。そして機能実行部170は、ユーザから送信の実行要求を受け付けると、ADF101及びスキャナユニット102を制御して、ADF101から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザに入力された送信先へファクシミリ送信する(ステップS117)。
図12は、本実施形態の同期処理の手順の流れの一例を示すシーケンス図である。
まず、設定部140は、ワークフロー記憶部130に記憶されているワークフロー情報を実行制御部150に設定する(ステップS201)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(クラウドAからのアドレス帳の取得)に基づいて、第1の情報取得部151−1に実行要求を行う(ステップS203)。
これにより、第1の情報取得部151−1は、第1の情報を管理する複数のクラウドサーバ40−1〜40−nのうちの、第1の情報取得部151−1に対応するクラウドであるクラウドサーバ40−1から、当該クラウドサーバ40−1に応じた態様で第1の情報(アドレス帳に関する情報)を取得し(ステップS205)、取得結果を実行制御部150に通知する(ステップS207)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(情報処理装置からのアドレス帳の取得)に基づいて、第2の情報取得部152に実行要求を行う(ステップS209)。
これにより、第2の情報取得部152は、アドレス帳記憶部160から第2の情報(アドレス帳に関する情報)を取得し(ステップS211)、取得結果を実行制御部150に通知する(ステップS213)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(両アドレス帳のマージ処理)に基づいて、マージ部153に実行要求を行う(ステップS215)。
これにより、マージ部153は、第1の情報に含まれる複数のレコードのうち第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、第2の情報にマージし(ステップS217)、マージ結果を実行制御部150に通知する(ステップS219)。なお、マージ処理の詳細については、後述する。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(マージ後のアドレス帳の登録)に基づいて、処理部154に実行要求を行う(ステップS221)。
これにより、処理部154は、マージ部153により第1の情報と第2の情報とがマージされたマージ情報(マージ後のアドレス帳に関する情報)をアドレス帳記憶部160に登録する処理を行い(ステップS223)、マージ結果を実行制御部150に通知する(ステップS225)。
図13は、本実施形態のマージ処理の手順の流れの一例を示すフローチャートである。図13に示す例では、第2の情報に含まれる複数のレコードを上書きせずに新規レコードを追加する態様でマージする場合を例に取り説明するが、これに限定されるものではない。
まず、マージ部153は、第1の情報取得部151−1により取得された第1の情報(アドレス帳に関する情報)から未処理のレコードを取得する(ステップS301)。
続いて、マージ部153は、取得したレコードに対応するレコードが、第2の情報取得部152により取得された第2の情報に含まれているか否かを判定する(ステップS303)。この判定は、前述したように、データがユニークであることが保証されているメールアドレス、名前、電話番号、又はこれらの組み合わせが互いに一致するか否かで行えばよい。
そして、含まれている場合(ステップS303でYes)、マージ部153は、当該レコードを前述した図8に示す変換情報を使用して、この変換情報を使用して、当該レコードを構成する要素の属性(ラベル)を第2の情報に含まれるレコードを構成する要素の属性(ラベル)に変換して、マージ対象に追加し(ステップS305)、含まれていない場合(ステップS303でNo)、マージ部153は、ステップS305の処理を行わない。
続いて、マージ部153は、第1の情報に含まれる全てのレコードを処理するまでステップS301〜S305の処理を繰り返し(ステップS307でNo)、第1の情報に含まれる全てのレコードを処理すると(ステップS307でYes)、マージ対象に追加されたレコードを第2の情報にマージ(追加)する(ステップS309)。
以上のように本実施形態では、クラウドサーバ40毎に、当該クラウドサーバ40専用の情報取得コンポーネントが用意されているため、クラウドサーバ40毎に、データの管理形式や取得形式(プロトコル)などの仕様が異なっていても対応できる。特に本実施形態では、機能単位でソフトウェアを用意するのではなく、コンポーネント単位でソフトウェアを用意するため、クラウドサーバ40毎に、アドレス帳を同期する機能を実現するためのソフトウェアを開発する必要はなく、差分部分のみ(クラウドサーバ40毎に仕様が異なる取得部分のみ)の開発で済むため、人的コストや金銭コストなどの各種コストを抑えつつ、異なる仕様で情報を管理する複数のクラウドサービスとの連携が可能となる。
例えば、ユーザは、同期に使用するアドレス帳を管理しているクラウドサーバ40を変更する場合には、前述した図5に示すワークフロー情報作成画面において、変更後のクラウドサーバ40からのアドレス帳の取得を行うコンポーネントを選択して、ワークフロー情報を作成すればよい。
また本実施形態によれば、スマートデバイスなどの携帯端末30から登録したアドレス帳を利用した機能の実行が可能となる。
また本実施形態によれば、クラウドサーバ40で管理されているアドレス帳を情報処理装置10のアドレス帳に同期して機能を実行するため、ネットワークの接続ができないような場合であっても、クラウドサーバ40で管理されていたアドレス帳を利用した機能の実行が可能となる。
(変形例1)
上記実施形態において、マージ部153は、第1の情報に含まれる複数のレコードのうち第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、更新日時の新しい順に第2の情報にマージするようにしてもよい。
一般的に、情報処理装置10側に登録可能なアドレス帳のレコード数はさほど多くない。このため、クラウド40で管理されているアドレス帳(第1の情報)のうち情報処理装置10側で管理されていない全てのアドレス帳を、情報処理装置10で管理されているアドレス帳(第2の情報)にマージしようとすると、途中で上限に達してしまうことが多い。このため、上記のように更新日時の新しい順に第2の情報にマージすることで、優先度の高いレコード(最近使用されたレコード)を優先的に情報処理装置10で管理されているアドレス帳(第2の情報)にマージすることが可能となる。
この場合、少なくとも第1の情報のレコードは、図14に示すように、最終更新日時を示すlastAccessDataを含んで構成される。なお、最終更新日時の属性は、クラウドサーバ40で管理されている段階から第1の情報のレコードに含まれていればそのまま使用し、クラウドサーバ40で管理されている段階では第1の情報のレコードに含まれていなければ、情報処理装置10側で付加すればよい。また、第2の情報のレコードにも、最終更新日時の属性を含めるようにしてもよい。この場合、最終更新日時は、機能実行部170により使用されると更新される。
図15は、変形例1のマージ処理の手順の流れの一例を示すフローチャートである。まず、ステップS401〜ステップS407までの処理は、図13に示すフローチャートのステップS301〜ステップS307までの処理と同様である。
続いて、マージ部153は、第1の情報に含まれる全てのレコードを処理すると(ステップS407でYes)、マージ対象に追加されたレコードを更新日時の新しい順にソートし(ステップS409)、更新日時の新しい順に第2の情報にマージ(追加)する(ステップS411)。
(変形例2)
上記実施形態では、アドレス帳の同期処理を例に取り説明したが、同期対象はアドレス帳に限定されず、例えば、書誌情報などにも適用できる。また、上記実施形態で説明したワークフローは、アドレス帳の同期処理に限定されず、例えば、クラウドで管理されているアドレス帳をCSV(Comma-Separated Values)データとして、社内サーバなどのローカルサーバにバックアップするようなワークフローにも適用できる。
(変形例3)
また上記実施形態では、図8に示すような変換情報を利用することでマージ部153を1種類のコンポーネントで実現する場合を例に取り説明したが、第1の情報と第2の情報との組み合わせ(クラウドサーバ40の種類)毎に、マージ部153(コンポーネント)を用意するようにしてもよい。このようにすれば、図8に示すような変換情報が不要となる。
(変形例4)
例えば前述の第1の情報は、全てのユーザが参照可能な共有アドレス帳、または、特定のユーザのみ参照可能な個人アドレス帳であってもよい。以下の説明では、第1の情報取得部151−1〜151−nを互いに区別しない場合は「第1の情報取得部151」と表記する場合がある。
本変形例では、第1の情報取得部151は、対応するクラウドサーバ40から共有アドレス帳を定期的に取得する。また、第1の情報取得部151は、ユーザの認証後に、該ユーザを識別するためのアカウント情報を利用して、対応するクラウドサーバ40から個人アドレス帳を取得する。
第1の情報取得部151により共有アドレス帳が取得された場合、マージ部153は、該共有アドレス帳と、第2の情報取得部152により取得された、情報処理装置10で管理されている共有アドレス帳を示す第2の情報とをマージし、処理部154は、該マージ後のアドレス帳を示すマージ情報を登録する処理を行う。
また、第1の情報取得部151により個人アドレス帳が取得された場合、マージ部153は、該個人アドレス帳と、第2の情報取得部152により取得された、情報処理装置10で管理されている個人アドレス帳を示す第2の情報とをマージし、処理部154は、該マージ後のアドレス帳を示すマージ情報を登録する処理を行う。
さらに、第1の情報取得部151は、ユーザの認証後であって、かつ、情報処理装置10で管理されている個人アドレス帳に、クラウドサーバ40から取得した個人アドレス帳をマージして、情報処理装置10で管理されている個人アドレス帳を更新する同期処理が完了してから一定時間を経過した場合に、個人アドレス帳を取得する。つまり、個人アドレス帳の同期処理の完了後、一定期間を経過している場合に限り、次の個人アドレス帳の同期処理が実行される。以下、本変形例の具体的な内容を説明する。
各装置の基本的な構成は上述の実施形態と同様であるが、本変形例におけるアドレス帳記憶部160は、共有アドレス帳を記憶する記憶領域と、個人アドレス帳を記憶する記憶領域とを有している。また、クラウドサーバ40は、共有アドレス帳と個人アドレス帳とを管理する。図16に示すように、クラウドサーバ40は、レコード(アドレス帳)の識別子であるidごとに、アドレス帳(この例では、name、nameKana、phoneNum、faxNum、emailから構成される)と、共有アドレス帳か個人アドレス帳かを識別するための種別と、個人アドレス帳にアクセスする権限を有するユーザを識別するためのアカウント情報とを対応付けて管理(記憶)する。
図17は、携帯端末30からクラウドサーバ40に共有アドレス帳を登録し、情報処理装置10が、クラウドサーバ40から共有アドレス帳を取得し、その取得した共有アドレス帳を、自身が管理している共有アドレス帳を示す第2の情報にマージして利用する場合の情報処理システム1の動作手順の一例を示すシーケンス図である。
まず、携帯端末30は、ユーザからクラウドサーバ40に登録するための共有アドレス帳の入力を受け付け(ステップS501)、クラウドサーバ40に登録要求を行う(ステップS503)。
続いて、クラウドサーバ40は、携帯端末30から登録要求が行われた共有アドレス帳をクラウドサーバ40に登録し(ステップS505)、登録結果を携帯端末30に通知する(ステップS507)。
なお、ステップS501〜S505までの処理は、携帯端末30上のWebブラウザやアプリケーションを使用して、ユーザが共有アドレス帳を手動で入力することにより行われてもよいし、携帯端末30により撮影された名刺などの画像をクラウドサーバ40側でOCR(Optical Character Recognition)処理して共有アドレス帳を抽出することにより行われてもよい。
続いて、情報処理装置10の実行制御部150は、共有アドレス帳の同期処理を行うタイミングになると、共有アドレス帳の同期処理を実行する(ステップS509)。なお、アドレス帳の同期を行うタイミングについては、前述のとおり、図10に示すアドレス帳同期設定画面で設定できる。共有アドレス帳の同期処理の詳細については、後述する。
続いて、情報処理装置10の機能実行部170は、ユーザから機能の実行要求を受け付ける(ステップS511)。ここでは、受け付けられた機能の実行要求が、ファクシミリ機能であるため、機能実行部170は、ファクシミリアプリを実行する場合を例に取り説明するが、これに限定されるものではない。
続いて、情報処理装置10の機能実行部170は、アドレス帳記憶部160に記憶されているマージ情報(アドレス帳に関する情報)をディスプレイパネル104に表示して(ステップS513)、ユーザにファクシミリの送信先(宛先)の電話番号を入力させる(ステップS515)。そして機能実行部170は、ユーザから送信の実行要求を受け付けると、ADF101及びスキャナユニット102を制御して、ADF101から搬送された原稿をスキャンして、当該原稿の画像データを取得し、当該画像データを、ユーザにより入力された送信先へファクシミリ送信する(ステップS517)。
図18は、本変形例の共有アドレス帳の同期処理(図17のステップS509)の手順の流れの一例を示すシーケンス図である。
まず設定部140は、ワークフロー記憶部130に記憶されている、共有アドレス帳の同期処理のワークフロー情報を実行制御部150に設定する(ステップS601)。図19は、この場合のワークフロー情報により示されるワークフローの一例を示す図である。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図19参照)に基づいて、第1の情報取得部151に実行要求を行う(ステップS603)。
これにより、第1の情報取得部151は、対応するクラウドサーバ40から、共有アドレス帳を取得し(ステップS605)、取得結果を実行制御部150に通知する(ステップS607)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図19参照)に基づいて、第2の情報取得部152に実行要求を行う(ステップS609)。
これにより、第2の情報取得部152は、アドレス帳記憶部160から第2の情報(情報処理装置10で管理されている共有アドレス帳)を取得し(ステップS611)、取得結果を実行制御部150に通知する(ステップS613)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図19参照)に基づいて、マージ部153に実行要求を行う(ステップS615)。
マージ部153は、クラウドサーバ40から取得した共有アドレス帳が、情報処理装置10で管理されている共有アドレス帳に存在しない場合は、クラウドサーバ40から取得した共有アドレス帳と、情報処理装置10で管理されている共有アドレス帳とをマージし(ステップS617)、そのマージ結果を実行制御部150に通知する(ステップS619)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図19参照)に基づいて、処理部154に実行要求を行う(ステップS621)。
これにより、処理部154は、マージ部153によりマージされたマージ情報をアドレス帳記憶部160に登録する処理を行い(ステップS623)、マージ結果を実行制御部150に通知する(ステップS625)。
図20は、携帯端末30からクラウドサーバ40に個人アドレス帳を登録し、情報処理装置10が、クラウドサーバ40から個人アドレス帳を取得し、その取得した個人アドレス帳を、自身が管理している個人アドレス帳を示す第2の情報にマージして利用する場合の情報処理システム1の動作手順の一例を示すシーケンス図である。
まず、携帯端末30は、ユーザからクラウドサーバ40に登録するための個人アドレス帳の入力を受け付け(ステップS701)、クラウドサーバ40に登録要求を行う(ステップS703)。例えばアドレス帳登録時に「公開する/しない」が選択できる場合、「公開しない」を選択して登録することもできる。
続いて、クラウドサーバ40は、携帯端末30から登録要求が行われた個人アドレス帳をクラウドサーバ40に登録し(ステップS705)、登録結果を携帯端末30に通知する(ステップS707)。ここでは、個人アドレス帳の登録時、クラウドサーバ40は、携帯端末30からのアクセス時に使用したアカウントに紐付けて個人アドレス帳を登録する。
なお、ステップS701〜S705までの処理は、携帯端末30上のWebブラウザやアプリケーションを使用して、ユーザが個人アドレス帳を手動で入力することにより行われてもよいし、携帯端末30により撮影された名刺などの画像をクラウドサーバ40側でOCR(Optical Character Recognition)処理して個人アドレス帳を抽出することにより行われてもよい。
続いて、情報処理装置10は、ユーザの認証処理を行う(ステップS709)。認証処理とは、ユーザが情報処理装置10を使用する権限を有するか否かを判断するための処理である。例えば情報処理装置10は、使用権限を有するユーザごとに、該ユーザを識別するためのアカウント情報(この例ではアカウントのみであるが、例えばアカウントとパスワードの組み合わせなどであってもよい)を予め登録しておき、ユーザから入力されたアカウント情報が、予め登録されたアカウント情報と一致する場合に限り、該ユーザは情報処理装置10を使用する権限を有すると認める(該ユーザを認証する)ことができる。
ユーザが認証された後、情報処理装置10の実行制御部150は、個人アドレス帳の同期処理を実行する(ステップS711)。個人アドレス帳の同期処理の詳細については、後述する。このときの同期処理時にクラウドサーバ40から個人アドレス帳を取得するためのアカウント情報(クラウドサーバ40において、クラウドサーバ40が管理しているアドレス帳に紐付けられたアカウント情報)は、情報処理装置10にログインしているユーザのアカウント情報を使用する。情報処理装置用のアカウント情報と、クラウドサーバ用のアカウント情報とが同一である場合は、前述の認証処理に用いた情報処理装置用のアカウント情報をそのまま使用することができる。異なる場合は、例えば図21に示すように、情報処理装置10は、情報処理装置用のアカウント情報(この例ではアカウントのみ)に対して、クラウドサーバ用のアカウント情報(この例ではアカウントとパスワードの組み合わせ)を紐付けて管理し、認証されたユーザのアカウント情報(ログイン時のアカウント情報)に紐付くクラウドサーバ用のアカウント情報を用いることもできる。
ステップS713〜ステップS719の処理内容は、図17のステップS511〜ステップS517の処理内容と同様である。
図22は、本変形例の個人アドレス帳の同期処理(図20のステップS711)の手順の流れの一例を示すシーケンス図である。
まず設定部140は、ワークフロー記憶部130に記憶されている、個人アドレス帳の同期処理のワークフロー情報を実行制御部150に設定する(ステップS801)。図23は、この場合のワークフロー情報により示されるワークフローの一例を示す図である。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図23参照)に基づいて、第1の情報取得部151に実行要求を行う(ステップS803)。
これにより、第1の情報取得部151は、対応するクラウドサーバ40から、ログイン中のユーザを識別するためのアカウント情報に紐付く個人アドレス帳を取得し(ステップS805)、取得結果を実行制御部150に通知する(ステップS807)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図23参照)に基づいて、第2の情報取得部152に実行要求を行う(ステップS809)。
これにより、第2の情報取得部152は、アドレス帳記憶部160から第2の情報(情報処理装置10で管理されている個人アドレス帳)を取得し(ステップS811)、取得結果を実行制御部150に通知する(ステップS813)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図23参照)に基づいて、マージ部153に実行要求を行う(ステップS815)。
マージ部153は、クラウドサーバ40から取得した個人アドレス帳が、情報処理装置10で管理されている個人アドレス帳に存在しない場合は、クラウドサーバ40から取得した個人アドレス帳と、情報処理装置10で管理されている個人アドレス帳とをマージし(ステップS817)、そのマージ結果を実行制御部150に通知する(ステップS819)。
続いて、実行制御部150は、設定部140により設定されたワークフロー情報(図23参照)に基づいて、処理部154に実行要求を行う(ステップS821)。
これにより、処理部154は、マージ部153によりマージされたマージ情報をアドレス帳記憶部160に登録する処理を行い(ステップS823)、マージ結果を実行制御部150に通知する(ステップS825)。
また、本変形例では、個人アドレス帳の同期処理を、ユーザがログインした後のアプリケーション使用時に実施した場合、前回に個人アドレス帳を取得したばかりでも同期処理を行うケースが考えられる。この場合、同期処理を完了した後の個人アドレス帳の変更が殆どないにも関わらず重い処理を実行してしまうため、システムの負荷が増大するという問題が発生する。この問題を解決するため、本変形例では、個人アドレス帳の同期処理完了時にその完了日時をHDD115等の記憶装置に保持し、一定期間経過した場合のみ同期処理を行うようにする。図24は、この場合の処理フローを示す図である。
図24に示すように、ユーザのログイン後、実行制御部150は、個人アドレス帳同期処理の完了日時を記憶装置から取得する(ステップS901)。次に、実行制御部150は一定時間が経過したか否かを確認する(ステップS902)。ステップS902の結果が肯定の場合(ステップS902:Yes)、実行制御部150は同期処理を実行する(ステップS903)。この処理内容は上述したとおりである。同期処理が完了すると(ステップS904:Yes)、実行制御部150は、その完了日時を記憶装置に保存する制御を行う(ステップS905)。
以上の本変形例では、ユーザが情報処理装置10に認証された後、その認証されたユーザのアカウント情報を利用して個人アドレス帳の同期処理を行う。つまり、本変形例によれば、全てのユーザがアクセス可能な共有アドレス帳だけでなく、特定のユーザのアカウント情報を使用する場合にのみアクセス可能な個人アドレス帳も同期可能な情報処理装置10を提供することができる。
(プログラム)
上記実施形態及び変形例の情報処理装置10で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
また、上記実施形態及び変形例の情報処理装置10で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施形態及び変形例の情報処理装置10で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記実施形態及び変形例の情報処理装置10で実行されるプログラムを、ROM等に予め組み込んで提供するようにしてもよい。
上記実施形態及び変形例の情報処理装置10で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、CPUがROMからプログラムをRAM上に読み出して実行することにより、上記各機能部がコンピュータ上で実現されるようになっている。
なお、上記実施形態及び変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 情報処理システム
2 イントラネット
3 ファイアウォール
4 インターネット
10 情報処理装置
20 ユーザ端末
30 携帯端末
40−1〜40−n(40) クラウドサーバ
120 作成部
130 ワークフロー記憶部
140 設定部
150 実行制御部
151−1〜151−n 第1の情報取得部
152 第2の情報取得部
153 マージ部
154 処理部
160 アドレス帳記憶部
170 機能実行部
特開2014−149781号公報

Claims (10)

  1. それぞれが、複数のレコードで構成される第1の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第1の情報を取得可能な複数の第1の情報取得部と、
    複数のレコードで構成される第2の情報を取得する第2の情報取得部と、
    前記複数の第1の情報取得部のうちのいずれかにより取得された前記第1の情報に含まれる複数のレコードのうち前記第2の情報取得部により取得された前記第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、前記第2の情報にマージするマージ部と、
    前記第1の情報と前記第2の情報とがマージされたマージ情報に基づく処理を行う処理部と、を備え
    前記マージ部は、前記第1の情報および前記第2の情報に含まれるレコードであって、データがユニークであることが保証されているレコードが一致するか否かで前記対応の有無を判定する情報処理装置。
  2. 前記マージ部は、前記ユニークであるデータの組み合わせが一致するか否かで前記対応の有無を判定する請求項1に記載の情報処理装置。
  3. 前記マージ部は、前記第1の情報に含まれる複数のレコードのうち前記第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、更新日時の新しい順に前記第2の情報にマージする請求項1または2に記載の情報処理装置。
  4. 前記第1の情報及び前記第2の情報は、アドレス帳に関する情報であり、
    前記マージ情報は、マージ後のアドレス帳に関する情報であり、
    前記処理部は、前記マージ情報を登録する処理を行う請求項1〜3のいずれか1つに記載の情報処理装置。
  5. 前記第1の情報は、全てのユーザが参照可能な共有アドレス帳、または、特定のユーザのみ参照可能な個人アドレス帳であり、
    前記第1の情報取得部は、
    前記共有アドレス帳を定期的に取得し、
    ユーザの認証後に、該ユーザを識別するためのアカウント情報を利用して前記個人アドレス帳を取得する、
    請求項に記載の情報処理装置。
  6. 前記第1の情報取得部により前記共有アドレス帳が取得された場合、
    前記第2の情報取得部は、前記情報処理装置で管理されている前記共有アドレス帳を示す前記第2の情報を取得し、前記マージ部は、前記第1の情報取得部により取得された前記共有アドレス帳と、前記第2の情報取得部により取得された前記第2の情報とをマージし、前記処理部は、該マージ後のアドレス帳を示す前記マージ情報を登録する処理を行い、
    前記第1の情報取得部により前記個人アドレス帳が取得された場合、
    前記第2の情報取得部は、前記情報処理装置で管理されている前記個人アドレス帳を示す前記第2の情報を取得し、前記マージ部は、前記第1の情報取得部により取得された前記個人アドレス帳と、前記第2の情報取得部により取得された前記第2の情報とをマージし、前記処理部は、該マージ後のアドレス帳を示す前記マージ情報を登録する処理を行う、
    請求項5に記載の情報処理装置。
  7. 前記第1の情報取得部は、
    ユーザの認証後であって、かつ、前記情報処理装置で管理されている前記個人アドレス帳に、前記クラウドから取得した前記個人アドレス帳をマージして、前記情報処理装置で管理されている前記個人アドレス帳を更新する同期処理が完了してから一定時間を経過した場合に、前記個人アドレス帳を取得する、
    請求項5または6に記載の情報処理装置。
  8. 前記複数の第1の情報取得部、前記第2の情報取得部、前記マージ部、及び前記処理部は、それぞれ、コンポーネントであり、
    実行対象の1以上のコンポーネント及び実行順序が定義されたワークフロー情報を設定する設定部と、
    前記ワークフロー情報に基づいて、前記実行対象の1以上のコンポーネントを前記実行順序で実行する実行制御部と、を備え、
    前記ワークフロー情報では、前記実行対象の1以上のコンポーネントとして、前記複数の第1の情報取得部の少なくともいずれか、前記第2の情報取得部、前記マージ部、及び前記処理部が定義され、前記実行順序として、前記複数の第1の情報取得部の少なくともいずれか、前記第2の情報取得部、前記マージ部、前記処理部という順序が定義されている請求項1〜7のいずれか1つに記載の情報処理装置。
  9. 複数の第1の情報取得部の少なくともいずれかが、複数のレコードで構成される第1の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第1の情報を取得する第1の取得ステップと、
    複数のレコードで構成される第2の情報取得部が、第2の情報を取得する第2の取得ステップと、
    マージ部が、前記複数の第1の情報取得部のうちのいずれかにより取得された前記第1の情報に含まれる複数のレコードのうち前記第2の情報取得部により取得された前記第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、前記第2の情報にマージするマージステップと、
    処理部が、前記第1の情報と前記第2の情報とがマージされたマージ情報に基づく処理を行う処理ステップと、
    を含むマージ方法であって、
    前記マージステップは、前記第1の情報および前記第2の情報に含まれるレコードであって、データがユニークであることが保証されているレコードが一致するか否かで前記対応の有無を判定する、マージ方法。
  10. それぞれが、複数のレコードで構成される第1の情報を管理する複数のクラウドのうちの対応するクラウドから、当該クラウドに応じた態様で前記第1の情報を取得可能な複数の第1の情報取得部と、
    複数のレコードで構成される第2の情報を取得する第2の情報取得部と、
    前記複数の第1の情報取得部のうちのいずれかにより取得された前記第1の情報に含まれる複数のレコードのうち前記第2の情報取得部により取得された前記第2の情報に含まれる複数のレコードのいずれにも対応しない1以上のレコードを、前記第2の情報にマージするマージ部と、
    前記第1の情報と前記第2の情報とがマージされたマージ情報に基づく処理を行う処理部と、してコンピュータを機能させるためのプログラムであって、
    前記マージ部は、前記第1の情報および前記第2の情報に含まれるレコードであって、データがユニークであることが保証されているレコードが一致するか否かで前記対応の有無を判定する、プログラム。
JP2017091956A 2017-03-14 2017-05-02 情報処理装置、マージ方法及びプログラム Active JP6852550B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/917,980 US10826986B2 (en) 2017-03-14 2018-03-12 Information processing apparatus, merge method, and computer program product

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017049231 2017-03-14
JP2017049231 2017-03-14

Publications (2)

Publication Number Publication Date
JP2018152833A JP2018152833A (ja) 2018-09-27
JP6852550B2 true JP6852550B2 (ja) 2021-03-31

Family

ID=63680947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017091956A Active JP6852550B2 (ja) 2017-03-14 2017-05-02 情報処理装置、マージ方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6852550B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7263115B2 (ja) * 2019-05-17 2023-04-24 キヤノン株式会社 サーバ、制御方法、プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3931985B2 (ja) * 2003-09-08 2007-06-20 村田機械株式会社 通信装置
JP2007123959A (ja) * 2005-10-24 2007-05-17 Hitachi Software Eng Co Ltd 携帯電話帳管理システム
JP2008158589A (ja) * 2006-12-20 2008-07-10 Oki Electric Ind Co Ltd 更新情報通知装置及び更新情報通知プログラム
JP2012252452A (ja) * 2011-06-01 2012-12-20 Ricoh Co Ltd 情報処理装置、情報処理システム、及びプログラム
JP2014149781A (ja) * 2013-02-04 2014-08-21 Ricoh Co Ltd 画像形成装置、情報管理システム、情報管理方法および情報管理プログラム
JP2015014954A (ja) * 2013-07-05 2015-01-22 株式会社リコー データ処理装置、同期システム、及びデータ処理プログラム

Also Published As

Publication number Publication date
JP2018152833A (ja) 2018-09-27

Similar Documents

Publication Publication Date Title
JP7166741B2 (ja) 情報処理装置、情報処理装置の制御方法、画像形成装置、画像形成装置の制御方法、情報処理システム、及び、プログラム
US20170329560A1 (en) Information processing apparatus, information processing method, and storage medium
JP4846837B2 (ja) クライアントサーバシステム、及び、クライアント装置
US20160165077A1 (en) Information processing apparatus, management apparatus, method of controlling information processing apparatus, method of controlling management apparatus, and storage medium
US20140195585A1 (en) Process executing system, process executing method, and information processing device
JP2014182411A (ja) 情報処理装置、ネットワークシステム、処理実行方法及び処理実行プログラム
JP6303505B2 (ja) 情報処理システム、情報処理方法、機器、及びプログラム
US9648109B2 (en) Image processing apparatus, shared address book display control method for the same, recording medium
KR102271119B1 (ko) 화상형성장치, 표시 방법, 프로그램, 및 프로그램을 기억하는 컴퓨터 판독가능한 기억매체
US10826986B2 (en) Information processing apparatus, merge method, and computer program product
JP4577399B2 (ja) データ配信装置、データ配信方法、及びデータ配信プログラム
EP2434743B1 (en) Information processing apparatus, method of controlling the same, and storage medium
US20140016152A1 (en) Image processing apparatus and method and non-transitory computer readable medium
JP6852550B2 (ja) 情報処理装置、マージ方法及びプログラム
JP2006101194A (ja) ジョブ実行システム及びこのシステムに用いられるジョブ実行装置並びに画像形成装置
US20120060122A1 (en) Document distribution system, image forming device, document data controlling method, and recording medium
JP2011198053A (ja) 画像処理システム
JP2015056078A (ja) 情報処理システム、情報処理方法およびプログラム
US10554828B2 (en) Communication apparatus providing transmission destination from an address book, control method thereof, and storage medium
CN114520852A (zh) 信息处理***和存储介质
CN111149085B (zh) 通过使用外部服务器管理图像形成装置的方法以及使用该方法的图像形成装置
JP6763252B2 (ja) 画像形成装置、操作装置、画面表示方法及びプログラム
JP2020065233A (ja) 情報処理システム及び情報処理方法
US11310193B2 (en) Information processing apparatus and non-transitory computer readable medium
US9019539B2 (en) Image data transmission apparatus, image data transmission method, and computer-readable storage medium for computer program configured to send image data to a plurality of destinations using separate methods

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210222

R151 Written notification of patent or utility model registration

Ref document number: 6852550

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151