(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0042】
以下に本発明の一実施形態について図面を参照して説明する。
図1には、本実施形態のサービス提供システム10の全体構成が示されている。
図2および
図3には、サービス提供システム10による起動からログインまでの処理の流れ、およびログイン後のサービス提供画面の表示処理の流れがフローチャートで示されている。
図4には、第2の顧客端末50における制御用画面の取得、端末利用可否判定、およびその判定結果に伴うメッセージ表示等の処理の流れの詳細が示されている。また、
図5および
図6には、第2の顧客端末50における画面遷移が示されている。さらに、
図7には、第2の顧客端末50における端末制御の例が示され、
図8には、制御用画面の表示用データ(HTML)の記述例が示されている。
【0043】
本実施形態では、一例として、サービス提供システム10は、顧客に対し、顧客の保有する金融資産の残高表示を含む金融サービスを提供する銀行等の金融機関のシステムであるものとする。なお、本発明のサービス提供システムは、金融機関のシステムに限定されるものではなく、例えば、チケットやホテル等の予約システム、商品購入システム、語学学習システム等、オンラインサービスの提供を行う各種のシステムに広く適用することができる。
【0044】
<サービス提供システム10の全体構成>
【0045】
図1において、サービス提供システム10は、顧客に対し、顧客の保有する金融資産の残高情報等の表示を含む金融サービスを提供する各種処理を実行するとともに各種処理に必要なデータを記憶するサービス提供サーバ20を備えている。このサービス提供サーバ20には、ネットワーク1を介して顧客が操作する第1の顧客端末40および第2の顧客端末50が接続されるとともに、通信回線2を介してシステム管理者が操作する管理者端末70が接続されている。また、ネットワーク1には、第2の顧客端末50に搭載する端末アプリケーションプログラムを配信供給するアプリ配信サーバ80が接続されている。
【0046】
ここで、ネットワーク1は、本実施形態では、主としてインターネットを中心に構成され、有線であるか、無線であるか、有線・無線の混在型であるかは問わない。通信回線2は、例えばLANやイントラネット等の金融機関の内部ネットワークであるが、ネットワーク1としてもよい。
【0047】
<第1の顧客端末40と、第2の顧客端末50との関係>
【0048】
第1の顧客端末40および第2の顧客端末50のいずれも、本実施形態では、一例として、銀行等の金融機関の顧客が操作する端末装置であり、コンピュータ(広義のコンピュータであり、PCのみならず、スマートフォンやタブレット端末等のモバイル機器を含む。)により構成され、例えばマウスやキーボードやタッチパッド等の入力手段と、例えば液晶ディスプレイ等の表示手段とを備えている。具体的には、本実施形態では、第1の顧客端末40は、PCでもよく、スマートフォン等のモバイル機器でもよいものとし、第2の顧客端末50は、主としてスマートフォン等のモバイル機器であるものとして説明を行う。但し、第2の顧客端末50は、PCでもよい。
【0049】
第1の顧客端末40には、本実施形態では、汎用のブラウザが搭載されているものとして説明を行う。汎用のブラウザ(本実施形態では、ネットワーク1は、主としてインターネットを中心に構成されているので、汎用のウェブ・ブラウザとなる。)とは、例えば、PCの場合には、OSがWindows(登録商標)であれば、インターネット・エクスプローラやファイアフォックス等であり、MacOSであれば、サファリ等であり、スマートフォン等のモバイル機器の場合には、アンドロイド
(登録商標)であれば、グーグル・クローム等であり、iOSであれば、サファリやグーグル・クロームやスムーズ等である。これらの汎用のブラウザで表示される画面(ウェブ・ページ)は、HTMLで記述され、スマートフォン等のモバイル機器での表示も対象とする場合には、レスポンシブ・ウェブ・デザインを採用してもよい。なお、ここでいう汎用のブラウザの「汎用」は、有料・無料を問わず、特定のサービス専用ではなく、用途を特定していないという意味で用いている。
【0050】
一方、第2の顧客端末50には、第1の顧客端末40に搭載されたブラウザとは異なるブラウザとして機能する端末アプリケーションプログラムが搭載されている。この端末アプリは、本実施形態では、サービス提供システム10により金融サービスの提供を行うので、金融サービス専用の端末アプリ(但し、金融サービス以外のサービスも取り扱う複合的な端末アプリとしてもよい。)であり、第2の顧客端末50は、本実施形態では、スマートフォン等のモバイル機器であるから、端末アプリは、モバイル機器用の端末アプリである。より一般的には、本発明における「第2の顧客端末」に搭載される「端末アプリケーションプログラム」は、本発明のサービス提供システムにより提供するサービス専用の端末アプリ(但し、複数のサービスの提供を行う複合的な端末アプリとしてもよい。)である。
【0051】
なお、第1の顧客端末40にも、汎用のブラウザではなく、特定のサービス専用のブラウザ機能を有する端末アプリケーションプログラムが搭載されていてもよく、要するに、第1の顧客端末40と第2の顧客端末50とを呼び分けているのは、双方が異なるブラウザ(画面表示処理の方法に相違点がある端末アプリケーションプログラム)を搭載していればよい趣旨である。この際、第1の顧客端末40に搭載される汎用のブラウザではない端末アプリは、制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を用いた端末制御機能を有する本発明における「端末アプリケーションプログラム」ではない。
【0052】
また、第1の顧客端末40を操作する顧客と、第2の顧客端末50を操作する顧客とは、異なっていてもよく、あるいは、同一の顧客が、それぞれ異なるブラウザを搭載した第1の顧客端末40および第2の顧客端末50の双方を操作する者(目的に応じて使用する機器を使い分けている者)となってもよい。
【0053】
さらに、第1の顧客端末40と第2の顧客端末50とは、異なる機種でもよく、同一の機種でもよい。前者の異なる機種の場合としては、例えば、第1の顧客端末40がPCであり、第2の顧客端末50がスマートフォンやタブレット端末等のモバイル機器である場合等が挙げられる。後者の同一の機種の場合としては、例えば、第1の顧客端末40および第2の顧客端末50のいずれもスマートフォンやタブレット端末等のモバイル機器である場合等が挙げられ、この場合は、同一の機種であるが、使用するブラウザが異なっていて、例えば、第1の顧客端末40では汎用のブラウザが使用され、第2の顧客端末50では専用の端末アプリにより画面表示が行われる場合等である。
【0054】
そして、第1の顧客端末40と第2の顧客端末50とは、通常は、物理的に別体の機器(PCやモバイル機器)により構成されるが、物理的に同じ機器により構成されていてもよい。後者のように物理的に同じ機器により構成されている場合は、1台の機器(1台のPCや、1台のモバイル機器)に、複数種類のブラウザ(例えば、汎用のブラウザおよび専用の端末アプリ、あるいは、表示処理方法の異なる複数種類の専用の端末アプリ)が搭載されていることになる。また、後者のように物理的に同じ機器により構成されている場合は、同一の顧客が1台の機器を操作して複数種類のブラウザを使い分けている状況でもよく、異なる顧客が共用の1台の機器を操作して異なるブラウザを使用する状況でもよい。
【0055】
また、第1の顧客端末40で汎用のブラウザを使って提供されるサービスと、第2の顧客端末50で専用の端末アプリを使って提供されるサービスとは、本実施形態では、内容が異なっている。例えば、第1の顧客端末40では、振込サービスが提供されるが、第2の顧客端末50では、振込サービスは提供されない等の相違がある。サービス提供サーバ20から送信されるサービス提供画面の表示用データ(HTMLデータ)は、第1の顧客端末40で汎用のブラウザを使ってそのまま表示する(加工せずに表示する)ことを前提として用意されたものであり、第2の顧客端末50では、これを利用して端末アプリにより加工して(モバイル機器向けにするため、不必要な情報を削って)画面表示を行うので、通常は、本実施形態のように、第2の顧客端末50で提供されるサービスの種類は、第1の顧客端末40で提供されるサービスの種類よりも少なくなる。しかし、第1の顧客端末40と第2の顧客端末50とで、同等または略同等なサービスを提供する構成としてもよい。また、第2の顧客端末50に搭載する専用の端末アプリにより、第1の顧客端末40で提供されないサービスを提供してもよく、この場合は、サービス提供サーバ20から取得したサービス提供画面の表示用データ(HTMLデータ)(つまり、第1の顧客端末40でも利用されるデータ)を利用するのではなく、端末アプリに記述されている内容の画面表示を行うことにより、独自のサービスを提供することになる。従って、第2の顧客端末50で提供されるサービスの種類は、第1の顧客端末40で提供されるサービスの種類よりも多くなってもよい。
【0057】
サービス提供サーバ20は、本実施形態では、一例として、ウェブ・アプリケーション(WEB/AP)サーバ21と、このWEB/APサーバ21に接続されたデータベースサーバ30とにより構成されているが、この構成に限定されるものではなく、1台のサーバで構成してもよく、あるいは3台以上のサーバで構成してもよく、例えば、WEB/APサーバ21を、ウェブサーバと、アプリケーションサーバとに分ける等、複数台のサーバに分けてもよい。
【0058】
ウェブ・アプリケーションサーバ21は、顧客の保有する金融資産の残高情報や取引履歴等の表示を含む金融サービスを提供する各種処理を実行する処理手段22と、この処理手段22に接続された画面記憶手段26とを備えて構成されている。また、処理手段22は、画面送信手段23と、画面設定手段24と、管理者支援手段25とを含んで構成されている。
【0059】
データベースサーバ30は、データベース管理手段31と、このデータベース管理手段31に接続されたデータベース32とを備えて構成されている。
【0060】
以上のうち、処理手段22に含まれる画面送信手段23、画面設定手段24、および管理者支援手段25、並びに、データベース管理手段31は、ウェブ・アプリケーションサーバ21やデータベースサーバ30を構成するコンピュータ本体の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する1つまたは複数のプログラム(サーバアプリ)、並びに、主メモリやキャッシュメモリ等の作業用メモリなどにより実現される。また、画面記憶手段26やデータベース32は、例えば、ハードディスクドライブやソリッドステートドライブ等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、DVD等のその他の記録媒体を採用してもよい。
【0061】
画面送信手段23は、第1の顧客端末40からの要求に応じ、サービス提供画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第1の顧客端末40へ送信する処理を実行するとともに、第2の顧客端末50からの要求に応じ、制御用画面およびサービス提供画面の各表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する処理を実行するものである。
【0062】
この際、画面送信手段23は、サービス提供画面の表示用データ(HTMLデータ)を第1の顧客端末40や第2の顧客端末50へ送信するにあたり、送信対象のサービス提供画面が固定した内容でない場合には、データベースサーバ30のデータベース32に記憶されたデータ(例えば、顧客の保有する金融資産の残高情報や取引履歴等)を用いて、画面記憶手段26に記憶されたサービス提供画面のフォームに、そのデータを付加することにより、送信するサービス提供画面の表示用データ(HTMLデータ)を動的に作成する処理を実行する。このとき、フォームに付加するデータが基本情報(顧客に先ず最初に提示すべき情報)であれば、サービス提供画面は、基本情報の画面となり、フォームに付加するデータが追加情報(顧客の追加表示要求の操作に従って追加して提示する情報)であれば、サービス提供画面は、追加情報の画面となる。
【0063】
より具体的には、画面送信手段23は、第1の顧客端末40へサービス提供画面の表示用データを送信する場合には、第1の顧客端末40からの要求に含まれるURLに基づき、送信対象のサービス提供画面を特定する。従って、第1の顧客端末40へのサービス提供画面の表示用データ(HTMLデータ)の送信処理は、画面遷移に沿って1画面ずつ行われる。送信対象のサービス提供画面の表示用データは、
図6に示した各画面111〜117,121,122に対応する各画面(但し、
図6の状態は、第2の顧客端末50において加工画面を表示した状態であるから、その加工元の画面である。)の表示用データ(HTMLデータ)である。また、画面送信手段23は、第1の顧客端末40へのログイン画面や約款の表示画面等の表示用データ(HTMLデータ)の送信処理も実行する。第1の顧客端末40への送信対象のログイン画面等の表示用データは、
図5に示した各画面101〜105に対応する各画面(各画面101〜105と同様な機能を有していればよく、画面デザインは異なっていてもよい。)の表示用データ(HTMLデータ)である。従って、第1の顧客端末40では、汎用のブラウザを使用するので、第1の顧客端末40におけるログイン時には、第2の顧客端末50におけるログイン時の場合とは異なり、サービス提供サーバ20から取得したログイン画面等の表示用データ(HTMLデータ)を用いて画面表示が行われる。そして、このときも、第1の顧客端末40からの要求に含まれるURLに基づき、送信対象のログイン画面等を特定するので、ログイン画面等の表示用データ(HTMLデータ)の送信処理は、画面遷移に沿って1画面ずつ行われる。
【0064】
一方、画面送信手段23は、第2の顧客端末50へ制御用画面の表示用データ(
図8参照)を送信する場合には、所定のタイミング(
図2のステップS9,S14のタイミングおよび
図3のステップS18,S24,S28のタイミング)で、3種類のうち各タイミングに応じた種類の制御用画面の表示用データ(HTMLデータ)を送信する。また、画面送信手段23は、第2の顧客端末50へサービス提供画面の表示用データを送信する場合には、顧客に最初に提示する基本情報の画面については、
図6に示した各画面111〜117に対応する各画面(各画面111〜117は、加工画面であるから、その加工元の画面)の表示用データ(HTMLデータ)を、所定のタイミング(
図3のステップS20の初回のタイミングおよび
図3のステップS30の更新のタイミング)でまとめて送信する。このように複数の基本情報の画面をまとめて送信するのは、通信環境が悪化する場合もあるので、送信できるときに送信しておくためである。さらに、画面送信手段23は、顧客の追加表示要求の操作に従って追加して提示する追加情報の画面については、
図6に示した各画面121,122に対応する各画面(各画面121,122は、加工画面であるから、その加工元の画面)の表示用データ(HTMLデータ)を、それぞれ所定のタイミング(
図3のステップS26のタイミング)で送信する。そして、画面送信手段23は、基本情報および追加情報のいずれの画面を送信する場合でも、画面の記載内容が固定的である場合を除き、データベースサーバ30のデータベース32に記憶されたデータ(例えば、顧客の保有する金融資産の残高情報や取引履歴等)を用いて、画面記憶手段26に記憶されたサービス提供画面のフォームに、そのデータを付加することにより、送信するサービス提供画面の表示用データ(HTMLデータ)を動的に作成する処理を実行する。なお、第2の顧客端末50では、汎用のブラウザではなく、専用の端末アプリを使用するので、
図5に示した各画面101〜105は、端末アプリにより表示されるため、サービス提供サーバ20からのログイン画面等の表示用データ(HTMLデータ)の送信処理は行われない。
【0065】
画面設定手段24は、システム管理者により管理者端末70から通信回線2を介して送信されてくる制御用画面の表示用データ(HTMLデータ)を、画面記憶手段26の所定のフォルダに登録(アップロード)する設定処理を実行するものである。システム管理者は、端末アプリのメンテナンス時やバージョンアップ時に、それらの状況に対応すべく第2の顧客端末50の制御を行うために、適宜なタイミングで、制御用画面の表示用データを登録して画面記憶手段26に記憶させる。この登録は、本実施形態のように、通常時においては、通常時の制御用画面の表示用データを登録しておく構成を採用する場合(つまり、通常時においては、制御用画面の表示用データを登録しないという構成を採用しない場合)には、通常時の制御用画面の表示用データからの差し替え登録となる。
【0066】
管理者支援手段25は、システム管理者による管理者端末70からの表示要求に応じ、管理者支援画面100(
図5、
図6参照)を作成し、作成した管理者支援画面100の表示用データ(HTMLデータ)を、通信回線2を介して管理者端末70へ送信する処理を実行するものである。なお、この管理者支援手段25の設置は、省略してもよい。
【0067】
より具体的には、管理者支援手段25は、画面記憶手段26に記憶された制御用画面およびサービス提供画面の各表示用データ(HTMLデータ)を取得し、制御用画面の表示用データの中に含まれる端末制御情報を刈り取る管理者支援用の端末制御情報スクレイピング処理を実行するとともに、この管理者支援用の端末制御情報スクレイピング処理に加え、サービス提供画面の表示用データを加工して加工画面の表示用データを作成する管理者支援用のサービス提供画面加工処理を実行する。そして、管理者支援手段25は、管理者支援用の端末制御情報スクレイピング処理で得られた端末制御情報、および、管理者支援用のサービス提供画面加工処理で得られた加工画面の表示用データを用いて、
図5および
図6に示すような管理者支援画面100(すなわち、ログインからサービス提供画面の表示に至るまでの画面遷移図、並びにこの画面遷移図中における端末制御情報によるメッセージの表示タイミングおよび表示内容(
図5および
図6中の点線部分)を示す画面)の表示用データ(HTMLデータ)を作成する処理を実行する。従って、
図5および
図6中の点線部分の表示は、管理者支援画面100の主要な構成要素である。
【0068】
なお、処理手段22には、図示は省略されているが、ログイン認証処理(
図2のステップS11,S16参照)を実行するログイン認証手段が設けられている。このログイン認証手段は、データベースサーバ30のデータベース32に記憶された顧客情報(ID、パスワード、指紋情報の対応関係)を用いてログイン認証処理を実行する。
【0069】
画面記憶手段26は、第1の顧客端末40および第2の顧客端末50でのサービスの提供に用いられるサービス提供画面の表示用データ(HTMLデータ)、および、第2の顧客端末50でのサービスの提供を制御するための制御用画面の表示用データ(HTMLデータ)を記憶するものである。
【0070】
また、画面記憶手段26は、第1の顧客端末40でのログインまでの処理に用いられるログイン画面や約款の表示画面等の表示用データ(HTMLデータ)も記憶する。但し、第2の顧客端末50では、ログイン画面や約款の表示画面等(
図5の各画面101〜105)は、端末アプリにより表示するので、画面記憶手段26には、
図5の各画面101〜105に対応する各画面の表示用データ(HTMLデータ)は記憶されていない。
【0071】
ここで、サービス提供画面の表示用データ(HTMLデータ)と、制御用画面の表示用データ(HTMLデータ)とは、同一のフォルダに格納してもよく、異なるフォルダに格納してもよい。
【0072】
サービス提供画面の表示用データは、第1の顧客端末40で汎用のブラウザによりそのまま表示される(加工されることなく表示される)ことを前提として作成されたHTMLデータである。本実施形態では、基本情報の画面である複数のサービス提供画面の表示用データとして、
図6に示すようなTOP画面111、円普通預金画面112、円定期預金画面113、外貨普通預金画面114、外貨定期預金画面115、メニュー画面116、およびログイン設定画面117等の表示用データ(HTMLデータ)が用意されている(前述したように、より正確には、動的に作成される)。また、追加情報の画面であるサービス提供画面の表示用データとして、
図6に示すような顧客の追加表示要求(ページ送り)で表示される追加ページの円定期預金画面121、および追加ページの外貨定期預金画面122等の表示用データ(HTMLデータ)が用意されている(前述したように、より正確には、動的に作成される)。但し、
図6に示された各画面111〜117,121,122の状態は、第2の顧客端末50での表示状態であるから、スクレイピング手段54によりスマートフォン等のモバイル機器向けの加工を行った後の加工画面の状態であり、そのままの表示状態ではない。
【0073】
制御用画面の表示用データ(HTMLデータ)には、
図8に示すように、ログイン処理前の制御用画面の表示用データ(applogin.html)と、基本情報取得前(リロード時を含む)の制御用画面の表示用データ(apploadbasic.html)と、追加情報取得前(円定期預金画面および外貨定期預金画面のページ送り時(戻りを含む))の制御用画面の表示用データ(apploadadding.html)とがある。
【0074】
これらの3種類の制御用画面の表示用データ(HTMLデータ)は、それぞれ異なるタイミング(
図2のステップS9,S14のタイミングおよび
図3のステップS18,S24,S28のタイミング)で第2の顧客端末50へ送信されるものであるが、
図8に示すように、3種類のそれぞれについて、(1)通常時の設定と、(2)メンテナンス時の設定と、(3)バージョンアップ要請時の設定とを行うことができる。なお、前述したように、本実施形態では、通常時においても、(1)通常時の設定を行った制御用画面の表示用データ(HTMLデータ)を、サービス提供サーバ20の画面記憶手段26に配置しておく。
【0075】
データベース管理手段31は、データベースマネジメントシステム(DBMS)の機能を有し、WEB/APサーバ21から発信された問合せ(クエリ)に応じ、データベース32に記憶されたデータについて検索、抽出、置換、削除等の処理を行い、処理結果のデータをWEB/APサーバ21に返信する処理を実行するものである。
【0076】
データベース32は、顧客へのサービスの提供に必要なデータを記憶するものであり、例えば、顧客の保有する金融資産の残高情報、取引履歴等を、顧客識別情報(口座番号等のID)と関連付けて記憶するテーブルや、顧客情報(例えば、ログインパスワード、指紋情報、氏名、電話番号、住所、電子メールアドレス等)を、顧客識別情報(口座番号等のID)と関連付けて記憶するテーブル等を備えている。
【0078】
第2の顧客端末50は、顧客への情報提示を含むサービスの提供に必要な各種処理を実行する処理手段51と、この処理手段51に接続された取得アプリ記憶手段57および取得画面記憶手段58と、例えば液晶ディスプレイ等の表示手段60と、例えばマウスやキーボードやタッチパッド等の入力手段61とを備えて構成されている。
【0079】
処理手段51は、ログイン手段52と、画面取得手段53と、スクレイピング手段54と、端末利用可否判定手段55と、画面表示処理手段56とを含んで構成されている。
【0080】
以上のうち、処理手段51に含まれる各手段52〜56は、第2の顧客端末50を構成するコンピュータ(広義のコンピュータであり、本実施形態では、スマートフォン等のモバイル機器であるが、PCでもよい。)の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する1つまたは複数のプログラム(端末アプリ)、並びに、主メモリやキャッシュメモリ等の作業用メモリなどにより実現される。また、取得アプリ記憶手段57および取得画面記憶手段58は、スマートフォン等のモバイル機器であれば、例えば、内蔵メモリやSDカード等により実現され、PCであれば、例えば、ハードディスクドライブやソリッドステートドライブ等により好適に実現されるが、DVDやUSBメモリ等により実現してもよい。なお、前者の取得アプリ記憶手段57は、不揮発性メモリである必要があるが、後者の取得画面記憶手段58は、必ずしも不揮発性メモリである必要はなく、揮発性メモリにより実現してもよい。
【0081】
ログイン手段52は、端末アプリの起動からログインまでの処理を実行するものである(
図2、
図5参照)。このログイン手段52は、アプリ配信サーバ80からダウンロードして取得アプリ記憶手段57に記憶されている端末アプリにより実現される。
【0082】
具体的には、ログイン手段52は、第2の顧客端末50の画面上に、
図5に示すように、アプリ起動時のスプラッシュ画面101、約款の表示画面102、IDとパスワードによる通常ログインを行うか・指紋認証によるログインを行うかを選択するログイン選択画面103、通常ログイン画面104または指紋認証によるログイン画面105を、顧客の操作を受け付けながら、この順で表示する処理(
図2のステップS3〜S7,S12参照)を実行する。これらの各画面101〜105の表示処理は、端末アプリにより行われるので、サービス提供サーバ20から対応する各画面の表示用データ(HTMLデータ)を取得する処理は行われない。
【0083】
そして、ログイン手段52は、通常ログイン画面104(
図5参照)において、IDとパスワードが入力された状態で「ログイン」ボタン104Aの押下操作を受け付けた場合には、制御用画面の取得のために画面取得手段53に対し、その旨の情報を渡し、画面取得手段53、スクレイピング手段54、端末利用可否判定手段55の処理(
図2のステップS8参照)を経た後、端末利用可否判定手段55から、端末利用可という情報を受け取ったときには、通常ログイン画面104で入力されたIDとパスワードを、ネットワーク1を介してサービス提供サーバ20へ送信し、サービス提供サーバ20からネットワーク1を介して送信されてくるログインの認否情報を受信するログイン処理(
図2のステップS10参照)を実行し、一方、端末利用可否判定手段55から、端末利用不可という情報を受け取ったとき(端末利用可否判定手段55により画面表示された通知のメッセージ130,131に対して「OK」が押下操作されたとき)には、
図5のログイン選択画面103(
図2のステップS5参照)に戻る処理を実行する。
【0084】
また、ログイン手段52は、指紋認証によるログイン画面105(
図5参照)において、指紋とパスワードが入力された状態で「Touch IDでログイン」ボタン105Aの押下操作を受け付けた場合には、制御用画面の取得のために画面取得手段53に対し、その旨の情報を渡し、画面取得手段53、スクレイピング手段54、端末利用可否判定手段55の処理(
図2のステップS13参照)を経た後、端末利用可否判定手段55から、端末利用可という情報を受け取ったときには、指紋認証によるログイン画面105で入力された指紋とパスワードを、ネットワーク1を介してサービス提供サーバ20へ送信し、サービス提供サーバ20からネットワーク1を介して送信されてくるログインの認否情報を受信するログイン処理(
図2のステップS15参照)を実行し、一方、端末利用可否判定手段55から、端末利用不可という情報を受け取ったとき(端末利用可否判定手段55により画面表示された通知のメッセージ130,131に対して「OK」が押下操作されたとき)には、
図5のログイン選択画面103(
図2のステップS5参照)に戻る処理を実行する。
【0085】
画面取得手段53は、制御用画面およびサービス提供画面の各取得要求を、ネットワーク1を介してサービス提供サーバ20へ送信するとともに、サービス提供サーバ20からネットワーク1を介して送信されてくる制御用画面およびサービス提供画面の各表示用データ(HTMLデータ)を受信し、受信した制御用画面およびサービス提供画面の各表示用データを、取得画面記憶手段58に記憶させる処理を実行するものである。この画面取得手段53は、アプリ配信サーバ80からダウンロードして取得アプリ記憶手段57に記憶されている端末アプリにより実現される。
【0086】
そして、画面取得手段53は、制御用画面の表示用データ(HTMLデータ)を受信した場合には、そのHTMLデータを、端末制御情報の刈り取りのためにスクレイピング手段54に渡し、サービス提供画面の表示用データ(HTMLデータ)を受信した場合には、そのHTMLデータを、モバイル機器向けの加工を行うためにスクレイピング手段54に渡す処理を実行する。実際には、取得画面記憶手段58に記憶させた制御用画面およびサービス提供画面の各表示用データについての格納情報を、スクレイピング手段54に渡してもよい。なお、画面取得手段53が、サービス提供サーバ20からサービス提供画面の表示用データ(HTMLデータ)を受信(取得)することができるのは、端末利用可否判定手段55から端末利用可という情報を受け取ったときだけである。
【0087】
より具体的には、画面取得手段53は、ログイン処理前に(すなわち、
図5の通常ログイン画面104において「ログイン」ボタン104Aの押下操作を受け付けたタイミング、または、指紋認証によるログイン画面105において「Touch IDでログイン」ボタン105Aの押下操作を受け付けたタイミングで)、サービス提供サーバ20から画面記憶手段26に記憶されたログイン処理前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して取得し、取得した制御用画面の表示用データを、取得画面記憶手段58に記憶させるとともに、端末制御情報の刈り取りのためにスクレイピング手段54に渡す処理を実行する(
図2のステップS8,S13参照)。
【0088】
また、画面取得手段53は、ログイン後において、サービス提供サーバ20から基本情報の画面として画面記憶手段26に記憶された複数のサービス提供画面の表示用データ(HTMLデータ)をまとめて取得(リロードを含む。)する前に、サービス提供サーバ20から画面記憶手段26に記憶された基本情報取得前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して取得し、取得した制御用画面の表示用データを、取得画面記憶手段58に記憶させるとともに、端末制御情報の刈り取りのためにスクレイピング手段54に渡す処理を実行する(
図3のステップS17,S27参照)。これに加えて、画面取得手段53は、端末利用可否判定手段55から端末利用可という情報を受け取った場合には、サービス提供サーバ20から基本情報の画面として画面記憶手段26に記憶された複数のサービス提供画面の表示用データ(HTMLデータ)をまとめて取得(リロードを含む。)し、取得したHTMLデータを、取得画面記憶手段58に記憶させるとともに、モバイル機器向けの加工を行うためにスクレイピング手段54に渡す処理を実行する(
図3のステップS19,S29参照)。
【0089】
さらに、画面取得手段53は、基本情報の画面の取得後においてサービス提供サーバ20から追加情報の画面として画面記憶手段26に記憶されたサービス提供画面の表示用データ(HTMLデータ)を取得する前に、サービス提供サーバ20から画面記憶手段26に記憶された追加情報取得前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して取得し、取得した制御用画面の表示用データを、取得画面記憶手段58に記憶させるとともに、端末制御情報の刈り取りのためにスクレイピング手段54に渡す処理を実行する(
図3のステップS23参照)。これに加えて、画面取得手段53は、端末利用可否判定手段55から端末利用可という情報を受け取った場合には、サービス提供サーバ20から追加情報の画面として画面記憶手段26に記憶されたサービス提供画面の表示用データ(HTMLデータ)を取得し、取得したHTMLデータを、取得画面記憶手段58に記憶させるとともに、モバイル機器向けの加工を行うためにスクレイピング手段54に渡す処理を実行する(
図3のステップS25参照)。
【0090】
スクレイピング手段54は、画面取得手段53により受信して取得画面記憶手段58に記憶されている制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を刈り取り、刈り取った端末制御情報を、端末利用可否判定手段55に渡す端末制御情報スクレイピング処理を実行するものである。このスクレイピング手段54は、アプリ配信サーバ80からダウンロードして取得アプリ記憶手段57に記憶されている端末アプリにより実現される。なお、端末制御情報スクレイピング処理には、刈り取ったデータを、端末アプリでの表示用データ形式に変換する処理(例えば、ブランクを示す<br>を¥nに変換する処理等)が含まれる(
図7参照)。
【0091】
また、スクレイピング手段54は、本実施形態では、上記の端末制御情報スクレイピング処理に加え、画面取得手段53により受信して取得画面記憶手段58に記憶されているサービス提供画面の表示用データ(HTMLデータ)を加工して加工画面の表示用データを作成し、作成した加工画面の表示用データを、取得画面記憶手段58に記憶させるサービス提供画面加工処理も実行する。この加工処理は、主として、モバイル機器向けの画面にするために、不必要な情報を削除する処理や画面レイアウトを変更する処理である。なお、スクレイピング手段54は、取得画面記憶手段58に記憶させた加工画面の表示用データのうち、最初の表示対象となる加工画面の表示用データを、画面表示を行うために画面表示処理手段56に渡す処理を実行する。実際には、最初の表示対象となる加工画面の表示用データについての格納情報を、画面表示処理手段56に渡してもよい。最初の表示対象となる加工画面は、基本情報の画面であれば、
図6のTOP画面111であり、リロード時(情報を更新した場合)の基本情報の画面であれば、メニュー画面116を開く前の画面であり、追加情報の画面であれば、顧客の追加表示要求の操作でページ送り(戻しを含む)された後の画面である。
【0092】
端末利用可否判定手段55は、スクレイピング手段54によるスクレイピング処理で取得した端末制御情報を用いて、顧客による第2の顧客端末50の利用の可否を判定する処理を実行するものである。この端末利用可否判定手段55は、アプリ配信サーバ80からダウンロードして取得アプリ記憶手段57に記憶されている端末アプリにより実現される。
【0093】
より具体的には、端末利用可否判定手段55は、
図4に示すような判定処理、およびその判定結果に伴うメッセージ表示等の処理を実行するが、詳細は、
図4を用いて後述するので、ここでは、概略を説明する。
【0094】
端末利用可否判定手段55は、メンテナンスに伴う利用停止の判定処理だけではなく、端末アプリケーションプログラムが保有する当該端末アプリケーションプログラム自身のバージョンを示す自己バージョンの情報と、制御用画面の表示用データ(HTMLデータ)から刈り取った端末制御情報に含まれる最低保証バージョンの情報とを比較することにより、自己バージョンが最低保証バージョンよりも古いか否かを判定する処理も実行する。自己バージョンが最低保証バージョンよりも古いと判定された場合は、バージョンアップ要請が必要な場合であり、端末利用不可という判定となる。
【0095】
そして、端末利用可否判定手段55は、端末利用不可と判定した場合には、端末制御情報に含まれるメンテナンスメッセージ130またはバージョンアップメッセージ131(
図7参照)を画面表示し、端末利用を停止させる処理を実行する。ここで、「端末利用を停止させる処理」とは、画面表示した通知のメッセージ130,131に対して「OK」が押下操作されたときに、ログイン前であれば、ログインを受け付けずに、ログイン手段52に
図5のログイン選択画面103(
図2のステップS5参照)を表示させる処理(指令)であり、ログイン中であれば、ログアウトしてから、ログイン手段52にログイン選択画面103を表示させる処理(指令)である。
【0096】
一方、端末利用可否判定手段55は、端末利用可と判定した場合には、端末利用を継続させる処理を実行する。ここで、「端末利用を継続させる処理」とは、顧客の操作に応じた処理を進めるための処理(指令、情報伝達)であり、ログイン前であれば、ログイン手段52に対し、ログイン処理(
図2のステップS10,S15参照)を進めさせる処理(指令、すなわち端末利用可という情報の伝達)であり、ログイン中であれば、画面取得手段53に対し、表示対象となる基本情報または追加情報の画面であるサービス提供画面の表示用データ(HTMLデータ)の取得処理(
図3のステップS19,S25,S29参照)を行わせる処理(指令、すなわち端末利用可という情報の伝達)である。なお、端末利用可と判定した場合には、メンテナンスメッセージ130やバージョンアップメッセージ131(
図7参照)の画面表示は行われないので、第2の顧客端末50の画面上には、制御用画面の表示用データ(HTMLデータ)に基づく何らの画面表示も行われないため、端末を操作している顧客は、制御用画面の取得処理が行われたことすら気づかない状態となる。
【0097】
画面表示処理手段56は、端末利用可否判定手段55により端末利用可と判定されたときに画面取得手段53により受信(取得)したサービス提供画面の表示用データ(HTMLデータ)を用いて、サービス提供画面を表示する処理を実行するものである。より正確には、本実施形態では、端末利用可否判定手段55により端末利用可と判定されたときに画面取得手段53により受信(取得)したサービス提供画面の表示用データ(HTMLデータ)を、スクレイピング手段54により加工して作成された加工画面の表示用データを用いて、サービス提供画面についての加工画面を表示する処理を実行するものである。この画面表示処理手段56は、アプリ配信サーバ80からダウンロードして取得アプリ記憶手段57に記憶されている端末アプリにより実現される。
【0098】
この画面表示処理手段56により表示されるサービス提供画面(より正確には、本実施形態では、サービス提供画面についての加工画面)には、基本情報の画面および追加情報の画面があり、具体的には、
図6に示した基本情報の各画面111〜117および追加情報の各画面121,122である。なお、
図5に示したログイン画面や約款の表示画面等の各画面101〜105は、ログイン手段52により表示されるので、画面表示処理手段56により表示されるものではなく、また、これらの画面101〜105は、画面取得手段53によりサービス提供サーバ20から受信(取得)したサービス提供画面やその加工画面ではなく、端末アプリに記述されているものである。
【0099】
また、画面表示処理手段56は、基本情報の画面である複数のサービス提供画面を加工した加工画面(
図6の各画面111〜117)間の画面遷移についての顧客の要求操作を受け付け、顧客の要求に応じたサービス提供画面の表示処理も実行する。例えば、
図6のTOP画面111から円定期預金画面113への画面遷移、円定期預金画面113からTOP画面111への画面遷移、TOP画面111や外貨定期預金画面115からメニュー画面116への画面遷移等の要求操作を受け付ける。
【0100】
取得アプリ記憶手段57は、アプリ配信サーバ80からネットワーク1を介してダウンロードした端末アプリを記憶するものである。このダウンロード処理は、処理手段51により行われるが、少なくとも初回のダウンロード処理は、第2の顧客端末50の制御を行うための本発明の端末アプリケーションプログラムではなく、第2の顧客端末50に既に搭載されている他の端末アプリにより行われる。初回は、第2の顧客端末50に、未だ本発明の端末アプリが搭載されていないので、当然である。しかし、2回目以降は、本発明の端末アプリが搭載されているので、本発明の端末アプリにより、バージョンアップ版のダウンロード処理を行うようにしてもよい。
【0101】
ここで、第2の顧客端末50に搭載する端末アプリ(本発明の端末アプリケーションプログラム)の開発言語は、任意であり、例えば、iPhone(登録商標)やiPad(登録商標)等のアプリ(iOSを搭載したモバイル機器向けの端末アプリ)の開発であれば、Swift(登録商標)やObject−c等を用いることができ、Android(登録商標)アプリ(AndroidOSを搭載したモバイル機器向けの端末アプリ)の開発であれば、Java(登録商標)等を用いることができ、また、今後開発される言語を採用してもよい。
【0102】
取得画面記憶手段58は、画面取得手段53によりサービス提供サーバ20から取得したサービス提供画面の表示用データ(HTMLデータ)、およびスクレイピング手段54によりサービス提供画面の表示用データ(HTMLデータ)を加工して作成された加工画面の表示用データを記憶するものである。この際、スクレイピング手段54により作成された加工画面の表示用データは、加工元のサービス提供画面の表示用データ(HTMLデータ)に上書きしてもよい。なお、本実施形態では、加工画面の表示用データを用いて画面表示を行うので、加工画面の表示用データを記憶するが、画面取得手段53によりサービス提供サーバ20から取得したサービス提供画面の表示用データをそのまま使用して(加工せずに使用して)画面表示を行う構成とする場合には、サービス提供画面の表示用データ(HTMLデータ)を記憶していればよい。
【0103】
また、取得画面記憶手段58は、本実施形態では、画面取得手段53によりサービス提供サーバ20から取得した制御用画面の表示用データ(HTMLデータ)も記憶する。なお、スクレイピング手段54により端末制御情報を刈り取った後は、制御用画面の表示用データ(HTMLデータ)を削除してもよいが、本実施形態では、制御用画面の表示用データ(HTMLデータ)は、削除せずに取得画面記憶手段58に記憶させておく。この際、本実施形態では、端末利用可否判定手段55による処理を行う際に、取得画面記憶手段58に記憶されている古い制御用画面の表示用データを使用しないようにするため、端末アプリ側でリクエストにキャッシュオフ設定を行うとともに、記憶させる制御用画面の表示用データのファイル名称の末尾に、取得日時(年月日・時分秒)を示す文字列を付加し、一番新しいファイルが、端末利用可否判定やメッセージ表示に使用されるようにし、さらに、制御用画面の表示用データ(HTMLデータ)内にもキャッシュオフの設定を行う。
【0105】
管理者端末70は、銀行等の金融機関のシステム管理者が操作する端末装置であり、コンピュータ(広義のコンピュータであり、PCのみならず、スマートフォンやタブレット端末等のモバイル機器を含む。)により構成され、例えばマウスやキーボードやタッチパッド等の入力手段と、例えば液晶ディスプレイ等の表示手段とを備えている。
【0106】
この管理者端末70は、システム管理者が、通信回線2を介してサービス提供サーバ20にアクセスし、作成した制御用画面の表示用データ(HTMLデータ)を登録(アップロード)する設定処理や、登録した制御用画面の表示用データ内の端末制御情報の内容を、第2の顧客端末50における画面遷移とともに確認するための管理者支援画面(
図5および
図6参照)の表示処理を行うものである。なお、制御用画面の表示用データ(HTMLデータ)の作成処理は、管理者端末70において行ってもよく、別の端末装置で作成した制御用画面の表示用データを、管理者端末70から登録してもよい。
【0108】
アプリ配信サーバ80は、携帯電話会社等の通信事業者や情報関連事業者が管理するサーバ(例えば、AppStore(登録商標)等)であり、1台または複数台のコンピュータにより構成され、アプリ配信手段81と、このアプリ配信手段81に接続された配信アプリ記憶手段82とを含んで構成されている。
【0109】
アプリ配信手段81は、端末装置(本実施形態では、第2の顧客端末50となる。)からの端末アプリのダウンロード要求に応じ、当該要求に係る端末アプリ(本実施形態では、第2の顧客端末50に搭載する端末アプリとなる。)を、ネットワーク1を介してダウンロード要求の発信元の端末装置(本実施形態では、第2の顧客端末50となる。)へ配信する処理を実行するものである。
【0110】
配信アプリ記憶手段82は、ダウンロードの対象となる各種の端末アプリ(本実施形態では、第2の顧客端末50に搭載する端末アプリを含む。)を記憶するものである。なお、アプリ配信サーバ80は、サービス提供者(本実施形態では、金融機関)自身が管理するサーバでもよく、その場合には、配信アプリ記憶手段82は、第2の顧客端末50に搭載する端末アプリを記憶しているだけでよい。
【0111】
上記のうち、アプリ配信手段81は、アプリ配信サーバ80を構成するコンピュータ本体の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する1つまたは複数のプログラム、並びに、主メモリやキャッシュメモリ等の作業用メモリなどにより実現される。また、配信アプリ記憶手段82は、例えば、ハードディスクドライブやソリッドステートドライブ等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、DVD等のその他の記録媒体を採用してもよい。
【0112】
<サービス提供システム10によるサービス提供処理の流れ>
【0113】
このような本実施形態においては、以下のようにしてサービス提供システム10により、サービス提供処理が行われる。
【0114】
図2において、顧客は、サービスの提供を受けるための事前処理として、第2の顧客端末50を操作し、アプリ配信サーバ80からネットワーク1を介して、配信アプリ記憶手段82に記憶された本発明の端末アプリをダウンロードし、第2の顧客端末50の取得アプリ記憶手段57に格納する(ステップS1)。
【0115】
また、システム管理者は、サービス提供サーバ20側の事前処理として、管理者端末70またはその他のコンピュータで制御用画面の表示用データ(HTMLデータ)を作成し、作成した制御用画面の表示用データ(HTMLデータ)のファイルを、登録(アップロード)するために、管理者端末70から通信回線2を介してサービス提供サーバ20へ送信する。サービス提供サーバ20では、画面設定手段24により、管理者端末70から通信回線2を介して送信されてくる制御用画面の表示用データ(HTMLデータ)を受信し、画面記憶手段26の所定のフォルダに格納する設定処理を実行する(
図2のステップS2)。
【0116】
この際、システム管理者は、通常時には、通常時の制御用画面の表示用データ(例えば、
図8に示されたHTMLデータ140等)を作成し、サービス提供サーバ20に配置しておくが、端末アプリのメンテナンス時やバージョンアップ要請時には、それらの状況に対応すべく、適宜なタイミングで、メンテナンス時の制御用画面の表示用データ(例えば、
図8に示されたHTMLデータ141等)やバージョンアップ要請時の制御用画面の表示用データ(例えば、
図8に示されたHTMLデータ142等)を作成し、サービス提供サーバ20に登録(アップロード)する。従って、
図2に示された処理の流れでは、制御用画面の格納処理は、サービス提供サーバ20側の事前処理として、ステップS2に記載されているが、メンテナンスやバージョンアップ要請の状況が発生したときに、いつでもそれらの状況に対応すべく、制御用画面の格納処理(本実施形態では、通常時の制御用画面から、メンテナンス時やバージョンアップ要請時の制御用画面への差し替え登録となる。)を行うことができる。例えば、1人の顧客によるサービスを受けるためのアクセスとの関係で言えば、その顧客がサービス提供サーバ20にアクセスしてログインし、サービスの提供を受けている最中でも(その顧客とのセッションが保持されている最中でも)、制御用画面の格納処理(差し替え登録)を行うことができる。また、メンテナンス終了等の状況変化があったときに、いつでも通常時の制御用画面へ戻すための格納処理(差し替え登録)を行うことができる。
【0117】
なお、上記は、制御用画面の登録(アップロード)のタイミングの任意性について記載しているが、制御用画面の作成については、登録のタイミングとは別であり、事前に作成して用意しておき、適宜なタイミングで、登録(アップロード)するようにしてもよい。
【0118】
また、システム管理者は、制御用画面を登録する際には、通常時、メンテナンス時、バージョンアップ要請時のいずれの制御用画面の表示用データ(例えば、
図8に示されたHTMLデータ140,141,142等)を登録する場合でも、通常時、メンテナンス時、バージョンアップ要請時のそれぞれについて、
図8に示すように、ログイン処理前の制御用画面の表示用データ(applogin.html)と、基本情報取得前(リロード時を含む)の制御用画面の表示用データ(apploadbasic.html)と、追加情報取得前(円定期預金画面および外貨定期預金画面のページ送り時(戻りを含む))の制御用画面の表示用データ(apploadadding.html)とがあるので、それらをすべて登録する。
【0119】
その後、顧客は、第2の顧客端末50を操作し、サービスの提供を受ける。具体的には、ダウンロードして取得アプリ記憶手段57に記憶されている端末アプリを立ち上げる。すると、ログイン手段52により、第2の顧客端末50の画面上に、
図5に示すようなアプリ起動時のスプラッシュ画面101が表示され(
図2のステップS3)、続いて、約款の表示画面102が表示され(
図2のステップS4)、さらに、IDとパスワードによる通常ログインを行うか・指紋認証によるログインを行うかを選択するログイン選択画面103が表示される(
図2のステップS5)。
【0120】
図5のログイン選択画面103には、指紋認証によるログインを行うことを選択するための「Touch IDでログインする」ボタン103Aと、通常ログインを行うことを選択するための「IDとパスワードを利用してログインする」ボタン103Bとが設けられている。
【0121】
図5のログイン選択画面103において、顧客が「IDとパスワードを利用してログインする」ボタン103Bを押下操作すると、通常ログインが選択され(
図2のステップS6)、第2の顧客端末50の画面上に、
図5に示すような通常ログイン画面104が表示される(
図2のステップS7)。この通常ログイン画面104において、顧客が、IDとパスワードを入力した状態で「ログイン」ボタン104Aの押下操作を行うと、以下のような制御用画面の取得、端末利用可否判定、およびその判定結果に伴うメッセージ表示等の処理が行われる(
図2のステップS8)。このステップS8の処理の詳細については、
図4を用いて後述するので、ここでは、概略の流れを説明する。
【0122】
図2のステップS8の処理では、先ず、ログイン手段52から、通常ログインの操作を受け付けた旨の情報が、画面取得手段53に渡されると、画面取得手段53により、ログイン処理前の制御用画面の取得要求を、ネットワーク1を介してサービス提供サーバ20へ送信する。サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶されたログイン処理前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図2のステップS9)。
【0123】
第2の顧客端末50では、画面取得手段53により、サービス提供サーバ20からネットワーク1を介して送信されてくるログイン処理前の制御用画面の表示用データ(HTMLデータ)を受信し、受信したログイン処理前の制御用画面の表示用データを、取得画面記憶手段58に記憶させる(
図2のステップS8)。
【0124】
続いて、第2の顧客端末50では、スクレイピング手段54により、取得画面記憶手段58に記憶されているログイン処理前の制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を刈り取り、刈り取った端末制御情報を、端末利用可否判定手段55に渡す端末制御情報スクレイピング処理を実行する(
図2のステップS8)。
【0125】
この端末制御情報スクレイピング処理は、具体的には、次のように行う。刈り取り対象である端末制御情報には、本実施形態では、一例として、メンテナンス中であるか否かを識別するページ番号と、最低保証バージョンの情報を示すページバージョンと、メンテナンスメッセージと、バージョンアップメッセージとがある。
【0126】
ページ番号は、HTML内のタグのid属性値=「page-number」、端末アプリに記述された画面要素の位置(XPATH指定)=「//*[@id="page-number"]/text()[1]」である。取得される端末制御情報(端末制御情報として利用されるデータ)は、
図8の例では、「<p id="page-number">ページ番号:ANM001(許可)</p>」、「<p id="page-number">ページ番号:AMT001(拒否)</p>」という記述中の「ANM001(許可)」、「AMT001(拒否)」という部分(タグの子供の情報のうち「ページ番号:」の後ろの部分)だけである。ANM001(許可)は、メンテナンス中ではないことを示す情報であり、バージョンアップ要請が不要な状況下であれば、端末利用は継続されるが、バージョンアップ要請が必要な状況下であれば、端末利用は停止される。一方、AMT001(拒否)は、メンテナンス中であることを示す情報であり、端末利用は停止される。従って、
図8に示した(3)バージョンアップ要請時の制御用画面のHTMLデータ142では、ANM001(許可)とされているが、第2の顧客端末50で使用されている端末アプリのバージョン(自己バージョン)次第で、つまり、バージョンアップ要請が不要か必要かで、端末利用の可否が判定される。
【0127】
ページバージョンは、HTML内のタグのid属性値=「page-version」、端末アプリに記述された画面要素の位置(XPATH指定)=「//*[@id="page-version"]/text()[1]」である。取得される端末制御情報(端末制御情報として利用されるデータ)は、
図8の例では、「<p id="page-version">ページバージョン:1.0</p>」、「<p id="page-version">ページバージョン:2.0</p>」という記述中の「1.0」、「2.0」という部分(タグの子供の情報のうち「ページバージョン:」の後ろの部分)だけである。
【0128】
メンテナンスメッセージは、HTML内のタグのid属性値=「maintenance_msg」、端末アプリに記述された画面要素の位置(XPATH指定)=「//*[@id="maintenance_msg"]」である。取得される端末制御情報(端末制御情報として利用されるデータ)は、
図8の例では、「<p class="normal" id="maintenance_msg">システムメンテナンス中です。<br/>しばらく経ってから再度ログインしてください。</p>」という記述中の「システムメンテナンス中です。<br/>しばらく経ってから再度ログインしてください。」という部分(タグの子供の情報のすべて)である。
【0129】
バージョンアップメッセージは、HTML内のタグのid属性値=「versionup_msg」、端末アプリに記述された画面要素の位置(XPATH指定)=「//*[@id="versionup_msg"]」である。取得される端末制御情報(端末制御情報として利用されるデータ)は、
図8の例では、「<p class="normal" id="versionup_msg">古いバージョンのアプリをお使いになっています。<br/>最新のバージョンは1.0となっております。<br/>アプリを最新のバージョンにアップデートしてください。</p>」という記述中の「古いバージョンのアプリをお使いになっています。<br/>最新のバージョンは1.0となっております。<br/>アプリを最新のバージョンにアップデートしてください。」という部分(タグの子供の情報のすべて)である。
【0130】
それから、端末利用可否判定手段55により、スクレイピング手段54によるスクレイピング処理で取得した端末制御情報(本実施形態では、ページ番号、ページバージョン、メンテナンスメッセージ、およびバージョンアップメッセージである。)を用いて、顧客による第2の顧客端末50の利用の可否を判定し、その判定結果に基づき、メッセージ表示等の処理を実行する(
図2のステップS8)。
【0131】
具体的には、端末利用可否判定手段55により、端末利用不可と判定した場合には、取得した端末制御情報を用いて、
図7に示すようなメンテナンスメッセージ130またはバージョンアップメッセージ131を画面表示し、「端末利用を停止させる処理」を実行する。ここで、「端末利用を停止させる処理」とは、画面表示した
図7の通知のメッセージ130,131に対して「OK」が押下操作されたときに、ログイン前であれば、ログインを受け付けずに、ログイン手段52に
図5のログイン選択画面103(
図2のステップS5参照)を表示させる処理(指令)であり、ログイン中であれば、ログアウトしてから、ログイン手段52に
図5のログイン選択画面103を表示させる処理(指令)である。ここでは(
図2のステップS8では)、ログイン前であるため、ログアウトの処理はない。
【0132】
一方、端末利用可否判定手段55により、端末利用可と判定した場合には、「端末利用を継続させる処理」を実行する。ここで、「端末利用を継続させる処理」とは、顧客の操作に応じた処理を進めるための処理(指令、情報伝達)であり、ログイン前であれば、ログイン手段52に対し、ログイン処理(
図2のステップS10,S15参照、ここではS10となる。)を進めさせる処理(指令、すなわち端末利用可という情報の伝達)であり、ログイン中であれば、画面取得手段53に対し、表示対象となる基本情報または追加情報の画面であるサービス提供画面の表示用データ(HTMLデータ)の取得処理(
図3のステップS19,S25,S29参照)を行わせる処理(指令、すなわち端末利用可という情報の伝達)である。ここでは(
図2のステップS8では)、ログイン前であるため、画面取得手段53に対する画面取得の指令はない。
【0133】
その後、ステップS8の処理を経て、端末利用可と判定された場合(端末利用可否判定手段55から、端末利用可という情報を受け取った場合)には、ログイン手段52により、
図5の通常ログイン画面104で入力されたIDとパスワードを、ネットワーク1を介してサービス提供サーバ20へ送信する(
図2のステップS10)。
【0134】
サービス提供サーバ20では、ログイン認証手段(不図示)により、第2の顧客端末50からネットワーク1を介して送信されてくるIDとパスワードを受信し、データベースサーバ30のデータベース32に記憶された顧客情報(ID、パスワード、指紋情報の対応関係)を用いてログイン認証処理を実行し、その結果を示すログインの認否情報を、ネットワーク1を介して第2の顧客端末50へ送信する(
図2のステップS11)。
【0135】
第2の顧客端末50では、ログイン手段52により、サービス提供サーバ20からネットワーク1を介して送信されてくるログインの認否情報を受信し、ログインが認められた場合には、
図3のステップS17の処理へ進み、ログインが認められなかった場合には、
図5のログイン選択画面103(
図2のステップS5参照)に戻る。
【0136】
一方、前述した
図2のステップS6において、指紋認証によるログインが選択された場合、すなわち、
図5のログイン選択画面103において、顧客が「Touch IDでログインする」ボタン103Aを押下操作した場合は、第2の顧客端末50の画面上に、
図5に示すような指紋認証によるログイン画面105が表示される(
図2のステップS12)。この指紋認証によるログイン画面105において、顧客が、指紋とパスワードを入力した状態で「Touch IDでログイン」ボタン105Aの押下操作を行うと、以下のような制御用画面の取得、端末利用可否判定、およびその判定結果に伴うメッセージ表示等の処理が行われる(
図2のステップS13)。このステップS13の処理の詳細については、
図4を用いて後述するので、ここでは、概略の流れを説明する。
【0137】
図2のステップS13の処理は、
図2のステップS8の処理と同様である。従って、画面取得手段53により、ログイン処理前の制御用画面の表示用データ(HTMLデータ)の取得処理が行われる。サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶されたログイン処理前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図2のステップS14)。この
図2のステップS14の処理は、前述した
図2のステップS9の処理と同様である。そして、第2の顧客端末50では、取得した制御用画面の表示用データ(HTMLデータ)から端末制御情報を刈り取るスクレイピング、端末利用可否判定、およびその判定結果に基づくメッセージ表示等の処理が行われる(
図2のステップS13)。
【0138】
その後、ステップS13の処理を経て、端末利用可と判定された場合(端末利用可否判定手段55から、端末利用可という情報を受け取った場合)には、ログイン手段52により、
図5の指紋認証によるログイン画面105で入力された指紋情報とパスワードを、ネットワーク1を介してサービス提供サーバ20へ送信する(
図2のステップS15)。
【0139】
サービス提供サーバ20では、ログイン認証手段(不図示)により、第2の顧客端末50からネットワーク1を介して送信されてくる指紋情報とパスワードを受信し、データベースサーバ30のデータベース32に記憶された顧客情報(ID、パスワード、指紋情報の対応関係)を用いてログイン認証処理を実行し、その結果を示すログインの認否情報を、ネットワーク1を介して第2の顧客端末50へ送信する(
図2のステップS16)。
【0140】
第2の顧客端末50では、ログイン手段52により、サービス提供サーバ20からネットワーク1を介して送信されてくるログインの認否情報を受信し、ログインが認められた場合には、
図3のステップS17の処理へ進み、ログインが認められなかった場合には、
図5のログイン選択画面103(
図2のステップS5参照)に戻る。
【0141】
図3において、ステップS17の処理の詳細については、
図4を用いて後述するので、ここでは、概略の流れを説明する。
【0142】
図3のステップS17の処理は、前述した
図2のステップS8の処理と略同様であり、取得する制御用画面の表示用データ(HTML)の種類が異なることと、既にログインが行われているので、端末利用可否判定の結果が端末利用不可である場合にログアウトの処理が行われるという点で、前述した
図2のステップS8の処理と相違する。
【0143】
図3のステップS17では、画面取得手段53により、基本情報取得前の制御用画面の表示用データ(HTMLデータ)の取得処理が行われる。サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶された基本情報取得前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図3のステップS18)。そして、第2の顧客端末50では、取得した基本情報取得前の制御用画面の表示用データ(HTMLデータ)から端末制御情報を刈り取るスクレイピング、端末利用可否判定、およびその判定結果に基づくメッセージ表示等の処理が行われる(
図3のステップS17)。
【0144】
また、
図3のステップS17では、既にログインが行われているので、端末利用可否判定手段55による端末利用可否判定の結果が、端末利用不可である場合には、端末利用可否判定手段55により、ログアウトの処理を行った後に、端末利用可否判定手段55により、ログイン手段52に
図5のログイン選択画面103を表示させる処理(指令)を実行する。
【0145】
その後、ステップS17の処理を経て、端末利用可と判定された場合(端末利用可否判定手段55から、端末利用可という情報を受け取った場合)には、画面取得手段53により、複数の基本情報の画面(
図6の各画面111〜117に対応する各画面)の取得要求を、ネットワーク1を介してサービス提供サーバ20へ送信する(
図3のステップS19)。
【0146】
サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶されたサービス提供画面の表示用データのフォームに、基本情報(顧客に最初に提示すべき情報)を付加して基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を作成し、作成した複数の基本情報の画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へまとめて送信する(
図3のステップS20)。複数の基本情報の画面をまとめて送信するのは、その後、通信状態が悪化し、通信エラーが発生する可能性があるからである。
【0147】
第2の顧客端末50では、画面取得手段53により、サービス提供サーバ20からネットワーク1を介して送信されてくる基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を受信し、受信したHTMLデータを、取得画面記憶手段58に記憶させる(
図3のステップS19)。
【0148】
続いて、スクレイピング手段54により、取得画面記憶手段58に記憶されている基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を加工して加工画面(
図6の各画面111〜117)の表示用データを作成し、作成した加工画面の表示用データを、取得画面記憶手段58に記憶させるサービス提供画面加工処理を実行する(
図3のステップS19)。この加工処理は、主として、モバイル機器向けの画面にするために、不必要な情報を削除する処理や画面レイアウトを変更する処理である。
【0149】
それから、画面表示処理手段56により、スクレイピング手段54により取得画面記憶手段58に記憶させた加工画面の表示用データのうち、最初の表示対象となる加工画面の表示用データを用いて、加工画面の表示を行う(
図3のステップS19)。ここでは、最初の表示対象となる加工画面として、
図6のTOP画面111を表示する。
【0150】
続いて、第2の顧客端末50では、表示されている画面において、顧客の操作を受け付ける(
図3のステップS21)。このときの顧客の操作が、既に取得済の複数の基本情報の画面(
図6の各画面111〜117)のうちの別の画面への遷移要求である場合には、画面表示処理手段56により、その画面遷移要求の操作を受け付け、要求に係る画面の表示用データを、取得画面記憶手段58から読み込んで画面表示を行った後(
図3のステップS22)、
図3のステップS21に戻り、顧客の次の操作を待つ。
【0151】
なお、既に取得済の複数の基本情報の画面(
図6の各画面111〜117)間の画面遷移要求は、次のような操作により行うことができる。
図6の各画面111〜115間の画面遷移要求は、各画面111〜115の上部に設けられた画面遷移ボタンの押下操作により行うことができる。また、
図6のTOP画面111から各画面112〜115への画面遷移要求は、TOP画面111に設けられた円普通預金、円定期預金、外貨普通預金、外貨定期預金のそれぞれのトータル金額表示部の押下操作により行うこともできる。さらに、
図6のメニュー画面116への画面遷移要求は、
図6の各画面111〜115の上部の左端に設けられたメニューボタンの押下操作により行うことができる。
図6のログイン設定画面117への画面遷移要求は、
図6のメニュー画面116に設けられた「ログイン設定」ボタンの押下操作により行うことができる。
【0152】
また、前述した
図3のステップS21での顧客の操作が、追加情報の画面(
図6の各画面121,122)への遷移要求である場合、すなわち定期預金画面のページ送り(戻りも含む)の要求である場合には、
図3のステップS23の処理に進む。ステップS23の処理の詳細については、
図4を用いて後述するので、ここでは、概略の流れを説明する。
【0153】
図3のステップS23の処理は、前述した
図3のステップS17の処理と略同様であり、取得する制御用画面の表示用データ(HTML)の種類が異なるだけである。
【0154】
図3のステップS23では、画面取得手段53により、追加情報取得前の制御用画面の表示用データ(HTMLデータ)の取得処理が行われる。サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶された追加情報取得前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図3のステップS24)。そして、第2の顧客端末50では、取得した追加情報取得前の制御用画面の表示用データ(HTMLデータ)から端末制御情報を刈り取るスクレイピング、端末利用可否判定、およびその判定結果に基づくメッセージ表示等の処理が行われる(
図3のステップS23)。
【0155】
その後、ステップS23の処理を経て、端末利用可と判定された場合(端末利用可否判定手段55から、端末利用可という情報を受け取った場合)には、画面取得手段53により、追加情報の画面(
図6の各画面121,122に対応する各画面)の取得要求を、ネットワーク1を介してサービス提供サーバ20へ送信する(
図3のステップS25)。
【0156】
サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶されたサービス提供画面の表示用データのフォームに、追加情報(基本情報に追加して顧客に提示すべき情報)を付加して追加情報の画面であるサービス提供画面の表示用データ(HTMLデータ)を作成し、作成した追加情報の画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図3のステップS26)。
【0157】
第2の顧客端末50では、画面取得手段53により、サービス提供サーバ20からネットワーク1を介して送信されてくる追加情報の画面であるサービス提供画面の表示用データ(HTMLデータ)を受信し、受信したHTMLデータを、取得画面記憶手段58に記憶させる(
図3のステップS25)。
【0158】
続いて、スクレイピング手段54により、取得画面記憶手段58に記憶されている追加情報の画面であるサービス提供画面の表示用データ(HTMLデータ)を加工して加工画面(
図6の各画面121,122)の表示用データを作成し、作成した加工画面の表示用データを、取得画面記憶手段58に記憶させるサービス提供画面加工処理を実行する。
【0159】
それから、画面表示処理手段56により、スクレイピング手段54により取得画面記憶手段58に記憶させた加工画面の表示用データのうち、顧客の要求に係る追加情報の画面についての加工画面の表示用データを用いて、追加情報の画面についての加工画面の表示を行う(
図3のステップS25)。ここでは、追加情報の画面として、
図6に示した追加の円定期預金画面121や追加の外貨定期預金画面122を表示した後(
図3のステップS25)、
図3のステップS21に戻り、顧客の次の操作を待つ。
【0160】
なお、追加情報の画面である
図6の追加の円定期預金画面121の表示要求は、基本情報の画面である
図6の円定期預金画面113の下部に設けられた「次の10件」ボタンの押下操作により行われる。「次の10件」というのは、顧客の円定期預金の情報について10件ずつを1画面に収めてページ送りをしていくという意味である。また、
図6の追加の円定期預金画面121の下部には、「前の10件」ボタンおよび「次の10件」ボタンが設けられ、このうち「次の10件」ボタンの押下操作は、さらに次の10件分の円定期預金の情報を閲覧するための追加情報の画面の表示要求操作(ページ送りの操作)となる。一方、「前の10件」ボタンの押下操作は、前に表示された10件分の円定期預金の情報に戻るための追加情報の画面の表示要求操作(戻るといっても、時間が経過しているので、再取得となるため、情報は変化している可能性がある)となる。
図6には、追加の円定期預金画面121が1画面しか記載されていないが、「次の10件」ボタンの押下操作を連続させることにより、次々に追加の円定期預金画面121と同様な画面が表示され、また、それらの各画面から前の画面へ戻ることができる。
図6の追加の外貨定期預金画面122の場合も略同様であるが、ページ送り(戻りも含む。)が10件ずつではなく、20件ずつになっている点が異なっている。そして、これらのページ送り(戻りも含む。)の都度に、
図3のステップS23の処理が繰り返される。
【0161】
また、前述した
図3のステップS21での顧客の操作が、既に取得済の複数の基本情報の画面を更新する要求である場合(リロードの場合)には、
図3のステップS27の処理に進む。ステップS27の処理の詳細については、
図4を用いて後述するので、ここでは、概略の流れを説明する。なお、情報の更新(リロード)の要求は、
図6の各画面111〜115の上部の左端に設けられたメニューボタンの押下操作により、
図6のメニュー画面116を表示させ、このメニュー画面116における「情報を更新する」ボタンの押下操作により行うことができる。
【0162】
図3のステップS27の処理は、前述した
図3のステップS17の処理と同様である。従って、画面取得手段53により、基本情報取得前の制御用画面の表示用データ(HTMLデータ)の取得処理が行われる。サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶された基本情報取得前の制御用画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へ送信する(
図3のステップS28)。このステップS28の処理は、前述した
図3のステップS18の処理と同様である。そして、第2の顧客端末50では、取得した基本情報取得前の制御用画面の表示用データ(HTMLデータ)から端末制御情報を刈り取るスクレイピング、端末利用可否判定、およびその判定結果に基づくメッセージ表示等の処理が行われる(
図3のステップS27)。
【0163】
その後、ステップS27の処理を経て、端末利用可と判定された場合(端末利用可否判定手段55から、端末利用可という情報を受け取った場合)には、画面取得手段53により、複数の基本情報の画面(
図6の各画面111〜117に対応する各画面)の取得要求を、ネットワーク1を介してサービス提供サーバ20へ送信する(
図3のステップS29)。この送信処理は、前述した
図3のステップS19の場合と同様である。
【0164】
サービス提供サーバ20では、画面送信手段23により、この取得要求を受信すると、画面記憶手段26に記憶されたサービス提供画面の表示用データのフォームに、基本情報を付加して基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を作成し、作成した複数の基本情報の画面の表示用データ(HTMLデータ)を、ネットワーク1を介して第2の顧客端末50へまとめて送信する(
図3のステップS30)。この送信処理は、前述した
図3のステップS20の場合と同様である。
【0165】
第2の顧客端末50では、画面取得手段53により、サービス提供サーバ20からネットワーク1を介して送信されてくる基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を受信し、受信したHTMLデータを、取得画面記憶手段58に記憶させる(
図3のステップS29)。この受信・格納処理は、前述した
図3のステップS19の場合と同様である。
【0166】
続いて、スクレイピング手段54により、取得画面記憶手段58に記憶されている基本情報の画面である複数のサービス提供画面の表示用データ(HTMLデータ)を加工して加工画面(
図6の各画面111〜117)の表示用データを作成し、作成した加工画面の表示用データを、取得画面記憶手段58に記憶させるサービス提供画面加工処理を実行する(
図3のステップS29)。この加工処理は、前述した
図3のステップS19の場合と同様である。
【0167】
それから、画面表示処理手段56により、スクレイピング手段54により取得画面記憶手段58に記憶させた再取得(リロード)した複数の基本情報の画面についての加工画面の表示用データのうち、
図6のメニュー画面116を開く前の画面(
図6の各画面111〜115のうちのいずれかの画面)の表示用データを用いて、メニュー画面116を開く前の画面についての更新表示を行った後(
図3のステップS29)、
図3のステップS21に戻り、顧客の次の操作を待つ。
【0168】
<
図4:第2の顧客端末50における制御用画面の取得、端末利用可否判定、およびその判定結果に伴うメッセージ表示等の処理の流れ>
【0169】
前述した
図2のステップS8,S13の処理、および、
図3のステップS17,S23,S27の処理に共通する端末利用可否の判定アルゴリズムについての詳細を説明する。
【0170】
図4において、画面取得手段53により、サービス提供サーバ20から制御用画面の表示用データ(HTMLデータ)を取得する(ステップS101)。
【0171】
ここで、制御用画面を取得することができなかった場合(ステップS102)には、画面取得手段53または端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS103)。このダイアログ表示の内容については、タイトルは、「エラー」であり、メッセージは、例えば「通信に失敗しました。通信状態の良い場所で再度行ってください。」等である。この通信エラー時のメッセージは、端末アプリに記述されているものである。
【0172】
一方、前述したステップS102で、制御用画面を取得することができた場合には、スクレイピング手段54により、取得した制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を構成するページ番号(メンテナンス時であるか否かを示す情報)を取得する(ステップS104)。
【0173】
ここで、ページ番号を取得することができなかった場合(ステップS105)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS106)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「システムメンテナンス中です。しばらく経ってから再度ログインしてください。」等である。このメンテナンス中による不許可を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0174】
一方、前述したステップS105で、ページ番号を取得することができた場合には、スクレイピング手段54により、取得した制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を構成するページバージョン(最低保証バージョン)を取得する(ステップS107)。
【0175】
ここで、ページバージョンを取得することができなかった場合(ステップS108)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS106)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「システムメンテナンス中です。しばらく経ってから再度ログインしてください。」等である。このメンテナンス中による不許可を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0176】
一方、前述したステップS108で、ページバージョンを取得することができた場合には、端末利用可否判定手段55により、端末アプリが保有する当該端末アプリ自身のバージョン(自己バージョン)と、ページバージョン(最低保証バージョン)とを比較する(ステップS109)。
【0177】
ここで、比較することができなかった場合(ステップS110)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS106)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「システムメンテナンス中です。しばらく経ってから再度ログインしてください。」等である。このメンテナンス中による不許可を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0178】
一方、前述したステップS110で、比較することができた場合には、端末利用可否判定手段55により、ページバージョン(最低保証バージョン)が、端末アプリの自己バージョン以下であるか否かを判断し(ステップS111)、以下ではないと判断された場合(端末アプリの自己バージョンのほうが古い場合、すなわち端末アプリの自己バージョンが保証範囲内にない場合)には、スクレイピング手段54により、取得した制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を構成するバージョンアップメッセージを取得する(ステップS112)。
【0179】
ここで、バージョンアップメッセージを取得することができた場合(ステップS113)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS114)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、スクレイピング手段54により取得したバージョンアップメッセージである。このバージョンアップ要請(メッセージ指定)は、システム管理者により指定された任意の内容のメッセージによる要請である。
【0180】
一方、前述したステップS113で、バージョンアップメッセージを取得することができなかった場合には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS115)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「古いバージジョンのアプリをお使いのようです。アプリを最新のバージョンにアップデートしてください。」等である。このバージョンアップ要請を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0181】
また、前述したステップS111で、ページバージョン(最低保証バージョン)が、端末アプリの自己バージョン以下であると判断された場合(端末アプリの自己バージョンが保証範囲内にある場合)には、端末利用可否判定手段55により、ページ番号が「ANM001(許可)」と同じか否かを判断する(ステップS116)。
【0182】
ここで、ページ番号が「ANM001(許可)」と同じであると判断された場合(ステップS117)には、端末利用可という判定結果が出たことになるので、端末利用可否判定手段55により、端末利用を継続させる処理を実行する。すなわち、顧客の操作に応じた処理をそのまま進める。
【0183】
一方、上記のステップS117で、ページ番号が「ANM001(許可)」と同じでないと判断された場合には、ページ番号が「AMT001(拒否)」と同じか否かを判断する(ステップS118)。
【0184】
ここで、ページ番号が「AMT001(拒否)」と同じでないと判断された場合(ステップS119)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS106)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「システムメンテナンス中です。しばらく経ってから再度ログインしてください。」等である。このメンテナンス中による不許可を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0185】
一方、上記のステップS119で、ページ番号が「AMT001(拒否)」と同じであると判断された場合には、スクレイピング手段54により、取得した制御用画面の表示用データ(HTMLデータ)の中に含まれる端末制御情報を構成するメンテナンスメッセージを取得する(ステップS120)。
【0186】
ここで、メンテナンスメッセージを取得することができた場合(ステップS121)には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS122)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、スクレイピング手段54により取得したメンテナンスメッセージである。このメンテナンス中による不許可(メッセージ指定)は、システム管理者により指定された任意の内容のメッセージによる不許可の通知である。
【0187】
一方、上記のステップS121で、メンテナンスメッセージを取得することができなかった場合には、端末利用可否判定手段55により、第2の顧客端末50の画面上に、次のようなダイアログ表示を行う(ステップS106)。このダイアログ表示の内容については、タイトルは、「通知」であり、メッセージは、例えば「システムメンテナンス中です。しばらく経ってから再度ログインしてください。」等である。このメンテナンス中による不許可を示すデフォルトメッセージは、端末アプリに記述されているものである。
【0188】
そして、以上において、ステップS103,S106,S114,S115,S122の処理を行った場合は、端末利用不可という判定結果が出たことになるので、端末利用可否判定手段55により、端末利用を停止させる処理を実行する。すなわち、ログイン中の場合(ステップS123)には、端末利用可否判定手段55により、ログアウトの処理を行った後(ステップS124)、
図2のステップS5へ戻るために、ログイン手段52に対し、
図5のログイン選択画面103の表示処理を行わせる指令を出す。一方、ログイン前の場合(ステップS123)には、ログアウトの処理は必要ないので、ログアウトの処理を行うことなく、
図2のステップS5へ戻るために、ログイン手段52に対し、
図5のログイン選択画面103の表示処理を行わせる指令を出す。
【0190】
このような本実施形態によれば、次のような効果がある。すなわち、サービス提供システム10では、サービス提供サーバ20に、制御用画面の表示用データ(
図8参照)を記憶させておき、第2の顧客端末50に搭載された端末アプリにより、この制御用画面の表示用データ(HTMLデータ)を読み込んでスクレイピング処理を行うことにより制御用画面の表示用データの中に含まれる端末制御情報(本実施形態では、ページ番号、ページバージョン、メンテナンスメッセージ、バージョンアップメッセージ)を取得し、この端末制御情報を用いて、第2の顧客端末50の利用の可否を判定するので、端末アプリのメンテナンス時には、メンテナンスメッセージ等の端末制御情報を含む制御用画面の表示用データ(HTMLデータ)を、サービス提供サーバ20に配置しておけば、第2の顧客端末50に搭載されている端末アプリにより、端末利用不可と判定し、メンテナンスメッセージを画面表示して端末利用を停止させる処理を実行することができる。
【0191】
このため、端末アプリのメンテナンス時には、この端末アプリを搭載した第2の顧客端末50側でのサービスの提供だけを一時的に停止し、サービス提供サーバ20側の稼働の停止については回避することができる。従って、端末アプリのメンテナンス時でも、この端末アプリとは異なるブラウザを搭載した第1の顧客端末40でのサービスの提供を継続することができる。
【0192】
また、端末利用可否判定手段55は、端末アプリが保有する当該端末アプリ自身のバージョン(自己バージョン)と、端末制御情報に含まれるページバージョン(最低保証バージョン)とを比較することにより、自己バージョンが最低保証バージョンよりも古いか否かを判定する構成とされているので、自己バージョンが最低保証バージョンよりも古いと判定した場合には、端末制御情報に含まれるバージョンアップメッセージを画面表示し、端末利用を停止させることができる。
【0193】
このため、端末アプリのバージョンアップを行った際には、端末制御情報としてページバージョン(最低保証バージョン)およびバージョンアップメッセージを含む制御用画面の表示用データ(HTMLデータ)を、サービス提供サーバ20に配置しておけば、古いバージョンの端末アプリを使用している顧客に対し、バージョンアップ要請を行うことができるうえ、端末利用を停止させることができる。このため、顧客は、適正なバージョンの端末アプリをダウンロードして第2の顧客端末50に搭載するまで、第2の顧客端末50でのサービスの提供を受けることができなくなるので、顧客に対し、誤った情報の提示が行われることを回避することができる。
【0194】
以上の効果を換言して簡潔に述べると、端末アプリは、第2の顧客端末50にインストールされると、顧客の任意のタイミングで操作される。サービス提供サーバ20側の都合により、端末アプリからサービス提供サーバ20側にアクセスして欲しくない場合、サービス提供サーバ20側での制御用画面の差替え操作のみにより、リアルタイムに第2の顧客端末50側での顧客の操作(端末利用)を制御することができるとともに、メッセージによる注意喚起を行うことができる。また、不特定多数の利用者(顧客)に対し、一斉にメンテナンスまたは端末アプリの更新(バージョンアップ)を促す通知を行うことができる。
【0195】
また、端末アプリが予期せぬ挙動を起こした際、通常は、第2の顧客端末50に搭載されている端末アプリだけを個別に停止させることはできない。これに対し、サービス提供システム10では、制御用画面の差替え操作によりサービス提供サーバ20側で端末アプリの挙動をコントロールできるため、サービス提供サーバ20の稼働を継続しつつ、端末アプリのみを一時的に利用停止させることができる。また、顧客に対してはメンテナンス中との表示を行うので、顧客が混乱を招く心配はない。特に、端末アプリのアップデートについて審査期間が必要となる場合(例えば、iOS用の端末アプリを開発する場合)においては、リアルタイムで端末制御を行うことができるので、顕著な効果を得ることができる。
【0196】
さらに、サービス提供システム10では、端末アプリによるサービス提供サーバ20からの取得タイミングがそれぞれ異なる3種類(ログイン処理前、基本情報取得前、追加情報取得前)の制御用画面の表示用データ(HTMLデータ)を、サービス提供サーバ20に配置しておくことができる。このため、第2の顧客端末50での端末アプリによる画面遷移において、適切なタイミングで適切なメッセージ(メンテナンスメッセージやバージョンアップメッセージ)を画面表示し、適切なタイミングで第2の顧客端末50の利用を停止させることができる。例えば、ログインの際は通常時であったが、その後、顧客が画面を遷移させている最中に、メンテナンス時やバージョンアップ要請時になった場合でも、適切なタイミングで、メッセージを画面表示して第2の顧客端末50の利用を停止させることができる。従って、顧客による第2の顧客端末50の各種操作のタイミングと、メンテナンスやバージョンアップ要請の発生時とのタイムラグに対応することができる。
【0197】
また、サービス提供サーバ20には、管理者支援手段25が設けられているので、サービス提供サーバ20において、第2の顧客端末50に搭載された端末アプリによるスクレイピング処理と同様な処理を行うことにより、管理者端末70の画面上において、ログインからサービス提供画面の表示に至るまでの画面遷移図、並びにこの画面遷移図中における端末制御情報によるメッセージの表示タイミングおよび表示内容を示す管理者支援画面100(
図5、
図6参照)の表示処理を行うことができる。このため、システム管理者は、制御用画面の表示用データ(HTMLデータ)内の端末制御情報の設定内容を含め、第2の顧客端末50についての端末制御の内容を、画面遷移と関連付けながら、容易に把握することができる。なお、この管理者支援手段25の設置は省略してもよい。
【0199】
なお、本発明は前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
【0200】
例えば、前記実施形態の管理者支援手段25は、サービス提供サーバ20に設けられていたが、管理者端末70に管理者支援手段を設けてもよい。このように管理者端末70に設けた場合の管理者支援手段は、サービス提供サーバ20の画面記憶手段26から通信回線2を介して制御用画面およびサービス提供画面の各表示用データ(HTMLデータ)を取得し、管理者端末70において、制御用画面の表示用データの中に含まれる端末制御情報を刈り取る管理者支援用の端末制御情報スクレイピング処理を実行するとともに、この管理者支援用の端末制御情報スクレイピング処理に加え、サービス提供画面の表示用データを加工して加工画面の表示用データを作成する管理者支援用のサービス提供画面加工処理を実行する。そして、管理者端末70において、管理者支援用の端末制御情報スクレイピング処理で得られた端末制御情報、および、管理者支援用のサービス提供画面加工処理で得られた加工画面の表示用データを用いて、
図5および
図6に示すような管理者支援画面100(すなわち、ログインからサービス提供画面の表示に至るまでの画面遷移図、並びにこの画面遷移図中における端末制御情報によるメッセージの表示タイミングおよび表示内容(
図5および
図6中の点線部分)を示す画面)の表示用データを作成し、作成した管理者支援画面100を表示する処理を実行する。
【0201】
また、前記実施形態では、サービス提供サーバ20から基本情報の画面である複数のサービス提供画面(
図6の各画面111〜117に対応する各画面であり、各画面111〜117は加工画面であるから、その加工元の画面)の表示用データ(HTMLデータ)をまとめて取得した場合に、それらの複数のサービス提供画面間の遷移情報は、端末アプリに記述されていたが、この遷移情報を、スクレイピング処理を利用して動的に作成してもよい。すなわち、スクレイピング手段54により、画面取得手段53により受信した複数のサービス提供画面の表示用データ(HTMLデータ)に含まれる次画面への遷移情報を刈り取って複数のサービス提供画面間の遷移情報を作成し、作成した遷移情報を取得画面記憶手段58に記憶させる遷移情報作成処理を実行するようにしてもよい。そして、画面表示処理手段56により、顧客による画面遷移の操作を受け付けた場合に、取得画面記憶手段58に記憶されている遷移情報を用いて、次に表示するサービス提供画面を特定するようにしてもよい。
【課題】サーバの稼働を停止させずに並行稼働中の別のブラウザを利用する顧客へのサービスの提供を継続しつつ、端末アプリのメンテナンスを行うことができるサービス提供システムおよび端末アプリケーションプログラムを提供する。
【解決手段】サービス提供システム10では、サービス提供サーバ20に、メンテナンスメッセージ等の端末制御情報を含む制御用画面の表示用データを配置しておき、第2の顧客端末50に搭載された端末アプリにより、この制御用画面の表示用データを読み込んでスクレイピング処理を行うことにより制御用画面の表示用データの中に含まれる端末制御情報を取得し、この端末制御情報を用いて第2の顧客端末50の利用の可否を判定し、端末利用不可と判定した場合には、メッセージを画面表示して端末利用を停止させる。