以下、図面を参照して実施形態を説明する。図面において、同一の機能及び構成要素については、同一符号を付して説明を省略するか、または、簡単に説明を行う。
(第1の実施形態)
第1の実施形態では、ユーザがユーザ端末を操作して指定した電話番号に対して、ユーザの電話機により発信を行うための電話発信システムを説明する。
図1は、第1の実施形態に係る電話発信システム1の一例を示すブロック図である。
電話発信システム1は、サーバ2と、ユーザUの電話機3と、プッシュ通知サーバ4と、ユーザ端末5とを備える。サーバ2と、ユーザUの電話機3と、プッシュ通知サーバ4と、ユーザ端末5とは、例えばインターネットなどのようなネットワーク6経由で他の装置と通信可能である。以下においては、説明を簡略化するため、ネットワーク6を省略して説明する場合がある。
電話発信システム1において、サーバ2は、電話機3、プッシュ通知サーバ4、ユーザ端末5と通信可能である。電話機3は、サーバ2およびプッシュ通知サーバ4と通信可能である。プッシュ通知サーバ4は、サーバ2および電話機3と通信可能である。ユーザ端末5は、サーバ2と通信可能である。
サーバ2、プッシュ通知サーバ4、ユーザ端末5は、例えばコンピュータまたは情報処理装置である。電話機3は、例えば、コンピュータまたは情報処理装置としての構成および機能と、電話機としての構成および機能とを備えているスマートフォンである。
電話発信システム1においては、電話機3によって実行されるアプリケーション・ソフトウェア7が、プッシュ通知用の識別情報(以下、デバイストークンという)8によって識別される。
デバイストークン8は、電話機3で使用されるアプリケーション・ソフトウェア7および電話機3を識別するための固有のIDを含む。第1の実施形態では、デバイストークン8を用いて電話機3のアプリケーション・ソフトウェア7を識別する場合を例として説明するが、電話機3のアプリケーション・ソフトウェア7を識別する情報として、例えば電話機3のシリアルナンバーおよびアプリケーション・ソフトウェア7のシリアルナンバーなどのような他の情報が利用されてもよい。
まず、電話発信システム1における電話発信のために実行される設定処理を説明する。
電話発信システム1において、サーバ2は、サーバ・ソフトウェア9を実行する。サーバ・ソフトウェア9は、サーバ2で実行されることにより、アプリケーション・ソフトウェア7のダウンロード機能、管理データ10の管理機能、ユーザ認証機能、OS(Operating System)の種類に対応するプッシュ通知サーバを選択する機能、電話発信サービス提供機能などを実現する。
電話機3は、電話機能を備えている情報処理装置であり、OS11を備えている。このOS11は、電話機3の各種のハードウェアおよびソフトウェアを制御する。なお、サーバ2、プッシュ通知サーバ4、ユーザ端末5もOSを備えているが、第1の実施形態では説明を簡略化するために省略している。
電話機3は、図示しないアプリケーション配信サーバへアプリケーション・ソフトウェア7のダウンロードリクエストを送信する。
アプリケーション配信サーバは、電話機3からダウンロードリクエストを受信すると、アプリケーション・ソフトウェア7を電話機3へ送信する。
電話機3は、アプリケーション配信サーバからダウンロードされたアプリケーション・ソフトウェア7を記憶する。
第1の実施形態では、アプリケーション・ソフトウェア7がアプリケーション配信サーバから電話機3へダウンロードされる場合を例として説明するが、アプリケーション・ソフトウェア7は他の方法により電話機3へインストールされてもよい。例えば、サーバ2に記憶されているアプリケーション・ソフトウェア7が電話機3へインストールされてもよい。
電話機3は、プッシュ通知サーバ4に対応するライブラリ12を呼び出し、プッシュ通知サーバ4によって発行されるデバイストークン8を受信し、記憶する。電話機3によるプッシュ通知サーバ4のライブラリ12の呼び出しは、電話機3からプッシュ通知サーバ4へのデバイストークン8の発行リクエストの送信に相当する。
電話機3は、デバイストークン8とOS種類情報13とユーザID(ユーザ識別情報)14とパスワード15とをサーバ2へ送信する。OS種類情報13は、電話機3で利用されるOS11の種類を示す情報である。第1の実施形態では、ユーザ識別情報としてユーザID14とパスワード15とが使用されているが、他の情報によりユーザを識別してもよく、他の情報によりサーバ2へのアクセス権限を管理してもよい。
サーバ2は、電話機3から受信したデバイストークン8とOS種類情報13とユーザID14およびパスワードなどのユーザ認証情報とを互いに関連付けた状態で、管理データ10に登録する。
管理データ10は、例えば、テーブル形式のデータでもよく、リスト形式のデータでもよく、そのデータ構造は、ユーザID14およびパスワード15から、当該ユーザID14およびパスワード15に関連付けられているデバイストークン8およびOS種類情報13が取得可能であればよい。
次に、電話発信システム1における電話発信処理を説明する。
ユーザ端末5は、ユーザID14とパスワード15とを用いて、サーバ2へアクセスを行う。
サーバ2は、ユーザ端末5から受信したユーザID14およびパスワード15と管理データ10とに基づいてユーザ認証を行い、受信したユーザID14およびパスワード15と管理データ10に登録されているユーザID14およびパスワード15とが一致した場合にアクセスを許可する(ユーザの特定)。一方、サーバ2は、受信したユーザID14およびパスワード15と管理データ10に登録されているユーザID14およびパスワード15とが一致しない場合にアクセスを拒否する。
サーバ2は、例えばサーバ・ソフトウェア9によって提供される電話番号16を含む画面データ17を、ユーザ端末5へ送信する。
ユーザ端末5は、電話番号16を含む画面データ17をサーバ2から受信し、電話番号16を含む画面データ17を例えばブラウザ18により表示する。これにより、ユーザUは、電話番号16を含む画面を閲覧可能となる。なお、ユーザ端末5は、画面データ17を、ブラウザ18を用いて表示することに代えて、電話番号16を管理するアプリケーション・ソフトウェアなどにより表示してもよい。この電話番号16を含む画面データ17の表示例は、図2を用いて後で説明する。
ユーザ端末5は、ユーザUから、ユーザUが発信したい電話番号16の選択(例えば電話番号16に対するクリック)を受け付ける。
ユーザ端末5は、電話番号16が選択されたことを示す選択情報(例えば電話番号16を含む指令)27をサーバ2へ送信する。なお、ユーザ端末5が選択情報27をサーバ2へ送信する時点においてサーバ2がユーザUを未認証の場合、ユーザ端末5は、選択情報27とともに、ユーザID14およびパスワード15またはそれに相当するユーザ認証情報をサーバ2へ送信してもよい。
サーバ2は、ユーザ端末5から選択情報27を受信すると、管理データ10から、認証されたユーザID14に対応するデバイストークン8とOS種類情報13とを取得する。
サーバ2は、取得したOS種類情報13に対応するプッシュ通知サーバ4を選択する。例えば、サーバ2は、OSの種類とプッシュ通知サーバとを関連付けた情報を備えており、この情報を用いて取得したOS種類情報13に関連付けられているプッシュ通知サーバ4を選択してもよい。
サーバ2は、選択情報27によって指定されている電話番号16と取得したデバイストークン8とを含むプッシュ通知リクエスト29を、選択されたプッシュ通知サーバ4へ送信する。
プッシュ通知サーバ4は、サーバ2からプッシュ通知リクエスト29を受信すると、プッシュ通知リクエスト29に含まれているデバイストークン8と電話番号16とに基づいて、デバイストークン8と電話番号16とを含むプッシュ通知30を電話機3へ送信する。
プッシュ通知サーバ4は、プッシュ通知30を電話機3へ送信すると、完了情報31をサーバ2へ送信する。
サーバ2は、プッシュ通知サーバ4から完了情報31を受信すると、プッシュ通知30の発信完了を表す画面データ28をユーザ端末5へ送信する。
ユーザ端末5は、サーバ2からプッシュ通知30の発信完了を表す画面データ28を受信すると、画面データ28をブラウザ18により表示する。これにより、ユーザUは、プッシュ通知の発信完了を表す画面を閲覧可能となる。このプッシュ通知の発信完了を表す画面データ28の表示例は、図2を用いて後で説明する。
電話機3は、プッシュ通知サーバ4から、プッシュ通知リクエスト29に基づいて前記プッシュ通知サーバ4によって送信されたプッシュ通知30を受信すると、電話番号16に関するプッシュ通知30を受信したことをユーザUに通知するための通知画面を表示する。通知画面の表示例は、図3を用いて後で説明する。
電話機3は、通知画面に対するユーザUの承諾操作(例えばタップまたはクリック)または拒否操作を受け付ける。電話機3は、拒否操作を受け付けた場合に、処理を終了する。
電話機3は、承諾操作を受け付けた場合に、プッシュ通知30に含まれているデバイストークン8に対応するアプリケーション・ソフトウェア7を起動する。
電話機3は、アプリケーション・ソフトウェア7による制御にしたがって、発信メニューを表示する。発信メニューは、ユーザUに発信方式の選択を促す選択領域の一例である。発信メニューは、例えば、電話機による発信、プレフィックス発信、SMS(Short Message Service)発信、ソフトウェアフォン発信、キャンセルのいずれかを選択するためのメニューである。発信メニューの表示例は、図3を用いて後で説明する。
電話機3は、ユーザUによる発信メニューに対する発信方式の選択操作を受け付ける。
電話機3は、プッシュ通知30に含まれている電話番号16に対して、ユーザUによって選択された発信方式による発信を行う。
例えば、電話機3による発信が選択された場合、電話機3は、プッシュ通知30に含まれている電話番号16への発信を行う。この電話機3による発信画面の表示例は、図3を用いて後で説明する。
例えば、プレフィックス発信が選択された場合、電話機3は、プッシュ通知30に含まれている電話番号16に対して任意の番号を先頭に付与した発信先電話番号への発信を行う。
例えば、ソフトウェアフォン発信が選択された場合、電話機3は、ソフトウェアフォンを起動し、プッシュ通知30に含まれている電話番号16に対してソフトウェアフォンによる発信を行う。
例えば、キャンセルが指定された場合、電話機3は、プッシュ通知30に基づく発信を中止する。
第1の実施形態に係る電話発信システム1において、例えばスマートフォンなどのような電話機3は、サーバ2にログインする際に、ユーザUのユーザID14およびパスワード15などのユーザ認証情報に加えて、電話機3およびアプリケーション・ソフトウェア7を特定可能なデバイストークン8とOS種類情報13とを、サーバ2へ送信する。
サーバ2は、電話機3から受信したユーザID14およびパスワード15などのユーザ認証情報に基づいてユーザUの認証に成功した場合に、デバイストークン8およびOS種類情報13と、ユーザUを特定するためのユーザID14およびパスワード15とを関連付けた情報を管理データ10に登録する。
ユーザ端末5は、サーバ2にログインする際に、電話機3からサーバ2に送信したユーザ認証情報と同じユーザ認証情報を使用する。
このため、サーバ2は、電話機3とユーザ端末5とが同一のユーザUに使用されていることを認識可能である。さらに、サーバ2は、電話機3のOS種類情報13を所有しており、電話機3のOS11の種類に適したプッシュ通知サーバ4へプッシュ通知リクエスト29を送信することができる。
図2は、第1の実施形態に係るユーザ端末5に表示される画面19,20の例を示す図である。
ユーザ端末5は、ブラウザ18を用いて画面データ17を表示する。これにより、ユーザUは、電話番号16を含む画面19を閲覧可能となる。画面19は、氏名または名称、所属、住所、電話番号16(例えばaaa-aaaa-aaaa)、ユーザUの画像などを含む。この画面19は、ブラウザ18を用いることなく、例えばユーザ端末5で実行される他のソフトウェアにより表示されてもよい。
ユーザUが表示されている電話番号16を選択し、「電話機から発信」と表記されている発信ボタン19aを押下すると、ユーザ端末5は、電話機3によって発信したい電話番号16を示す選択情報27を、サーバ2へ送信する。なお、発信ボタン19aの表記は他の文言でもよい。
選択情報27の送信後、ユーザ端末5は、サーバ2からプッシュ通知30の発信完了を表す画面データ28を受信すると、画面データ28をブラウザ18により表示する。これにより、ユーザUは、プッシュ通知30の発信完了を表す画面20を閲覧可能となる。なお、画面20は省略することも可能である。
ユーザ端末5は、発信完了を確認する操作(例えばOKボタン20aの押下)をユーザUから受け付ける。
図3は、第1の実施形態に係る電話機3に表示される画面21,22,23の例を示す図である。
画面21は、電話機3がプッシュ通知サーバ4からプッシュ通知30を受信したことをユーザUに通知するためのメッセージ(通知情報)24を含む。通知情報は、例えばメッセージに代えてプッシュ通知30の受信を意味するマークなどでもよい。電話機3は、プッシュ通知30を受信すると、プッシュ通知30に含まれている電話番号16に基づいて「aaa-aaaa-aaaaに発信します。通知をタップして発信を完了してください」というメッセージ(電話番号16に対する発信を行うか否かをユーザUに問うメッセージ)24をポップアップする。ユーザUが表示されたメッセージ24をタップすると、電話機3の画面21は、発信メニュー25を含む画面22に遷移する。
画面22の発信メニュー25は、上述したように、電話番号16と、「電話機による発信」、「プレフィックス発信」、「SMS(Short Message Service)発信」、「ソフトウェアフォン発信」、「キャンセル」の項目を含む。「電話機による発信」は必須の表示項目であり、「プレフィックス発信」、「SMS(Short Message Service)発信」、「ソフトウェアフォン発信」は、電話機3に記憶されている設定データと電話番号16とのうちの少なくとも1つに応じて、表示される場合もあれば表示されない場合もある選択的な表示項目である。
電話機3は、いずれかの項目を選択する操作をユーザUから受け付ける。この図3の例では、発信メニュー25の「電話機による発信」が選択された場合を例示している。
発信メニュー25の「電話機による発信」が選択されると、電話機3は、電話番号16へ発信を行い、電話番号16と「発信中」のメッセージとを含む発信画面23を表示する。
図4は、第1の実施形態に係る電話発信システム1によって実行される設定処理の例を示すシーケンス図である。
電話機3は、アプリケーション配信サーバからダウンロードされたアプリケーション・ソフトウェア7を記憶しており、プッシュ通知サーバ4のライブラリ12を呼び出す(S401)。
プッシュ通知サーバ4は、プッシュ通知サーバ4のライブラリ12の呼び出しに応じて、デバイストークン8を電話機3へ送信する(S402)。
電話機3は、プッシュ通知サーバ4によって発行されたデバイストークン8を受信し、記憶し、デバイストークン8とOS種類情報13とユーザID14とパスワード15とをサーバ2へ送信する(S403)。
サーバ2は、電話機3から受信したデバイストークン8とOS種類情報13とユーザID14とパスワード15とを互いに関連付けて管理データ10に登録する(S404)。
図5は、第1の実施形態に係る電話発信システム1によって実行される発信処理の例を示すシーケンス図である。
ユーザ端末5は、ユーザID14とパスワード15とを用いて、サーバ2へアクセスを行う(S501)。
サーバ2は、ユーザ端末5から受信したユーザID14およびパスワード15と管理データ10とに基づいてユーザ認証を行う。この図5のシーケンス図では、ユーザUのアクセスが許可されたものとする。
サーバ2は、例えばサーバ・ソフトウェア9によって提供される電話番号16を含む画面データ17を、ユーザ端末5へ送信する(S502)。
ユーザ端末5は、電話番号16を含む画面データ17をサーバ2から受信し、電話番号16を含む画面データ17を例えばブラウザ18により表示する(S503)。
ユーザ端末5は、ユーザUから、ユーザUが発信したい電話番号16の選択を受け付ける(S504)。
ユーザ端末5は、電話番号16が選択されたことを示す選択情報27をサーバ2へ送信する(S505)。
サーバ2は、ユーザ端末5から選択情報27を受信すると、管理データ10に基づいて、認証されたユーザID14に対応するデバイストークン8とOS種類情報13とを取得し、取得したOS種類情報13に対応するプッシュ通知サーバ4を選択し、選択情報27に含まれている電話番号16と取得したデバイストークン8とを含むプッシュ通知リクエスト29を、選択したプッシュ通知サーバ4へ送信する(S506)。
プッシュ通知サーバ4は、サーバ2からプッシュ通知リクエスト29を受信すると、プッシュ通知リクエスト29に含まれているデバイストークン8と電話番号16とに基づいて、デバイストークン8と電話番号16とを含むプッシュ通知30を電話機3へ送信する。さらに、プッシュ通知サーバ4は、サーバ2へプッシュ通知の送信が完了したことを示す完了情報31を送信する(S507)。
電話機3は、プッシュ通知サーバ4からプッシュ通知30を受信すると、プッシュ通知30を受信したことをユーザUに通知するためのメッセージ24を含む画面21を表示する(S508)。
電話機3は、画面21に対するユーザUの承諾操作または拒否操作を受け付ける。この図5では、承認操作を受け付けたものとする(S509)。
電話機3は、承認操作を受け付けた場合に、プッシュ通知30に含まれているデバイストークン8に対応するアプリケーション・ソフトウェア7を起動する(S510)。
電話機3は、アプリケーション・ソフトウェア7による制御にしたがって、発信メニュー25を含む画面22を表示する(S511)。
電話機3は、ユーザUによる発信メニュー25に対する発信方式の選択操作を受け付ける(S512)。
電話機3は、プッシュ通知30に含まれている電話番号16に対して、ユーザUによって選択された発信方式による発信を行う(S513)。
また、S507の後、サーバ2は、プッシュ通知サーバ4から完了情報31を受信すると、プッシュ通知30の発信完了を表す画面データ28をユーザ端末5へ送信する(S514)。
ユーザ端末5は、サーバ2から受信した画面データ28をブラウザ18により表示する(S515)。
図6は、第1の実施形態に係る電話発信システム1の構成の具体例を示すブロック図である。
電話発信システム1において、サーバ2は、通信部2C、プロセッサ2P、記憶部2Mを備える。
通信部2Cは、他の装置からネットワーク6経由で、例えばデータ、情報、信号、リクエスト、コマンド、通知などを受信する。また、通信部2Cは、ネットワーク6経由で他の装置へ、例えばデータ、情報、信号、リクエスト、コマンド、通知などを送信する。
記憶部2Mは、管理データ10と、サーバ・ソフトウェア9と、サーバ・ソフトウェア9によって提供される画面データ17とを記憶する。記憶部2Mは、例えば揮発性メモリと不揮発性メモリとを含む。
プロセッサ2Pは、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)などである。プロセッサ2Pは、通信部2Cを使用してネットワーク6経由で他の装置と通信可能である。プロセッサ2Pは、記憶部2Mから各種データおよび各種ソフトウェアをリード可能であり、記憶部2Mへ各種データおよび各種ソフトウェアをライト可能である。
プロセッサ2Pは、記憶部2Mに記憶されているサーバ・ソフトウェア9を実行することにより、例えば、管理データ10に対するアクセス機能、画面データ17の提供機能などを実現する。
電話発信システム1において、電話機3は、電話デバイス3T、通信部3C、プロセッサ3P、記憶部3M、操作受付部3I、表示部3Dなどを備える。
電話デバイス3Tは、電話機3と他の電話機との間の通話を可能とするための装置を含む。具体的には、電話デバイス3Tは、他の電話機への発信を行い、または、他の電話機からの着信を受ける。電話デバイス3Tは、マイクロフォン、スピーカを含む。電話デバイス3Tは、プロセッサ3Pによって制御されてもよく、通信部3Cを用いて通話を実現してもよい。
通信部3Cは、他の装置からネットワーク6経由で、例えばデータ、情報、信号、リクエスト、コマンド、通知などを受信する。また、通信部3Cは、ネットワーク6経由で他の装置へ、例えばデータ、情報、信号、リクエスト、コマンド、通知などを送信する。
通信部3Cは、例えば、電話機3を、プロセッサ3Pによる制御にしたがって他の電話機と公衆交換電話網経由で通話可能としてもよい。
操作受付部3Iは、例えば、マウス、タッチパネル、タッチパッドなどのポインティングデバイス、または、キーボードなどである。
表示部3Dは、例えば、有機EL(Electro Luminescence)ディスプレイ、または、液晶ディスプレイなどである。表示部3Dは、例えば、プロセッサ3Pによる制御にしたがって各種のデータまたは情報を表示する。
記憶部3Mは、例えば、アプリケーション・ソフトウェア7、プッシュ通知サーバ4から受信されたデバイストークン8、電話機3で用いられるOS11、OS11の種類を示すOS種類情報13、ユーザUのユーザIDおよびパスワード15、プッシュ通知サーバ4から受信したプッシュ通知30に含まれている電話番号16などを記憶する。記憶部3Mは、例えば揮発性メモリと不揮発性メモリとを含む。
プロセッサ3Pは、例えば、CPU、MPU、GPUなどである。プロセッサ3Pは、通信部3Cを使用してネットワーク6経由で他の装置と通信可能である。プロセッサ3Pは、記憶部3Mから各種データおよび各種ソフトウェアをリード可能であり、記憶部3Mへ各種データおよび各種ソフトウェアをライト可能である。
プロセッサ3Pは、記憶部3Mに記憶されているOS11およびアプリケーション・ソフトウェア7を実行し、デバイストークン8、OS種類情報13、ユーザID14、パスワード15をネットワーク6経由でサーバ2へ送信する機能を実現する。
プロセッサ3Pは、OS11による制御にしたがって、プッシュ通知サーバ4からネットワーク6経由でプッシュ通知30を受信した場合に、メッセージ24を含む画面21を表示部3Dに表示させるための処理を実行する。
プロセッサ3Pは、OS11による制御にしたがって、画面21に対して操作受付部3IからユーザUの承認操作を受け付けた場合に、記憶部3Mに記憶されておりプッシュ通知30に含まれていたデバイストークン8に対応するアプリケーション・ソフトウェア7を起動する。
プロセッサ3Pは、アプリケーション・ソフトウェア7による制御にしたがって、発信メニュー25を含む画面22を表示部3Dに表示させるための処理を実行する。
プロセッサ3Pは、OS11およびアプリケーション・ソフトウェア7による制御にしたがって、操作受付部3Iから発信方式の選択操作を受け付けた場合に、電話デバイス3Tにより、プッシュ通知30に含まれていた電話番号16に対して、選択された発信方式による発信を行うための処理を実行する。
電話発信システム1において、プッシュ通知サーバ4は、通信部4C、プロセッサ4P、記憶部4Mを備える。
通信部4Cは、他の装置からネットワーク6経由で、例えばデータ、情報、信号、リクエスト、コマンド、通知などを受信する。また、通信部4Cは、ネットワーク6経由で他の装置へ、例えばデータ、情報、信号、リクエスト、コマンド、通知などを送信する。
記憶部4Mは、ライブラリ12を記憶する。記憶部4Mは、例えば揮発性メモリと不揮発性メモリとを含む。
プロセッサ4Pは、例えば、CPU、MPU、GPUなどである。プロセッサ4Pは、通信部4Cを使用してネットワーク6経由で他の装置と通信可能である。
プロセッサ4Pは、電話機3によるプッシュ通知サーバ4のライブラリ12の呼び出しに応じて、デバイストークン8を電話機3へ送信する処理を実行する。
プロセッサ4Pは、サーバ2からのプッシュ通知リクエスト29に応じてプッシュ通知30を生成し、プッシュ通知30を電話機3へ送信する処理を実行し、完了情報31をサーバ2へ送信する処理を実行する。
電話発信システム1において、ユーザ端末5は、通信部5C、プロセッサ5P、記憶部5M、操作受付部5I、表示部5Dなどを備える。
通信部5Cは、他の装置からネットワーク6経由で、例えばデータ、情報、信号、リクエスト、コマンド、通知などを受信する。また、通信部5Cは、ネットワーク6経由で他の装置へ、例えばデータ、情報、信号、リクエスト、コマンド、通知などを送信する。
操作受付部5Iは、例えば、マウス、タッチパネル、タッチパッドなどのポインティングデバイス、または、キーボードなどである。
表示部5Dは、例えば、有機ELディスプレイ、または、液晶ディスプレイである。表示部5Dは、例えば、プロセッサ5Pによる制御にしたがって各種のデータまたは情報を表示する。
記憶部5Mは、例えば、ユーザID14およびパスワード15、ブラウザ18、サーバから受信された画面データ17などを記憶する。記憶部5Mは、例えば揮発性メモリと不揮発性メモリとを含む。
プロセッサ5Pは、例えば、CPU、MPU、GPUなどである。プロセッサ3Pは、通信部5Cを使用してネットワーク6経由で他の装置と通信可能である。プロセッサ5Pは、記憶部5Mから各種データおよび各種ソフトウェアをリード可能であり、記憶部5Mへ各種データおよび各種ソフトウェアをライト可能である。
プロセッサ5Pは、記憶部3Mに記憶されているブラウザ18を実行し、ユーザID14およびパスワード15をサーバ2へ送信する処理、サーバ2から受信した画面データ17を表示部5Dに表示させる処理、操作受付部5Iにより電話番号16が選択されたことを示す選択情報27をサーバ2へ送信する処理、サーバ2から受信した画面データ28を表示部5Dに表示させる処理、を実行する。
以上説明した第1の実施形態に係る電話発信システム1の作用効果を説明する。
第1の実施形態に係る電話発信システム1において、ユーザUは、ユーザ端末5に表示されている電話番号16を指定し、発信ボタン19aを押下する操作を行う。すると、ユーザ端末5は、ユーザID(ユーザ識別情報)14、または、ユーザID14およびパスワード15に相当するユーザ認証情報をサーバ2へ送信し、サーバ2がユーザUを認証し、ユーザUの所有する電話機3を指定するデバイストークン8と電話番号16とを含むプッシュ通知リクエスト29をプッシュ通知サーバ4へ送信する。プッシュ通知サーバ4は、サーバ2から受信したプッシュ通知リクエスト29に基づいて、電話機3へデバイストークン8および電話番号16を含むプッシュ通知30を送信する。電話機3は、プッシュ通知30を受信すると、電話番号16に関するプッシュ通知30を受信したことをユーザUに知らせるためのメッセージ24を含む画面21を表示する。電話機3は、ユーザUから発信を行う旨の指定を受けると、アプリケーション・ソフトウェア7を起動し、発信方式を選択するためのメニュー25を含む画面22を表示する。電話機3は、発信方式の選択をユーザUから受け付けると、選択された発信方式により電話番号16に対する発信を行う。
第1の実施形態に係る電話発信システム1においては、PBXを備えておらず、かつ、ユーザ端末5がソフトウェアフォンを備えていない場合であっても、ユーザUは、ユーザ端末5に表示されている電話番号16に対する発信を希望する場合に、ユーザ端末5の画面19上の電話番号16を、自分の所有する電話機3に手動で入力する必要がない。
したがって、PBXを備えていないシステム環境、または、電話番号16を表示するユーザ端末5がソフトウェアフォンを備えていないシステム環境の場合であっても、正確かつ簡易に、電話機3を用いて所望の電話番号16に対する発信を行うことができる。
第1の実施形態に係る電話発信システム1において、サーバ2は、ユーザUの電話機3に備えられるOS11の種類を示すOS種類情報13を記憶している。このため、電話機3のOS11の種類に適切なプッシュ通知30の発行を、プッシュ通知サーバ4へリクエストすることができる。
第1の実施形態に係る電話発信システム1において、電話機3は、プッシュ通知30を受信すると、第1の段階で、プッシュ通知30の受信をユーザUに知らせるメッセージ24を表示し、第2の段階で、プッシュ通知30に対するユーザUの承諾操作に応じて発信方式を選択するためのメニュー25を表示する。このように、第1の実施形態では、ユーザ端末5において指定された電話番号16に対して電話機3により発信を行う際に、電話機3に対してユーザUが少なくとも2回の操作を行うことを必要としている。これにより、ユーザUの誤操作による発信を防止することができ、電話機3がユーザUの意に反して動作することを防止することができ、電話機3による発信に関するセキュリティを強化することができる。
なお、第1の実施形態において、サーバ2とプッシュ通知サーバ4とは統合されてもよい。
(第2の実施形態)
第2の実施形態では、上記の第1の実施形態の変形例を説明する。第2の実施形態では、電話機3によって表示される発信メニュー25の生成処理を説明する。
図7は、第2の実施形態に係る電話発信システム1によって実行される発信メニュー25の生成処理の一例を示すブロック図である。この図7では、電話発信システム1のうち、電話機3、プロセッサ3P、アプリケーション・ソフトウェア7、サーバ2、プロセッサ2P、サーバ・ソフトウェア9、記憶部2Mのみが図示されており、他の構成要素は説明を簡略化するために省略されている。
サーバ2の記憶部2Mは、発信メニュー25を生成する前(例えば、プッシュ通知30の受信に基づいてアプリケーション・ソフトウェア7が起動される前)に、ユーザID14およびパスワード15と設定データ32とを関連付けて記憶している。設定データ32と関連付けられているユーザID14およびパスワード15は、第1の実施形態で説明した管理データ10に含まれているユーザID14およびパスワード15としてもよい。サーバ2のサーバ・ソフトウェア9は、任意のタイミングで(例えば、周期的に、または、ユーザの命令に基づいて)、設定データ10を収集し、記憶部2Mに記憶する機能を含むとしてもよい。設定データ10は、アプリケーション・ソフトウェア7とサーバ・ソフトウェア9との協働により生成されてもよい。例えば、電話機3のアプリケーション・ソフトウェア7は、サーバ2のサーバ・ソフトウェア9からの命令にしたがって、設定データ32に必要な情報を収集し、サーバ2のサーバ・ソフトウェア9へ送信してもよい。設定データ10は、ユーザUまたはシステム管理者により生成されてもよい。
設定データ32は、例えば、ユーザ設定(例えば電話機3の設定)、システム設定、サーバ設定などの各種の設定情報を含むとしてもよい。
より具体的には、設定データ32は、例えば、電話機3によってプレフィックス発信が実行される場合に電話番号の先頭に付加される番号を含むとしてもよい。
あるいは、設定データ32は、例えば、電話機3がソフトウェアフォンを実装していることを示す情報を含むとしてもよい。
電話機3のプロセッサ3Pがアプリケーション・ソフトウェア7を起動すると、アプリケーション・ソフトウェア7は、ユーザ認証に使用されるユーザID14およびパスワード15と、電話番号16とをサーバ2へ送信する(S701)。
サーバ2のプロセッサ2Pによって実行されているサーバ・ソフトウェア9は、電話機3からユーザID14、パスワード15、電話番号16を受信する(S702)。
なお、上記のS701およびS702に代えて、アプリケーション・ソフトウェア7は、ユーザ認証に使用されるユーザID14およびパスワード15をサーバ2へ送信し、その後に、電話番号16をサーバ2へ送信し、サーバ・ソフトウェア9は、電話機3からユーザID14、パスワード15を受信し、その後に、電話番号16を受信してもよい。
サーバ・ソフトウェア9は、電話機3から受信したユーザID14およびパスワード15と、記憶部2Mに記憶されているユーザID14およびパスワード15とが一致するか否かによりユーザ認証を行う(S703)。
サーバ・ソフトウェア9は、ユーザ認証に成功すると、電話機3から受信した電話番号16、ユーザID14およびパスワード15に関連付けられている設定データ32に基づいて、発信メニュー25を生成する(S704)。
より具体的に説明すると、サーバ・ソフトウェア9は、発信メニュー25に対して、必須の選択肢である「電話機による発信」を含める。
サーバ・ソフトウェア9は、設定データ32が、プレフィックス発信において電話番号の先頭に付加すべき番号を含む場合に、発信メニュー25に対して、任意の選択肢である「プレフィックス発信」を含める。
サーバ・ソフトウェア9は、設定データ32が、電話機3がソフトウェアフォンを実装していることを示す情報を含む場合に、発信メニュー25に対して、任意の選択肢である「ソフトウェアフォン発信」を含める。
サーバ・ソフトウェア9は、電話機3から受信した電話番号16が、携帯電話の番号(例えば、先頭に090、080、070を持つ番号)である場合に、発信メニュー25に対して、任意の選択肢である「SMS発信」を含める。
サーバ・ソフトウェア9は、生成した発信メニュー25を電話機3へ送信する(S705)。
電話機3のプロセッサ3Pによって実行されているアプリケーション・ソフトウェア7は、サーバ2からの発信メニュー25を受信する(S706)。
アプリケーション・ソフトウェア7は、受信した発信メニュー25を表示する。
以上説明した第2の実施形態に係る電話発信システム1においては、発信メニュー25がサーバ2によって生成される。発信メニュー25は、発信方式として、電話機3による発信を含む。また、発信メニュー25は、発信方式として、設定データ32と電話番号16とのうちの少なくとも1つに応じて、プレフィックス発信、SMS(Short Message Service)発信、ソフトウェアフォン発信のうちの少なくとも1つを、選択的に含むとしてもよい。
したがって、第2の実施形態に係る電話発信システム1においては、ユーザ設定、システム設定、サーバ設定などの各種の設定に適した発信メニュー25をユーザUに提供することができる。
(第3の実施形態)
第3の実施形態では、上記の第2の実施形態の変形例を説明する。第3の実施形態では、サーバ2が、発信メニュー25を生成するためのソフトウェアを生成し、電話機3が、サーバ2から受信したソフトウェアに基づいて発信メニュー25を生成および表示する電話発信システム1を説明する。
図8は、第3の実施形態に係る電話発信システム1によって実行される発信メニュー25の生成処理の一例を示すブロック図である。以下の図8の説明では、図7と同一または類似な部分の説明を省略または簡単に説明し、異なる部分を具体的に説明する。
電話機3のプロセッサ3Pがアプリケーション・ソフトウェア7を起動すると、アプリケーション・ソフトウェア7は、ユーザ認証に使用されるユーザID14およびパスワード15と、電話番号16とをサーバ2へ送信する(S801)。
サーバ2のプロセッサ2Pによって実行されているサーバ・ソフトウェア9は、電話機3からユーザID14、パスワード15、電話番号16を受信する(S802)。
なお、上記のS801およびS802に代えて、アプリケーション・ソフトウェア7は、ユーザ認証に使用されるユーザID14およびパスワード15をサーバ2へ送信し、その後に、電話番号16をサーバ2へ送信し、サーバ・ソフトウェア9は、電話機3からユーザID14、パスワード15を受信し、その後に、電話番号16を受信してもよい。
サーバ・ソフトウェア9は、電話機3から受信したユーザID14およびパスワード15と、記憶部2Mに記憶されているユーザID14およびパスワード15とが一致するか否かによりユーザ認証を行う(S803)。
電話機3のプロセッサ3Pによって実行されているアプリケーション・ソフトウェア7は、プッシュ通知サーバ4から、プッシュ通知リクエスト29に基づいてプッシュ通知サーバ4によって送信され電話番号を含むプッシュ通知30を受信した場合に、プッシュ通知30を受信したことをユーザUに知らせるためのメッセージ24を表示し、電話番号に対する発信を行うことを承認する操作をユーザUから受け付けた場合に、サーバ2へ、ユーザUに発信方式の選択を促す発信メニュー25を生成するためのソフトウェアSWの生成指示を送信する(S804)。
サーバ・ソフトウェア9は、電話機3から生成指示を受信する(S805)。
サーバ・ソフトウェア9は、電話機3から生成指示を受信すると、電話機3から受信した電話番号16と、ユーザID14およびパスワード15に関連付けられている設定データ32とのうちの少なくとも1つに基づいて、発信メニュー25を生成するために用いられるソフトウェアSWを生成する(S806)。
ソフトウェアSWは、例えば、スクリプト、プログラム、データ、情報、または、これらの任意の組み合わせでもよい。
サーバ・ソフトウェア9は、生成したソフトウェアSWを、電話機3へ送信する(S807)。
電話機3のプロセッサ3Pによって実行されているアプリケーション・ソフトウェア7は、サーバ2からのソフトウェアSWを受信する(S808)。
アプリケーション・ソフトウェア7は、受信したソフトウェアSWに基づいて発信メニュー25を生成する(S809)。
アプリケーション・ソフトウェア7は、受信した発信メニュー25を表示部3Dに表示させる。
第3の実施形態において、例えば、アプリケーション・ソフトウェア7の少なくとも一部はブラウザとしての機能を備えており、ソフトウェアSWはスクリプトであり、アプリケーション・ソフトウェア7がスクリプトを実行することにより、電話機3の表示部3Dに発信メニュー25が表示されてもよい。
第3の実施形態において、例えば、アプリケーション・ソフトウェア7の少なくとも一部はブラウザとしての機能を備えており、ソフトウェアSWはHTML(HyperText Markup Language)データであり、アプリケーション・ソフトウェア7がHTMLデータを読み込んで解釈することにより、電話機3の表示部3Dに発信メニュー25が表示されてもよい。
なお、HTMLデータに代えて、例えば、XML(eXtensible Markup Language)データ、CSV(Comma Separated Values)データ、JSON(JavaScript(登録商標) Object Notation)などが用いられてもよい。ソフトウェアSWは、これらの各種のデータのうちの少なくとも2つの混合により形成されてもよい。
以上説明した第3の実施形態に係る電話発信システム1においては、ユーザ設定、システム設定、サーバ設定などの各種の設定に適した発信メニュー25をユーザUに提供することができる。
また、第3の実施形態においては、ソフトウェアSWの生成をサーバ2で実行し、ソフトウェアSWに基づく発信メニュー25の生成を電話機3で実行するため、サーバ2と電話機3との間で処理負荷を分散させることができる。
なお、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削減してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。