手書き文字変換サービス構成システムおよび手書き文字変換システム
【課題】携帯端末のハード情報を利用して、サーバ上で手書き文字変換サービスを構成する。
【解決手段】Webサーバ2の通信部211は、携帯端末1から、携帯端末1の構成を示すハード情報121と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する。サービス構成部215は、受信した通信データに含まれるハード情報121に基づいて、携帯端末1に対応した仮想マシンを決定するための仮想マシンIDと、仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求める。サービス提供部214は、仮想マシンIDに基づいて仮想マシンを決定し、手書き文字変換サービス情報に基づいて変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを仮想マシンに構成させる。
【解決手段】Webサーバ2の通信部211は、携帯端末1から、携帯端末1の構成を示すハード情報121と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する。サービス構成部215は、受信した通信データに含まれるハード情報121に基づいて、携帯端末1に対応した仮想マシンを決定するための仮想マシンIDと、仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求める。サービス提供部214は、仮想マシンIDに基づいて仮想マシンを決定し、手書き文字変換サービス情報に基づいて変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを仮想マシンに構成させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアントに入力された手書き文字を変換する手書き文字変換サービスをクライアントのハード構成に合わせてサーバ上に構成する手書き文字変換サービス構成システムおよび手書き文字変換システムに関する。
【背景技術】
【0002】
近年、携帯端末の高度化によりタッチパネルを用いた手書き入力が可能となった。このため、手書き入力を用いた多様なサービスが提供される傾向にあり、手書き入力された文字の変換や画像編集といったサービスをWebサービスとして提供することが望まれている。
【0003】
また、近年、クラウドコンピューティングの普及に伴い、サービス利用者がハードウェアやソフトウェアを自分で管理するのではなく、サービス提供者が管理してサービス利用者にサービスを提供するWebサービスが行われている(例えば、特許文献1参照)。
【0004】
また、近年、仮想化技術の普及に伴い、VMWARE(登録商標)に代表される仮想マシンの技術進歩が目覚ましい状況にあり、所有するマシン上で別のOS(オペレーティングシステム)を起動してプログラムを実行することのできる環境が整いつつある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表平11−502346号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
クラウドコンピューティングとしてのWebサービスを実現するにあたって、実現しようとしているサービスの構成方法はOSによって異なる。そこで、サービス実現に必要となるAPI(Application Program Interface)やライブラリ、エンジンが何かをクライアントから通知されたOS情報により決定づけ、仮想化技術を用いてサーバ上で仮想マシンを動作させることが考えられる。
しかし、サービス提供者が用意したどの仮想マシンおよびどのAPI、ライブラリ、エンジンを用いてサービスを実現すればよいかを決定するハード情報について、現在ではサービス利用者がクライアントのキーパッドから情報を入力する必要があるため、サービス提供の弊害となっている。
【0007】
本発明の目的は、クライアントの携帯端末で保持しているOS種別やバージョン情報、パッチ情報といったハード情報をWebサーバに通知し、Webサーバでは、通知されたハード情報からどの仮想マシンにサービス要求するかという構成情報を取得し、サービス要求する仮想マシンで手書き文字変換サービスの提供に必要となるAPI情報、ライブラリ情報および文字変換エンジン情報を取得することによって、手書き文字変換サービスを構成する手書き文字変換サービス構成システムおよび手書き文字変換システムを提供することである。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明の手書き文字変換サービス構成システムは、
携帯端末から、当該携帯端末の構成を示すハード情報と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて前記通信データに含まれる変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させるサービス提供手段と、
を備える。
【0009】
好ましくは、本発明の手書き文字変換サービス構成システムは、
前記ハード情報は、前記携帯端末のオペレーティングシステムの種別を識別するためのオペレーティングシステム種別識別情報と、前記オペレーティングシステムのバーションを示すバージョン識別情報と、前記オペレーティングシステムに適用されたパッチを示すパッチ識別情報とを含み、
前記手書き文字変換サービス情報は、APIを示すAPI情報と、ライブラリを示すライブラリ情報と、手書き文字変換エンジンを示すエンジン情報とを含む、
ことを特徴とする請求項1に記載の手書き文字変換サービス構成システム。
【0010】
また、本発明の手書き文字変換システムは、
携帯端末とサーバで構成される手書き文字変換システムであって、
前記携帯端末は、
利用者によって入力された手書き文字を受け付けて当該手書き文字から変換前データを生成する手書き文字受け付け手段と、
前記携帯端末の構成を示すハード情報と、前記手書き文字受け付け手段によって生成された変換前データとを含む通信データを作成する通信データ作成手段と、
前記通信データ作成手段によって作成された通信データを前記サーバに送信する通信データ送信手段と、
前記通信データ送信手段によって送信された通信データに応答して、前記サーバから送信される応答データを受信する応答データ受信手段と、
前記応答データ受信手段によって受信された応答データに含まれる変換後データを取得する変換後データ取得手段と、
を備え、
前記サーバは、
前記携帯端末から通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該携帯端末に対応した仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させ、前記携帯端末に対応した仮想マシンに前記通信データに含まれる変換前データを変換させて文字情報を含む変換後データを求めるサービス提供手段と、
前記サービス提供手段によって求められた変換後データを含む前記応答データを作成する応答データ作成手段と、
前記応答データ作成手段によって作成された応答データを前記携帯端末に送信する応答データ送信手段と、
を備える。
【発明の効果】
【0011】
本発明によれば、携帯端末に保持されたハード情報を利用して、Webサーバのサービス構成部で処理すべき仮想マシン情報を決定し、その仮想マシンで手書き文字変換サービスを提供するために必要となるAPI情報、ライブラリ情報および文字変換エンジン情報を検索して手書き文字変換サービスを構成することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に係る手書き文字変換システムの構成の一例を示す図である。
【図2】携帯端末とWebサーバの内部構造の一例を示す図である。
【図3】携帯端末が保持するハード情報のデータ構成の一例を示す図である。
【図4】携帯端末の通信部からWebサーバに送信するサービス要求データのデータ構成の一例を示す図である。
【図5】Webサーバの通信部から携帯端末に送信するサービス応答データのデータ構成の一例を示す図である。
【図6】構成情報DBのデータ構成の一例を示す図である。
【図7】API情報DBのデータ構成の一例を示す図である。
【図8】ライブラリ情報DBのデータ構成の一例を示す図である。
【図9】エンジン情報DBのデータ構成の一例を示す図である。
【図10】Webサーバのサービス提供部から仮想マシンに送信するサービス提供部要求データのデータ構成の一例を示す図である。
【図11】仮想マシンからWebサーバに送信するサービス提供部応答データのデータ構成の一例を示す図である。
【図12】携帯端末の通信データ作成部が行う通信データ作成処理の一例を示すフローチャートである。
【図13】Webサーバの通信データ解析部が行う携帯端末から送信された通信データの解析処理の一例を示すフローチャートである。
【図14】Webサーバのサービス提供部が行う処理の一例を示すフローチャートである。
【図15】Webサーバのサービス構成部が行う処理の一例を示すフローチャートである。
【図16】仮想マシンが行う処理の一例を示すフローチャートである。
【図17】Webサーバの応答データ作成部が行う処理の一例を示すフローチャートである。
【図18】携帯端末の応答データ解析部が行う応答データ解析処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態に係る手書き文字変換システムについて図面を参照しながら詳細に説明する。
【0014】
図1は、本発明の実施形態に係る手書き文字変換システムの構成の一例を示す。
本実施形態の手書き文字変換システムは、手書き文字変換サービスを要求するクライアントである携帯端末1と、手書き文字変換サービスを提供するサーバであるWebサーバ2とで構成される。携帯端末1とWebサーバ2とは、ネットワーク6に接続されており、相互に通信することができる。なお、図1には、携帯端末1がネットワーク6に1台のみ接続されている例を示したが、実際には、携帯端末1はネットワーク6に複数台接続されている。
【0015】
Webサーバ2は、CPU(Central Processing Unit)と、メモリと、記憶装置とを有する。
Webサーバ2のメモリは、RAM(Random Access Memory)やROM(Read Only Memory)等を含む。Webサーバ2のメモリは、仮想プラットホームプログラムおよび仮想マシンプログラムと、後述する手書き文字変換サービス応答プログラムとを記憶している。Webサーバ2のCPUは、仮想プラットホームプログラムおよび仮想マシンプログラムと、手書き文字変換サービス応答プログラムとを実行する。
【0016】
Webサーバ2のCPUが仮想プラットホームプログラムと仮想マシンプログラムを実行することにより、Webサーバ2が受け付けたサービス要求を実際に処理する仮想マシンの機能が実現される。なお、仮想マシンは複数のOS(オペレーティングシステム)環境を有する必要があることから、仮想マシンA3、仮想マシンB4・・・仮想マシンN5というように複数構成となる。また、Webサーバ2のCPUは、想定される携帯端末1に対応する仮想マシンを予め全て生成しておいても、各携帯端末1から手書き文字変換サービスの要求を受けた時にその携帯端末1に対応する仮想マシンを生成してもよい。
Webサーバ2の記憶装置は、ハードディスク装置や光ディスク装置等を含む。記憶装置は、後述するように、構成情報DB(データベース)221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224とを記憶している。
なお、Webサーバ2は、記憶装置に仮想プラットホームプログラムと仮想マシンプログラムと手書き文字変換サービス応答プログラムを保持し、CPUがこれらを記憶装置からメモリに読み込んで実行する構成であってもよい。
【0017】
携帯端末1は、CPUと、メモリと、タッチパネルとを有する。
携帯端末1のメモリも、Webサーバ2のメモリと同様に、RAMやROM等を含む。携帯端末1のメモリは、OSと、後述する手書き文字変換サービス要求プログラムとを記憶している。携帯端末1のCPUは、OSと、手書き文字変換サービス要求プログラムとを実行する。
なお、携帯端末1は、ハードディスク装置やフラッシュメモリ等で構成された記憶装置を含み、その記憶装置にOSと手書き文字変換サービス要求プログラムとを保持しており、CPUがこれらを記憶装置からメモリに読み込んで実行する構成であってもよい。
携帯端末1の利用者は、タッチパネルを用いて手書き入力を行うことができる。
また、携帯端末1は、1つのOS環境に依存することなく、様々なモバイルOSであっても手書き文字変換サービスを享受できる。
【0018】
Webサーバ2は、ネットワーク6を通して携帯端末1から送信される手書き文字変換サービス要求を受け付け、サービスを処理すべき仮想マシンを決定付けて処理要求を行い、ネットワーク6を通して処理結果を携帯端末2に送信する動作を行う。Webサーバ2は、多数の携帯端末1からサービス要求を受ける可能性があるため、負荷分散のために複数構成となり得る。
仮想マシンA3、仮想マシンB4・・・仮想マシンN5は、Webサーバからサービス要求を受け付け、入力となる変換前データを画像解析し、解析した結果を文字データに変換する処理を行う。仮想マシンはOS種別毎、あるいはバージョン、パッチ適用状況によって異なり、複数構成となる。
【0019】
図2は、携帯端末1とWebサーバ2の内部構造の一例を示す。
携帯端末1のCPUが手書き文字変換サービス要求プログラムを実行することによって、手書き文字変換サービス要求部11の機能が実現される。手書き文字変換サービス要求部11は、手書き文字インタフェース部111と、通信データ作成部112と、応答データ解析部113と、通信部114とで構成される。
手書き文字インタフェース部111は、タッチパネルを通してユーザから入力された手書き文字を受け付け、手書き文字から変換前データを生成する。通信データ作成部112は、Webサーバ2にサービス要求するために必要となる通信データを作成する。通信データは変換前データを含む。通信部114は、Webサーバに通信データを送信するとともに、Webサーバから送信される応答データを受信する。応答データ解析部113は、応答データを解析し、手書き文字が変換された変換後データを取得する。変換後データは文字情報を含む。変換後データに含まれる文字情報は、電子メールやワープロ等の所定のアプリケーションで利用される。
また、携帯端末1は、OSの種別を識別するためのOS種別IDと、OSのバーションを示すバージョン情報IDと、OSに適用されたパッチを示すパッチ情報IDとを含むハード情報121を有する。
【0020】
Webサーバ2のCPUが手書き文字変換サービス応答プログラムを実行することによって手書き文字変換サービス応答部21の機能が実現される。手書き文字変換サービス応答部21は、通信部211と、通信データ解析部212と、応答データ作成部213と、サービス提供部214と、サービス構成部215とで構成される。また、Webサーバ2の記憶装置は、上述したように、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224とを記憶している。
通信部211は、携帯端末1から送信された通信データを受信する。通信データ解析部212は、受信した通信データを解析する。サービス提供部214は、解析して取得した変換前データを文字変換して変換後データを取得する手書き文字変換サービスの構成情報の取得をサービス構成部215に依頼し、その構成情報を基に仮想マシンにサービス処理要求を行う。ここで、手書き文字変換サービスサービスの構成情報とは、仮想マシンの種別を示し、仮想マシンを決定するための情報となる仮想マシンID(図6を参照して後で説明する。)と、API情報、ライブラリ情報およびエンジン情報(図7〜9を参照して後で説明する。)を含み、仮想マシン上で手書き文字変換サービスを構成するための情報となる手書き文字変換サービス情報とをいう。
サービス構成部215は、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、エンジン情報DB224とからサービスの構成情報を取得する。応答データ作成部213は、サービス処理結果を受けて携帯端末1に送信するための応答データを作成する。
上述したように、Webサーバ2のCPUが仮想プラットホームプログラムと仮想マシンプログラムを実行することによって仮想マシンの機能が実現される。仮想マシンは、手書き文字変換処理部311と、画像解析部312と、文字変換部313とを有する。手書き文字変換処理部311は、Webサーバ2からのサービス処理要求を受け付ける。画像解析部312は、変換前データを画像解析する。文字変換部313は、画像解析した結果を文字変換する。
【0021】
なお、本発明の実施形態に係る手書き文字変換サービス構成システムは、手書き文字変換サービス応答部21に含まれる通信部211と、通信データ解析部212と、サービス提供部214と、サービス構成部215と、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224と、仮想マシンとで構成される。
【0022】
携帯端末1が保持するハード情報121は、図3に示すように、OS種別IDT11、バージョン情報IDT12、およびパッチ情報IDT13から構成される。
OS種別IDT11は携帯端末1のOS環境を示す。バージョン情報IDT12はOSのバージョンを示す。パッチ情報IDT13はOSに対するパッチの適用状況を示す。ハード情報121は、携帯端末1がどのOS環境で、OSのバージョンが何で、パッチの適用状況がどのようになっているかの情報をWebサーバ2に送信するために必要な情報である。
【0023】
携帯端末1の通信部114からWebサーバ2に送信するサービス要求データは、図4に示すように、要求元端末IDT21、要求先WebサーバIDT22、要求時刻T23、サービスIDT24、OS種別IDT25、バージョン情報IDT26、パッチ情報IDT27、変換前データT28から構成される。
要求元端末IDT21は、手書き文字変換サービスを要求した携帯端末1を示す。要求先WebサーバIDT22は手書き文字変換サービスを要求されたWebサーバ2を示す。要求時刻T23は携帯端末1が手書き文字変換サービスを要求した時刻を示す。要求元端末IDT21、要求先WebサーバIDT22および要求時刻T23は、主に障害時の調査情報として用いることを想定する。
サービスIDT24は、手書き文字変換サービスの種別を示す。サービスIDT24は、複数の手書き文字変換サービスがある場合に、Webサーバ2でサービス振り分けを行う場合に必要となる情報である。OS種別IDT25とバージョン情報IDT26およびパッチ情報IDT27は、それぞれ図3のハード情報121に含まれるOS種別IDT11、バージョン情報IDT12およびパッチ情報IDT13に対応する情報である。これらの情報は、手書き文字変換サービスを構成する場合に構成情報を取得するための情報として使用する。変換前データT28は、手書き文字変換対象のデータである。
【0024】
Webサーバ2のサーバ通信部211から携帯端末1に送信するサービス応答データは、図5に示すように、応答元WebサーバIDT31、応答先端末IDT32、応答時刻T33、変換後データT34から構成される。
応答元WebサーバIDT31は手書き文字変換サービスを実行したWebサーバ2を示す。応答先端末IDT32は、手書き文字変換サービスを要求した携帯端末1を示す。応答時刻T33は、仮想マシンによって文字変換サービスが実行された時刻を示す。応答時刻T33は、後述する図11のサービス提供部応答データから取得した応答時刻T93である。応答元WebサーバIDT31、応答先端末IDT32および応答時刻T33は、主に障害時の調査情報として用いることを想定する。
変換後データT34は、手書き文字変換後のデータである。変換後データT34は、後述する図11のサービス提供部応答データから取得した変換後データT94である。
【0025】
構成情報DB221は、図6に示すように、構成情報IDT41、OS種別IDT42、バージョン情報IDT43、パッチ情報IDT44、仮想マシンIDT45から構成される。
構成情報IDT41は、各構成情報を識別するための情報である。OS種別IDT42、バージョン情報IDT43およびバッチ情報IDT44は、それぞれ図3のハード情報121に含まれるOS種別IDT11、バージョン情報IDT12およびパッチ情報IDT13に対応する情報である。仮想マシンIDT45は、仮想マシンの種別を示す。
構成情報DB221は、サービス構成部215において携帯端末1から受信したデータ中に含まれるハード情報121を用いて、どの仮想マシンにサービス要求を行えばよいか決定するために、OS情報IDT42、バージョン情報IDT43およびパッチ情報IDT44をキーとして検索を行い、一致したレコードの仮想マシンIDT45を取得するために必要となる。
【0026】
API情報DB222は、図7に示すように、API情報IDT51、構成情報IDT52、API情報T53から構成される。
API情報IDT51は、各APIを識別するための情報である。構成情報IDT52は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。API情報T53は、仮想マシン上で手書き文字変換サービスを構成するために必要なAPIを示す。
API情報DB222は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのAPI情報T53を取得するために必要となる。取得したAPI情報T53は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0027】
ライブラリ情報DB223は、図8に示すように、ライブラリ情報IDT61、構成情報IDT62、ライブラリ情報T63から構成される。
ライブラリ情報IDT61は、各ライブラリを識別するための情報である。構成情報IDT62は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。ライブラリ情報T53は、仮想マシン上で手書き文字変換サービスを構成するために必要なライブラリを示す。
ライブラリ情報DB223は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのライブラリ情報T63を取得するために必要となる。取得したライブラリ情報T63は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0028】
文字変換エンジン情報DB224は、図9に示すように、エンジン情報IDT71、構成情報IDT72、エンジン情報T73から構成される。
エンジン情報IDT71は、各文字変換エンジンを識別するための情報である。構成情報IDT72は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。エンジン情報T73は、仮想マシン上で手書き文字変換サービスを構成するために用いられる手書き文字変換エンジンを示す。
文字変換エンジン情報DB224は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのエンジン情報T73を取得するために必要となる。取得したエンジン情報T73は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0029】
Webサーバ2のサービス提供部214から仮想マシンに送信するサービス提供部要求データは、図10に示すように、要求元サービスIDT81、要求先仮想マシンIDT82、要求時刻T83、API情報配列T84、ライブラリ情報配列T85、エンジン情報配列T86、変換前データT87から構成される。
要求元サービスIDT81と要求時刻T83は、それぞれ図4のサービス要求データから取得したサービスIDT24と要求時刻T23である。要求先仮想マシンIDT82は、図6の構成情報DB221から取得した仮想マシンIDT45である。要求元サービスIDT81と要求先仮想マシンIDT82、要求時刻T83は、主に障害時の調査情報として用いることを想定する。
API情報配列T84は、図7のAPI情報DB222から取得したAPI情報T53を含む。ライブラリ情報配列T85は、図8のライブラリ情報DB223から取得したライブラリ情報T63を含む。エンジン情報配列T86は図9の文字変換エンジン情報DB224から取得したエンジン情報T73を含む。API情報配列T84、ライブラリ情報配列T85およびエンジン情報配列T86は、仮想マシンで手書き文字変換サービスを構成するための情報として使用する。なお、API情報DB222とライブラリ情報DB223、文字変換エンジン情報DB224を検索した結果は、複数レコードとなる場合があるため、配列として情報を保持することを想定する。
変換前データT87は、図4のサービス要求データから取得した変換前データT28であり、手書き文字変換対象のデータである。
【0030】
仮想マシンからWebサーバ2に送信するサービス提供部応答データは、図11に示すように、応答元仮想マシンIDT91、応答先サービスIDT92、応答時刻T93、変換後データT94から構成される。
応答元仮想マシンIDT91と応答先サービスIDT92は、それぞれ図10のサービス提供部要求データに含まれる要求先仮想マシンIDT82と要求元サービスIDT81に対応する。応答時刻T93は、仮想マシンが文字変換サービスを実行した時刻を示す。応答時刻T93は、図5のサービス応答データに含まれる応答時刻T33となる。応答元仮想マシンIDT91、応答先サービスIDT92および応答時刻T93は、主に障害時の調査情報として用いることを想定する。
変換後データT94は手書き文字変換後のデータである。変換後データT94は、図5のサービス応答データに含まれる変換後データT34となる。
【0031】
上述したように構成された手書き文字変換システムの動作を以下に説明する。
図12は、携帯端末1の通信データ作成部112が行う通信データ作成処理の一例を示すフローチャートである。
まず、手書き文字インタフェース部111からユーザによって入力された手書き文字を示す変換前データを取得する(S101)。
次に、取得した変換前データが不正な情報ではないかチェックする(S102)。
チェックした結果が正常の場合(S103:Yes)、障害情報として必要となる要求時刻を取得し(S104)、Webサーバ2にネットワーク6を介して通信データを送信するための通信プロトコルで定められた通信ヘッダを作成する(S105)。次に、携帯端末1が保持しているハード情報121と変換前データとを含む図4のサービス要求データを作成する。そして、通信ヘッダとサービス要求データとを含む通信データを作成し(S106)、携帯端末1の通信部114に対して通信データの送信を要求する(S107)。
チェックした結果がエラーとなった場合(S103:No)は、手書き文字インタフェース部111にエラーが発生した旨を通知するためにエラー応答する(ステップS108)。
【0032】
図13は、Webサーバ2の通信データ解析部212が行う携帯端末2から送信された通信データの解析処理の一例を示すフローチャートである。
まず、通信ヘッダに誤りが無いかチェックする(S201)。
チェックした結果が正常の場合(S202:Yes)、サービス要求データに誤りがないかチェックする(S203)。
サービス要求データのチェックでも正常となった場合(S204:Yes)は、Webサーバ2のサービス提供部214に通信データを通知する(S205)。
通信ヘッダのチェック結果、またはサービス要求データのチェック結果がエラーとなった場合(S202:No、S204:No)は、サービス提供を中断して携帯端末1にエラー応答する必要があるため、Webサーバ2の応答データ作成部213にエラー応答の送信を要求する(S206)。
【0033】
図14は、Webサーバ2のサービス提供部214が行う処理の一例を示すフローチャートである。
まず、Webサーバ2の通信データ解析部212から受け付けた通信データに含まれるハード情報を基に構成情報を取得する処理をWebサーバ2のサービス構成部215に要求する(S301)。
構成情報の取得処理が成功した場合(S302:Yes)は、取得した構成情報を基に仮想マシンに手書き文字変換処理の実行を要求する(S303)。
仮想マシンの手書き文字変換処理も正常となった場合(S304:Yes)は、Webサーバ2の応答データ作成部213に手書き文字変換処理結果を送信するための応答データの作成を要求する(S305)。
サービス構成部215の構成情報取得処理、または仮想マシンの手書き文字変換処理の結果がエラーとなった場合(S302:No、S304:No)は、Webサーバ2の応答データ作成部213にエラー応答の作成を要求する(S306)。
【0034】
図15は、Webサーバ2のサービス構成部215が行う処理の一例を示すフローチャートである。
まず、Webサーバ2のサービス提供部214から受け付けた通信データに含まれるハード情報121のOS種別IDT11、バージョン情報IDT12、パッチ情報IDT13をキーとして構成情報DB221を検索し、手書き文字変換サービスを構成するための構成情報IDT41と手書き文字変換処理を要求する仮想マシンの仮想マシンIDT45を取得する(S401)。
構成情報IDT41と仮想マシンIDT45の取得が成功した場合(S402:Yes)は、取得した構成情報IDT41をキーとしてAPI情報DB222を検索し、手書き文字変換サービスを構成するためのAPI情報T53を取得する(S403)。
API情報T53の取得が成功した場合(S404:Yes)は、取得した構成情報IDT41をキーとしてライブラリ情報DB223を検索し、手書き文字変換サービスを構成するためのライブラリ情報T63を取得する(S405)。
ライブラリ情報T63の取得が成功した場合(S406:Yes)は、取得した構成情報IDT41をキーとして文字変換エンジン情報DB224を検索し、手書き文字変換サービスを構成するためのエンジン情報T73を取得する(S407)。
エンジン情報T73の取得が成功した場合は、Webサーバ2のサービス提供部214に取得した仮想マシンIDT45と手書き文字変換サービス情報(API情報T53、ライブラリ情報T63およびエンジン情報T73)を送信する(S409)。
各種情報の取得処理の結果がエラーとなった場合(S402:No、S404:No、S406:No、S408:No)は、Webサーバ2のサービス提供部214にエラー情報を送信する(S410)。
【0035】
図16は、仮想マシンが行う処理の一例を示すフローチャートである。
まず、手書き文字変換処理部311は、Webサーバ2のサービス提供部214から図10のサービス提供部要求データを受信し、手書き文字変換サービス情報であるAPI情報配列T84、ライブラリ情報配列T85、エンジン情報配列T86を取得する(S501)。
次に、図10のサービス提供部要求データに含まれる変換前データT87を画像解析するために画像解析部312に画像解析を要求する(S502)。
画像解析部312の画像解析処理が成功した場合(S503:Yes)は、画像解析結果を文字変換するために文字変換部313に文字変換処理を要求する(S504)。
文字変換部313の文字変換処理が成功した場合(S505:Yes)は、Webサーバ2のサービス提供部214に手書き文字変換処理結果として図11のサービス提供部応答データを送信する(S505)。
画像解析処理、および文字変換処理の結果がエラーとなった場合(S503:No、S505:No)は、Webサーバ2のサービス提供部214にエラー情報を送信する(S506)。
【0036】
図17は、Webサーバ2の応答データ作成部213が行う処理の一例を示すフローチャートである。
まず、障害情報として必要となる応答時刻を図11のサービス提供部応答データから取得し(S601)、Webサーバ2からネットワーク6を介して応答データを送信するための通信プロトコルで定められた通信ヘッダを作成する(S602)。次に、仮想マシンにより処理された手書き文字変換処理の結果である変換後データを図11のサービス提供部応答データから取得し、図5のサービス応答データを作成する。そして、通信ヘッダとサービス応答データを含む応答データを作成し(S603)、Webサーバ2の通信部211に対して応答データの送信を要求する(S604)。
【0037】
図18は、携帯端末1の応答データ解析部113が行う応答データ解析処理の一例を示すフローチャートである。
まず、通信ヘッダに誤りが無いかチェックする(S701)。
チェックした結果が正常の場合(S702:Yes)、サービス応答データに誤りがないかチェックする(S703)。
サービス応答データのチェックでも正常となった場合(S704:Yes)は、サービス応答データを解析し、手書き文字が変換された変換後データを取得して手書き文字インタフェース部111に変換後データを通知する(S705)。
通信ヘッダのチェック結果、およびサービス応答データのチェック結果がエラーとなった場合(S702:No、S704:No)は、手書き文字インタフェース部111にエラー情報を通知する(S706)。
【0038】
なお、上述した実施形態では、タッチパネルにより携帯端末1に手書き文字を入力する例を示したが、携帯端末1がカメラを備え、カメラにより手書き文字を撮影することによって入力する等他の手段により携帯端末1に手書き文字を入力してもよい。
【0039】
以上説明したように、本発明によれば、サービス利用者がハード情報121を手入力する必要がなく、携帯端末1のハード情報121を使用してWebサーバ2側で自動的に手書き文字変換サービスを行うための構成情報を組み立て、仮想マシンを用いて手書き文字変換サービスを実行し、処理結果を携帯端末1に応答することができる。
【符号の説明】
【0040】
1…携帯端末
2…Webサーバ
3…仮想マシンA
4…仮想マシンB
5…仮想マシンN
6…ネットワーク
11…手書き文字変換サービス要求部
111…手書き文字インタフェース部
112…通信データ作成部
113…応答データ解析部
114…携帯端末1の通信部
121…ハード情報
21…手書き文字変換サービス応答部
211…Webサーバ2の通信部
212…通信データ解析部
213…応答データ作成部
214…サービス提供部
215…サービス構成部
221…構成情報DB
222…API情報DB
223…ライブラリ情報DB
224…文字変換エンジン情報DB
311…手書き文字変換処理部
312…画像解析部
313…文字変換部
【技術分野】
【0001】
本発明は、クライアントに入力された手書き文字を変換する手書き文字変換サービスをクライアントのハード構成に合わせてサーバ上に構成する手書き文字変換サービス構成システムおよび手書き文字変換システムに関する。
【背景技術】
【0002】
近年、携帯端末の高度化によりタッチパネルを用いた手書き入力が可能となった。このため、手書き入力を用いた多様なサービスが提供される傾向にあり、手書き入力された文字の変換や画像編集といったサービスをWebサービスとして提供することが望まれている。
【0003】
また、近年、クラウドコンピューティングの普及に伴い、サービス利用者がハードウェアやソフトウェアを自分で管理するのではなく、サービス提供者が管理してサービス利用者にサービスを提供するWebサービスが行われている(例えば、特許文献1参照)。
【0004】
また、近年、仮想化技術の普及に伴い、VMWARE(登録商標)に代表される仮想マシンの技術進歩が目覚ましい状況にあり、所有するマシン上で別のOS(オペレーティングシステム)を起動してプログラムを実行することのできる環境が整いつつある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表平11−502346号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
クラウドコンピューティングとしてのWebサービスを実現するにあたって、実現しようとしているサービスの構成方法はOSによって異なる。そこで、サービス実現に必要となるAPI(Application Program Interface)やライブラリ、エンジンが何かをクライアントから通知されたOS情報により決定づけ、仮想化技術を用いてサーバ上で仮想マシンを動作させることが考えられる。
しかし、サービス提供者が用意したどの仮想マシンおよびどのAPI、ライブラリ、エンジンを用いてサービスを実現すればよいかを決定するハード情報について、現在ではサービス利用者がクライアントのキーパッドから情報を入力する必要があるため、サービス提供の弊害となっている。
【0007】
本発明の目的は、クライアントの携帯端末で保持しているOS種別やバージョン情報、パッチ情報といったハード情報をWebサーバに通知し、Webサーバでは、通知されたハード情報からどの仮想マシンにサービス要求するかという構成情報を取得し、サービス要求する仮想マシンで手書き文字変換サービスの提供に必要となるAPI情報、ライブラリ情報および文字変換エンジン情報を取得することによって、手書き文字変換サービスを構成する手書き文字変換サービス構成システムおよび手書き文字変換システムを提供することである。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明の手書き文字変換サービス構成システムは、
携帯端末から、当該携帯端末の構成を示すハード情報と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて前記通信データに含まれる変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させるサービス提供手段と、
を備える。
【0009】
好ましくは、本発明の手書き文字変換サービス構成システムは、
前記ハード情報は、前記携帯端末のオペレーティングシステムの種別を識別するためのオペレーティングシステム種別識別情報と、前記オペレーティングシステムのバーションを示すバージョン識別情報と、前記オペレーティングシステムに適用されたパッチを示すパッチ識別情報とを含み、
前記手書き文字変換サービス情報は、APIを示すAPI情報と、ライブラリを示すライブラリ情報と、手書き文字変換エンジンを示すエンジン情報とを含む、
ことを特徴とする請求項1に記載の手書き文字変換サービス構成システム。
【0010】
また、本発明の手書き文字変換システムは、
携帯端末とサーバで構成される手書き文字変換システムであって、
前記携帯端末は、
利用者によって入力された手書き文字を受け付けて当該手書き文字から変換前データを生成する手書き文字受け付け手段と、
前記携帯端末の構成を示すハード情報と、前記手書き文字受け付け手段によって生成された変換前データとを含む通信データを作成する通信データ作成手段と、
前記通信データ作成手段によって作成された通信データを前記サーバに送信する通信データ送信手段と、
前記通信データ送信手段によって送信された通信データに応答して、前記サーバから送信される応答データを受信する応答データ受信手段と、
前記応答データ受信手段によって受信された応答データに含まれる変換後データを取得する変換後データ取得手段と、
を備え、
前記サーバは、
前記携帯端末から通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該携帯端末に対応した仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させ、前記携帯端末に対応した仮想マシンに前記通信データに含まれる変換前データを変換させて文字情報を含む変換後データを求めるサービス提供手段と、
前記サービス提供手段によって求められた変換後データを含む前記応答データを作成する応答データ作成手段と、
前記応答データ作成手段によって作成された応答データを前記携帯端末に送信する応答データ送信手段と、
を備える。
【発明の効果】
【0011】
本発明によれば、携帯端末に保持されたハード情報を利用して、Webサーバのサービス構成部で処理すべき仮想マシン情報を決定し、その仮想マシンで手書き文字変換サービスを提供するために必要となるAPI情報、ライブラリ情報および文字変換エンジン情報を検索して手書き文字変換サービスを構成することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に係る手書き文字変換システムの構成の一例を示す図である。
【図2】携帯端末とWebサーバの内部構造の一例を示す図である。
【図3】携帯端末が保持するハード情報のデータ構成の一例を示す図である。
【図4】携帯端末の通信部からWebサーバに送信するサービス要求データのデータ構成の一例を示す図である。
【図5】Webサーバの通信部から携帯端末に送信するサービス応答データのデータ構成の一例を示す図である。
【図6】構成情報DBのデータ構成の一例を示す図である。
【図7】API情報DBのデータ構成の一例を示す図である。
【図8】ライブラリ情報DBのデータ構成の一例を示す図である。
【図9】エンジン情報DBのデータ構成の一例を示す図である。
【図10】Webサーバのサービス提供部から仮想マシンに送信するサービス提供部要求データのデータ構成の一例を示す図である。
【図11】仮想マシンからWebサーバに送信するサービス提供部応答データのデータ構成の一例を示す図である。
【図12】携帯端末の通信データ作成部が行う通信データ作成処理の一例を示すフローチャートである。
【図13】Webサーバの通信データ解析部が行う携帯端末から送信された通信データの解析処理の一例を示すフローチャートである。
【図14】Webサーバのサービス提供部が行う処理の一例を示すフローチャートである。
【図15】Webサーバのサービス構成部が行う処理の一例を示すフローチャートである。
【図16】仮想マシンが行う処理の一例を示すフローチャートである。
【図17】Webサーバの応答データ作成部が行う処理の一例を示すフローチャートである。
【図18】携帯端末の応答データ解析部が行う応答データ解析処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態に係る手書き文字変換システムについて図面を参照しながら詳細に説明する。
【0014】
図1は、本発明の実施形態に係る手書き文字変換システムの構成の一例を示す。
本実施形態の手書き文字変換システムは、手書き文字変換サービスを要求するクライアントである携帯端末1と、手書き文字変換サービスを提供するサーバであるWebサーバ2とで構成される。携帯端末1とWebサーバ2とは、ネットワーク6に接続されており、相互に通信することができる。なお、図1には、携帯端末1がネットワーク6に1台のみ接続されている例を示したが、実際には、携帯端末1はネットワーク6に複数台接続されている。
【0015】
Webサーバ2は、CPU(Central Processing Unit)と、メモリと、記憶装置とを有する。
Webサーバ2のメモリは、RAM(Random Access Memory)やROM(Read Only Memory)等を含む。Webサーバ2のメモリは、仮想プラットホームプログラムおよび仮想マシンプログラムと、後述する手書き文字変換サービス応答プログラムとを記憶している。Webサーバ2のCPUは、仮想プラットホームプログラムおよび仮想マシンプログラムと、手書き文字変換サービス応答プログラムとを実行する。
【0016】
Webサーバ2のCPUが仮想プラットホームプログラムと仮想マシンプログラムを実行することにより、Webサーバ2が受け付けたサービス要求を実際に処理する仮想マシンの機能が実現される。なお、仮想マシンは複数のOS(オペレーティングシステム)環境を有する必要があることから、仮想マシンA3、仮想マシンB4・・・仮想マシンN5というように複数構成となる。また、Webサーバ2のCPUは、想定される携帯端末1に対応する仮想マシンを予め全て生成しておいても、各携帯端末1から手書き文字変換サービスの要求を受けた時にその携帯端末1に対応する仮想マシンを生成してもよい。
Webサーバ2の記憶装置は、ハードディスク装置や光ディスク装置等を含む。記憶装置は、後述するように、構成情報DB(データベース)221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224とを記憶している。
なお、Webサーバ2は、記憶装置に仮想プラットホームプログラムと仮想マシンプログラムと手書き文字変換サービス応答プログラムを保持し、CPUがこれらを記憶装置からメモリに読み込んで実行する構成であってもよい。
【0017】
携帯端末1は、CPUと、メモリと、タッチパネルとを有する。
携帯端末1のメモリも、Webサーバ2のメモリと同様に、RAMやROM等を含む。携帯端末1のメモリは、OSと、後述する手書き文字変換サービス要求プログラムとを記憶している。携帯端末1のCPUは、OSと、手書き文字変換サービス要求プログラムとを実行する。
なお、携帯端末1は、ハードディスク装置やフラッシュメモリ等で構成された記憶装置を含み、その記憶装置にOSと手書き文字変換サービス要求プログラムとを保持しており、CPUがこれらを記憶装置からメモリに読み込んで実行する構成であってもよい。
携帯端末1の利用者は、タッチパネルを用いて手書き入力を行うことができる。
また、携帯端末1は、1つのOS環境に依存することなく、様々なモバイルOSであっても手書き文字変換サービスを享受できる。
【0018】
Webサーバ2は、ネットワーク6を通して携帯端末1から送信される手書き文字変換サービス要求を受け付け、サービスを処理すべき仮想マシンを決定付けて処理要求を行い、ネットワーク6を通して処理結果を携帯端末2に送信する動作を行う。Webサーバ2は、多数の携帯端末1からサービス要求を受ける可能性があるため、負荷分散のために複数構成となり得る。
仮想マシンA3、仮想マシンB4・・・仮想マシンN5は、Webサーバからサービス要求を受け付け、入力となる変換前データを画像解析し、解析した結果を文字データに変換する処理を行う。仮想マシンはOS種別毎、あるいはバージョン、パッチ適用状況によって異なり、複数構成となる。
【0019】
図2は、携帯端末1とWebサーバ2の内部構造の一例を示す。
携帯端末1のCPUが手書き文字変換サービス要求プログラムを実行することによって、手書き文字変換サービス要求部11の機能が実現される。手書き文字変換サービス要求部11は、手書き文字インタフェース部111と、通信データ作成部112と、応答データ解析部113と、通信部114とで構成される。
手書き文字インタフェース部111は、タッチパネルを通してユーザから入力された手書き文字を受け付け、手書き文字から変換前データを生成する。通信データ作成部112は、Webサーバ2にサービス要求するために必要となる通信データを作成する。通信データは変換前データを含む。通信部114は、Webサーバに通信データを送信するとともに、Webサーバから送信される応答データを受信する。応答データ解析部113は、応答データを解析し、手書き文字が変換された変換後データを取得する。変換後データは文字情報を含む。変換後データに含まれる文字情報は、電子メールやワープロ等の所定のアプリケーションで利用される。
また、携帯端末1は、OSの種別を識別するためのOS種別IDと、OSのバーションを示すバージョン情報IDと、OSに適用されたパッチを示すパッチ情報IDとを含むハード情報121を有する。
【0020】
Webサーバ2のCPUが手書き文字変換サービス応答プログラムを実行することによって手書き文字変換サービス応答部21の機能が実現される。手書き文字変換サービス応答部21は、通信部211と、通信データ解析部212と、応答データ作成部213と、サービス提供部214と、サービス構成部215とで構成される。また、Webサーバ2の記憶装置は、上述したように、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224とを記憶している。
通信部211は、携帯端末1から送信された通信データを受信する。通信データ解析部212は、受信した通信データを解析する。サービス提供部214は、解析して取得した変換前データを文字変換して変換後データを取得する手書き文字変換サービスの構成情報の取得をサービス構成部215に依頼し、その構成情報を基に仮想マシンにサービス処理要求を行う。ここで、手書き文字変換サービスサービスの構成情報とは、仮想マシンの種別を示し、仮想マシンを決定するための情報となる仮想マシンID(図6を参照して後で説明する。)と、API情報、ライブラリ情報およびエンジン情報(図7〜9を参照して後で説明する。)を含み、仮想マシン上で手書き文字変換サービスを構成するための情報となる手書き文字変換サービス情報とをいう。
サービス構成部215は、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、エンジン情報DB224とからサービスの構成情報を取得する。応答データ作成部213は、サービス処理結果を受けて携帯端末1に送信するための応答データを作成する。
上述したように、Webサーバ2のCPUが仮想プラットホームプログラムと仮想マシンプログラムを実行することによって仮想マシンの機能が実現される。仮想マシンは、手書き文字変換処理部311と、画像解析部312と、文字変換部313とを有する。手書き文字変換処理部311は、Webサーバ2からのサービス処理要求を受け付ける。画像解析部312は、変換前データを画像解析する。文字変換部313は、画像解析した結果を文字変換する。
【0021】
なお、本発明の実施形態に係る手書き文字変換サービス構成システムは、手書き文字変換サービス応答部21に含まれる通信部211と、通信データ解析部212と、サービス提供部214と、サービス構成部215と、構成情報DB221と、API情報DB222と、ライブラリ情報DB223と、文字変換エンジン情報DB224と、仮想マシンとで構成される。
【0022】
携帯端末1が保持するハード情報121は、図3に示すように、OS種別IDT11、バージョン情報IDT12、およびパッチ情報IDT13から構成される。
OS種別IDT11は携帯端末1のOS環境を示す。バージョン情報IDT12はOSのバージョンを示す。パッチ情報IDT13はOSに対するパッチの適用状況を示す。ハード情報121は、携帯端末1がどのOS環境で、OSのバージョンが何で、パッチの適用状況がどのようになっているかの情報をWebサーバ2に送信するために必要な情報である。
【0023】
携帯端末1の通信部114からWebサーバ2に送信するサービス要求データは、図4に示すように、要求元端末IDT21、要求先WebサーバIDT22、要求時刻T23、サービスIDT24、OS種別IDT25、バージョン情報IDT26、パッチ情報IDT27、変換前データT28から構成される。
要求元端末IDT21は、手書き文字変換サービスを要求した携帯端末1を示す。要求先WebサーバIDT22は手書き文字変換サービスを要求されたWebサーバ2を示す。要求時刻T23は携帯端末1が手書き文字変換サービスを要求した時刻を示す。要求元端末IDT21、要求先WebサーバIDT22および要求時刻T23は、主に障害時の調査情報として用いることを想定する。
サービスIDT24は、手書き文字変換サービスの種別を示す。サービスIDT24は、複数の手書き文字変換サービスがある場合に、Webサーバ2でサービス振り分けを行う場合に必要となる情報である。OS種別IDT25とバージョン情報IDT26およびパッチ情報IDT27は、それぞれ図3のハード情報121に含まれるOS種別IDT11、バージョン情報IDT12およびパッチ情報IDT13に対応する情報である。これらの情報は、手書き文字変換サービスを構成する場合に構成情報を取得するための情報として使用する。変換前データT28は、手書き文字変換対象のデータである。
【0024】
Webサーバ2のサーバ通信部211から携帯端末1に送信するサービス応答データは、図5に示すように、応答元WebサーバIDT31、応答先端末IDT32、応答時刻T33、変換後データT34から構成される。
応答元WebサーバIDT31は手書き文字変換サービスを実行したWebサーバ2を示す。応答先端末IDT32は、手書き文字変換サービスを要求した携帯端末1を示す。応答時刻T33は、仮想マシンによって文字変換サービスが実行された時刻を示す。応答時刻T33は、後述する図11のサービス提供部応答データから取得した応答時刻T93である。応答元WebサーバIDT31、応答先端末IDT32および応答時刻T33は、主に障害時の調査情報として用いることを想定する。
変換後データT34は、手書き文字変換後のデータである。変換後データT34は、後述する図11のサービス提供部応答データから取得した変換後データT94である。
【0025】
構成情報DB221は、図6に示すように、構成情報IDT41、OS種別IDT42、バージョン情報IDT43、パッチ情報IDT44、仮想マシンIDT45から構成される。
構成情報IDT41は、各構成情報を識別するための情報である。OS種別IDT42、バージョン情報IDT43およびバッチ情報IDT44は、それぞれ図3のハード情報121に含まれるOS種別IDT11、バージョン情報IDT12およびパッチ情報IDT13に対応する情報である。仮想マシンIDT45は、仮想マシンの種別を示す。
構成情報DB221は、サービス構成部215において携帯端末1から受信したデータ中に含まれるハード情報121を用いて、どの仮想マシンにサービス要求を行えばよいか決定するために、OS情報IDT42、バージョン情報IDT43およびパッチ情報IDT44をキーとして検索を行い、一致したレコードの仮想マシンIDT45を取得するために必要となる。
【0026】
API情報DB222は、図7に示すように、API情報IDT51、構成情報IDT52、API情報T53から構成される。
API情報IDT51は、各APIを識別するための情報である。構成情報IDT52は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。API情報T53は、仮想マシン上で手書き文字変換サービスを構成するために必要なAPIを示す。
API情報DB222は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのAPI情報T53を取得するために必要となる。取得したAPI情報T53は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0027】
ライブラリ情報DB223は、図8に示すように、ライブラリ情報IDT61、構成情報IDT62、ライブラリ情報T63から構成される。
ライブラリ情報IDT61は、各ライブラリを識別するための情報である。構成情報IDT62は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。ライブラリ情報T53は、仮想マシン上で手書き文字変換サービスを構成するために必要なライブラリを示す。
ライブラリ情報DB223は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのライブラリ情報T63を取得するために必要となる。取得したライブラリ情報T63は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0028】
文字変換エンジン情報DB224は、図9に示すように、エンジン情報IDT71、構成情報IDT72、エンジン情報T73から構成される。
エンジン情報IDT71は、各文字変換エンジンを識別するための情報である。構成情報IDT72は、図6の構成情報DB221に含まれる構成情報IDT41に対応する情報である。エンジン情報T73は、仮想マシン上で手書き文字変換サービスを構成するために用いられる手書き文字変換エンジンを示す。
文字変換エンジン情報DB224は、サービス構成部215において構成情報DB221の検索結果として取得する構成情報IDT41をキーとして検索を行い、一致したレコードのエンジン情報T73を取得するために必要となる。取得したエンジン情報T73は、仮想マシンにサービス処理要求を行う際にサービス構成情報の一情報として通知する情報となる。
【0029】
Webサーバ2のサービス提供部214から仮想マシンに送信するサービス提供部要求データは、図10に示すように、要求元サービスIDT81、要求先仮想マシンIDT82、要求時刻T83、API情報配列T84、ライブラリ情報配列T85、エンジン情報配列T86、変換前データT87から構成される。
要求元サービスIDT81と要求時刻T83は、それぞれ図4のサービス要求データから取得したサービスIDT24と要求時刻T23である。要求先仮想マシンIDT82は、図6の構成情報DB221から取得した仮想マシンIDT45である。要求元サービスIDT81と要求先仮想マシンIDT82、要求時刻T83は、主に障害時の調査情報として用いることを想定する。
API情報配列T84は、図7のAPI情報DB222から取得したAPI情報T53を含む。ライブラリ情報配列T85は、図8のライブラリ情報DB223から取得したライブラリ情報T63を含む。エンジン情報配列T86は図9の文字変換エンジン情報DB224から取得したエンジン情報T73を含む。API情報配列T84、ライブラリ情報配列T85およびエンジン情報配列T86は、仮想マシンで手書き文字変換サービスを構成するための情報として使用する。なお、API情報DB222とライブラリ情報DB223、文字変換エンジン情報DB224を検索した結果は、複数レコードとなる場合があるため、配列として情報を保持することを想定する。
変換前データT87は、図4のサービス要求データから取得した変換前データT28であり、手書き文字変換対象のデータである。
【0030】
仮想マシンからWebサーバ2に送信するサービス提供部応答データは、図11に示すように、応答元仮想マシンIDT91、応答先サービスIDT92、応答時刻T93、変換後データT94から構成される。
応答元仮想マシンIDT91と応答先サービスIDT92は、それぞれ図10のサービス提供部要求データに含まれる要求先仮想マシンIDT82と要求元サービスIDT81に対応する。応答時刻T93は、仮想マシンが文字変換サービスを実行した時刻を示す。応答時刻T93は、図5のサービス応答データに含まれる応答時刻T33となる。応答元仮想マシンIDT91、応答先サービスIDT92および応答時刻T93は、主に障害時の調査情報として用いることを想定する。
変換後データT94は手書き文字変換後のデータである。変換後データT94は、図5のサービス応答データに含まれる変換後データT34となる。
【0031】
上述したように構成された手書き文字変換システムの動作を以下に説明する。
図12は、携帯端末1の通信データ作成部112が行う通信データ作成処理の一例を示すフローチャートである。
まず、手書き文字インタフェース部111からユーザによって入力された手書き文字を示す変換前データを取得する(S101)。
次に、取得した変換前データが不正な情報ではないかチェックする(S102)。
チェックした結果が正常の場合(S103:Yes)、障害情報として必要となる要求時刻を取得し(S104)、Webサーバ2にネットワーク6を介して通信データを送信するための通信プロトコルで定められた通信ヘッダを作成する(S105)。次に、携帯端末1が保持しているハード情報121と変換前データとを含む図4のサービス要求データを作成する。そして、通信ヘッダとサービス要求データとを含む通信データを作成し(S106)、携帯端末1の通信部114に対して通信データの送信を要求する(S107)。
チェックした結果がエラーとなった場合(S103:No)は、手書き文字インタフェース部111にエラーが発生した旨を通知するためにエラー応答する(ステップS108)。
【0032】
図13は、Webサーバ2の通信データ解析部212が行う携帯端末2から送信された通信データの解析処理の一例を示すフローチャートである。
まず、通信ヘッダに誤りが無いかチェックする(S201)。
チェックした結果が正常の場合(S202:Yes)、サービス要求データに誤りがないかチェックする(S203)。
サービス要求データのチェックでも正常となった場合(S204:Yes)は、Webサーバ2のサービス提供部214に通信データを通知する(S205)。
通信ヘッダのチェック結果、またはサービス要求データのチェック結果がエラーとなった場合(S202:No、S204:No)は、サービス提供を中断して携帯端末1にエラー応答する必要があるため、Webサーバ2の応答データ作成部213にエラー応答の送信を要求する(S206)。
【0033】
図14は、Webサーバ2のサービス提供部214が行う処理の一例を示すフローチャートである。
まず、Webサーバ2の通信データ解析部212から受け付けた通信データに含まれるハード情報を基に構成情報を取得する処理をWebサーバ2のサービス構成部215に要求する(S301)。
構成情報の取得処理が成功した場合(S302:Yes)は、取得した構成情報を基に仮想マシンに手書き文字変換処理の実行を要求する(S303)。
仮想マシンの手書き文字変換処理も正常となった場合(S304:Yes)は、Webサーバ2の応答データ作成部213に手書き文字変換処理結果を送信するための応答データの作成を要求する(S305)。
サービス構成部215の構成情報取得処理、または仮想マシンの手書き文字変換処理の結果がエラーとなった場合(S302:No、S304:No)は、Webサーバ2の応答データ作成部213にエラー応答の作成を要求する(S306)。
【0034】
図15は、Webサーバ2のサービス構成部215が行う処理の一例を示すフローチャートである。
まず、Webサーバ2のサービス提供部214から受け付けた通信データに含まれるハード情報121のOS種別IDT11、バージョン情報IDT12、パッチ情報IDT13をキーとして構成情報DB221を検索し、手書き文字変換サービスを構成するための構成情報IDT41と手書き文字変換処理を要求する仮想マシンの仮想マシンIDT45を取得する(S401)。
構成情報IDT41と仮想マシンIDT45の取得が成功した場合(S402:Yes)は、取得した構成情報IDT41をキーとしてAPI情報DB222を検索し、手書き文字変換サービスを構成するためのAPI情報T53を取得する(S403)。
API情報T53の取得が成功した場合(S404:Yes)は、取得した構成情報IDT41をキーとしてライブラリ情報DB223を検索し、手書き文字変換サービスを構成するためのライブラリ情報T63を取得する(S405)。
ライブラリ情報T63の取得が成功した場合(S406:Yes)は、取得した構成情報IDT41をキーとして文字変換エンジン情報DB224を検索し、手書き文字変換サービスを構成するためのエンジン情報T73を取得する(S407)。
エンジン情報T73の取得が成功した場合は、Webサーバ2のサービス提供部214に取得した仮想マシンIDT45と手書き文字変換サービス情報(API情報T53、ライブラリ情報T63およびエンジン情報T73)を送信する(S409)。
各種情報の取得処理の結果がエラーとなった場合(S402:No、S404:No、S406:No、S408:No)は、Webサーバ2のサービス提供部214にエラー情報を送信する(S410)。
【0035】
図16は、仮想マシンが行う処理の一例を示すフローチャートである。
まず、手書き文字変換処理部311は、Webサーバ2のサービス提供部214から図10のサービス提供部要求データを受信し、手書き文字変換サービス情報であるAPI情報配列T84、ライブラリ情報配列T85、エンジン情報配列T86を取得する(S501)。
次に、図10のサービス提供部要求データに含まれる変換前データT87を画像解析するために画像解析部312に画像解析を要求する(S502)。
画像解析部312の画像解析処理が成功した場合(S503:Yes)は、画像解析結果を文字変換するために文字変換部313に文字変換処理を要求する(S504)。
文字変換部313の文字変換処理が成功した場合(S505:Yes)は、Webサーバ2のサービス提供部214に手書き文字変換処理結果として図11のサービス提供部応答データを送信する(S505)。
画像解析処理、および文字変換処理の結果がエラーとなった場合(S503:No、S505:No)は、Webサーバ2のサービス提供部214にエラー情報を送信する(S506)。
【0036】
図17は、Webサーバ2の応答データ作成部213が行う処理の一例を示すフローチャートである。
まず、障害情報として必要となる応答時刻を図11のサービス提供部応答データから取得し(S601)、Webサーバ2からネットワーク6を介して応答データを送信するための通信プロトコルで定められた通信ヘッダを作成する(S602)。次に、仮想マシンにより処理された手書き文字変換処理の結果である変換後データを図11のサービス提供部応答データから取得し、図5のサービス応答データを作成する。そして、通信ヘッダとサービス応答データを含む応答データを作成し(S603)、Webサーバ2の通信部211に対して応答データの送信を要求する(S604)。
【0037】
図18は、携帯端末1の応答データ解析部113が行う応答データ解析処理の一例を示すフローチャートである。
まず、通信ヘッダに誤りが無いかチェックする(S701)。
チェックした結果が正常の場合(S702:Yes)、サービス応答データに誤りがないかチェックする(S703)。
サービス応答データのチェックでも正常となった場合(S704:Yes)は、サービス応答データを解析し、手書き文字が変換された変換後データを取得して手書き文字インタフェース部111に変換後データを通知する(S705)。
通信ヘッダのチェック結果、およびサービス応答データのチェック結果がエラーとなった場合(S702:No、S704:No)は、手書き文字インタフェース部111にエラー情報を通知する(S706)。
【0038】
なお、上述した実施形態では、タッチパネルにより携帯端末1に手書き文字を入力する例を示したが、携帯端末1がカメラを備え、カメラにより手書き文字を撮影することによって入力する等他の手段により携帯端末1に手書き文字を入力してもよい。
【0039】
以上説明したように、本発明によれば、サービス利用者がハード情報121を手入力する必要がなく、携帯端末1のハード情報121を使用してWebサーバ2側で自動的に手書き文字変換サービスを行うための構成情報を組み立て、仮想マシンを用いて手書き文字変換サービスを実行し、処理結果を携帯端末1に応答することができる。
【符号の説明】
【0040】
1…携帯端末
2…Webサーバ
3…仮想マシンA
4…仮想マシンB
5…仮想マシンN
6…ネットワーク
11…手書き文字変換サービス要求部
111…手書き文字インタフェース部
112…通信データ作成部
113…応答データ解析部
114…携帯端末1の通信部
121…ハード情報
21…手書き文字変換サービス応答部
211…Webサーバ2の通信部
212…通信データ解析部
213…応答データ作成部
214…サービス提供部
215…サービス構成部
221…構成情報DB
222…API情報DB
223…ライブラリ情報DB
224…文字変換エンジン情報DB
311…手書き文字変換処理部
312…画像解析部
313…文字変換部
【特許請求の範囲】
【請求項1】
携帯端末から、当該携帯端末の構成を示すハード情報と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて前記通信データに含まれる変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させるサービス提供手段と、
を備えることを特徴とする手書き文字変換サービス構成システム。
【請求項2】
前記ハード情報は、前記携帯端末のオペレーティングシステムの種別を識別するためのオペレーティングシステム種別識別情報と、前記オペレーティングシステムのバーションを示すバージョン識別情報と、前記オペレーティングシステムに適用されたパッチを示すパッチ識別情報とを含み、
前記手書き文字変換サービス情報は、APIを示すAPI情報と、ライブラリを示すライブラリ情報と、手書き文字変換エンジンを示すエンジン情報とを含む、
ことを特徴とする請求項1に記載の手書き文字変換サービス構成システム。
【請求項3】
携帯端末とサーバで構成される手書き文字変換システムであって、
前記携帯端末は、
利用者によって入力された手書き文字を受け付けて当該手書き文字から変換前データを生成する手書き文字受け付け手段と、
前記携帯端末の構成を示すハード情報と、前記手書き文字受け付け手段によって生成された変換前データとを含む通信データを作成する通信データ作成手段と、
前記通信データ作成手段によって作成された通信データを前記サーバに送信する通信データ送信手段と、
前記通信データ送信手段によって送信された通信データに応答して、前記サーバから送信される応答データを受信する応答データ受信手段と、
前記応答データ受信手段によって受信された応答データに含まれる変換後データを取得する変換後データ取得手段と、
を備え、
前記サーバは、
前記携帯端末から通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該携帯端末に対応した仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させ、前記携帯端末に対応した仮想マシンに前記通信データに含まれる変換前データを変換させて文字情報を含む変換後データを求めるサービス提供手段と、
前記サービス提供手段によって求められた変換後データを含む前記応答データを作成する応答データ作成手段と、
前記応答データ作成手段によって作成された応答データを前記携帯端末に送信する応答データ送信手段と、
を備える、
ことを特徴とする手書き文字変換システム。
【請求項1】
携帯端末から、当該携帯端末の構成を示すハード情報と、利用者によって入力された手書き文字から生成された変換前データとを含む通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて前記通信データに含まれる変換前データを変換して文字情報を含む変換後データを求めるための手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させるサービス提供手段と、
を備えることを特徴とする手書き文字変換サービス構成システム。
【請求項2】
前記ハード情報は、前記携帯端末のオペレーティングシステムの種別を識別するためのオペレーティングシステム種別識別情報と、前記オペレーティングシステムのバーションを示すバージョン識別情報と、前記オペレーティングシステムに適用されたパッチを示すパッチ識別情報とを含み、
前記手書き文字変換サービス情報は、APIを示すAPI情報と、ライブラリを示すライブラリ情報と、手書き文字変換エンジンを示すエンジン情報とを含む、
ことを特徴とする請求項1に記載の手書き文字変換サービス構成システム。
【請求項3】
携帯端末とサーバで構成される手書き文字変換システムであって、
前記携帯端末は、
利用者によって入力された手書き文字を受け付けて当該手書き文字から変換前データを生成する手書き文字受け付け手段と、
前記携帯端末の構成を示すハード情報と、前記手書き文字受け付け手段によって生成された変換前データとを含む通信データを作成する通信データ作成手段と、
前記通信データ作成手段によって作成された通信データを前記サーバに送信する通信データ送信手段と、
前記通信データ送信手段によって送信された通信データに応答して、前記サーバから送信される応答データを受信する応答データ受信手段と、
前記応答データ受信手段によって受信された応答データに含まれる変換後データを取得する変換後データ取得手段と、
を備え、
前記サーバは、
前記携帯端末から通信データを受信する通信データ受信手段と、
前記通信データ受信手段によって受信された通信データに含まれるハード情報に基づいて、前記通信データを送信した携帯端末に対応した仮想マシンを決定するための仮想マシン識別情報と、当該携帯端末に対応した仮想マシン上で手書き文字変換サービスを構成するための手書き文字変換サービス情報とを求めるサービス構成手段と、
前記サービス構成手段により求められた仮想マシン識別情報に基づいて前記携帯端末に対応した仮想マシンを決定し、前記サービス構成手段により求められた手書き文字変換サービス情報に基づいて手書き文字変換サービスを前記携帯端末に対応した仮想マシンに構成させ、前記携帯端末に対応した仮想マシンに前記通信データに含まれる変換前データを変換させて文字情報を含む変換後データを求めるサービス提供手段と、
前記サービス提供手段によって求められた変換後データを含む前記応答データを作成する応答データ作成手段と、
前記応答データ作成手段によって作成された応答データを前記携帯端末に送信する応答データ送信手段と、
を備える、
ことを特徴とする手書き文字変換システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2012−190296(P2012−190296A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−53828(P2011−53828)
【出願日】平成23年3月11日(2011.3.11)
【出願人】(000233055)株式会社日立ソリューションズ (1,610)
【Fターム(参考)】
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願日】平成23年3月11日(2011.3.11)
【出願人】(000233055)株式会社日立ソリューションズ (1,610)
【Fターム(参考)】
[ Back to top ]