以下、図面を参照しながら各実施形態について説明する。以下の説明において、略又は実質的に同一の機能及び構成要素については、同一符号を付し、説明を省略するか、又は、必要に応じて説明を行う。
図1は、本実施形態に係る発信者情報表示システム1の構成の一例を示すブロック図である。以下、図1を用いて、発信者情報表示システム1の構成及び処理の概要について説明する。
発信者情報表示システム1は、ユーザ端末2と、サーバ装置3とを備える。ユーザ端末2とサーバ装置3とは、ネットワークN経由で通信可能に接続されている。
ネットワークNは、例えばインターネット、イントラネットなどを含む広域通信網でもよく、又は、Bluetooth(登録商標)、無線LAN(Local Area Network)、その他の規格に準拠する近距離無線通信などでもよい。
ユーザ端末2は、例えばスマートデバイス、パーソナルコンピュータ(PC)、タブレット型端末などを含む情報処理装置である。ユーザ端末2は、ネットワークNを経由して例えばサーバ装置3などの外部装置と通信する機能を備える。
ユーザ端末2は公衆回線網に接続可能な通話装置を含む。すなわち、ユーザ端末2は、スマートフォン、携帯電話、通話機能を有するPDA(Personal Data Assistance)などでもよい。なお、ユーザ端末2は、PBX(Private Branch eXchange:構内交換機)配下の電話機、すなわち内線電話機として利用可能であってもよい。ユーザ端末2は、利用者Uにより操作される。
ユーザ端末2は、手動又は所定時間の周期でサーバ装置3に対して、任意のタイミングでアドレスデータの一覧情報の取得(ダウンロード)依頼を行い、取得したアドレスデータを一時ファイルとしてユーザ端末2の秘匿領域(アプリケーション領域)に保存する。また、ユーザ端末2は、所定の権限が付与されている場合に、保存した一時ファイルから秘匿領域内の発信者情報データへ抽出したアドレスデータを登録する。
また、ユーザ端末2は、発信元電話機T0より着信を受ける。発信元電話機T0は、電話機又は通話機能を有する装置である。発信元電話機T0は、公衆回線網に接続された外線電話機でもよく、又は、PBXの配下に接続された内線電話機でもよい。
ユーザ端末2は、発信元電話機T0からの着信時に、着信電話番号をキーとして内部電話帳を検索し、該当する発信者が見つからない場合に、さらに当該発信者情報データを検索することにより、発信元電話機T0の電話番号を特定する。
サーバ装置3は、例えば、利用者のアドレスデータを管理する情報処理装置である。
サーバ装置3は、利用者Uを識別可能である。例えば、サーバ装置3は、利用者ID及びパスワードなどの識別データを用いて、利用者Uを認証することにより、利用者Uを一意に識別する。また、サーバ装置3は、利用者Uに紐づくユーザ端末2を識別可能であってもよい。
サーバ装置3は、ユーザ端末2からのアドレスデータ取得要求に応じて、認証済の利用者Uが閲覧可能なアドレス帳を併合したアドレス一覧データを生成し、ユーザ端末2に送信する。
本実施形態に係る発信者情報表示システム1においては、例えば通話機能を有するユーザ端末2を利用する利用者Uがユーザ端末2の電話帳に情報を登録しない場合でも、利用者Uが認証済みのサーバ装置3に格納されているアドレスデータを、利用者Uが意識することなくユーザ端末2に表示する。より具体的には、サーバ装置3は、利用者Uのランク情報に基づいてサーバ装置3が保有する複数のアドレス帳を併合することにより、アドレス一覧データを生成する。ユーザ端末2は、あらかじめサーバ装置3より当該アドレス一覧データを取得し、所定の権限が付与されている場合に、発信者情報データとしてユーザ端末2の秘匿領域に登録する。また、ユーザ端末2は、発信元電話機T0からの着信時に、内部電話帳に加えて当該発信者情報データを検索し、検索により得られた発信者情報をユーザ端末2のディスプレイに表示する。
以下では、ユーザ端末2及びサーバ装置3のより詳細な構成、及び、発信者情報表示システム1の実行する処理の詳細について説明する。
図2は、本実施形態に係るユーザ端末2の一例を示すブロック図である。
ユーザ端末2は、第1の不揮発性メモリ2a、プロセッサ2b、第1の揮発性メモリ2c、通信装置2d、表示装置2e、入力装置2f、及び通話装置2gなどを備える。これらの各装置は、バスにより相互に接続されている。
第1の不揮発性メモリ2aは、例えばハードディスク、SSD(Solid State Drive)、フラッシュメモリなどにより構成され、第1の揮発性メモリ2cとともに記憶領域を構成する。
第1の不揮発性メモリ2aは、秘匿領域Xとユーザ領域Yとを備える。秘匿領域Xは、利用者Uがアクセスすることができない領域である。秘匿領域Xは、例えばアプリケーション領域などである。一方、ユーザ領域Yは、利用者Uがアクセス可能な公開領域である。
秘匿領域Xには、各種ソフトウェア、例えば、オペレーティングシステム(OS)、ブラウザ、メーラー、及び各種アプリケーション・プログラムなどが格納される。秘匿領域Xには、本実施形態に係る発信者情報表示システム1を実現するためのプログラムP1が格納される。
また、秘匿領域Xには、利用者データX1、一時ファイルX2、発信者情報データX3が格納される。
利用者データX1は、例えば、利用者ID及びパスワードなどの識別データを含む。利用者データX1には、他にも利用者Uを識別可能なデータが含まれていてもよい。
一時ファイルX2は、サーバ装置3より受信(ダウンロード)したファイルである。一時ファイルX2は、サーバ装置3により生成されたアドレスデータを含むが、ユーザ端末2上では単なるダウンロード済ファイルとして扱われる。一時ファイルX2は、暗号化されていてもよい。
一時ファイルX2は、例えばテキスト形式により記述されたデータである。一時ファイルX2は、例えばJSON形式、XML形式など特殊な形式により記述されてもよい。また、一時ファイルX2は、バイナリ形式のデータでもよい。一時ファイルX2のファイル形式は上述のものに限定されない。
発信者情報データX3は、発信者の表示名及び電話番号などを含むアドレスデータである。発信者情報データX3は秘匿領域Xに格納されているため、利用者Uは発信者情報データX3に対して登録、削除、閲覧、編集などのアクセスを行うことはできない。換言すれば、発信者情報データX3は、利用者Uに対し秘匿された電話帳である。発信者情報データX3には、例えば一時ファイルX2に含まれるアドレスデータに基づいた発信者の表示名及び電話番号などが登録される。
ユーザ領域Yには、内部電話帳Y1が含まれる。内部電話帳Y1は、ユーザ端末2が既存機能として有する標準的な電話帳であり、例えば発信者情報に関するデータを含む。内部電話帳Y1は利用者Uに公開されており、利用者Uは、内部電話帳Y1に対し入力装置2fなどを経由して、例えば電話番号及び表示名などを含む所望のアドレスデータを登録又は編集可能である。また、利用者Uは、表示装置2eにより内部電話帳Y1に含まれるアドレスデータを閲覧可能である。
プロセッサ2bは、各種ソフトウェア(プログラム)を実行し、ユーザ端末2全体を制御する。プロセッサ2bは、例えば、CPU(Central Processing Unit)、MPU(Microprocessor Unit)、DSP(Digital Signal Processing)などである。
プロセッサ2bは、例えば、OS21、アプリケーション22を含む。なお、アプリケーション22は、OS21にインストールされる。OS21は、換言すれば、複数のアプリケーションをインストール可能な基本ソフトウェアである。
プロセッサ2bは、例えば、第1の不揮発性メモリ2aに格納され、又は、第1の不揮発性メモリ2aから第1の揮発性メモリ2cに展開されたプログラムP1を実行することにより、OS21及びアプリケーション22として動作する。
OS21は、着信処理部210、権限付与部211を含む。
着信処理部210は、発信元電話機T0から着信があった場合に必要な処理を行う。例えば、着信処理部210は、着信中であることを示す画面を表示装置2eに表示する。また、着信処理部210は、内部電話帳Y1及び発信者情報データより発信者に関する情報を検索し、当該情報を表示するための発信者情報表示処理を実行する。発信者情報表示処理の詳細は、図10を用いて後述する。
権限付与部211は、アプリケーション22に対し、当該アプリケーション22がユーザ端末2上で動作するための所定の権限を付与又は削除(はく奪)する。所定の権限とは、例えば、電話着信に関連する動作を許可することを示す。
なお、権限付与部211は、利用者Uの操作により(すなわち、手動操作により)アプリケーション22に対して権限付与を実行してもよく、又は、自動的に権限付与を実行してもよい。利用者Uの手動操作により権限付与が実行される場合、利用者Uは、アプリケーション22の画面を経由して権限付与を実行可能でもよく、又は、OS21の設定画面を経由して権限付与の操作を実行可能でもよい。
アプリケーション22は、例えば、認証部220、取得部221、登録部222を含む。
認証部220は、利用者データX1を管理する。認証部220は、利用者Uに対し、利用者ID及びパスワードなどを含む利用者データX1を入力させ、秘匿領域Xに格納する。また、認証部220は、サーバ装置3に対し、利用者データX1を送信する。これにより、サーバ装置3は利用者Uを認証することができる。また、認証部220は、サーバ装置3より認証結果を取得する。なお、認証部220は、利用者データX1を暗号化してサーバ装置3に送信してもよい。
取得部221は、利用者Uを認証済のサーバ装置3に対し、アドレスデータのダウンロード要求を送信する。取得部221は、サーバ装置3よりアドレスデータを受信する。
登録部222は、権限付与部211によりアプリケーション22に対して上述の所定の権限が付与されている場合に、一時ファイルX2に含まれるアドレスデータを解析し、発信者情報データX3に登録する。登録部222は、当該アドレスデータのうち、少なくとも発信元を示す表示名と、発信元の電話番号とを組み合わせたデータ(レコード)を発信者情報データX3に登録する。表示名は、例えば氏名などの名称情報である。当該登録処理の際には、登録部222は、例えばOS21が提供する所定のAPI(Application Program Interface)を利用してもよい。また、登録部222は、一時ファイルX2に含まれるアドレスデータのうち、例えば会社名、部署名などの付随的なデータを発信者情報データX3に登録可能であってもよい。
なお、登録部222は、認証部220が利用者Uの認証に失敗した場合、アプリケーション22が削除(アンインストール)される場合、又は、利用者Uから発信者情報データX3の削除要求があった場合などに、発信者情報データX3を削除するとしてもよい。これにより、発信者情報データX3の秘匿性及びセキュリティを高めることができる。
なお、アプリケーション22及び/又はOS21は、通信装置2dを経由して、サーバ装置3との間で指令などを送受信するための処理を実行する。また、アプリケーション22及び/又はOS21は、表示装置2e、入力装置2fなどを利用したユーザインタフェースを生成し、当該ユーザインタフェースを制御するための処理を実行する。
メインメモリとしての第1の揮発性メモリ2cは、例えばRAM(Random Access Mem
ory)により構成され、ワークエリアなどとして使用される。ワークエリアは、プロセッサ2bが各種ソフトウェアを実行する時に使用される。
通信装置2dは、ネットワークNを経由したサーバ装置3との通信を制御する。通信装置2dは、例えば無線LANなどの無線通信機能、又は、Bluetooth(登録商標)などの近距離無線通信機能を備えてもよい。
表示装置2eは、プロセッサ2bが実行するOS21、アプリケーション22、及び、各種アプリケーションプログラムのユーザインタフェースなどを表示する。
入力装置2fは、例えば、スクリーンキーボード又はタッチセンサなどを含む。また、入力装置2fは、キーボード又はマウスなどを含んでいてもよい。
通話装置2gは、ユーザ端末2により通話するための装置であり、図示せぬマイクロホン及びスピーカなどを含む。
図3は、本実施形態に係るサーバ装置3の一例を示すブロック図である。
サーバ装置3は、第2の不揮発性メモリ3a、プロセッサ3b、第2の揮発性メモリ3c、及び通信装置3dなどを備える。これらの装置は、バスにより相互に接続されている。
第2の不揮発性メモリ3aは、第1の不揮発性メモリ2aと同様に、例えばハードディスク、SSD、フラッシュメモリなどにより構成され、各種ソフトウェア、データなどを格納する。各種ソフトウェアは、OS、データ管理プログラム、及び各種アプリケーションプログラムなどを含む。第2の不揮発性メモリ3aは、例えば、プログラムP2、利用者データD1、アドレスデータD2などを格納する。
利用者データD1には、例えば、サーバ装置3を利用する利用者Uに関する情報などが含まれる。利用者データD1には、利用者Uの利用者ID及びパスワードなどが含まれる。また、利用者データD1には、利用者Uごとにランク情報Rを関連付ける。ランク情報Rは、例えば組織における職位などの属性情報である。より具体的には、ランク情報Rは、例えばランクを示す数字により、「1:取締役」「2:本部長」「3:部長」「4:課長」「5:一般社員」「6:派遣社員」のように表される。本実施形態においては、ランクを示す数字が小さいほど職位は高くなるとする。
アドレスデータD2は、利用者Uが閲覧可能な種々のアドレス帳を含む。例えば、アドレスデータD2は、組織内アドレス帳AD1、個人アドレス帳AD2、共有アドレス帳AD3を含む。
組織内アドレス帳AD1は、例えば組織のランク(例えば、上述のランク情報R)ごとに分類されたアドレス帳である。例えば、利用者Uは、自身のランク情報Rが示す職位の一つ上の職位のアドレスまで閲覧可能である。より具体的には、例えば利用者Uの職位が「4:課長」である場合には、「3」以上のランク情報に対応するアドレス帳(すなわち、「3:部長」以下の職位のアドレス帳)を閲覧可能であり、「1:取締役」「2:本部長」のアドレス帳は閲覧不可となる。組織内アドレス帳AD1の詳細については、図5で後述する。
個人アドレス帳AD2は、利用者U自身が利用可能であり、他の利用者は閲覧できないアドレス帳である。個人アドレス帳AD2の詳細については、図6で後述する。
共有アドレス帳AD3は、例えば、特定の利用者U又は複数の特定の利用者Uのみで構成されたグループなどで共有されたアドレス帳である。共有アドレス帳AD3は、当該グループ単位又は個人単位で権限が与えられた利用者のみ閲覧可能である。共有アドレス帳AD3の詳細については、図7で後述する。
なお、アドレスデータD2は、組織内アドレス帳AD1、個人アドレス帳AD2、共有アドレス帳AD3のうち少なくとも1つ以上のアドレス帳を含んでいればよい。
プロセッサ3bは、各種ソフトウェア(プログラム)を実行し、サーバ装置3全体を制御する。プロセッサ3bは、例えば、CPU、MPU、DSPなどである。
プロセッサ3bは、例えば、第2の不揮発性メモリ3aに格納され、又は、第2の不揮発性メモリ3aから第2の揮発性メモリ3cに展開されたプログラムP2を実行することにより、例えば、利用者識別部31、アドレスデータ管理部32、アドレス一覧データ生成部33として機能する。
利用者識別部31は、例えば、ユーザ端末2より受信した利用者データX1と、第2の不揮発性メモリ3aから読みだした利用者データD1とを照合することにより、利用者Uの認証を行う。利用者識別部31は、認証成功した場合に、ユーザ端末2からサーバ装置3へのアクセスを許可し、認証失敗した場合に、当該アクセスを不許可とする。
アドレスデータ管理部32は、アドレスデータD2に含まれる各アドレス帳を管理する。アドレスデータ管理部32は、例えばユーザ端末2より各アドレス帳に対するアドレスの登録、削除、閲覧、編集、取得などの要求を受信し、当該要求に応じたアドレスデータの送受信処理、並びに、アドレスの登録及び削除処理などを実行する。
アドレス一覧データ生成部33は、ユーザ端末2よりアドレスデータのダウンロード要求を受信した場合に、認証済の利用者Uのランク情報Rなどに基づいてアドレスデータD2に含まれる各アドレス帳を併合し、アドレス一覧データを生成する。アドレス一覧データは、例えば1つのファイルであることが好ましい。アドレス一覧データは、ユーザ端末2へ送信され、一時ファイルX2としてユーザ端末2の第1の不揮発性メモリ2aに格納される。なお、アドレス一覧データには、各アドレス帳が含むデータ(レコード)のうち、少なくとも電話番号及び表示名が含まれることが好ましい。アドレス帳の併合処理の詳細は、図9を用いて後述する。
第2の揮発性メモリ3cは、第1の揮発性メモリ2cと同様に、プロセッサ3bのワークエリアなどとして使用される。
通信装置3dは、通信装置2dと同様に、ネットワークNを経由したユーザ端末2との通信を制御する。
その他、サーバ装置3は、表示装置及び入力装置などを備えてもよい。
図4は、本実施形態に係るユーザ端末2のアドレスデータ取得処理の一例を示すフローチャートである。なお、図4の例において、ユーザ端末2の権限付与部211は、あらかじめアプリケーション22に対して電話着信時の動作を許可する旨の権限(以下、所定の権限とする)を付与済であるとする。
ステップS101において、ユーザ端末2の認証部220は、利用者Uの操作により手動で、又は、所定の間隔ごとに自動で利用者データX1を送信する。所定の間隔は、例えば24時間などである。
ステップS102において、サーバ装置3は、利用者データX1を受信し、利用者の認証処理を行う。より具体的には、利用者識別部31は、第2の不揮発性メモリ3aにあらかじめ格納されている利用者データD1を読み出し、受信した利用者データX1に含まれる利用者ID及びパスワードと、利用者データD1に記憶されている利用者ID及びパスワードとを照合することにより、利用者Uを認証する。
なお、利用者データX1は、あらかじめユーザ端末2に格納されていなくてもよい。この場合、利用者識別部31は、ユーザ端末2からネットワークNを経由してサーバ装置3にアクセスされた場合に、直接利用者Uに対し、利用者ID及びパスワードの入力などを促すことにより利用者データX1を取得するとしてもよい。
ステップS103において、ユーザ端末2の取得部221は、サーバ装置3に対し、アドレスデータのダウンロード要求を送信する。当該ダウンロード要求の送信は、利用者Uの操作により手動で行われてもよく、又は、所定の間隔ごとに自動で行われてもよい。
ステップS104において、サーバ装置3は、当該ダウンロード要求を受信する。サーバ装置3のアドレス一覧データ生成部33は、第2の不揮発性メモリ3aより、利用者Uに対応するランク情報R及び利用者Uが閲覧可能なアドレスデータD2を読み出し、アドレス一覧データを生成する。
ステップS105において、アドレスデータ管理部32は、ステップS104で生成されたアドレス一覧データを、ユーザ端末2へ送信する。この際、アドレスデータ管理部32は、当該アドレス一覧データを暗号化してもよい。
ステップS106において、ユーザ端末2の取得部221は、アドレス一覧データを受信し、一時ファイルX2として第1の不揮発性メモリ2aの秘匿領域Xに格納する。取得部221は、受信した一時ファイルX2を暗号化してもよい。なお、一時ファイルX2は、ステップS105においてサーバ装置3で生成された後に、サーバ装置3側で暗号化されてもよい。
また、一時ファイルX2は、常に最新状態に保たれることが好ましい。このため、取得部221は、以前にダウンロードした古い一時ファイルX2を、最新の一時ファイルX2で置き換える。
ステップS107において、ユーザ端末2の登録部222は、アプリケーション22に対して所定の権限が付与済であるか否かを確認する。当該所定の権限が付与済でない場合は、処理を終了する。当該所定の権限が付与済である場合は、処理はステップS108へ進む。
ステップS108において、登録部222は、一時ファイルX2が暗号化されているか否かを確認する。一時ファイルX2が暗号化されている場合、登録部222は、ステップS109において、当該暗号に対する復号処理を行う。一方、一時ファイルX2が暗号化されていない場合は、処理はステップS110へ進む。
ステップS110において、登録部222は、一時ファイルX2に含まれるアドレスデータを、発信者情報データX3へ登録する。なお、登録部222は、当該アドレスデータ内に、例えば電話番号が重複するアドレスデータが存在する場合には、例えば後述する優先度(ソート順情報)がより高いアドレスデータのみを選択して登録する。すなわち、発信者情報データX3においては、1つの電話番号に対して1つの表示名が関連付けられる。これにより、電話番号をキーとして発信者情報X3が検索された場合に、当該電話番号に対して表示する表示名を一意に特定できる。
なお、ステップS107において、当該所定の権限が付与済でなく処理を終了した場合でも、後に所定の権限が付与された場合は、取得済の一時ファイルX2を用いて、ステップS108よりアドレスデータ取得処理を再開可能である。
また、ステップS102の利用者Uの認証は、ステップS103においてユーザ端末2からアドレスデータのダウンロード要求を受信した際に行われるとしてもよい。
図5は、本実施形態に係る組織内アドレス帳AD1の一例を示す図である。図5においては、例えば6つの組織内アドレスデータL11〜L16のデータ(レコード)が入力されているとする。また、組織内アドレス帳AD1は、職位別にかつソート順情報iAの高い順にソート済であるとして説明するが、他のルールによりソートされていてもよい。
組織内アドレス帳AD1においては、例えば、個人情報として組織内における職位i11、部署名i12、表示名(社員名)i13、電話番号i14などが格納される。これらの個人情報は、ソート順情報iA、表示フラグiBなどの管理情報と関連付けられる。
職位i11は、上述のように、サーバ装置3に格納される利用者データD1のランク情報Rと対応する。
ソート順情報iAは、アドレスデータD2内での表示の優先度を示す。アドレス一覧データ生成部33は、アドレスデータD2に含まれる複数のアドレス帳を併合する際に、このソート順情報iAをキーとしてアドレスデータを整列する。本実施形態においては、ソート順情報iAの値が高い順にソートされるとする。
表示フラグiBは、個々の利用者に対して当該アドレスデータを表示するか否かを示すフラグ情報である。表示フラグiBは、利用者Uごとに設定される。例えば、アドレスデータの表示フラグiBがオフ(例えば「0」)に設定されている場合、当該アドレスデータは、利用者Uに対して開示されない。すなわち、利用者Uのランク情報Rに基づき閲覧可能なアドレスデータの表示フラグiBはオン(例えば「1」)に設定され、閲覧不可のアドレスデータの表示フラグiBはオフに設定される。換言すれば、表示フラグiBは、利用者Uの閲覧権限を示す情報である。
なお、組織内アドレス帳AD1に含まれる個人情報のうち、職位i11、表示名i13及び電話番号i14は必須項目として入力済であることが好ましい。また、図5においては、任意項目として部署名i12を例示したが、当該個人情報には他の任意項目を入力可能であってもよい。
図6は、本実施形態に係る個人アドレス帳AD2の一例を示す図である。図6においては、例えば4つの個人アドレスデータL21〜L24のデータ(レコード)が入力されているとする。
個人アドレス帳AD2においては、例えば個人情報として、部署名i21、表示名(社員名)i22、電話番号i23などが格納され、これらの個人情報は、ソート順情報iA、表示フラグiBなどの管理情報と関連付けられる。これらの個人情報は、組織内アドレス帳AD1における部署名i12、表示名(社員名)i13、電話番号i14と同様である。
なお、個人アドレス帳AD2は、利用者Uごとに作成されるため、表示フラグiBは通常オンとなる。しかしながら、例えば利用者Uの意思により秘匿したい場合には、利用者Uによりオフに設定可能である。
また、図6の個人アドレス帳AD2においても、図5の組織内アドレス帳AD1と同様に、部署名i12以外の他の任意項目を入力可能であってもよい。
図7は、本実施形態に係る共有アドレス帳AD3の一例を示す図である。図7においては、例えば4つの共有アドレスデータL31〜L34のデータ(レコード)が入力されているとする。
共有アドレス帳AD3においては、例えば個人情報として、表示名(グループ名)i31、電話番号i32などが格納され、これらの個人情報は、ソート順情報iA、表示フラグiBなどの管理情報と関連付けられる。これらの個人情報は、組織内アドレス帳AD1における表示名(社員名)i13、電話番号i14と同様である。
また、利用者Uに閲覧権限が付与されたアドレスデータの表示フラグiBはオンに設定され、閲覧権限のないアドレスデータの表示フラグiBはオフに設定される。
なお、図7の個人アドレス帳AD2においても、部署名、職位又はその他の任意項目を入力可能であってもよい。
図8は、本実施形態に係るアドレス帳の併合処理の一例を示すフローチャートである。図8に示す処理は、図4におけるステップS104の処理に相当する。
ステップS301において、サーバ装置3のアドレス一覧データ生成部33は、第2の不揮発性メモリ3aに格納されているアドレスデータD2のうち、表示フラグiBがオンであるアドレスデータを選択(抽出)する。
ステップS302において、アドレス一覧データ生成部33は、ステップS301において選択したアドレスデータを併合し、さらに各アドレスデータのソート順情報iAに基づきソートすることにより、アドレス一覧データを生成する。
また、当該ソート処理においては、例えば複数のアドレス帳間又は同一のアドレス帳内でソート順情報iA、表示名又は電話番号が重複する場合などに備え、以下のステップS303〜S306の処理が実行される。
アドレス一覧データ生成部33は、同一のソート順情報iAを持つアドレスデータが存在するか否かを確認する(ステップS303)。同一のソート順情報iAを持つアドレスデータがない場合は、アドレス一覧データ生成部33は、何も処理を行わない。一方、同一のソート順情報iAを持つアドレスデータが存在する場合には、アドレス一覧データ生成部33は、各アドレス帳間で定められた優先順位に基づいて当該アドレスデータをソートする(ステップS304)。またこの際、アドレス一覧データ生成部33は、当該アドレスデータ間でアドレス帳の優先順位が同一であるか否かを確認する(ステップS305)。アドレス帳の優先順位が同一である場合は、その他の優先順に基づき当該アドレスデータをソートする(ステップS306)。その他の優先順とは、例えば、表示名の読み方順(カナ順)、電話番号順などである。
なお、各アドレス帳の優先順位は、あらかじめ定められ、例えば不揮発性メモリ3aなどに格納されていてもよい。
上述のステップS303〜S306に示す処理により、複数のアドレス帳から選択された複数のアドレスデータは併合され、かつあらかじめ設定されたソート順情報iAにより一意にソートされる。また、図4のステップS110の処理によれば、ソート順情報iAが高いアドレスデータが優先的に発信者情報データX3へ登録される。すなわち、例えば利用者U又は各アドレス帳の管理者は、アドレスデータD2内に電話番号が重複するアドレスデータを複数登録した場合でも、ソート順情報iAを任意に設定することにより、所望のアドレスデータを発信者情報データX3へ登録させることができる。
図9は、本実施形態に係るアドレス一覧データの一例を示す図である。より具体的には、図9は、利用者Uが職位「5:一般社員」である場合に、サーバ装置3のアドレス一覧データ生成部33が、図5〜図7に示す組織内アドレス帳AD1、個人アドレス帳AD2、共有アドレス帳AD3に対して図8に示すアドレス帳の併合処理を実行した場合に生成されるアドレス一覧データを示す。
アドレス一覧データは、少なくとも氏名i1、電話番号i2を必須項目として含む。なお、アドレス一覧データには、各アドレス帳に含まれる個人情報のうち、これら以外の情報が含まれていてもよい。
利用者Uのランク情報Rは上述のように「5:一般社員」であるため、利用者Uは組織内アドレス帳AD1のうち「4:課長」以下の職位のアドレスデータを閲覧可能である。すなわち、利用者Uに対応する表示フラグiBは、図5に示すように「3:部長」以上の職位でオフ、及び、「4:課長」以下の職位でオンとなる。
アドレス一覧データ生成部33は、表示フラグiBがオンである組織内アドレスデータL14〜16、個人アドレスデータL21〜L24、共有アドレスデータL31,L32,L34を選択(抽出)する(ステップS301参照)。
そして、アドレス一覧データ生成部33は、選択された各アドレスデータをソート順情報iA順に並び替えることにより、図9に示すアドレス一覧データを生成する(ステップS302参照)。
ここで、組織内アドレスデータL14、共有アドレスデータL31及び共有アドレスデータL34の3者のソート順情報iAは同一であるため、これらは図8のステップS303〜S306に示す処理に基づいてソートされる。
例えば、各アドレス帳の優先順位が例えば組織内アドレス帳AD1、個人アドレス帳AD2、共有アドレス帳AD3の順であるとすると、組織内アドレスデータL14が最も早い並び順となる(ステップS304)。共有アドレスデータL31及び共有アドレスデータL34のアドレス帳の優先順位は同一であるため、両者の表示名のカナ順に従い、両者の並び順は共有アドレスデータL31、共有アドレスデータL34となる(ステップS306)。したがって、当該3者の並び順は、組織内アドレスデータL14、共有アドレスデータL31、共有アドレスデータL34の順となる。
ユーザ端末2の登録部222は、例えば、これらの同一電話番号を持つアドレスデータのうち、アドレス一覧データ内で最も上方に並ぶ個人アドレスデータL22を発信者情報データX3へ登録し、組織内アドレスデータL14及び共有アドレスデータL31の登録をスキップする。
図10は、本実施形態に係る発信者情報表示処理の一例を示すフローチャートである。より具体的には、図10は、ユーザ端末2のOS21が図9までの処理で登録された発信者情報データX3を用いて、発信者データを表示するための処理を示す。
ステップS501において、発信元電話機T0は、ユーザ端末2に対して電話発信を行う。当該電話発信は、例えば、公衆回線を利用した発信に限らず、例えば、FMCなどを用いた内線発信、VoIP(Voice over Internet Protocol)などのインターネット回線を利用した電話発信などであってもよい。
ステップS502において、ユーザ端末2のOS21は、ステップS501の電話発信に基づいてユーザ端末2に着信された電話の電話番号をキーとして、内部電話帳Y1を検索する。
ステップS503において、OS21は、内部電話帳Y1内で当該電話番号と一致する電話番号を含むアドレスデータが見つかったか否かを確認する。アドレスデータが見つかった場合は、OS21は、ステップS506において、当該アドレスデータに含まれる表示名を発信者情報として表示する。一方、アドレスデータが見つからない場合は、OS21は、ステップS504において、発信者情報データX3を検索する。
ステップS505において、OS21は、発信者情報データX3内で当該電話番号と一致する電話番号を含むアドレスデータが見つかったか否かを確認する。アドレスデータが見つかった場合は、処理はステップS506に進み、当該アドレスデータに含まれる表示名が発信者情報として表示される。一方、アドレスデータが見つからない場合は、発信者情報は表示されない。
なお、本実施形態においては、電話の着信制御はOS21が行うとして説明したが、アプリケーション22が行ってもよい。
以上説明した本実施形態においては、ユーザ端末2のアプリケーション22は、サーバ装置3に対しアドレスデータの取得要求を送信し、受信したアドレス一覧データを一時ファイルX2として第1の不揮発性メモリ2aのうち利用者Uがアクセス不可である秘匿領域Xに格納する。また、アプリケーション22は、OS21より所定の権限が付与されている場合に、当該一時ファイルX2より同じく秘匿領域Xに存在する発信者情報データX3へアドレスデータを登録する。
これにより、利用者Uがユーザ端末2を紛失した場合でも、他人に一時ファイルX2及び当該発信者情報データX3の存在を知られないため、個人情報の漏洩リスクを低減することができる。さらに、一時ファイルX2は暗号化されることにより、より一層個人情報の漏洩リスクを低減可能である。
また、OS21による権限の付与の有無に関わらず、一時ファイルX2の取得を行う。すなわち、ユーザ端末2は、アプリケーション22に対し当該権限が付与されていない場合でも最新のアドレス一覧データをユーザ端末2内に保持しておくことができ、さらに権限が付与された場合には、最新のアドレス一覧データを直ちに発信者情報データX3へ登録することができる。これにより、利用者Uの利便性が向上する。
さらに、取得部221は、一時ファイルX2に対し暗号化処理を実行可能である。この場合、登録部222は一時ファイルX2を発信者情報データX3へ登録する際に、暗号化された一時ファイルX2の復号処理を実行する。これにより、アプリケーション22に対し当該権限が付与されていない場合でも、安全に一時ファイルX2を保持しておくことができる。
また、ユーザ端末2の電話着信時には、OS21は着信電話番号をキーとして、ユーザ領域Yに格納される内部電話帳Y1及び秘匿領域Xに格納される発信者情報データX3を探索する。すなわち、OS21は、外部装置との通信を行うことなく、ユーザ端末2の内部のみの検索により発信者データを取得可能である。これにより、当該検索処理のリアルタイム性に優れるため、すなわち電話着信時に迅速に発信者情報をユーザ端末2に表示可能であるため、利用者の利便性が向上する。
さらに、OS21は、着信時に内部電話帳Y1を先に検索する。これにより、内部電話帳Y1と発信者情報データX3とに重複するアドレスデータが存在する場合でも、利用者Uが通常用いる内部電話帳Y1に基づく発信者情報が優先的に表示されるため、利用者の利便性は損なわれない。
また、発信者情報データX3は、内部電話帳Y1に比べて容量が大きく、より多くのアドレスデータを記憶可能であってもよい。この場合、発信者情報表示システム1においては、発信者情報データX3に多くのアドレスデータが記憶されることにより、内部電話帳Y1のみでは実現できない高度なサービスを利用者Uに対し提供可能となる。
本実施形態において、サーバ装置3は、利用者Uごとに、利用者Uの閲覧権限に応じてアドレスデータD2から選択されたアドレスデータを、ソート順情報iAに基づいてソートする。利用者U又はアドレス帳の管理者、はソート順情報iAを任意に設定することにより、アドレスデータD2内に電話番号が重複するアドレスデータが複数登録されている場合でも、優先的に用いるアドレスデータを指定可能となる。これにより、利用者Uの利便性が向上する。
本実施形態において、ユーザ端末2のOS21又はアプリケーション22は、電話の履歴表示機能を備えていてもよい。この場合、図10で説明した発信者情報表示処理と同様に、OS21又はアプリケーション22は、内部電話帳Y1に該当するアドレスデータが存在しない場合に、発信者情報データX3を参照することにより発信者に関するデータを取得してもよい。
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削減してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。