(57)【要約】【課題】通信装置と業務システムとのセッション維持および、通信装置における通話接続を両立することを目的とする。【解決手段】  セッション管理装置が、通信装置からの要求に応じて、該通信装置とのセッションを確立し、前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する処理を実行することを特徴とするセッション管理方法。【選択図】図１
2016033811.tif 000002
【特許請求の範囲】
【請求項１】
セッション管理装置が、
通信装置からの要求に応じて、該通信装置とのセッションを確立し、
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、
前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する
処理を実行することを特徴とするセッション管理方法。
【請求項２】
前記セッション管理装置は、前記通信装置と業務システムとの通信を中継する中継装置であって、
前記セッション管理装置は、
前記通信装置からの前記業務システムに対するリクエストを、該業務システムに転送し、
前記業務システムによる該リクエストに対する処理結果を取得し、
前記処理結果を表示する画面の画面データを、前記通信装置に送信する
処理を実行することを特徴とする請求項１に記載のセッション管理方法。
【請求項３】
前記セッション管理装置は、
前記第一の時間間隔または前記第二の時間間隔で延長された前記維持時間を経過したセッションを切断する
処理を実行することを特徴とする請求項１または２に記載のセッション管理方法。
【請求項４】
前記第二の時間間隔は、前記通信装置毎に、または、前記他の通信装置毎に、設定されることを特徴とする請求項１乃至請求項３のいずれか一項に記載のセッション管理方法。
【請求項５】
通信装置からの要求に応じて、該通信装置とのセッションを確立する制御部と
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長するとともに、前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長するセッション管理部と、
を有することを特徴とするセッション管理装置。
【請求項６】
セッション管理装置に、
通信装置からの要求に応じて、該通信装置とのセッションを確立し、
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、
前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する
処理を実行させることを特徴とするセッション管理プログラム。
【請求項７】
通信装置が、
サーバの処理結果を取得するための特定のアプリケーションを用いて、前記通信装置と該サーバとのセッションを確立し、
前記セッションが維持されている間に、他の通信装置からの着信があった場合、前記サーバとの前記セッションを所定の時間内に限り維持するように前記特定アプリケーションをバックグランドに移行するとともに、前記着信の通話を可能にする
処理を実行することを特徴とする通話処理方法。
【請求項８】
前記通信装置は、
前記所定の時間内、所定時間間隔ごとに、前記サーバにパケットを送信することで、前記セッションを維持することを特徴とする請求項７に記載の通話処理方法。
【請求項９】
前記通信装置が、
前記着信の応答から前記所定の時間の経過前に前記通話が終了した場合に、前記特定アプリケーションを前記バックグランドからフォアグランドに移行する
処理を実行することを特徴とする請求項７または８に記載の通話処理方法。
【請求項１０】
通信装置とサーバとを含むシステムが、
前記通信装置と前記サーバとの間の通信実績に応じて第一の時間間隔だけ維持される前記通信装置と前記サーバとの間のセッションを確立し、
前記通信装置に対する他の通信装置からの着信を検知した場合、前記セッションを、前記第一の時間間隔よりも長い第二の時間間隔だけ維持する
処理を実行することを特徴とするセッション管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッション管理方法、セッション管理装置、セッション管理プログラム、および通話処理方法に関する。
【背景技術】
【０００２】
近年、例えば、スマートフォンやタブレット等のスマートデバイスの業務活用が求められている。そして、個人所有のスマートデバイスを業務で利用するＢＹＯＤ（Ｂｒｉｎｇ  Ｙｏｕｒ  Ｏｗｎ  Ｄｅｖｉｃｅ）のケースが増加している。例えば、個人所有のスマートフォンを業務利用する場合には、セキュアな状態を確保しながら、業務システムへのアクセスと個人利用の柔軟な切り替えを実現することが求められている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−６１８１４号公報
【特許文献２】特開２０１３−２０１６７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば、個人所有のスマートフォンで業務アプリを用いて業務システムとのセッション中に、スマートフォンに対してプライベートな着信があった場合、そのまま着信に応答して通話すると、業務システムとのセッションが切断される。その結果、業務システムとのセッションを再度確立するための操作、例えば、ログインＩＤやパスワード等の入力操作を要し、利用者にとって、その操作負担は大である。
【０００５】
一つの側面では、通信装置と業務システムとのセッション維持および、通信装置における通話接続を両立することを目的とする。
【課題を解決するための手段】
【０００６】
一つの側面では、セッション管理装置が、通信装置からの要求に応じて、該通信装置とのセッションを確立し、前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する処理を実行する。
【発明の効果】
【０００７】
通信装置と業務システムとのセッション維持および、通信装置における通話接続を両立できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、ＢＹＯＤシステムの一例を示す説明図である。
【図２】図２は、セッション管理テーブルの一例を示す説明図である。
【図３】図３は、維持時間管理テーブルの一例を示す説明図である。
【図４】図４は、セッション管理処理に関わる中継サーバの処理動作の一例を示すフローチャートである。
【図５】図５は、着信応答時のセッション管理処理に関わる中継サーバの処理動作の一例を示すフローチャートである。
【図６】図６は、業務画面表示処理に関わるユーザ端末の処理動作の一例を示すフローチャートである。
【図７】図７は、着信応答時のユーザ端末の処理動作の一例を示すフローチャートである。
【図８】図８は、セッション管理プログラムを実行する中継サーバのハードウェア構成例を示す説明図である。
【図９】図９は、ＢＹＯＤシステムの一例を示す説明図である。
【図１０】図１０は、管理テーブルの一例を示す説明図である。
【図１１】図１１Ａ、１１Ｂ、および１１Ｃは、ユーザ端末の表示画面の一例を示す説明図である。
【図１２Ａ】図１２Ａは、着信応答処理に関わるユーザ端末内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１２Ｂ】図１２Ｂは、着信応答処理に関わるユーザ端末内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１３】図１３は、提供処理に関わる中継サーバ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１４】図１４は、通話処理プログラムを実行する通話端末装置の一例を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて、本願の開示する通話処理方法、通話端末装置、通話処理プログラムおよび通話システムの実施例を詳細に説明する。なお、本実施例により、開示技術が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【００１０】
まず、ユーザ端末である通信装置とサーバとのセッションの維持および切断に関する従来の仕組みを説明する。なお、ここでは、通信装置と業務システムとの間の中継サーバによる画面転送方式を採用したシンクライアントシステムを例に説明する。
【００１１】
画面転送方式が採用されたシンクライアントシステムにおいて、中継サーバは、通信装置からのリクエストを業務システムに転送する。そして、中継サーバは、業務システムの処理結果を受信すると、処理結果を表示する画面を生成し、当該画面の画面データを通信装置に転送する。このように、中継サーバが生成した画面データを通信装置に転送する方式は、一般的に、画面転送方式と呼ばれる。
【００１２】
まず、通信装置において、業務アプリケーションが起動されると、通信装置と中継サーバとの間で、所定のプロトコルに従って、セッションを確立するためのネゴシエーションが実行される。例えば、所定のプロトコルには、Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＴＣＰ／ＩＰ）が採用される。また、セッションを確立する際には、通信装置のユーザによるパスワードやユーザＩＤの入力が必要とされる。
【００１３】
次に、セッションが確立されると、中継サーバを経由した、通信装置と業務システムとの通信が開始される。例えば、通信装置は、ユーザの入力に応じて、リクエストを中継サーバに送信する。そして、中継サーバがリクエストを業務システムに転送すると、業務システムはリクエストに応じた処理を実行する。次に、業務システムから処理結果を取得した中継サーバは、処理結果を表示するビットマップ等の画面データを生成し、当該画面データを通信装置へ返送する。
【００１４】
通信装置は、画面データを受信すると、当該画面データに対応する業務画面を表示するとともに、中継サーバに、画面データの受信を知らせるＡｃｋ信号（受信確認）を返信する。通信装置と中継サーバとの間のセッションが維持されている間、一連の処理が繰り返されることで、ユーザは通信装置を用いて業務システムによる処理結果の閲覧および業務システムの操作を行うことができる。
【００１５】
また、中継サーバは、通信装置とのセッションを管理し、セッションの維持または切断を行う。具体的には、中継サーバは、通信装置と中継サーバとの通信を監視し、一定時間に亘って通信が行われていない場合、当該通信装置とのセッションを切断する。つまり、タイムアウトが発生し、セッションは切断される。
【００１６】
例えば、ある通信装置からのＡｃｋ信号を一定時間受信しない場合や、ある通信装置からのリクエストを一定時間受信しない場合には、中継サーバは、当該ある通信装置とのセッションを切断する。これは、中継サーバが多数の通信装置とのセッションを維持し続けることで、中継サーバのリソースが圧迫されることを防ぐためである。
【００１７】
具体的には、セッションごとに、中継サーバのメモリ領域が使用されるとともに、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）も使用される。よって、維持しているセッションが多くなるほど、中継サーバのリソースを圧迫することになる。したがって、不要なセッションを切断することで、中継サーバ側のリソースが開放され、中継サーバのリソースが有効活用されることとなる。
【００１８】
以上の方法でのセッション管理が行われている際に、例えば、通信装置に通話のための着信（以下、単に「着信」と記載）がありユーザがそれに応答して通話を行った場合、通信装置からのリクエストやＡｃｋ信号が中継サーバへ送信されず、結果的にタイムアウトが発生し、セッションが切断される。よって、通話終了後、ユーザは、再度、ログインＩＤやパスワードを入力しなければならない。
【００１９】
一方、無条件で、業務システムとのセッションを維持し続けることは、情報漏えいのリスクが高まるため、好ましくない。さらに、不必要にセッションを維持することは、サーバやネットワークのリソースを無駄に消費することにもなる。そこで、ユーザの利便性を向上させるとともに、状況に応じてセッション維持を延長することが必要となる。
【００２０】
そこで、本実施例に開示の技術は、通信装置側で着信に対する応答が行われた場合であっても、セッションを一定時間維持するための仕組みを提供する。具体的には、実施例１に開示の技術は、中継サーバ側で、通話中の特定の通信装置については、タイムアウトが発生するまでの時間を延長することで、通信装置と中継サーバとのセッションを通常時よりも長く維持する。また、実施例２に開示の技術は、通信装置側で、通話中、中継サーバとのセッションを維持するためのパケットを、所定時間ごとに中継サーバ側へ送信することで、中継サーバがタイムアウトを判定し、セッションを切断することを防ぐ。なお、通話が一定時間以上である場合に、セッションを維持し続けると、中継サーバ側のリソースが不要に利用されることにつながるため、以下の実施例は、通話開始（着信応答開始）から、通常のタイムアウト時間よりも長い一定時間だけ、セッションを維持するための仕組みを提供する。
【００２１】
なお、中継サーバによる画面転送方式を利用したシンクライアントシステム以外にも、Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ（ＶＰＮ）やＳｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ（ＳＳＬ）等のセキュアな通信を利用するシンクライアントシステムにも、以下実施例は適用可能である。なぜなら、これらセキュアな通信は、画面転送方式同様、セッション単位でタイムアウトを監視し、セッション管理を実施しているためである。
【００２２】
また、通信装置と他の通信装置との通話の開始に応じて、セッションを維持する以外にも、その他、特定のタイミングで、セッションを維持するとしてもよい。例えば、業務システムへアクセスするための業務アプリが起動中に、他のアプリケーション（電話アプリケーション、メーラー、ブラウザ等）が起動され、業務アプリがバックグラウンドに移行したことが検知された場合に、セッションが維持されるとしてもよい。
【実施例１】
【００２３】
以下では、通信装置をユーザ端末３００として、中継サーバを中継サーバ４００として、業務システムを業務システム２として説明する。ユーザ端末３００が、ユーザが個人所有するスマートデバイスである場合には、ユーザ端末３００、中継サーバ４００、業務システム２を含むシンクライアントシステムは、ＢＹＯＤシステム１０００と称される。ただし、ユーザ端末３００は社給のスマートデバイスなどであってもよい。
【００２４】
図１は、ＢＹＯＤシステムの一例を示す説明図である。図１に示すＢＹＯＤシステム１０００は、業務システム２と、ユーザ端末３００と、中継サーバ４００とを有する。本実施例においては、ＢＹＯＤシステム１０００には、画面転送方式が採用される。
【００２５】
ユーザ端末３００は、業務アプリケーション（以下、業務アプリと称する）等の特定アプリを利用して、中継サーバ４００を経由して、業務システム２にアクセスする。ユーザ端末３００は、無線で中継サーバ４００に接続される。また、ユーザ端末３００は、通信装置の一例である。
【００２６】
さらに、ユーザ端末３００は、中継サーバ４００から、業務システム２による処理結果を表示する為の画面データを受信するとともに、当該画面データに対応する業務画面を表示する。なお、ユーザ端末３００と中継サーバ４００との間のセッションが切断されると、画面データをユーザ端末３００内に残さない仕組みが採用されることが、セキュリティの観点から好ましい。
【００２７】
業務システム２は、例えば、企業内の業務データを管理すると共に、企業の各種業務をセキュアな状態で実行可能にする特定システムである。業務システム２は、複数存在してもよい。
【００２８】
中継サーバ４００は、業務システム２とユーザ端末３００との間の通信を中継する。中継サーバ４００は、例えば、データセンタ等の仮想Ｗｅｂブラウザを提供するＧａｔｅ  Ｗａｙサーバである。なお、中継サーバは、セッション管理装置の一例である。
【００２９】
中継サーバ４００は、例えば、業務システム２と有線で接続する。更に、中継サーバ４００は、ユーザ端末３００が業務アプリを用いてセキュアな状態で業務システム２にアクセスすることを可能にし、業務システム２側の処理結果を、ビットマップ等の画面データに変換して、ユーザ端末３００に転送する。以上のように、中継サーバ４００は、ユーザ端末３００による業務システム２の遠隔操作を可能にする。
【００３０】
中継サーバ４００は、中継部４１１と、制御部４１２と、記憶部４１３とを有する。制御部４１２は、例えば、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）である。記憶部４１３は、例えば、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）である。
【００３１】
中継部４１１は、ユーザ端末３００と業務システム２との間で画面データやコマンド等を相互に中継する。
【００３２】
制御部４１２は、中継サーバ４００全体を制御する。例えば、制御部４１２は、ユーザ端末３００と業務システム２との間のデータの転送を制御する。また、制御部４１２は、セッション管理部４１２Ａと、設定部４１２Ｂとを有する。セッション管理部４１２Ａは、各セッションの管理を行う。具体的には、ＩＰアドレスおよびポート番号で識別されるセッションごとに、セッション維持時間を設定するとともに、そのタイムアウトを監視する。
【００３３】
例えば、ユーザ端末３００からリクエストやＡｃｋ信号を受信する度に、当該ユーザ端末３００とのセッションの維持時間を第一の時間間隔だけ延長する。また、特定のユーザ端末３００において着信応答が検知された場合には、当該特定のユーザ端末３００とのセッションに関しては、セッション維持時間を、第一の時間間隔よりも大きな第二の時間間隔だけ延長する。例えば、第一の時間間隔は１分間であって、第二の時間間隔は３分間である。さらに、セッション管理部４１２Ａは、セッション維持期限を経過したセッションについては、当該セッションを切断する。
【００３４】
設定部４１２Ｂは、着信応答に応じて延長されるセッション維持時間（第二の時間間隔）を、設定する処理部である。例えば、第二の時間間隔は、ユーザ端末３００によらず一律であってもよいし、着信の発信元の電話番号ごとに設定されてもよい。
【００３５】
例えば、発信元の電話番号が、ユーザ端末３００と同様に所属企業から支給された他のユーザ端末３００である場合、着信応答に応じて、セッション維持時間を延長する。通常、企業は社給のユーザ端末３００の電話番号を管理しているため、設定部４１２Ｂは、社給のユーザ端末３００の電話番号に対応付けてセッション維持時間を設定することが可能である。
【００３６】
また、設定部４１２Ｂは、業務アプリ３１３Ａごとにセッション維持時間を設定してもよい。例えば、実行中の業務アプリ３１３Ａが、操作に時間を要する業務アプリ３１３Ａである場合には、通話の終了後、ユーザは操作により多くの時間を要することが推測される。したがって、設定部４１２Ｂは、業務アプリ３１３Ａごとに、セッション維持時間を設定することで、よりユーザの利便性を向上させる。
【００３７】
記憶部４１３は、各種情報、プログラムなどを記憶する。さらに、記憶部４１３は、セッション管理テーブル４１３Ａ、維持時間管理テーブル４１３Ｂを有する。
【００３８】
セッション管理テーブル４１３Ａは、セッション管理部４１２Ａにより管理されるテーブルであって、ユーザ端末３００とのセッションを管理するための情報が格納される。図２は、セッション管理テーブルの一例を示す説明図である。
【００３９】
図２に示すセッション管理テーブル４１３Ａは、端末ＩＤ、ＩＰアドレス、ポート番号、最新通信時間、セッション維持期限を対応付けて記憶する。端末ＩＤは、ユーザ端末３００を識別する情報である。ＩＰアドレスは、ネットワークに接続されたユーザ端末３００に割り当てられた識別情報である。ポート番号は、ＴＣＰ／ＩＰ通信に利用されるプログラムを識別する情報である。なお、ＩＰアドレスおよびポート番号の組み合わせによって、セッションは識別される。また、端末ＩＤ、ＩＰアドレス、ポート番号はセッションを確立する際に、ユーザ端末３００から取得される。
【００４０】
最新通信時間は、対応するセッションを用いた最新の通信が行われた時間を示す。例えば、ユーザ端末３００から中継サーバ４００へリクエストが送信されるたびに、また、ユーザ端末３００から中継サーバ４００へＡｃｋ信号が送信されるたびに、セッション管理部４１２Ａにより、該当ユーザ端末３００に対応する当該最新通信時間は更新される。
【００４１】
セッション維持期限は、対応するセッションが維持される期限を示す。例えば、最新通信時間に第一の時間間隔を加算した時間が、セッション管理部４１２Ａにより、セッション維持期限に設定される。また、ユーザ端末３００において着信応答が検出された場合に、当該着信応答が検知された時間に第二の時間間隔を加算した時間が、セッション管理部４１２Ａにより、セッション維持期限に設定される。
【００４２】
図２の例では、例えば、ＩＰアドレス「１１１．１１．１１．１１１」およびポート番号「１」で識別されるセッションは、最新の通信が、「２０１５．０１．０１、００：００：００：００」に行われ、セッション維持期限が、「２０１５．０１．０１、００：０１：００：００」であることを示している。なお、図２の例では、第一の時間間隔は、１分である。
【００４３】
また、セッション管理部４１２Ａは、新たなセッションが確立されるたびに、セッション管理テーブル４１３Ａに、新たなセッションに対応するレコードを追加する。そして、セッション維持期限を経過したセッションについては、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａから、該当するセッションのレコードを削除する。
【００４４】
図１に戻り、維持時間管理テーブル４１３Ｂは、設定部４１２Ｂにより管理されるとともに、セッション管理部４１２Ａによって参照されるテーブルであって、ユーザ端末３００とのセッション維持時間（第二の時間間隔）が格納される。
【００４５】
図３は、維持時間管理テーブルの一例を示す説明図である。維持時間管理テーブル４１３Ｂは、着信応答時にセッション維持期限を延長するためのセッション維持時間を記憶する。例えば、「３分」という情報が維持時間管理テーブル４１３Ｂに記憶される。なお、第一の時間間隔にあたる、ユーザ端末３００からの応答を受信した際に延長されるセッション維持時間（通常のセッション維持時間）も併せて維持時間管理テーブル４１３Ｂに記憶されてもよい。
【００４６】
さらに、維持時間管理テーブル４１３Ｂは、端末ＩＤに対応付けて、ユーザ端末３００ごとのセッション維持時間を記憶してもよい。また、維持時間管理テーブル４１３Ｂは、業務アプリを識別するアプリ種別に対応付けて、業務アプリごとのセッション維持時間を記憶してもよい。さらに、維持時間管理テーブル４１３Ｂは、発信元の電話番号に対応付けて、発信元ごとのセッション維持時間を記憶してもよい。その他、維持時間管理テーブル４１３Ｂは、着信応答の時間帯や、中継サーバ４００を利用しているユーザ端末数に応じて、セッション維持時間を記憶してもよい。
【００４７】
設定部４１２Ｂは、業務システム２や中継サーバ４００の管理者の入力に応じて、維持時間管理テーブル４１３Ｂにセッション維持時間を登録する。また、ユーザ端末３００からの入力に応じて、維持時間管理テーブル４１３Ｂにセッション維持時間を登録してもよい。
【００４８】
図１に戻り、ユーザ端末３００は、通信部３１１と、制御部３１２と、記憶部３１３と、表示部３１４と、操作部３１５と、音声入出力部３１６とを有する。例えば、制御部３１２は、ＣＰＵである。また、例えば、記憶部３１３は、ＲＯＭ、ＲＡＭ、ＨＤＤである。
【００４９】
通信部３１１は、基地局との間の無線通信や、業務アプリを使用しての中継サーバ４００との間の通信を司る通信インタフェースである。表示部３１４は、各種情報を画面表示する出力インタフェースである。操作部３１５は、各種コマンドを入力する入力インタフェースである。例えば、操作部３１５は、表示部３１４の表示画面上のタッチ操作を検出するタッチパネル等に相当する。
【００５０】
音声入出力部３１６は、例えば、マイクやスピーカ等に相当し、音声を入出力する入出力インタフェースに相当する。記憶部３１３は、例えば、業務アプリ３１３Ａ、電話アプリ３１３Ｂを記憶する。業務アプリ３１３Ａは、中継サーバ４００を経由して業務システム２とのセッションを確立し、業務システム２に対してセキュアな状態でアクセス可能にし、業務画面を表示部３１４に画面表示する特定アプリである。電話アプリ３１３Ｂは、例えば、キャリア事業者の無線通信を利用した電話機能を実現するアプリである。電話アプリ３１３Ｂは、インターネットを利用した通話機能を実現するアプリであってもよい。
【００５１】
制御部３１２は、ユーザ端末３００全体を制御する。業務アプリ実行部３１２Ａは、業務アプリ３１３Ａに基づき、業務アプリ３１３Ａに関わる各種処理動作を実行する。例えば、業務アプリ実行部３１２Ａは、中継サーバ４００とのセッションを確立する。さらに、セッション確立後、業務アプリ実行部３１２Ａは、操作部３１５から入力されたユーザの操作に基づき、業務システム２へのリクエストを生成する。そして、業務アプリ実行部３１２Ａは、通信部３１１を介して、中継サーバ４００にリクエストを送信する。
【００５２】
また、通信部３１１を介して、中継サーバ４００からレスポンス（業務システム２による処理結果に対応する画像データ）を受信した場合に、業務アプリ実行部３１２Ａは、表示部３１４を制御し、画像データに対応する業務画面を表示部３１４に表示する。
【００５３】
さらに、レスポンスを受信した場合、業務アプリ実行部３１２Ａは、通信部３１１を介して、Ａｃｋ信号を中継サーバ４００へ返信する。さらに、電話アプリ実行部３１２Ｂが着信に対する応答を行ったことを検知した場合、業務アプリ実行部３１２Ａは、通信部３１１を介して、着信応答を検知したことを、中継サーバ４００に知らせる。
【００５４】
電話アプリ実行部３１２Ｂは、電話アプリ３１３Ｂに関わる各種処理動作を実行する。例えば、電話アプリ実行部３１２Ｂは、他の通信装置（他のユーザ端末３００）からの着信に対してユーザが応答指示を行った場合、他の通信装置との通話を開始するとともに、ユーザが通話の終了指示を行った場合には、当該通話を終了する。
【００５５】
図４は、セッション管理処理に関わる中継サーバの処理動作の一例を示すフローチャートである。中継部４１１は、ユーザ端末３００から、セッション確立要求を受信する（Ｓ１０１）。なお、セッション確立要求は、端末ＩＤ、ＩＰアドレス、ポート番号を含み、さらに業務システム２へアクセスするためのユーザＩＤやパスワードを含む。
【００５６】
制御部４１２は、所定のプロトコル（例えばＴＣＰ／ＩＰ）に従い、ユーザ端末３００とのネゴシエーションを行い、セッションを確立する（Ｓ１０２）。そして、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａに、新たに確立されたセッションに係る新たなレコードを追加する。
【００５７】
制御部４１２は、ユーザ端末３００からリクエストを受信したか否かを判定する（Ｓ１０３）。リクエストを受信した場合（Ｓ１０３ＹＥＳ）、制御部４１２は、中継部４１１を制御して、業務システム２に、リクエストを転送する（Ｓ１０４）。次に、制御部４１２は、業務システム２から、リクエストに対するレスポンス（処理結果）を受信したか否かを判定する（Ｓ１０５）。
【００５８】
処理結果を受信するまで待機し（Ｓ１０５ＮＯ）、処理結果を受信した場合（Ｓ１０５ＹＥＳ）、制御部４１２は、処理結果を表示する為の画面データを生成する。例えば、制御部４１２は、処理結果を表示するビットマップを生成し、さらに、圧縮処理を実行することで、画面データを生成する。
【００５９】
中継部４１１は、制御部４１２の制御の下、画面データをユーザ端末３００に転送する（Ｓ１０６）。次に、セッション管理部４１２Ａは、ユーザ端末３００からＡｃｋ信号を受信したか否かを判定する（Ｓ１０７）。そして、Ａｃｋ信号を受信した場合には（Ｓ１０７ＹＥＳ）、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａを更新する（Ｓ１０８）。例えば、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａにおける最新通信時間を、Ａｃｋ信号の受信時間で更新するとともに、セッション維持期限を、更新した最新通信時間（Ａｃｋ信号の受信時間）に第一の時間間隔を加算した時間で、更新する。本処理によって、セッション維持期限は延長される。なお、Ａｃｋ信号を受信したタイミング以外に、リクエストを受信したタイミング（Ｓ１０３ＹＥＳ）でも、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａの更新を実行してもよい。
【００６０】
Ｓ１０３にてリクエストを受信していない場合（Ｓ１０３ＮＯ）や、Ｓ１０７でＡｃｋ信号を受信していない場合（Ｓ１０７ＮＯ）、さらに、Ｓ１０８でセッション管理テーブル４１３Ａの更新が終了した場合、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａから、セッション維持期限切れのレコードを削除する（Ｓ１０９）。セッション管理部４１２Ａは、現在時刻を取得し、現在時刻とセッション管理テーブル４１３Ａにおけるセッション維持期限を比較することによってセッション維持期限切れのレコードを特定すればよい。
【００６１】
そして、Ｓ１０９が終了した後、制御部４１２は、Ｓ１０３に戻り、Ｓ１０３からＳ１０９までの一連の処理を繰り返す。なお、セッション管理部４１２Ａは、図４に示したフローとは独立して、一定の時間間隔ごとに、セッション維持期限切れのレコードの有無を判断し、セッション維持期限切れのレコードをセッション管理テーブル４１３Ａから削除することとしてもよい。
【００６２】
以上の処理によって、中継サーバ４００は、セッションを管理するとともに、タイムアウトしたセッションを切断することができる。よって、本実施例によれば、一定時間以上、中継サーバ４００との通信がないユーザ端末３００とのセッションを切断することで、中継サーバ４００のリソースを有効活用する。
【００６３】
図５は、着信応答時のセッション管理処理に関わる中継サーバの処理動作の一例を示すフローチャートである。制御部４１２は、ユーザ端末３００から着信応答開始通知を受信したか否かを判定する（Ｓ１１１）。なお、着信応答開始通知は、ユーザ端末３００において、電話アプリ実行部３１２Ｂが通話を開始した場合に、業務アプリ実行部３１２Ａにより生成される。そして、着信応答開始通知は、中継サーバ４００に送信される。また、例えば、着信の発信元に応じて、セッション維持時間が決定される場合には、着信応答開始通知には、発信元の電話番号の情報も含まれる。さらに、着信応答開始通知には、着信応答を開始した時刻の情報が含まれてもよい。
【００６４】
着信応答開始通知を受信した場合（Ｓ１１１ＹＥＳ）、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａを更新する（Ｓ１１２）。具体的には、セッション管理部４１２Ａは、維持時間管理テーブル４１３Ｂを参照し、セッション維持時間（第二の時間間隔）を取得する。そして、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａにおいて、当該着信応答通知の送信に利用されたセッションに対応するレコードを特定する。セッション管理部４１２Ａは、当該レコードにおけるセッション維持期限を、着信応答通知を受信した時間にセッション維持時間を加算した時間で、更新する。
【００６５】
次に、Ｓ１１１にて着信応答開始通知を受信していない場合（Ｓ１１１ＮＯ）や、Ｓ１１２にてセッション管理テーブル４１３Ａの更新が終了した場合、制御部４１２は、ユーザ端末３００から着信応答終了通知を受信したか否かを判定する（Ｓ１１３）。なお、着信応答終了通知は、ユーザ端末３００において、電話アプリ実行部３１２Ｂが通話の終了を行った場合に、業務アプリ実行部３１２Ａにより生成される。そして、着信応答終了通知は、中継サーバ４００に送信される。
【００６６】
着信応答終了通知を受信した場合（Ｓ１１３ＹＥＳ）、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａを更新する（Ｓ１１４）。具体的には、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａにおいて、当該着信応答通知の送信に利用されたセッションに対応するレコードを特定する。そして、セッション管理部４１２Ａは、当該レコードにおけるセッション維持期限を、着信応答終了通知を受信した時間に第一の時間間隔を加算した時間で、更新する。
【００６７】
Ｓ１１２およびＳ１１４の処理によって、ユーザ端末３００が通話中の場合は、通話開始から第二の時間間隔の間、セッションを維持することができるとともに、通話が終了した場合は、第一の時間間隔の間、セッションを維持することができる。つまり、本実施例は、通話中に限っては、第一の時間間隔よりも長い第二の時間間隔の間、セッションが維持されるが、通話終了後は、中継サーバ４００のリソースを有効活用するために、第二の時間間隔よりも短い第一の時間間隔で、セッションを維持する。
【００６８】
次に、Ｓ１１３にて着信応答終了通知を受信していない場合（Ｓ１１３ＮＯ）や、Ｓ１１４にてセッション管理テーブル４１３Ａを更新した場合、セッション管理部４１２Ａは、セッション管理テーブル４１３Ａから、セッション維持期限切れのレコードを削除する（Ｓ１１５）。そして、制御部４１２は、Ｓ１１１に戻る。セッション維持期限切れのレコードの特定方法は前述と同様であればよい。
【００６９】
Ｓ１１５においては、例えば、通話が開始されてから、第二の時間間隔が経過したセッションが、セッション維持期限切れと判定され、当該セッションに対応するレコードが、セッション管理テーブル４１３Ａから削除される。なお、図５のＳ１１５は図４のＳ１０９に統合されてもよい。つまり、図４の処理フローの中でセッション維持期限切れのレコードを一括で削除し、図５のＳ１１５を省略してもよい。
【００７０】
図６は、業務画面表示処理に関わるユーザ端末の処理動作の一例を示すフローチャートである。制御部３１２は、業務アプリ３１３Ａが起動されたか否かを判定する（Ｓ１２０）。業務アプリ３１３Ａが起動されない場合は（Ｓ１２０ＮＯ）、本フローチャートの処理を終了する。
【００７１】
一方、業務アプリ３１３Ａが起動された場合には（Ｓ１２０ＹＥＳ）、業務アプリ実行部３１２Ａは、通信部３１１を制御し、セッション確立要求を中継サーバ４００に送信する（Ｓ１２１）。そして、業務アプリ実行部３１２Ａの制御の下、通信部３１１は、所定のプロトコルに従って、中継サーバ４００とのセッションを確立する（Ｓ１２２）。
【００７２】
次に、業務アプリ実行部３１２Ａは、ユーザからの指示に応じたリクエストを生成する（Ｓ１２３）。そして、業務アプリ実行部３１２Ａは、通信部３１１を介して、中継サーバ４００にリクエストを送信する（Ｓ１２４）。
【００７３】
次に、通信部３１１が中継サーバ４００から画面データを受信すると（Ｓ１２５）、業務アプリ実行部３１２Ａの制御の下、通信部３１１は、画面データの受信を知らせるＡｃｋ信号を中継サーバ４００に送信する（Ｓ１２６）。さらに、業務アプリ実行部３１２Ａの制御の下、表示部３１４は、受信した画面データに基づく業務画面を表示する（Ｓ１２７）。
【００７４】
制御部３１２は、業務アプリ３１３Ａの終了がユーザにより指示されたか否かを判定する（Ｓ１２８）。終了が指示された場合には（Ｓ１２８ＹＥＳ）、制御部３１２は、一連の処理を終了する。一方、終了が指示されていない場合には（Ｓ１２８ＮＯ）、Ｓ１２３へ戻る。
【００７５】
ただし、セッションが切断されている場合には、リクエストの送信（Ｓ１２４）は失敗する。よって、この場合には、制御部３１２は、Ｓ１２１に戻り、再度セッション確立要求を中継サーバ４００に送信する必要がある。
【００７６】
以上のように、セッションが確立されている間、中継サーバ４００を経由して、ユーザ端末３００と業務システム２との間でリクエストとレスポンスのやり取りが行われ、業務システム２の処理結果が、業務画面として、ユーザに提供される。
【００７７】
図７は、着信応答時のユーザ端末の処理動作の一例を示すフローチャートである。制御部３１２は、着信応答の有無を判定する（Ｓ１３１）。なお、着信応答があった場合に、電話アプリ３１３Ｂが起動される。着信応答が検出された場合（Ｓ１３１ＹＥＳ）、制御部３１２は、業務アプリ３１３Ａを実行中であるか否かを判定する（Ｓ１３２）。
【００７８】
業務アプリ３１３Ａが実行中である場合（Ｓ１３２ＹＥＳ）、業務アプリ実行部３１２Ａは通信部３１１を制御し、着信応答開始通知を中継サーバ４００に送信する（Ｓ１３３）。そして、電話アプリ実行部３１２Ｂは、通話を開始する（Ｓ１３４）。
【００７９】
次に、制御部３１２は通話が終了したか否かを判定する（Ｓ１３５）。通話が終了した場合には（Ｓ１３５ＹＥＳ）、制御部３１２は、業務アプリ３１３Ａが実行中であるか否かを判定する（Ｓ１３６）。業務アプリ３１３Ａが実行中である場合（Ｓ１３６ＹＥＳ）、業務アプリ実行部３１２Ａは通信部３１１を制御し、着信応答終了通知を中継サーバ４００に送信する（Ｓ１３７）。そして、電話アプリ実行部３１２Ｂは、通話を終了させるとともに（Ｓ１３８）、制御部３１２は、電話アプリ３１３Ｂを終了させる。なお、通話が終了していない場合（Ｓ１３５ＮＯ）、制御部３１２は、通話が終了するまで待機する。
【００８０】
一方、Ｓ１３１にて着信応答が検出されなかった場合（Ｓ１３１ＮＯ）、制御部３１２は、本フローチャートの処理を終了する。また、Ｓ１３２において、業務アプリ３１３Ａを実行中でない場合（Ｓ１３２ＮＯ）、Ｓ１３４に進む。さらに、Ｓ１３６において、業務アプリ３１３Ａを実行中でない場合（Ｓ１３６ＮＯ）、Ｓ１３８に進む。
【００８１】
以上のように、ユーザ端末３００は、着信に対する応答が開始された時点で、中継サーバ４００に着信応答開始通知を送信するため、中継サーバ４００は、ユーザ端末３００において通話が開始されたことを検出することができる。よって、中継サーバ４００は、通話中のユーザ端末３００とのセッション維持期限を、第一の時間間隔よりも長い第二の時間間隔だけ延長することができる。言い換えると、従来は、通話中に、直近のリクエストまたはＡｃｋ信号の送信から第一の時間間隔が経過した時点で、ユーザ端末３００と中継サーバ４００とのセッションは切断されていた。一方、本実施例によれば、第一の時間間隔よりも長い第二の時間間隔の間は、通話中であってもセッションが維持される。つまり、本実施例によれば、通話中にはユーザ端末３００と中継サーバ４００間のセッションの維持時間が長く設定され、ユーザ端末３００において通話が終了するまでそのセッションを維持することを実現できる。
【００８２】
更に、各装置で行われる各種処理機能は、ＣＰＵ（またはＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ）等のマイクロ・コンピュータ）上で、その全部または任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で実行するプログラム上、またはワイヤードロジックによるハードウェア上で、その全部または任意の一部を実行するようにしても良いことは言うまでもない。
【００８３】
次に、中継サーバ４００のハードウェア構成について説明する。図８は、セッション管理プログラムを実行する中継サーバのハードウェア構成例を示す説明図である。
【００８４】
図８に示す中継サーバ２００は、図１における中継サーバ４００に対応する。中継サーバ２００は、通信部２１０と、ＨＤＤ２２０と、ＲＯＭ２３０と、ＲＡＭ２４０と、ＣＰＵ２５０とを有する。通信部２１０、ＨＤＤ２２０、ＲＯＭ２３０、ＲＡＭ２４０、ＣＰＵ２５０は、バス２６０を介して接続される。
【００８５】
そして、ＲＯＭ２３０には、図４および図５に示す各処理が記述されたセッション管理プログラムが記憶されている。なお、セッション管理プログラムは、ＲＯＭ２３０ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体に記録されていても良い。また、記録媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。
【００８６】
ＣＰＵ２５０は、セッション管理プログラムをＲＯＭ２３０から読み出して実行することで、制御部４１２として機能する。また、通信部２１０は、ＣＰＵ２５０の制御の下、中継部４１１として機能する。また、ＨＤＤ２２０、ＲＯＭ２３０、ＲＡＭ２４０は、ＣＰＵ２５０の制御の下、記憶部４１３として機能する。
【実施例２】
【００８７】
実施例２においては、スマートフォンなどの通信装置（例えば、図９中のユーザ端末３）が、着信応答中であっても、通常のタイムアウト時間よりも長い時間、中継サーバ４とのセッションを維持する仕組みを有する。具体的には、ユーザ端末３が着信に対する応答を検知した場合、ユーザ端末３は、一定時間、中継サーバ４とのセッションを維持するために、パケットを中継サーバ４へ送信する。例えば、パケットは、ヘッダには、パケットの送信日時やパケットの送信回数などが設定されるとともに、ボディには「００００００００」等の適当なデータ列を有する。
【００８８】
上記実施例で説明したように、中継サーバ４は、パケットを受信する度にセッション維持期限を更新することとなるため、着信応答中であっても着信応答中に受信した上記パケットによってユーザ端末３と中継サーバ４間のセッションが維持される。なお、以下の説明においては、ユーザ端末３は、着信応答に応じて、業務アプリをバックグランドに移行するが、バックグランドに移行した後であっても、業務アプリを実行中のＣＰＵの制御の下、通信部が当該パケットを中継サーバ４へ送信する。
【００８９】
図９は、ＢＹＯＤシステム１の一例を示す説明図である。図９に示すＢＹＯＤシステム１は、業務システム２と、個人所有のスマートデバイス等のユーザ端末３と、中継サーバ４とを有する。ＢＹＯＤシステム１は、例えば、業務アプリケーション（以下、アプリと称する）等の特定アプリを使用して、個人所有のユーザ端末３から中継サーバ４を経由して業務システム２にアクセスし、その業務画面をユーザ端末３に転送する。ユーザ端末３が中継サーバ４経由で業務システム２に対して遠隔操作を可能にする。しかも、業務システム２は、ユーザ端末３に対して業務画面を転送するものの、ユーザ端末３とのセッションが切断されると、その業務画面をユーザ端末３内に残さない仕組みを採用している。
【００９０】
業務システム２は、例えば、企業内の業務データを管理すると共に、企業の各種業務をセキュアな状態で実行可能にする特定システムである。ユーザ端末３は、例えば、企業から提供された端末ではなく、企業内の社員が個人的に所有する、例えば、スマートフォンやタブレット等のＢＹＯＤの通話端末装置である。
【００９１】
中継サーバ４は、業務システム２とユーザ端末３との間をセキュアな状態で中継する、例えば、データセンタ等の仮想Ｗｅｂブラウザを提供するＧＷ（Ｇａｔｅ  Ｗａｙ）サーバである。中継サーバ４は、例えば、ユーザ端末３と無線で接続すると共に、業務システム２と有線で接続するものとする。更に、中継サーバ４は、ユーザ端末３が業務アプリを用いてセキュアな状態で業務システム２にアクセスを可能にし、業務システム２側の業務画面をユーザ端末３に転送する。更に、中継サーバ４は、ユーザ端末３が業務システム２に対して遠隔操作を可能にする。
【００９２】
中継サーバ４は、中継部１１と、ＣＰＵ１２と、管理テーブル１３とを有する。中継部１１は、ユーザ端末３と業務システム２との間で業務画面やコマンド等を相互に中継する。ＣＰＵ１２は、中継サーバ４全体を制御する。
【００９３】
図１０は、管理テーブル１３の一例を示す説明図である。図１０に示す管理テーブル１３は、ユーザ端末３を識別する端末ＩＤ毎に、アプリ名、着信番号およびセッション維持時間を対応付けて管理する記憶部である。アプリ名は、電話着信中のユーザ端末３が実行中の業務アプリを識別する情報である。着信番号は、ユーザ端末３への電話着信の発信元である相手先の電話番号である。セッション維持時間は、ユーザ端末３の電話着信に対する応答、すなわち通話開始から、業務システム２がユーザ端末３とのセッションを維持若しくは保留できる時間である。
【００９４】
図１０に示すように端末ＩＤの“端末Ａ”は、着信番号が“０８０−ｘｘｘ−ｘｘ”の場合、アプリ名の“業務Ａ”のセッション維持時間を“３分”、アプリ名の“業務Ｂ”のセッション維持時間を“１分”とする。また、端末ＩＤの“端末Ａ”は、着信番号が“０９０−ｙｙｙ−ｘｘ”の場合、アプリ名が確定されていなくても、全ての業務アプリにおいてセッション維持時間を“３分”とする。なお、管理テーブル１３の内容は、例えば、ユーザ端末３の利用者の登録申請等で予め登録し、その維持時間も業務システム２の負荷に応じて適宜登録可能である。
【００９５】
ＣＰＵ１２は、検索部１２Ａと、提供部１２Ｂとを有する。検索部１２Ａは、後述するユーザ端末３からの時間要求に応じて、ユーザ端末３の端末ＩＤに関わる着信番号に対応したセッション維持時間を管理テーブル１３から検索する。提供部１２Ｂは、検索部１２Ａで検索されたセッション維持時間を、時間要求のユーザ端末３に提供する通知部である。
【００９６】
ユーザ端末３は、通信部３１と、表示部３２と、操作部３３と、音声入出力部３４と、音声バッファ３５と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３６と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３７と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３８とを有する。通信部３１は、通常の無線通信や、業務アプリを使用しての中継サーバ４との間の通信を司る通信インタフェースである。表示部３２は、各種情報を画面表示する出力インタフェースである。操作部３３は、各種コマンドを入力する入力インタフェースである。なお、操作部３３は、例えば、表示部３２の表示画面上のタッチ操作を検出するタッチパネル等に相当する。
【００９７】
音声入出力部３４は、例えば、マイクやスピーカ等に相当し、音声を入出力する入出力インタフェースに相当する。音声バッファ３５は、例えば、ユーザ端末３内の業務アプリ３６Ａを利用した音声データを一時的に格納する領域である。ＲＯＭ３６は、各種データや、例えば、業務アプリ３６Ａや電話アプリ３６Ｂ等の各種プログラムを格納する領域である。業務アプリ３６Ａは、ユーザ端末３をＢＹＯＤとして、中継サーバ４を経由して業務システム２とのセッションを確立し、業務システム２に対してセキュアな状態でアクセス可能にし、業務システム２からの業務画面を表示部３２に画面表示する特定アプリである。電話アプリ３６Ｂは、例えば、キャリア事業者の無線通信やインターネット通信等の電話機能を実現するアプリである。ＲＡＭ３７は、各種情報を格納する領域である。
【００９８】
ＣＰＵ３８は、ユーザ端末３全体を制御する部位である。ＣＰＵ３８は、ＲＯＭ３６に格納された通話処理プログラム３６Ｃ、業務アプリ３６Ａおよび電話アプリ３６Ｂを読み出し、読み出された通話処理プログラム３６Ｃ、業務アプリ３６Ａおよび電話アプリ３６Ｂに基づき各種プロセスを機能として構成する。ＣＰＵ３８は、業務アプリ実行部４１と、電話アプリ実行部４２と、第１の取得部４３と、要求部４４と、第２の取得部４５と、判定部４６と、制御部４７とを有する。
【００９９】
業務アプリ実行部４１は、業務アプリ３６Ａに基づき、業務アプリ３６Ａに関わる各種処理動作を実行する。電話アプリ実行部４２は、電話アプリ３６Ｂに基づき、電話アプリ３６Ｂに関わる各種処理動作を実行する。第１の取得部４３は、電話アプリ３６Ｂに関し、通信部３１を通じてユーザ端末３への電話着信を検出する。第１の取得部４３は、電話着信を検出すると、電話着信に関わる発信元の電話番号である着信番号を取得する。要求部４４は、第１の取得部４３にて取得した着信番号に関わる維持時間を要求する時間要求を中継サーバ４に通知する。第２の取得部４５は、中継サーバ４に対する時間要求に応じて、中継サーバ４から着信番号に関わる維持時間を取得する。
【０１００】
制御部４７は、第２の取得部４５で維持時間を取得した場合、現在着信中の着信内容等を示す着信画面５１を業務アプリ画面３２Ａ上に表示する。図１１Ａ、１１Ｂ、および１１Ｃは、ユーザ端末３の表示画面の一例を示す説明図である。図１１Ａに示す着信画面５１は、発信者名５１Ａ、着信番号５１Ｂ、維持時間５１Ｃ、拒否ボタン５１Ｄおよび通話ボタン５１Ｅを有する。発信者名５１Ａは、発信者を識別する氏名等である。着信番号５１Ｂは、電話着信の発信元の電話番号である。維持時間５１Ｃは、セッション維持時間である。拒否ボタン５１Ｄは、ボタン操作に応じて現在の電話着信を拒否するボタンである。通話ボタン５１Ｅは、ボタン操作に応じて現在の電話着信に応答するボタンである。制御部４７は、着信画面５１上の通話ボタン５１Ｅのボタン操作、すなわち応答操作を検出すると、業務アプリ３６Ａをバックグランドに移行する。なお、バックグランドへの移行では、中継サーバ４を通じて、ユーザ端末３と業務システム２との間のセッションを維持した状態である。
【０１０１】
判定部４６は、業務アプリ３６Ａをバックグランドに移行後、現在実行中の業務アプリ３６Ａが音声を使用するアプリであるか否かを、例えば、音声バッファ３５が使用中であるか否かで判定する。
【０１０２】
制御部４７は、判定部４６で音声バッファ３５を使用中の場合、電話アプリ３６Ｂの通話の邪魔にならない程度に業務アプリ３６Ａ側の音量を所定レベルまで低下させる。制御部４７は、業務アプリ３６Ａの側の音量を所定レベルまで低下させた後、着信応答動作を電話アプリ実行部４２に指示する。電話アプリ実行部４２は、電話着信に対して応答動作を実行し、相手先との通話を開始する。そして、制御部４７は、図１１Ｂに示すように電話アプリ画面３２Ｂを表示部３２に画面表示する。電話アプリ画面３２Ｂは、通話相手名５２Ａ、通話相手先の電話番号５２Ｂ、維持時間５２Ｃ、残り時間５２Ｄおよび通話終了ボタン５２Ｅを有する。通話相手名５２Ａは、通話相手先を識別する氏名である。電話番号５２Ｂは、通話相手先の電話番号である。維持時間５２Ｃは、セッション維持時間である。残り時間５２Ｄは、通話開始から計時動作を開始した維持時間５２Ｃの残り時間である。通話終了ボタン５２Ｅは、ボタン操作に応じて通話を終了するボタンである。
【０１０３】
制御部４７は、電話アプリ３６Ｂの電話着信に対する応答動作を実行した場合、維持時間の計時動作を開始し、維持時間の残り時間５２Ｄを電話アプリ画面３２Ｂに画面表示する。
【０１０４】
制御部４７は、通話中に維持時間が経過した場合、バックグランドに移行中の業務アプリ３６Ａを終了する。すなわち、ユーザ端末３は、中継サーバ４経由での業務システム２とのセッションを切断する。
【０１０５】
制御部４７は、維持時間が経過する前に、電話アプリ３６Ｂの通話が終了した場合に、バックグランドに移行中の業務アプリ３６Ａをフォアグランドに移行する。そして、制御部４７は、業務アプリ３６Ａのフォアグランドの移行に応じて、図１１Ｃに示すように、業務アプリ画面３２Ａを表示部３２に画面表示する。その結果、通話終了後も、業務システム２とのセッションが継続しているため、業務アプリ３６Ａを使用した業務をスムーズに継続できる。
【０１０６】
次に、本実施例のＢＹＯＤシステム１の動作について説明する。図１２Ａおよび１２Ｂは、着信応答処理に関わるユーザ端末３内のＣＰＵ３８の処理動作の一例を示すフローチャートである。図１２Ａおよび１２Ｂに示す着信応答処理は、業務アプリ実行中に電話着信を検出した場合、電話着信の着信番号に関わる維持時間内で業務システム２とのセッションを維持しながら電話着信に関わる通話を可能にする処理である。
【０１０７】
図１２ＡにおいてＣＰＵ３８内の第１の取得部４３は、電話着信を検出したか否かを判定する（Ｓ１１）。第１の取得部４３は、電話着信を検出した場合に（Ｓ１１ＹＥＳ）、業務アプリ３６Ａを実行中であるか否かを判定する（Ｓ１２）。
【０１０８】
ＣＰＵ３８内の要求部４４は、業務アプリ３６Ａが実行中の場合に（Ｓ１２ＹＥＳ）、着信番号および実行中の業務アプリ３６Ａのアプリ名を取得する（Ｓ１３）。なお、要求部４４は、電話着信に応じて発信元の電話番号である着信番号を取得する。更に、要求部４４は、現在実行中の業務アプリ実行部４１を通じて現在実行中の業務アプリ３６Ａを識別するアプリ名を取得する。
【０１０９】
要求部４４は、自分の端末ＩＤおよび着信番号に関わる維持時間を中継サーバ４に要求する（Ｓ１４）。なお、中継サーバ４は、後述する提供処理に応じて端末ＩＤおよび着信番号に関わる維持時間を管理テーブル１３から検索する。第２の取得部４５は、端末ＩＤおよび着信番号に関わる維持時間を中継サーバ４から取得したか否かを判定する（Ｓ１５）。
【０１１０】
第２の取得部４５は、維持時間を取得した場合（Ｓ１５ＹＥＳ）、図１１Ａに示すように取得した維持時間５１Ｃおよび着信内容を示す着信画面５１を業務アプリ画面３２Ａ上に画面表示する（Ｓ１６）。
【０１１１】
制御部４７は、電話アプリ実行部４２を通じて着信画面５１内の通話ボタン５１Ｅのボタン操作、すなわち応答操作を検出したか否かを判定する（Ｓ１７）。制御部４７は、応答操作を検出した場合に（Ｓ１７ＹＥＳ）、実行中の業務アプリ３６Ａをバックグランドに移行する（Ｓ１８）。なお、ユーザ端末３は、業務アプリ３６Ａをバックグランドに移行しているため、業務システム２とのセッションを継続している。
【０１１２】
判定部４６は、音声バッファ３５を使用中であるか否かを判定する（Ｓ１９）。なお、制御部４７は、音声バッファ３５を使用中の場合、音声を使用する業務アプリ３６Ａを実行中と認識する。音声を使用する業務アプリ３６Ａには、Ｗｅｂ会議のアプリや動画コンテンツのアプリ等がある。制御部４７は、音声バッファ３５を使用中の場合（Ｓ１９ＹＥＳ）、業務アプリ実行部４１を通じて、業務アプリ３６Ａの音量を所定レベルまで低下する（Ｓ２０）。
【０１１３】
制御部４７は、電話アプリ実行部４２を通じて、電話着信の応答動作を実行し、図１１Ｂに示すように電話アプリ画面３２Ｂを表示部３２に画面表示する（Ｓ２１）。制御部４７は、電話アプリ画面３２Ｂを画面表示した後、維持時間における残り時間の計時動作を開始する（Ｓ２２）。
【０１１４】
制御部４７は、残り時間の計時動作に応じて維持時間の残り時間５２Ｄを電話アプリ画面３２Ｂに画面表示する（Ｓ２３）。なお、ユーザ端末３側の利用者は、電話アプリ画面３２Ｂ内の残り時間５２Ｄを見て維持時間の残り時間を認識できる。制御部４７は、維持時間が経過したか否か、すなわち、維持時間の残り時間があるか否かを判定する（Ｓ２４）。制御部４７は、残り時間がある場合に（Ｓ２４ＹＥＳ）、電話アプリ実行部４２を通じて電話アプリ３６Ｂを終了したか否かを判定する（Ｓ２５）。なお、制御部４７は、電話アプリ画面３２Ｂ上の通話終了ボタン５２Ｅのボタン操作に応じて通話終了、すなわち電話アプリ３６Ｂを終了する。
【０１１５】
制御部４７は、電話アプリ３６Ｂを終了した場合（Ｓ２５ＹＥＳ）、バックグランド中の業務アプリ３６Ａを検出したか否かを判定する（Ｓ２６）。制御部４７は、バックグランド中の業務アプリ３６Ａを検出した場合（Ｓ２６ＹＥＳ）、業務アプリ３６Ａをフォアグランドに戻し（Ｓ２７）、図１２Ａおよび１２Ｂに示す処理動作を終了する。その結果、ユーザ端末３の利用者は、業務システム２とのセッションを維持しながら、業務アプリ３６Ａを継続して使用できるため、業務システム２に接続するための操作負担が無くなる。
【０１１６】
また、制御部４７は、維持時間の残り時間がない場合（Ｓ２４ＮＯ）、業務アプリ実行部４１を通じて、バックグランドに移行中の業務アプリ３６Ａを終了する（Ｓ２８）。制御部４７は、業務アプリ３６Ａを終了した後、維持時間の終了を電話アプリ画面３２Ｂに画面表示し（Ｓ２９）、電話アプリ３６Ｂを終了したか否かを判定する（Ｓ３０）。なお、利用者は、その維持時間の終了の表示を見て、維持時間の終了、すなわち業務システム２とのセッション切断を認識できる。
【０１１７】
制御部４７は、電話アプリ３６Ｂを終了するまで待機し（Ｓ３０ＮＯ）、電話アプリ３６Ｂを終了した場合（Ｓ３０ＹＥＳ）、電話アプリ画面３２Ｂから業務システム２とのセッション確立の要求画面に切り替え（Ｓ３１）、図１２Ａおよび１２Ｂに示す処理動作を終了する。なお、ユーザ端末３の利用者は、要求画面上でログインＩＤやパスワード等を入力して業務システム２とのセッションを再確立できる。
【０１１８】
制御部４７は、電話アプリ３６Ｂを終了したのではない場合（Ｓ２５ＮＯ）、残り時間５２Ｄを電話アプリ画面３２Ｂに表示すべく、Ｓ２３に移行する。制御部４７は、バックグランド中の業務アプリ３６Ａがない場合（Ｓ２６ＮＯ）、要求画面に切替表示すべく、Ｓ３１に移行する。
【０１１９】
また、第１の取得部４３は、電話着信を検出したのではない場合（Ｓ１１ＮＯ）、図１２Ａおよび１２Ｂに示す処理動作を終了する。制御部４７は、業務アプリ３６Ａを実行中でない場合（Ｓ１２ＮＯ）、電話アプリ実行部４２を通じて、電話着信に対する応答操作を検出したか否かを判定する（Ｓ３２）。
【０１２０】
制御部４７は、電話着信に対する応答操作を検出した場合（Ｓ３２ＹＥＳ）、着信応答動作を実行して電話アプリ画面３２Ｂを表示部３２に画面表示し（Ｓ３３）、電話アプリ３６Ｂを終了したか否かを判定する（Ｓ３４）。制御部４７は、電話アプリ３６Ｂを終了した場合（Ｓ３４ＹＥＳ）、電話アプリ画面３２Ｂから初期画面に表示部３２を切替表示し（Ｓ３５）、図１２Ａおよび１２Ｂに示す処理動作を終了する。なお、初期画面とは、いわゆる待ち受け画面である。
【０１２１】
制御部４７は、電話着信に対する応答操作を検出しなかった場合（Ｓ３２ＮＯ）、電話着信中であるか否かを判定すべく、Ｓ１１に移行する。制御部４７は、電話アプリ３６Ｂを終了したのではない場合（Ｓ３４ＮＯ）、電話アプリ３６Ｂを終了したか否かを判定すべく、Ｓ３４に移行する。
【０１２２】
制御部４７は、中継サーバ４から端末ＩＤおよび着信番号に関わる維持時間を取得していない場合（Ｓ１５ＮＯ）、維持時間を取得したか否かを判定すべく、Ｓ１５に移行する。
【０１２３】
また、制御部４７は、電話着信に対する応答操作を検出していない場合（Ｓ１７ＮＯ）、現在着信中であるか否かを判定する（Ｓ３６）。制御部４７は、現在着信中の場合（Ｓ３６ＹＥＳ）、電話着信に対する応答操作を検出したか否かを判定すべく、Ｓ１７に移行する。制御部４７は、現在着信中でない場合（Ｓ３６ＮＯ）、図１２Ａおよび１２Ｂに示す処理動作を終了する。
【０１２４】
制御部４７は、音声バッファ３５を使用中でない場合（Ｓ１９ＮＯ）、電話アプリ実行部４２を通じて、電話着信に対する応答動作を実行し、業務アプリ画面３２Ａから電話アプリ画面３２Ｂに切替表示すべく、Ｓ２１に移行する。
【０１２５】
図１２Ａおよび１２Ｂに示す着信応答処理を実行する制御部４７は、業務アプリ実行中に電話着信を検出すると、自端末の端末ＩＤおよび着信番号に関わる維持時間を中継サーバ４に要求し、維持時間を電話アプリ画面３２Ｂに画面表示する。その結果、利用者は、電話アプリ画面３２Ｂの維持時間５２Ｃを見て、着信応答前に、業務システム２とのセッションの維持時間を認識できる。
【０１２６】
制御部４７は、電話アプリ画面３２Ｂ上で電話着信に対する応答操作を検出した場合、業務アプリ３６Ａをバックグランドに移行し、音声バッファ３５を使用中の場合に、業務アプリ３６Ａの音量を低下して電話着信に対する応答動作を実行する。その結果、利用者は、業務システム２とのセッションを維持しながら、電話着信に応答できる。しかも、業務アプリ３６Ａによる音の混在を無くすことで、業務システム２とのセッションを維持しながら、電話アプリ３６Ｂの通話を円滑に行うことができる。
【０１２７】
制御部４７は、音声バッファ３５を使用中でない場合、電話着信に対する応答動作を実行する。その結果、利用者は、業務システム２とのセッションを維持しながら、電話着信に応答できる。
【０１２８】
更に、制御部４７は、電話着信に対する応答動作を実行し、維持時間の残り時間を電話アプリ画面３２Ｂに画面表示する。その結果、利用者は、電話アプリ画面３２Ｂ上の残り時間を見て業務システム２とのセッション維持時間の残り時間を認識できる。
【０１２９】
制御部４７は、維持時間経過前に通話が終了した場合、バックグランドに移行中の業務アプリ３６Ａをフォアグランドに移行した。その結果、利用者は、通話終了後でも、業務システム２とのセッションを維持しているため、業務アプリ３６Ａを継続できる。
【０１３０】
制御部４７は、維持間経過以降に通話が終了した場合、維持時間経過以降に業務システム２とのセッションを切断しながら、通話を維持できる。その結果、業務システム２は、やみくもにセッションを維持することによる処理負担を軽減できる。
【０１３１】
更に、制御部４７は、維持経過以降に通話が終了した場合、維持時間終了を電話アプリ画面３２Ｂに画面表示する。その結果、利用者は、電話アプリ画面３２Ｂ上の維持時間終了を見て維持時間の終了、すなわち業務システム２とのセッション切断を認識できる。
【０１３２】
図１３は、提供処理に関わる中継サーバ４内のＣＰＵ１２の処理動作の一例を示すフローチャートである。図１３に示す提供処理は、ユーザ端末３からの電話着信の着信番号に関わる時間要求に応じて、着信番号に関わる維持時間を管理テーブル１３から検索し、その維持時間をユーザ端末３に提供する処理である。
【０１３３】
図１３において中継サーバ４のＣＰＵ１２は、ユーザ端末３から時間要求を検出したか否かを判定する（Ｓ４１）。なお、時間要求には、時間要求を要求したユーザ端末３を識別する端末ＩＤ、当該ユーザ端末３に対する電話着信の着信番号および、当該ユーザ端末３で実行中の業務アプリ３６Ａを識別するアプリ名を含む。
【０１３４】
ＣＰＵ１２内の検索部１２Ａは、時間要求を検出した場合（Ｓ４１ＹＥＳ）、時間要求内の端末ＩＤ、着信番号および業務アプリ名に基づき、維持時間を管理テーブル１３内から検索する（Ｓ４２）。検索部１２Ａは、端末ＩＤ、着信番号およびアプリ名に対応したセッション維持時間が管理テーブル１３内にあるか否かを判定する（Ｓ４３）。
【０１３５】
ＣＰＵ１２内の提供部１２Ｂは、端末ＩＤ、着信番号およびアプリ名に対応したセッション維持時間がある場合（Ｓ４３ＹＥＳ）、このセッション維持時間を該当ユーザ端末３に提供し（Ｓ４４）、図１３に示す処理動作を終了する。
【０１３６】
検索部１２Ａは、端末ＩＤ、着信番号およびアプリ名に対応したセッション維持時間が管理テーブル１３内にない場合（Ｓ４３ＮＯ）、端末ＩＤおよび着信番号に対応したセッション維持時間が管理テーブル１３内にあるか否かを判定する（Ｓ４５）。
【０１３７】
提供部１２Ｂは、端末ＩＤおよび着信番号に対応したセッション維持時間が管理テーブル１３内にある場合（Ｓ４５ＹＥＳ）、このセッション維持時間を該当ユーザ端末３に提供し（Ｓ４６）、図１３に示す処理動作を終了する。
【０１３８】
検索部１２Ａは、端末ＩＤおよび着信番号に対応したセッション維持時間が管理テーブル１３内にない場合（Ｓ４５ＮＯ）、維持時間なしを該当ユーザ端末３に提供し（Ｓ４７）、図１３に示す処理動作を終了する。ＣＰＵ１２は、ユーザ端末３から時間要求を検出しなかった場合（Ｓ４１ＮＯ）、図１３に示す処理動作を終了する。
【０１３９】
図１３に示す提供処理を実行する中継サーバ４のＣＰＵ１２は、ユーザ端末３からの時間要求に応じて、時間要求内の端末ＩＤ、アプリ名および着信番号に対応した維持時間を管理テーブル１３から取得し、取得した維持時間をユーザ端末３に提供できる。
【０１４０】
ＣＰＵ１２は、時間要求内の端末ＩＤおよび着信番号に対応した維持時間を管理テーブル１３から取得し、取得した維持時間をユーザ端末３に提供できる。
【０１４１】
ＣＰＵ１２は、時間要求内の端末ＩＤおよび着信番号に対応した維持時間が管理テーブル１３内にない場合、維持時間なしをユーザ端末３に提供できる。
【０１４２】
本実施例のユーザ端末３は、業務アプリ３６Ａを用いて業務システム２とのセッション中に電話着信を検出すると、電話着信の着信番号を取得し、着信番号に対応する維持時間を中継サーバ４から取得する。更に、ユーザ端末３は、維持時間を取得すると、電話着信の応答に応じて、維持時間内で業務システム２とのセッションを維持するように業務アプリ３６Ａをバックグランドに移行して電話着信の通話を可能にする。その結果、業務システム２とのセッション維持および通話接続を両立し、利用者の利便性および業務システム２の負荷軽減の両立が図れる。
【０１４３】
ユーザ端末３は、電話着信の応答から維持時間の経過前に通話が終了した場合に、業務アプリ３６Ａをバックグランドからフォアグランドに移行する。その結果、通話終了後に業務アプリ３６Ａをスムーズに再開できる。
【０１４４】
ユーザ端末３は、電話着信の応答から維持時間の経過以降に通話が終了した場合に、業務アプリ３６Ａを用いて業務システム２とのセッションの再確立を要求する画面を表示する。その結果、再確立を要求する画面の入力操作で業務アプリ３６Ａを再開できる。
【０１４５】
ユーザ端末３は、電話着信の応答から維持時間が経過した場合、業務システム２とのセッションを切断する。その結果、業務システム２とのセッション時間を制限することで、セッション保留による業務システム２側の処理負担を軽減できる。
【０１４６】
ユーザ端末３は、業務アプリ３６Ａが音声を使用するアプリの場合に、業務アプリ３６Ａの音量を所定レベルまで低下させるため、バックグランドに移行中の業務アプリ３６Ａの音声による通話の阻害を防止できる。
【０１４７】
ユーザ端末３は、業務アプリ３６Ａのバックグランドへの移行中に維持時間の経過を予告する予告情報として残り時間を画面表示する。その結果、ユーザ端末３の利用者は、残り時間を見て維持時間の残り時間を認識できる。
【０１４８】
なお、上記実施例では、図１２ＡのＳ１４で端末ＩＤ、着信番号およびアプリ名に対応した維持時間を中継サーバ４に要求するようにしたが、アプリ名に関係なく、端末ＩＤおよび着信番号に対応した維持時間を要求するようにしても良い。同様に、端末ＩＤおよびアプリ名に関係なく、着信番号に対応した維持時間を要求するようにしても良い。
【０１４９】
さらに、第二の実施例に係る管理テーブルを、ユーザ端末３が保持するとしてもよい。この場合には、中継サーバ４に問い合わせることなく、着信番号等に対応した維持時間を、管理テーブルから第二の取得部４５が取得する。
【０１５０】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１５１】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）（またはＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ）等のマイクロ・コンピュータ）上で、その全部または任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で実行するプログラム上、またはワイヤードロジックによるハードウェア上で、その全部または任意の一部を実行するようにしても良いことは言うまでもない。
【０１５２】
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムを端末装置内のＣＰＵ等のプロセッサで実行させることによって実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行する通話端末装置の一例を説明する。図１４は、通話処理プログラムを実行する通話端末装置の一例を示す説明図である。
【０１５３】
図１４に示す通話処理プログラムを実行する通話端末装置１００は、通信部１１０と、操作部１２０と、ＲＯＭ１３０と、ＲＡＭ１４０と、ＣＰＵ１５０とを有する。通信部１１０、操作部１２０、ＲＯＭ１３０、ＲＡＭ１４０およびＣＰＵ１５０は、バス１６０を介して接続される。
【０１５４】
そして、ＲＯＭ１３０には、上記実施例と同様の機能を発揮する通話処理プログラムが予め記憶されている。ＲＯＭ１３０は、通話処理プログラムとして第１の取得プログラム１３０Ａ、第２の取得プログラム１３０Ｂおよび制御プログラム１３０Ｃが記憶されている。なお、ＲＯＭ１３０ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体に通話処理プログラムが記録されていても良い。また、記録媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。
【０１５５】
そして、ＣＰＵ１５０は、第１の取得プログラム１３０ＡをＲＯＭ１３０から読み出して第１の取得プロセス１５０Ａとして機能する。更に、ＣＰＵ１５０は、第２の取得プログラム１３０ＢをＲＯＭ１３０から読み出して第２の取得プロセス１５０Ｂとして機能する。ＣＰＵ１５０は、制御プログラム１３０ＣをＲＯＭ１３０から読み出して制御プロセス１５０Ｃとして機能する。
【０１５６】
通話端末装置１００は、特定アプリケーションを用いて特定システムとのセッション中に電話着信を検出すると、電話着信の着信番号を取得する。通話端末装置１００は、着信番号に対応する、特定システムとのセッションを維持可能にする維持時間をサーバから取得する。通話端末装置１００は、維持時間を取得すると、電話着信の応答に応じて、維持時間内で特定システムとのセッションを維持するように特定アプリケーションをバックグランドに移行して、電話着信の通話を可能にする。その結果、業務システムとのセッション維持および通話接続を両立できる。
【０１５７】
以上の実施例に関し、更に以下の付記を開示する。
（付記１）
セッション管理装置が、
通信装置からの要求に応じて、該通信装置とのセッションを確立し、
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、
前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する
処理を実行することを特徴とするセッション管理方法。
（付記２）
前記セッション管理装置は、前記通信装置と業務システムとの通信を中継する中継装置であって、
前記セッション管理装置は、
前記通信装置からの前記業務システムに対するリクエストを、該業務システムに転送し、
前記業務システムによる該リクエストに対する処理結果を取得し、
前記処理結果を表示する画面の画面データを、前記通信装置に送信する
処理を実行することを特徴とする付記１に記載のセッション管理方法。
（付記３）
前記セッション管理装置は、
前記第一の時間間隔または前記第二の時間間隔で延長された前記維持時間を経過したセッションを切断する
処理を実行することを特徴とする付記１または２に記載のセッション管理方法。
（付記４）
前記第二の時間間隔は、前記通信装置毎に、または、前記他の通信装置毎に、設定されることを特徴とする付記１乃至付記３のいずれか一つに記載のセッション管理方法。
（付記５）
通信装置からの要求に応じて、該通信装置とのセッションを確立する制御部と
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長するとともに、前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長するセッション管理部と、
を有することを特徴とするセッション管理装置。
（付記６）
セッション管理装置に、
通信装置からの要求に応じて、該通信装置とのセッションを確立し、
前記通信装置との通信実績に応じて、該セッションの維持時間を第一の時間間隔だけ延長し、
前記通信装置から、他の通信装置との通話が開始されたことを示す通知を受信した場合に、該セッションの維持時間を、前記第一の時間間隔よりも長い第二の時間間隔だけ延長する
処理を実行させることを特徴とするセッション管理プログラム。
（付記７）
通信装置が、
サーバの処理結果を取得するための特定のアプリケーションを用いて、前記通信装置と該サーバとのセッションを確立し、
前記セッションが維持されている間に、他の通信装置からの着信があった場合、前記サーバとの前記セッションを所定の時間内に限り維持するように前記特定アプリケーションをバックグランドに移行するとともに、前記着信の通話を可能にする
処理を実行することを特徴とする通話処理方法。
（付記８）
前記通信装置は、
前記所定の時間内、所定時間間隔ごとに、前記サーバにパケットを送信することで、前記セッションを維持することを特徴とする付記７に記載の通話処理方法。
（付記９）
前記通信装置が、
前記着信の応答から前記所定の時間の経過前に前記通話が終了した場合に、前記特定アプリケーションを前記バックグランドからフォアグランドに移行する
処理を実行することを特徴とする付記７または８に記載の通話処理方法。
（付記１０）
通信装置とサーバとを含むシステムが、
前記通信装置と前記サーバとの間の通信実績に応じて第一の時間間隔だけ維持される前記通信装置と前記サーバとの間のセッションを確立し、
前記通信装置に対する他の通信装置からの着信を検知した場合、前記セッションを、前記第一の時間間隔よりも長い第二の時間間隔だけ維持する
処理を実行することを特徴とするセッション管理方法。
（付記１１）
特定アプリケーションを用いて特定システムとのセッション中に電話着信を検出すると、前記電話着信の着信番号を取得し、
前記着信番号に対応する、前記特定システムとのセッションを維持可能にする維持時間をサーバから取得し、
前記維持時間を取得すると、前記電話着信の応答に応じて、前記維持時間内で前記特定システムとのセッションを維持するように前記特定アプリケーションをバックグランドに移行して、前記電話着信の通話を可能にする
処理を実行することを特徴とする通話処理方法。
（付記１２）
前記電話着信の応答から前記維持時間の経過前に前記通話が終了した場合に、前記特定アプリケーションを前記バックグランドからフォアグランドに移行する
処理を実行することを特徴とする付記１１に記載の通話処理方法。
（付記１３）
前記電話着信の応答から前記維持時間の経過以降に前記通話が終了した場合に、前記特定アプリケーションを用いて前記特定システムとのセッションの再確立を要求する画面を表示する
処理を実行することを特徴とする付記１１または１２に記載の通話処理方法。
（付記１４）
前記特定アプリケーションは、
音声を使用するアプリケーションであることを特徴する付記１１乃至１３のいずれか一つに記載の通話処理方法。
（付記１５）
前記特定アプリケーションの前記バックグランドへの移行中に、前記維持時間の経過を予告する予告情報を画面表示する
処理を実行することを特徴とする付記１１乃至１４のいずれか一つに記載の通話処理方法。
（付記１６）
特定アプリケーションを用いて特定システムとのセッション中に電話着信を検出すると、前記電話着信の着信番号を取得する第１の取得部と、
前記着信番号に対応する、前記特定システムとのセッションを維持可能にする維持時間をサーバから取得する第２の取得部と、
前記維持時間を取得すると、前記電話着信の応答に応じて、前記維持時間内で前記特定システムとのセッションを維持するように前記特定アプリケーションをバックグランドに移行して、前記電話着信の通話を可能にする制御部と、
を有することを特徴とする通話端末装置。
（付記１７）
通話端末装置に、
特定アプリケーションを用いて特定システムとのセッション中に電話着信を検出すると、前記電話着信の着信番号を取得し、
前記着信番号に対応する、前記特定システムとのセッションを維持可能にする維持時間をサーバから取得し、
前記維持時間を取得すると、前記電話着信の応答に応じて、前記維持時間内で前記特定システムとのセッションを維持するように前記特定アプリケーションをバックグランドに移行して、前記電話着信の通話を可能にする
処理を実行させることを特徴とする通話処理プログラム。
（付記１８）
通話端末装置と、前記通話端末装置が特定アプリケーションを用いて特定システムとのセッションを確立するサーバ装置とを有する通話システムであって、
前記通話端末装置は、
前記特定システムとのセッション中に電話着信を検出すると、前記電話着信の着信番号を取得する第１の取得部と、
前記着信番号に対応する前記維持時間を要求する要求部と
を有し、
前記サーバ装置は、
着信番号毎に、前記特定システムとのセッションを維持可能にする維持時間を記憶した記憶部と、
前記通話端末装置からの要求に応じて、当該着信番号に対応した維持時間を前記記憶部から検索する検索部と、
前記検索部で検索された前記維持時間を前記通話端末装置に通知する通知部と
を有し、
前記通話端末装置は、
前記サーバ装置から前記維持時間を取得する第２の取得部と、
前記維持時間を取得すると、前記電話着信の応答に応じて、前記維持時間内で前記特定システムとのセッションを維持するように前記特定アプリケーションをバックグランドに移行して、前記電話着信の通話を可能にする制御部と
を有することを特徴とする通話システム。
【符号の説明】
【０１５８】
１  ＢＹＯＤシステム
２  業務システム
３  ユーザ端末
４  中継サーバ
１２Ａ  検索部
１２Ｂ  提供部
１３  管理テーブル
３６Ａ  業務アプリ
４３  第１の取得部
４４  要求部
４５  第２の取得部
４６  判定部
４７  制御部
１０００  ＢＹＯＤシステム
３００  ユーザ端末
３１１  通信部
３１２  制御部
３１３  記憶部
３１４  表示部
３１５  操作部
３１６  音声入出力部
４００  中継サーバ
４１１  中継部
４１２  制御部
４１３  記憶部
【図１】
2016033811.tif 000003
【図２】
2016033811.tif 000004
【図３】
2016033811.tif 000005
【図４】
2016033811.tif 000006
【図５】
2016033811.tif 000007
【図６】
2016033811.tif 000008
【図７】
2016033811.tif 000009
【図８】
2016033811.tif 000010
【図９】
2016033811.tif 000011
【図１０】
2016033811.tif 000012
【図１１】
2016033811.tif 000013
【図１４】
2016033811.tif 000014
【図１２Ａ】
2016033811.tif 000015
【図１２Ｂ】
2016033811.tif 000016
【図１３】
2016033811.tif 000017