特許第6254209号(P6254209)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ クリムソン コーポレイションの特許一覧

特許6254209音声を利用できるテルネットインターフェイス
<>
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000002
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000003
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000004
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000005
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000006
  • 特許6254209-音声を利用できるテルネットインターフェイス 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6254209
(24)【登録日】2017年12月8日
(45)【発行日】2017年12月27日
(54)【発明の名称】音声を利用できるテルネットインターフェイス
(51)【国際特許分類】
   G06F 3/14 20060101AFI20171218BHJP
   G06F 3/0487 20130101ALI20171218BHJP
   G06F 3/16 20060101ALI20171218BHJP
【FI】
   G06F3/14 310C
   G06F3/0487
   G06F3/16 650
   G06F3/16 660
   G06F3/16 610
【請求項の数】10
【外国語出願】
【全頁数】16
(21)【出願番号】特願2016-75517(P2016-75517)
(22)【出願日】2016年4月5日
(62)【分割の表示】特願2014-171043(P2014-171043)の分割
【原出願日】2008年8月15日
(65)【公開番号】特開2016-154032(P2016-154032A)
(43)【公開日】2016年8月25日
【審査請求日】2016年4月5日
(31)【優先権主張番号】11/893,676
(32)【優先日】2007年8月16日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】517293085
【氏名又は名称】クリムソン コーポレイション
(74)【代理人】
【識別番号】100097456
【弁理士】
【氏名又は名称】石川 徹
(72)【発明者】
【氏名】ラマル ジョフン バンワゲネン
(72)【発明者】
【氏名】ブラント ダビド トホムセン
(72)【発明者】
【氏名】スクオット アルレン カッデス
【審査官】 岩橋 龍太郎
(56)【参考文献】
【文献】 特開2001−296991(JP,A)
【文献】 特開2003−216309(JP,A)
【文献】 特開平09−293119(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01− 3/027
G06F 3/048− 3/0489
G06F 3/14− 3/16
(57)【特許請求の範囲】
【請求項1】
テルネットクライアントを操作するための方法であって、
a.テルネットセッションを介して、サーバーからデータを受信することと、
b.前記テルネットクライアントにおいて、1つ以上のスクリプトを実行することと、
を備え、
前記1つ以上のスクリプトが、前記テルネットクライアントに、
i.前記テルネットクライアントのスクリーンに一緒に表示することの可能な、複数の入力フィールドを、前記テルネットクライアントにおいて、受信されたデータから検出させるとともに、
ii.1つ以上のデータ識別子を、前記テルネットクライアントにおいて、前記複数の入力フィールドの各入力フィールドに関連づけさせ、
前記複数の入力フィールドの少なくとも1つの入力フィールドは、複数のデータ識別子に関連付けされ、前記1つ以上のデータ識別子のうちの1つのデータ識別子は、そのデータ識別子を他のテキスト情報から区別するため、および、異なるデータ識別子から区別するための特有な文字列を含む、前記方法。
【請求項2】
前記1つ以上のデータ識別子を前記複数の入力フィールドに関連づけることは、
(1)前記テルネットクライアントによって特定された、1つ以上のルール、および、
(2)前記複数の入力フィールドの名称、の少なくとも1つを含む情報に基づく、請求項1に記載の方法。
【請求項3】
a.受信されたインプットを作成するために前記テルネットクライアントのユーザーからインプットを受信することと、
b.前記テルネットクライアントにおいて、1つ以上のスクリプトを実行することと、
をさらに備え、
前記1つ以上のスクリプトが、前記テルネットクライアントに、
i.受信されたインプットを作成するために前記受信されたインプットを処理させるとともに、
ii.前記処理されたインプットを、前記複数の入力フィールドの1つの入力フィールドに、その入力フィールドに関連づけられている1つ以上のデータ識別子に基づいて照合させるようになっている、請求項2に記載の方法。
【請求項4】
前記受信されたインプットの処理が、(1)前記受信されたインプットに対する構文解析、(2)前記受信されたインプットに対する追加的なテキストの挿入、および、(3)前記受信されたインプットの一部の削除、の少なくとも1つを含む、請求項3に記載の方法。
【請求項5】
前記受信されたインプットがバーコードのスキャン画像である、請求項4に記載の方法。
【請求項6】
前記受信されたインプットがスピーチである、請求項4に記載の方法。
【請求項7】
前記スピーチをテキストに変換することをさらに含む、請求項6に記載の方法。
【請求項8】
前記スピーチを生成することをさらに含む、請求項7に記載の方法。
【請求項9】
記スピーチの内容が、(1)指示、(2)プロンプト、(3)ヘルプ情報、(4)前記テルネットクライアントのスクリーンに表示されているテキストの一部、および、(5)従前のユーザーの入力、の少なくとも1つを含む、請求項8に記載の方法。
【請求項10】
前記1つ以上のデータ識別子を前記複数の入力フィールドに関連づけることは、前記特有な文字列を使用して、前記特有な文字列を含むデータ識別子を検索し、かつ前記特有な文字列を含むデータ識別子を前記複数の入力フィールドの入力フィールドに関連付けることを含む、請求項1記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、テルネットのような、簡易的なプロトコルのためのものを含むユーザーイ
ンターフェイスの設計および実装に関する。
【背景技術】
【0002】
ユーザーインターフェイスは、デバイスを生産的に利用するためには欠かせないもので
ある。念入りに設計されて、好ましくはカスタマイズ可能なユーザーインターフェイスの
必要性は、十分に認識されている。しかしながら、最も重要な情報に対して注意を引くレ
イアウトや、追加的な触覚効果および音響効果を用いて、「人間が最もうまく情報に関わ
ること、および、人間が視覚的に表示された情報を得ること」を可能とする、テルネット
などの通信プロトコルをサポートするための構成は、容易には実施されない。
【0003】
端末エミュレーション(テルネット)は、伝統的には、テキストのみの媒体である。音
に対するサポートはビープ音に限られており、これよりも複雑な何らかの音をサポートす
るためには、特別な工夫が必要である。
【0004】
大部分のオペレーターは、テキストのみからなる情報を読むことだけに関わることより
も、視覚および音の情報を受領することを好む。さらに、コンピューターに話しかけるこ
とによってデータの入力が可能となることは、現在の利用に比して、コンピューターの利
用を著しく単純化し、改善し、さらに迅速化するはずである。それでもやはり、コンピュ
ーター間の通信に有用な1つのプロトコルは、テルネットプロトコルである。より安全な
プロトコルを使用することは可能であるが、テルネットの単純さは、古いこと、および、
セキュリティー関連の欠点があることにも関わらず、テルネットに今日的な意義を与え続
けている。
【0005】
テルネットプロトコルは、極めて汎用的な、双方向の、8ビット単位の通信用設備を設
けるために導入されたものである。第1に、このプロトコルは、端末デバイス間およびプ
ロセス間をインターフェイス接続する、標準的な方法を可能とする。このプロトコルは、
多くの場合、端末間通信およびプロセス間通信(分散型計算方式)のために利用される。
テルネット通信(すなわちセッション)は、典型的には、分散型のテルネット制御情報を
有するデータをやりとりする、トランスミッション・コントロール・プロトコル(TCP
)通信である。典型的には、スクリプトと呼ばれる一連の通信が、データの一部としてテ
ルネット通信上を送られる。テルネットプロトコルは、さらに、「ネットワーク仮想端末
」および折衝オプションを可能とする。
【0006】
テルネットセッションを確立すると、各エンドは、仮想的な「ネットワーク仮想端末(
Network Virtual Terminal)」から生じるとともに、この端末
において終了する、と仮定される。この端末は、標準的な、ネットワークの全体に拡がる
、端末における中間的な代理物となるものである。その結果、さまざまな端末の特徴点お
よび端末の取り扱い規約をたどるための、「サーバー」および「ユーザー」あるいは「ク
ライアント」ホストを必要としない。テルネットにおける全ての参加者は、自らのローカ
ルデバイスの特徴点および規約をマッピングし、これにより、ネットワーク上のNVTを
取り扱っているように見えるようになる。したがって、それぞれが、他のメンバーによる
同様のマッピングを前提とすることが可能となる。
【0007】
折衝オプションに対する準備により、ホストは、最小のNVTの範囲内において使用可
能なサービスに加えて、追加的なサービスを提供することが可能となる。テルネットプロ
トコルからは独立しているものの、その範囲内において構築されている、さまざまな「オ
プション」がある。これらのオプションについては、「DO,DON’T,WILL,W
ON’T」構造とともに使用することが可能であり、これにより、それらのテルネット通
信に関する、より複雑な規約のセットを使用することを可能とするための、折衝を行うこ
とができる。さらに、エミュレートされた端末は、テルネットプロトコルを遵守すること
によって、他のメンバーに影響を及ぼすことなく、ユーザーインターフェイスをさらに改
善することが可能である。このようなオプションは、文字セット、エコーモード、データ
・セキュリティー機能などの変更を含むことが可能である。オプションの使用をセットア
ップするための基本的な方法は、そのオプションが複数のメンバーに影響する場合には、
メンバーに、そのオプションを発効するリクエストを開始させることである。これを受け
て、他のメンバーは、このリクエストを受け入れるか、あるいは拒否することが可能であ
る。このリクエストが受け入れられた場合、オプションは、直ちに効力を生じる。
【0008】
テルネットセッションについては、スクリプトによってカスタマイズすることが可能で
ある。スクリプトは、コンピューターのプログラミング言語であり、コンパイルすること
を必要とせずに、キーボードから直接的にタイプすることの可能な、インタープリター型
の言語である。スクリプトとは異なって、スクリプト内のコマンドは、1つずつ解釈され
、プログラムは、特定のタイプのコンピューターあるいはプロセッサーにおいて実行する
ために適した、バイナリーの実行ファイルに恒久的に変換される。スクリプトによって得
られる最も重要な利点は、伝統的な「編集−コンパイル−リンク−実行」のプロセスを縮
小することにある。なお、スクリプト言語はインタープリター型であるものの、これは、
コンパイルの余地のないものではない、ということに留意すべきである。コンパイラを設
けるよりもインタープリターを工夫することの方が非常に容易なため、スクリプト言語の
ためのインタープリターを書き込むことが容易になっている。
【0009】
一般的に、スクリプト内の各コマンドについては、独立に実行することが可能である。
これにより、処理状態の把握されない動作が生じる。換言すれば、スクリプト言語のコマ
ンドが一旦実行されると、プロセッサーは、既に実行済のコマンドの影響を受けることな
く、他のコマンドを実行することが可能となる。しかしながら、このスクリプト言語にお
けるほぼ本質的な特性を修正することが可能であり、これにより、影響力の状態を検出す
るための能力を得ることが可能となる。例えば、テルネットクライアントによってサポー
トされているスクリプトは、スクリーンに表示されているテキストを検出すること、ある
いは、さらに、テルネットのデータストリーム内に含まれていない追加的な情報さえも、
検出することが可能である。状態に関する情報については、スクリプトデータ内に組み込
むことも可能であり、これにより、通常の方法におけるスクリプト言語に基づいたルーチ
ンを実行しているときに、一部の動作に関する状態を保存することが可能となる。このよ
うな実装において組み込まれた状態情報を処理およびプログラムするために、追加的なコ
マンドを設けることも可能である。
【0010】
スクリプト内のデータは、独特の構造を有している可能性があり、これは、この構造を
取り扱うための特別に記載されたコードを必要とする、ということに留意するべきである
。適切に設計および展開されたスクリプトは、プログラム・アプリケーションを手助けす
ることが可能であり、繰り返しの作業をすばやく自動化し、さらに、文脈的に関連したカ
スタマイズを実行することが可能である。適切なスクリプトおよび実装を提供することは
、いまだに課題のままである。これは、ユーザーインターフェイスが複雑であること、お
よび、ユーザーインターフェイスがカスタマイズを必要とすることに起因する。
【0011】
端末エミュレーションのタイプによっては、ホストに対して情報を提示するために使用
される、「フィールド」を定義しているものもある。これらは、ユーザーの入力のために
確保されたスクリーンにおける1つ以上の領域である。各フィールドが独立に定義されて
いるため、これらは、(スクリーン上において)異なる位置および長さとなることが可能
であり、さらに、要求するデータのタイプを特定するための、固有のフラグを有すること
が可能である。フィールドの情報がホストに供給されるときには、フィールドの位置も同
様に含まれている。ホストは、この情報を利用して、データの含まれていたフィールドを
決定すること、および、このフィールドに関して適切にデータを取り扱うことが可能であ
る。
【0012】
フィールドに対して固有の数字あるいはテキストの文字列を割り当てることによって、
フィールドを特定することも可能である。これらの数字あるいはテキストの文字列は、「
データ識別子」と称される。これにより、バーコードに埋め込まれているデータ識別子に
基づいて、スキャンされたバーコードを割り当てるべきフィールドを知るなどの、有用な
措置をとることが可能となる。
【発明の概要】
【発明が解決しようとする課題】
【0013】
これらのデータ識別子は、伝統的には、サーバーによって特定され、端末エミュレーシ
ョン・セッションを通じて、クライアントに送られる。これにより、サーバーのプログラ
マーは、必要に応じて、これらを作成および変更することが可能となる。しかしながら、
数年にわたって使用してきたサーバーアプリケーションを、アップデートしたがらない、
あるいはアップデートできない企業を見つけることは、珍しいことではない。これまでの
ところ、倉庫の在庫システムに関しては、ハンドヘルド型のテルネットクライアントは、
比較的に賢明でないデバイスとなっている。多くの企業が、在庫追跡システムを利用して
いるが、それと同時に、それらのサーバーアプリケーションを修正できない、あるいは修
正したがらない状態にある。したがって、データ識別子、および、スピーチ認識および発
声の機能を、在庫追跡システムに提供する必要性がある。これは、この機能を、サーバー
の対極にあるテルネットクライアントに実装することによって実施される。
【課題を解決するための手段】
【0014】
本発明の実施形態は、データ識別子の機能、および、スピーチおよび音声の認識の機能
を提供する。これらの機能は、スクリプト記述によって、テルネットクライアントにおい
て実施される。このテルネットクライアントは、好ましい実施形態では、携帯用のハンド
ヘルド型のバーコードスキャナーである。1つの態様においては、テルネットクライアン
トにおいて実行されている1つ以上のスクリプトが、データ識別子を、スクリーンのフィ
ールドに関連づける。このフィールドは、テルネットセッションを介して、サーバーから
テルネットクライアントによって受信されたものである。これらのデータ識別子を、例え
ば、フィールドの名称、および、スクリプト内において符号化されている他のロジックに
基づいて、割り当てることも可能である。
【0015】
バーコードをスキャンするために、あるいは、他のタイプの情報を取得するために、テ
ルネットクライアントが使用される場合、1つ以上のスクリプトが、入力データを処理す
る。データが処理された後、データは、データ識別子に基づいて、対応するフィールド内
に挿入される。これらのデータ識別子は、上記のフィールドに対してあらかじめ関連づけ
られている。その後、データは、既に確立されているテルネットセッションを介して、サ
ーバーに送信される。特に、テルネットクライアントを操作するための方法であって、テ
ルネットセッションを介して、サーバーからデータを受信することと、受信されたデータ
から、テルネットクライアントのスクリーンに表示することの可能なテキストを検出する
ことと、(1)検出されたテキスト、および、(2)テルネットセッションの状態、の少
なくとも1つに基づいて、スピーチを生成することと、を備えている、テルネットクライ
アントを操作するための方法が開示されている。
【0016】
他の態様では、本発明の実施形態は、テルネットクライアントにおいて、テキスト・ト
ゥ・スピーチ変換を実施する。これは、少なくともテルネット通信のスクリーンに表示さ
れている情報のテキストあるいは文脈を検出することの可能なスクリプトを用いることに
よって、実施される。これらのスクリプトは、さらに、テキスト・トゥ・スピーチ変換の
ための情報を付加することも可能である。さらに、スクリプト記述を使用することによっ
て、ユーザーインターフェイスにおける音声認識をカスタマイズすることも可能である。
【0017】
実施形態によっては、テルネットクライアントにおいて実行されている1つ以上のスク
リプトが、単語のリストを提供する。この単語のリストは、「利用可能な単語およびフレ
ーズ」の数を減少させるために、使用することが可能である。この「利用可能な単語およ
びフレーズ」とは、あるテルネットセッションにおいて、テキストの変換先として利用す
ることの可能な単語およびフレーズ、および、テキストに変換することの可能な音声の単
語およびフレーズのことである。したがって、正確性のために、予想された単語およびフ
レーズのみが、さらに解釈される。ユーザーとのインターフェイスが音声の指示を含んで
いる場合、コンピューターは、使用可能な単語およびフレーズのリスト内の単語だけを検
索することによって、テキストを、理解しやすいスピーチに変換する。テキストがデータ
フィールド内に書き込まれるときには、上記のリストに対してスピーチが照合され、使用
可能な単語に最も近い単語が選択される。
【0018】
実施形態によっては、テルネットセッションにおいてスピーチ認識が提供される。これ
は、テルネットセッションにおける現在のカーソルの位置、および、スクリーンに表示さ
れている情報に基づいたテルネットセッションの文脈を、検出することの可能な、スクリ
プトを利用することによる。この情報を、このスクリプトによってスピーチを生成するた
めの追加的な情報と組み合わせることも可能である。この処理の全ては、テルネットクラ
イアントによって実行される。一方、サーバーアプリケーションは、変わらないままであ
る。
【0019】
特に、テルネットクライアントを操作するための方法において、テルネットセッション
を介してサーバーからデータを受信することと、受信されたデータから、テルネットクラ
イアントのスクリーンに表示することの可能な、1つ以上の入力フィールドを検出するこ
とと、1つ以上のデータ識別子を、検出された少なくとも1つの入力フィールドに関連づ
けることと、を含んでいる、テルネットクライアントを操作するための方法が開示されて
いる。
【図面の簡単な説明】
【0020】
図1】テルネットクライアントによって本発明の方法が実行される、在庫追跡システムのための無線ネットワークを例示する図である。
図2】本発明の方法を実行するように構成されている、テルネットクライアントを例示する図である。
図3】サーバーからデータを受信すること、および、表示可能なテキストにおける1つ以上のフィールドにデータ識別子を関連づけることに関する、テルネットクライアントによって実行されるステップを示すブロック図である。
図4】表示可能なテキストにおける1つ以上のフィールドにデータ識別子が関連づけられた後に、入力データを受信することに関する、テルネットクライアントによって実行されるステップを示すブロック図である。
図5】サーバーからデータを受信すること、および、このデータに基づいて音声を出力することに関する、テルネットクライアントによって実行されるステップを示すブロック図である。
図6】音声認識をサポートしているテルネットクライアントによって実行されるステップを示すブロック図である。
【発明を実施するための形態】
【0021】
本発明の実施形態は、実施例と関連づけて説明することによって、最もよく理解される
。説明に役立つ実施例は、倉庫、百貨店、あるいはスーパーマーケットにおける在庫追跡
のためのシステムである。
【0022】
図1は、好ましい実施形態の方法を実行するための、無線ネットワークの配置を示して
いる。サーバー50(ホストとも称される)は、さまざまなソフトウェア・アプリケーシ
ョンを管理する。このようなアプリケーションの1つが、テルネット・ホスト・アプリケ
ーションである。実施形態によっては、サーバー50は、データベースを管理することも
ある。他の実施形態では、サーバー50は、有線あるいは無線のネットワークを介して、
データベースにアクセスする。これらのデータベースは、在庫情報、および、取引先や販
売業者などに関する他の情報(所定の施設に関して一般的な情報)を含んでいる可能性が
ある。
【0023】
好ましい実施形態では、サーバー50は、複数のモバイル式のテルネットクライアント
(例えば、テルネットクライアント10および20)に対して無線接続されている。これ
らのテルネットクライアントは、バーコードスキャナーである。
【0024】
図2は、好ましい実施形態において使用されているテルネットクライアントを、より詳
細に示す図である。テルネットクライアント30は、バーコードをスキャンするための、
光学式のスキャンモジュール38を有している。さらに、テルネットクライアント30は
、この技術分野において一般的に知られている、入力装置35および表示画面36を備え
ている。さらに、テルネットクライアント30は、好ましくは、ヘッドフォン・プラグ3
3を備えている。好ましくは、プラグ33は、マイクロフォンを有するヘッドフォンをサ
ポートする、標準的な1/8インチのジャックである。しかしながら、これに代えて、周
知の他のオーディオ入力/出力を使用することも可能である。例えば、テルネットクライ
アント30は、ブルートゥースを実装するとともに、ブルートゥース・ヘッドフォンをサ
ポートすることも可能である。
【0025】
テルネットクライアント30は、さらに、サーバー50から無線メディアを介してデー
タを送受信するための、無線トランシーバーを備えている(図2には示していない)。
【0026】
好ましい実施形態では、テルネットクライアントは、バージョン5.10から始まるW
avelinkのテルネットクライアント(2005年7月に販売開始)である。このテ
ルネットクライアントは、スクリプト記述のためのサポートを含んでいる。これらのスク
リプトは、ユーザーによって、カスタム・プログラミング言語で記載されており、テルネ
ットクライアントに関する固有の挙動を特定することを可能とするものである。各スクリ
プトを、それをどのように利用する予定であるのかによって、複数の異なる方法において
開始することが可能である。スクリプトは、また、サーバー50とは無関係に実行される
。このため、スクリプト記述をサポートするための、サーバーに対する変更は不要である
【0027】
一般的に、スクリプトは、サーバー50から受信したデータをユーザーに出力する前に
、このデータの処理を実行すること、および、ユーザーによって入力されたデータをサー
バー50に送信する前に、このデータに対する処理を実行することによって、テルネット
クライアントの機能を改善する。好ましい実施形態では、スクリプトは、テキストストリ
ームを修正する能力を有している。カスタムスクリプトに加えて、テルネットクライアン
トは、他のプログラム、例えば、テキスト・トゥ・スピーチ・コンポーネント、および、
スピーチ・トゥ・テキスト・コンポーネントを有することも可能である。スクリプトは、
サーバー50から受信されたデータを、例えばテキスト・トゥ・スピーチ・コンポーネン
トに対して送信する前に、変更することが可能である。あるいは、スクリプトは、このデ
ータを音声認識コンポーネントから受信した後、このデータをサーバーに移すか、あるい
はユーザーに表示する前に、このデータを修正することが可能である。スクリプトは、音
声認識エンジンからのデータを使用して、それ自身の内部において(サーバーに対して問
い合わせを行うことなく)、例えば、他のスクリプトを立ち上げる、あるいは、メッセー
ジを表示するなどのアクションを開始する。
【0028】
典型的な従来技術の在庫追跡システムでは、サーバーが、バーコードスキャナーから、
特定のタイプのバーコード(この技術分野では、「シンボロジー」とも称される)を受信
するように構成されている。このバーコードスキャナーを、他のタイプのバーコードの読
み取りに使用するためには、サーバーを再設定する必要があった。例えば、倉庫内の特定
のアイテムが異なるタイプの2つのバーコードを有している場合、サーバー50を、最初
に、第1のタイプのバーコードを読み取るように設定し、その後、第2のタイプのバーコ
ードを読み取るように設定する必要があった。より進歩した従来技術の在庫追跡システム
には、再設定を必要とすることなく、双方のバーコードを受信するように、サーバーを設
定することが可能なシステムもある。サーバー50内のホストプログラムを、アイテムご
とに、第1のタイプのバーコードに続いて第2のタイプのバーコードを受信するように、
設定することも可能である。このようなシステムは、バーコードスキャナーによる異なる
順序での2つのバーコードのスキャン画像を受信すると、適切に処理することはできない
【0029】
好ましい実施形態では、テルネットクライアントにおいて実行されているスクリプトは
、データ識別子を用いることによって、システムの利用におけるより大きな柔軟性を与え
る能力を有している。図3は、サーバー50からデータを受信すること、および、入力フ
ィールドにデータ識別子を関連づけることに関する、テルネットクライアント(例えば、
図2に示したテルネットクライアント30)によって実行されるステップのブロック図を
示している。ステップ62では、テルネットクライアント30は、サーバー50からデー
タを受信する。ステップ64では、テルネットクライアントにおいて実行されている1つ
以上のスクリプトが、受信されたデータ内における表示可能なテキストを検出する。好ま
しい実施形態では、表示可能なテキストは、1つ以上の入力フィールドを備えており、こ
れらは、テルネットクライアントのスクリーンに表示される。実施形態によっては、表示
可能なテキストは、他の情報を有することも可能である。ステップ66では、テルネット
クライアントにおいて実行されているスクリプトは、表示可能なテキストを分析し、入力
フィールドに対してデータ識別子を加える。典型的には、データ識別子は、スクリーンに
表示されている入力フィールドに対して割り当てられる。データ識別子は、表示可能なテ
キストのアイテムに加えられる、単なるテキストの文字列である。データ識別子は、テル
ネットクライアントのスクリーンに表示することが可能なものであってもよいし、また、
表示できないものであってもよい。データ識別子には、その冒頭に、あるいはその末尾に
、あるいは冒頭および末尾の双方に、特殊な文字からなるシーケンスがついている。これ
らは、データ識別子を他のテキスト情報から区別するため、および、データ識別子どうし
を区別するために使用される。特殊な文字からなるシーケンスは、データ識別子を配置お
よび使用するために、スクリプトによって使用される。
【0030】
図4は、表示可能なテキストにおける1つ以上のフィールドにデータ識別子が割り当て
られた後に、テルネットクライアントによって実行されるステップのブロック図を示して
いる。ステップ72では、テルネットクライアントは、インプットを受信する。好ましい
実施形態では、インプットは、バーコードのスキャン画像である。しかしながら、このイ
ンプットを、他の任意のタイプのインプット(例えば、入力ボタン35の打ち込みからな
るシーケンス、あるいは、ヘッドフォン・プラグ33を介して受信された音声コマンドな
ど)とすることも可能である。ステップ74では、スクリプトは、入力データを処理する
。好ましい実施形態では、ステップ74において、スクリプトは、入力データの構文を解
析するか、入力データの文字を削除するか、あるいは、入力データに特定の文字を追加す
ることも可能である。例えば、スクリプトは、入力データに対して、現在の日付を追加す
ることが可能である。さらに、1つ以上のスクリプトは、テルネットクライアントの地理
的な位置(例えば、倉庫の階数など)を判断するとともに、この地理的な位置の識別結果
を、その位置においてスキャンされたバーコードに加えることが可能である。他の実施形
態では、他のより複雑な動作を実施することも可能である。
【0031】
ステップ76では、テルネットクライアントにおいて実行されている1つ以上のスクリ
プトが、テルネットプロトコルを介してサーバーに送信するための、テキストメッセージ
を作成する。メッセージを作成する際には、スクリプトは、処理されたデータを、特定の
データ識別子によって識別されているフィールドに挿入する。例えば、そのロジックにし
たがって、スクリプトは、スキャンされたバーコードが特定のタイプであることを、ステ
ップ74において判断する。ステップ76では、同じスクリプト(あるいは別のスクリプ
ト)が、このバーコードを、対応するデータ識別子によって識別されているフィールドに
挿入する。このデータ識別子は、図3に示したステップ66において、既にフィールドに
関連づけられているものである。処理された入力データを対応するフィールド内に単に挿
入することに加えて、スクリプトは、入力データを挿入した後、このデータを操作するこ
とも可能である。例えば、スクリプトは、データを所望のフォーマットに変換するために
、ダッシュ、ピリオドなどを挿入することが可能である。
【0032】
図3および図4に示した方法における、好ましい実施形態の動作が、以下に例示される
。倉庫における特定のアイテムは、2つのバーコードを有しており、1つが製造業者によ
って添付されたものである一方、別の1つが販売業者によって添付されたものである。テ
ルネットクライアント(例えばテルネットクライアント30)およびサーバー50は、こ
れらの間においてテルネットセッションを確立する。サーバーにおいて実行されているア
プリケーションは、アイテムごとに2つのバーコードを受信するようにプログラムされて
いる。サーバーは、テルネットクライアントに対して、このテルネットクライアントが入
力しなければならない2つのフィールドを有するスクリーンを送信する。ステップ62に
おいて、テルネットクライアントは、サーバーからスクリーンを受信する。ステップ64
において、サーバーにおいて実行されている1つ以上のスクリプトが、サーバーが、入力
されることを所望する2つのフィールドを判断する。ステップ66において、テルネット
クライアントにおいて実行されている1つ以上のスクリプトが、これら2つのフィールド
に対して、データ識別子を関連づける。
【0033】
ステップ72において、ユーザーは、バーコードをスキャンする。バーコードがスキャ
ンされると、テルネットクライアントにおいて実行されている1つ以上のスクリプトが、
ステップ74において、入力されたスキャン画像を処理する。この例では、これらのスク
リプトは、単に、スキャンされたバーコードのタイプを判断するだけである。ステップ7
6においては、最も新しくスキャンされたバーコードのタイプが判断された後、それが、
そのタイプに適合する特定のデータ識別子に関連づけられたフィールドに挿入される。従
来技術のシステムとは異なって、2つのスキャン画像のシーケンスは重要ではない。さら
に、サーバーにおいて実行されているアプリケーションを、修正する必要もない。
【0034】
以下は、データ識別子をサポートするために有用な、スプリクト記述のコマンドの一部
である。
・スクリーン上のフィールドの数を取得する;
・フィールドの位置を取得/設定する;
・フィールドのサイズを取得/設定する;
・フィールドのフラグ/タイプを取得/設定する;
・フィールドのデータ識別子の値を取得/設定する;
・フィールドにおける、1つ以上の特定のシンボロジー(バーコードのタイプ)との関連
性を取得/設定する;
・スキャンされたバーコードデータがフィールドにコピーされたときに、追加的なバーコ
ードの処理/操作を取得/設定する;および、
・単一のフィールドに割り当てられた複数のデータ識別子をサポートする。
【0035】
スクリプトにおいてデータ識別子を特定することを可能とするために、プログラマーは
、さらに、自らのサーバーアプリケーションに変更を加えることなく、データ識別子の柔
軟性をうまく利用することが可能である。好ましい実施形態では、テルネットクライアン
トを、(「Wavelink’s Avalanche manager」などのソフト
ウェアを利用することによって)遠隔管理するように構成することも可能である。この能
力を持つことによって、簡単な中央制御によって、テルネットクライアントに対して、ス
クリプト記述のアップデートを、自動的に分配することが可能となる。
【0036】
以下の記述は、説明するまでもないスクリプトの引用である。これは、フィールドに対
して、データ識別子、および、1つ以上のシンボロジーを関連づけるとともに、第2のフ
ィールドに挿入されるスキャン画像のプレフィックスを「B8」に設定するものである(
なお、「//」によって始まる行は、コメントである)。
【0037】
スクリプト例#1
//第1のフィールド(インデックス0)に対して、シンボロジーおよびデータ識別子を
割り当てる。
Set_Field_Data_ID(0,“ITEM1”)
Set_Field_Symbology_ID(0,“MSI”)
【0038】
//第2のフィールド(インデックス1)に対して、2つのシンボロジーおよび2つのデ
ータ識別子を割り当てる。
Set_Field_Data_ID(1,“ITEM2”)
Set_Field_Symbology_ID(1,“UPCA”)
Set_Field_Symbology_ID(1,“CODABAR”)
【0039】
//第2のフィールドに割り当てられたバーコードデータを、常に「B8」によって始ま
るように設定する。
Set_Field_Prefix_Scan_Data(1,“B8”)。
【0040】
好ましい実施形態における別の態様では、テキスト・トゥ・スピーチが、アドオン・コ
ンポーネントとなっている。これは、テキストを取得して、それをスピーチに変換するこ
との可能なものである。これは、未処理のテキストを処理する能力を有しており、さらに
、作出されたスピーチを改善するための、追加的な指示(例えば、使用されている言語お
よび発音のガイドなど)を受けることが可能である。好ましい実施形態では、スクリプト
は、テルネット通信における現在の状態(現時点においてスクリーンに表示されているテ
キストを含む)を検出する能力を有している。スクリプトは、さらに、テルネットクライ
アントに保存されている追加的な情報、あるいは、スクリプト自身によって演算された追
加的な情報を、使用することも可能である。これらの情報は、テルネットセッションから
は得ることのできないものである。この組み合わせにより、スクリプトは、テキスト・ト
ゥ・スピーチ・コンポーネントに対して指示および未処理のテキストを与えることに関し
て、および、テルネットセッションにおける現在の状態に基づいて音声の指示を修正する
ことについて、役立つようになる。
【0041】
追加的に、好ましい実施形態では、音声認識がアドオン・コンポーネントとなっている
。これは、マイクロフォンからのインプットをテキストに変換することの可能なものであ
る。これは、認識の正確性を向上させるための追加的な指示(例えば、使用可能な単語の
リスト、および、現在のユーザーに関する保存された音声の情報など)を、サポートして
いる。
【0042】
本発明の好ましい実施形態では、音声認識は、テルネットクライアントにおいて実行さ
れているテルネットスクリプトによって、サポートされている。このスクリプトは、使用
可能な単語あるいはフレーズを決定する。この決定は、好ましくは、現時点において選択
されているフィールド、現在のカーソル位置、および、現時点において表示されているペ
ージ上のテキストのうちの、1つ以上に基づいて実施される。音声およびスピーチの認識
は、使用可能な単語およびフレーズのセットを強く限定することによって、より正確にな
る。例示的な実施形態では、現時点において選択されているフィールドがバーコード情報
を求めている場合には、音声認識エンジンは、スピーチを無効なインプットに変更せずに
、その代わりに、有効な数字および文字と適合しているものを探すことになる。これは、
例えば「1」と「one」とを区別する場合などにおいて、音声認識エンジンにとって有
用となるはずである。
【0043】
図5は、サーバー50からデータを受信すること、および、このデータに基づいて音声
を出力することに関する、テルネットクライアント(例えば、図2に示されているテルネ
ットクライアント30)によって実行されるステップのブロック図を示している。ステッ
プ82では、テルネットクライアント30は、サーバー50からデータを受信する。ステ
ップ84では、テルネットクライアントにおいて実行されている1つ以上のスクリプトが
、受信されたデータを分析する。データの分析あるいは処理は、多くの異なる動作を含む
ことが可能である。好ましい実施形態では、テルネットクライアントにおいて実行されて
いるスクリプトは、受信されたデータにおける、テルネットクライアントのスクリーンに
表示することの可能なテキスト、テルネットクライアントのスクリーンに表示することの
可能な1つ以上の入力フィールド、テルネットセッションの状態、および、テルネットセ
ッションにおけるカーソルの位置、という複数のアイテムを検出する能力を有している。
実施形態によっては、他の情報を検出することも可能である。ステップ86では、テルネ
ットクライアントにおいて実行されているスクリプトが、スピーチを生成する。スピーチ
の生成では、スクリプトは、ステップ84において検出されたアイテムのうちの、1つ以
上を処理する。追加的に、スクリプトは、スピーチを生成するときに、従前のユーザーの
入力を考慮することも可能である。生成されたスピーチは、複数の形式をとることが可能
である。特に、スピーチを、ユーザーに対する指示、インプットを作成するためのプロン
プト、ヘルプ情報、ユーザーに対して読み上げられた、表示されているテキストの一部、
および、従前のユーザーの入力に基づく何らかの情報、とすることも可能である。
【0044】
一実施形態では、公知のテキスト−音声パッケージを用いてテキストを処理することに
よって、テキストが音声に変換される。スピーチに変換されるテキストは、ステップ84
において検出された1つ以上のアイテム(例えば、テルネットクライアントのスクリーン
に表示されているテキストの一部)であってもよいし、あるいは、1つ以上の入力フィー
ルドであってもよい。さらに、スピーチに変換されるテキストは、所定の文字列であって
もよいし、あるいは、従前のユーザーの入力に基づくテキストであってもよい。他の実施
形態では、決定された表示可能なテキストに基づいてハードコード記録を参照するととも
に、記録されている音声を出力することによって、リアルタイムでのテキスト−音声変換
を実施することなく、ステップ86を実行することも可能である。さらに他の実施形態で
は、上記した2つの方法の組み合わせを実施することも可能である。特に、保存されてい
る記録から、音声メッセージの一部を再生することも可能である。このときには、テキス
ト−音声パッケージを用いて、表示可能なテキストを処理することによって、このメッセ
ージの他の部分を取得することが可能である。
【0045】
音声の指示は、ユーザーによるテルネットクライアントの操作における生産性を、大い
に向上させることが可能である。例えば、もともとのテルネットのビープ音の代わりに、
ユーザーに対して、バーコードのスキャンにおけるエラーを知らせるとともに、再スキャ
ンを求めることが可能である。さらに、ユーザーに対して、次のバーコードのスキャンを
促すことも可能である。それに加えて、ユーザーに対して、例えば、「ボックスカバーの
右上の隅にある、製造業者のバーコードをスキャンしてください」のような、有用な情報
を与えることも可能である。上述したように、この指示内の情報を、異なる情報源から得
ることも可能である。例えば、「をスキャンしてください」というフレーズを、スクリプ
トによって呼び出された、あらかじめ記録されているメッセージとすることが可能である
。また、「製造業者のバーコード」というフレーズを、テルネットクライアントのスクリ
ーンに表示された入力フィールドとすることが可能である。さらに、「ボックスカバーの
右上の隅にある、」というフレーズを、あらかじめ規定されたテキストの文字列から変換
されたスピーチとすることが可能である。
【0046】
図6は、音声認識をサポートしているテルネットクライアントによって実行される、ス
テップのブロック図を示している。ステップ92では、テルネットクライアントは、音声
入力を受信する。ステップ94では、公知の音声−テキスト・エンジンが、音声入力をテ
キストに変換する。ステップ96では、テルネットクライアントにおいて実行されている
1つ以上のスクリプトが、テルネットプロトコルによってサーバーに送信するための、テ
キストメッセージを作成する。その後、このテキストメッセージが、サーバーに送信され
る。
【0047】
入力された音声を音声−テキスト・エンジンで処理することによってスピーチを入力テ
キストに変換するスクリプトの挙動を、特定の入力パラメータによって修正することも可
能である。これらのパラメータについては、現時点においてテルネットクライアントのス
クリーンに表示されているテキスト、入力クライアントのスクリーンに表示されている1
つ以上の入力フィールド、テルネットセッションの状態、および、カーソルの位置、から
導出することも可能である。これにより、より正確に、かつ、より文脈に沿って、スピー
チをテキスト入力に変換することが可能となる。
【0048】
音声認識アプリケーションにおける典型的な使用は、ユーザーにおけるハンズフリー操
作である。例えば、ユーザーは倉庫における特定の棚から全てのアイテムを取ってくるこ
と、および、アイテムの数を入力することを、迅速に行なうことが可能である。従来技術
のシステムでは、アイテムのバーコードをスキャンしなければならなかったか、あるいは
代替的に、入力装置35を用いて手動によって、アイテムの数を入力しなければならなか
った。双方の方法とも、手動での操作を必要とする。好ましい実施形態では、ユーザーは
、単に、テルネットクライアントに接続されているマイクロフォンに向かって、アイテム
の数を音読すればよい。ユーザーの両手は、アイテムを搬送したり、他の仕事を実行した
りするために、自由なままである。テルネットクライアントは、ステップ92において音
声情報を受信し、ステップ94においてそれをテキストに変換し、さらに、ステップ96
において、テルネットプロトコルを介してサーバーに対して送信するための、メッセージ
を作成する。これにより、仕事によっては、完全にハンズフリーな操作が可能となる。し
たがって、従業員の生産性が向上する。
【0049】
スクリプト記述は、使用可能な音声応答の範囲(universe)を限定することを
可能にし、さらに、その結果として、音声認識率を向上させることを可能にする。例えば
、応答の範囲が1〜5の整数に限定されている場合、音声認識パッケージは、5つの使用
可能なオプションのみから、ユーザーによって音読されたものに最も類似した数字を照合
しようとする。また、上述したように、スクリプト記述は、サーバーに対して送信される
メッセージを、単語の代わりに数字に設定することが可能である。
【0050】
テキスト−音声変換およびスピーチ認識に関連する複数のスクリプトコマンドを、強力
なアプリケーションを実施するために、組み合わせることも可能である。以下に示すスク
リプト例は、アイテムの数を入力することをユーザーに促す例を実施するために必要な、
コアコマンドを与えるものである。
【0051】
スクリプト例♯2
var String sResult
Speech_From_Text(“How many items?”)
【0052】
//ユーザーによって話された、1〜5の数字を表示する文字列を戻す。
sResult=Speech_To_Text(“1”,“2”,“3”,“4”,“
5”)
Keypress_String(sResult)
Keypress_Key(“Enter”)。
【0053】
好ましい実施形態では、ログイン情報が保存される。これは、現在のユーザーの記録を
残すため、および、保存されているユーザーの音声情報のうちの、どれを使用するべきか
を音声認識コンポーネントに伝えるためである。保存されている音声情報は、ユーザーに
関する音声認識の正確性を改善する。なぜならば、公知の方法にしたがって、音声認識パ
ッケージを訓練することが可能であるからである。以下のスクリプト例は、スピーチのセ
ッティングを設定するとともに、ユーザーに、自分の声を用いてログインするように促す
ものである。ユーザーが自分の信用証明物を提供した後、ログインに関与する他のスクリ
プトが呼び出される。
【0054】
スクリプト例#3
var String sName
Speech_Setting(“Language”,“English”)
Speech_Setting(“Voice”,“Bob”)
【0055】
//「UserNames.txt」は、会社の全従業員の氏名を含んでいる。
//これは、Speech_To_Text( )に利用される。
Speech_Setting(“Convert_File”,“C:\Safe\U
serNames.txt”)
【0056】
//「NamePronounce.txt」は、「珍しい氏名をどのように発音するの
か」を規定している。
//これは、Speech_From_Text( )に利用される。
Speech_Setting(“Pronounce_File”,“C:\Safe
\NamePronounce.txt”)
【0057】
Speech_From_Text(“Login Name?”)
sName=Speech_To_Text( )
Speech_To_Text(String_Combine(“Logging i
n as”,sName)
【0058】
//このユーザーに関する、保存されている音声情報(プロファイル)をロードする。
//後に実行される追加的なスピーチの結果は、このプロファイルに追加される。
Speech_Setting(“User_Profile”,sName)
【0059】
//Loginは、他のスクリプトである。
call Login(sName)。
【0060】
テルネットセッションを介して生じる通信は、継続的なものである。サーバーがデータ
を受信したときには、サーバーは、テルネットクライアントに対してデータを送り返すこ
とも可能である。クライアントは、より多くのデータを、サーバーなどに送信する。した
がって、図3図6に示されているステップを、単一のテルネットセッションにおいて、
何度も繰り返すことが可能である。
【0061】
データ識別子、音声認識、およびスピーチに関連するスクリプトコマンドを、特定のタ
スクを実施するスクリプトのセットあるいは単一のスクリプトにおいて、組み合わせるこ
とも可能であるということを理解するべきである。いくつかの実施形態では、スピーチに
変換されるフィールドの名称に対しても、データ識別子を関連づけることが可能である。
同様に、ユーザーによって提供される音声情報を、まず、テキストに変換し、その後、テ
キストの処理に関連するスクリプトによって、処理することも可能である。
【0062】
特に、データ識別子に関連する機能を実施するため、あるいは、スピーチおよび音声の
認識に関連する機能を実施するために、サーバーを修正することは不要である。
【0063】
本発明の実施形態に関する上述の説明は、例示および説明を目的として提示されている
。上述の説明は、包括的であること、および、開示されている形態そのものに本発明を限
定することを意図するものではない。当業者にとっては、多くの修正および変更が明らか
であるはずである。上述の複数の実施形態は、本発明の原理およびその実用的な応用を最
もよく説明するために、選択および説明されたものであり、これにより、他の当業者は、
本発明を理解することが可能となっている。特定の使用に適した、さまざまな実施形態お
よび修正が想定されている。本発明の範囲については、添付の特許請求の範囲およびその
均等物によって規定されることが意図されている。
図1
図2
図3
図4
図5
図6