JPH0754455B2 - インタープリタ装置 - Google Patents

インタープリタ装置

Info

Publication number
JPH0754455B2
JPH0754455B2 JP61230248A JP23024886A JPH0754455B2 JP H0754455 B2 JPH0754455 B2 JP H0754455B2 JP 61230248 A JP61230248 A JP 61230248A JP 23024886 A JP23024886 A JP 23024886A JP H0754455 B2 JPH0754455 B2 JP H0754455B2
Authority
JP
Japan
Prior art keywords
command
program
application
voice
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP61230248A
Other languages
English (en)
Other versions
JPS6292026A (ja
Inventor
リチヤード・アラン・デイードリツチ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6292026A publication Critical patent/JPS6292026A/ja
Publication of JPH0754455B2 publication Critical patent/JPH0754455B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S379/00Telephonic communications
    • Y10S379/916Touch screen associated with telephone set

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Signal Processing (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Microcomputers (AREA)
  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、既存のアプリケーションプログラムを走行す
るコンピュータシステムに新たな機能を付加する技術に
関する。
B.従来技術およびその問題点 コンピュータのアプリケーションプログラムに新たな機
能を追加する場合、その機能を使えるようにするには広
範囲にわたってアプリケーションの再プログラミングが
必要である。たとえば音声信号発生機能のようなもの
は、高水準言語で書かれたプログラムの実行中に呼び出
すことのできるサブルーチンの形で具備されている。し
たがって既存のプログラムにこのような機能を加えるに
は、そのサブルーチンに1つの呼出しを加えなければな
らないので既存のプログラムを修正する必要がある。ほ
とんどのユーザにとってこの再プログラムには困難なこ
とである。実際、ユーザがそのプログラミングを使うこ
とを許されてる既存のライセンス契約によれば、実際の
プログラミングを見れないようになっているものがほと
んどである。このような場合、付加すべき機能を実現す
るのは平均的なユーザではほとんど不可能に近い。
そのような機能として今日利用できるものの1つに、メ
イルおよびスケジュール表のアプリケーションに音声を
用いるものがある。これは、特定の音声からメイルへの
変換機能または特定の音声からスケジュール表への変換
機能のための特別のアプリケーションプログラムによっ
て実現されているのが現状である。
C.問題点を解決するための手段 本発明の主たる目的は既存のアプリケーションプログラ
ムを変更することなくコンピュータシステムに新たな機
能を付加することである。
たとえば、既存のアプリケーションがメイルおよびスケ
ジュール表システムであり、付加される上級の機能が音
声合成機能である場合、本発明はこれら両者間のインタ
ーフェースを行う。
ユーザは、既存のアプリケーションのうち上位の言語に
よる音声機能を適用する部分を定義する。この定義に
は、電話によるタッチトーンを、普通ならキーボードか
ら入力されていたであろう既存アプリケーションのコマ
ンドに変換することも含まれる。この定義は、コンピュ
ータに接続されたスピーカによって又は遠隔のユーザへ
の電話回線を介して、メイルまたはスケジュール表を読
むといったようなユーザの指示した機能に用いられる。
そこで本発明に基づくコンピュータシステムは、下記
(a)ないし(c)の手段を備えることにより、既存の
アプリケーションプログラムを変更することなく音声機
能を付加できるようにしたものである。
(a)電話から入力された信号をキーストローク入力式
のコマンドに変換する変換手段。
(b)電話から入力された信号に基づいてディスプレイ
装置の画面の情報を電話の音声に変換する変換手段。
(c)電話から入力された信号に対応するキーストロー
クを選択する選択手段。
D.実施例 本発明の理解を助けるため、まず、信号処理システムの
音声オペレーティングサブシステムについて説明する。
第5図は信号処理システム50の簡単なブロック図であ
る。信号プロセッサ88はテキサスインストルメンツ社の
TMS32010のような商用のいかなるものでもよい。信号プ
ロセッサ88はたとえばIBMパーソナルコンピュータ(以
下単にPCという)のような、ホストプロセッサ89によっ
て制御される。信号プロセッサ88はオペレーションの前
に、命令をロードする自己のCPUを有していなければな
らない。信号プロセッサ88は命令メモリ21およびデータ
メモリ87を使用する。これらのメモリはホストプロセッ
サ89でアクセスすることができるが、信号プロセッサ88
と同時にはできない。ホストプロセッサ89は信号プロセ
ッサ88がリセットされたときにのみ命令メモリ21をアク
セスすることができる。そのときホストプロセッサ89は
命令メモリ21からのロードが可能であり、次にデータメ
モリ87に切替ることができる。データメモリ87は信号プ
ロセッサ88といつでも動的に共有される。信号プロセッ
サ88およびホストプロセッサ89は、ホストプロセッサ89
の制御の下で割込みマスクにより互いに割込むことがで
きる。
信号処理システム50に利用可能な資源を第2図に示す。
ブロック12、13、および14は命令メモリ21内に含まれる
(第3図参照)。ブロック14は信号処理システム50が初
期設定されたときにロードされて、システムの資源を管
理する機能を提供する。ブロック12は電話機能セットま
たはライン監視機能セットを含んでいてもよい。この電
話機能セットにより、送信部18および受信部19を有する
ポート15ならびに送信部32および受信部33を有するポー
ト17を介して多重化される電話機をダイヤル式に呼び出
すことができる。ポート15および17は1対のA/Dコンバ
ータおよびD/Aコンバータに多重化されている。A/D変換
およびD/A変換は本発明を構成するものではないので説
明は省略する。ブロック12または13はいずれもポート15
および17をアクセスすることができる。さらに、ブロッ
ク12および13は同じポートをアクセスすることもでき
る。
以上に述べたハードウエアの資源の他に、アプリケーシ
ョンが使うことのできる割込み資源は3つある。その最
初の2つはライン34および35上のそれぞれについてのリ
ングイン割込みPLI2である。3番目のものは、ライン32
で具備される電話機の送受器のオン/オフ装置である。
このような環境の下におけるコンピュータシステムはマ
イク29およびスピーカ31を備えている。
第3図はコマンドおよび割込みの流れを簡単なブロック
図で示したものである。アプリケーション10はプログラ
ムインターフェース11を介して、ドライバ41、インプリ
メンテーションコード42、およびハードウェア割込みル
ータ43と相互にインターフェースする。41、42、および
43はそれぞれホスト処理システム40に所在するものであ
る。ハードウェアインターフェース44はホスト処理シス
テム40と信号処理システム50との間の境界を作成する。
アプリケーションのコマンドは受渡し部16を介して命令
メモリ21のブロック24で終結し、割込みは受渡し部16を
介してブロック24から発せられる。ブロック24は信号処
理用の制御プログラムを含む。この制御プログラムはブ
ロック12、13、および14において命令メモリ21を管理
し、ブロック12、13、および14における信号処理コード
が並行して走行することを可能にしている。これにより
信号処理システム50の資源を共有する。プログラムイン
ターフェース11を定めるコマンドおよび割込みの流れを
第3図および第4図を参照しながら以下に説明する。
第4図はプログラムインターフェース11を越えてホスト
処理システム40を介するアプリケーション10から信号処
理システム50に至るコマンドの流れの詳細を示す図であ
る。アプリケーション10からプログラムインターフェー
ス11への入力であるコマンドは2つのタイプの識別子を
含んでいる。1つは、使用すべき機能セットのものであ
り、この識別子で適切な制御ブロック51を選択しそれよ
り次にインプリメンテーションコード42をアクセスす
る。第2のタイプの識別子は所与の機能セット内の特定
のコマンドのものである。ドライバ41はこれらのコマン
ドを所得してそれをインプリメンテーションコード42の
適切なロケーションに渡す。プログラムインターフェー
ス11およびドライバ41へのコマンド入力の一部である選
択制御ブロック情報で特定の制御ブロック51を識別す
る。この制御ブロック51はコマンドベクトル52の始点を
指標するポインタ71を含む。制御ブロック51には、他
に、機能および割込みの状況を示す情報や、アプリケー
ションの割込みベクトル情報が入っている。このコマン
ドに含まれているコマンドコード情報はライン72を介し
て出力される。ポインタ71からのポインタ情報と共に、
コマンドコードは、このコマンドが関係するコマンドベ
クトル52における特定のロケーションを指標する。これ
が実行されると、コマンドベクトル52はコマンドプロセ
ッサ53におけるインプリメンテーションコードの特定の
1つを指標する。この必要なコードがみつかると、ドラ
イバ41は必要なコードを含むコマンドプロセッサ53に制
御権を渡す。要するに、ライン72を介して発せられたコ
マンドコードを伴うコマンドベクトル52およびポインタ
71がアドレス指定機能を遂行するのである。こうしてコ
マンドプロセッサ53は、アプリケーション10からハード
ウェアである信号処理プロセッサ50に出力される特定の
コマンドを現実のものとする。
以上でホストプロセッサ89および信号プロセッサ88によ
るアプリケーション信号の処理に関する説明を終る。本
発明はこのような環境におけるインタープリタとして説
明される。このインタープリタによれば、プログラムイ
ンターフェースを越えて働くアプリケーションプログラ
ムは、そのアプリケーションプログラムを変更すること
なく上級の機能を遂行するためにオペレーシヨンシステ
ム(信号処理システム)とインターフェースすることが
できる。
すなわち本発明は、既存のプログラムアプリケーション
とは無関係にそれに付加的な機能を加えることができる
ようにしたインタープリタに関する。このインタープリ
タはオペレーティングシステムとアプリケーションプロ
グラムとの間の相互関係を監視(supervise)し、これ
によりオペレーティングシステムにおいてより上級の機
能を使えるようにそのアプリケーションプログラムのオ
ペレーションを変更する。インタープリタのプロファイ
ルで、そのインタープリタを個々のアプリケーションプ
ログラムに適合させることができる。プロファイルにお
けるコマンドおよびそれに関連するパラメータはインタ
ープリタプログラムの中に初期設定される。そうしてイ
ンタープリタプログラムはオペレーティングシステムま
たはアプリケーションプログラムによるコマンドの実行
を監視する。これでそのアプリケーションプログラム
は、あたかもそれがオペレーティングシステムによって
提供された上級の機能を有するかの如く動作する。
インタープリタプログラムは音声合成のような上級の機
能と、スケジュール表およびメイルシステムのようなア
プリケーションとの間の相互関係を監視する。ユーザは
既存のアプリケーションのうち上位のコンピュータ言語
による音声機能を適用する部分を定義する。この定義に
は、電話によるタッチトーンパルスからアプリケーショ
ンコマンド(一般にはキーボードによって入力されるも
のである)への変換が含まれていてもよい。この定義
は、コンピュータに接続されたスピーカによってまたは
遠隔のユーザへの電話回線を介してメイルやスケジュー
ル表の読むといったようなユーザの指示した機能に用い
られる。
インタープリタによって解釈された上位の言語は、コン
ピュータに接続された電話に出るためのアンサー(ANSW
ER)のようなコマンドを有する。セイ(SAY)コマンド
によって、その後に続く所定の区切り(たとえば引用
符)におけるメッセージを音声合成機能で音にする。キ
ー(KEY)コマンドは、その後に続く選択されたキース
トロークを入力してコマンドを特定のアプリケーション
に供給するのに用いる。入力変数は遠隔のユーザから受
け取ったタッチトーンの値を包含させるのに使用され
る。
このようにして上位の言語から選択された所定のコマン
ドを使って、ユーザは、遠隔地の電話機とコンピュータ
のところで走行すべきアプリケーションとの間のインタ
ーフェースを行うプログラムを書くことが可能となる。
ユーザはコンピュータから音声情報を受け取ることがで
きる。音声機能のアプリケーションは非常に融通性が高
く選択されたアプリケーションによっては制限を受けな
い。そのアプリケーションに対して制限のないコマンド
を提供する能力は、ハードコード化されたまたはアプリ
ケーションに書かれた前のシステムに課せられていた制
限を取り払うものである。
好適な実施例では、その言語によればユーザはアプリケ
ーションの特定の画面を得るために必要なキーストロー
クを指示しタッチトーンによってそのようなキーストロ
ークを開始することができる。ユーザは異なるアプリケ
ーションの異なるタスクを遂行するため異なる一連のキ
ーストロークをあらかじめ幾つかプログラムしておく。
この場合、特定のタスクは所定のタッチトーンによって
選択される。次に音声合成機能を使ってそのキーストロ
ークで識別された特定の画面の一部を読む。読むべき部
分の選択も上位の言語で行われる。また、あらかじめプ
ログラムされたタッチトーンに応答して別の部分が読ま
れる。
他の良好な実施例においては、音声コマンド入力、タッ
チスクリーン入力、音声再生等の他の機能がそれらの機
能を表わす上位の言語にコマンドを単に加えるだけで提
供される。上位の言語はそのような機能の適合が企図さ
れるアプリケーションの上部で実行されるので、さらに
機能を追加した場合でもそれは既存のアプリケーション
に影響を与えない。
以下、図面を参照して実施例を説明する。
好適な実施例では、テキストから音声への変換を遂行す
る音声オペレーティングシステムプログラムは強化され
たIBM5250エミュレーションアプリケーションプログラ
ムと共に機能する。このプログラムのインターフェース
は遠隔のユーザが電話回線を介する音声またはトーン信
号によって、あたかもシステム36のIBM5250端末のとこ
ろに存在するかの如く知能端末(ホストプロセッサ89)
として用いられるPCを通じてシステム36と対話できるよ
うインタープリタによって監視(supervise)される。
第1図はこのインタープリタが、インタープリタプログ
ラム100、アプリケーションプログラム(たとえば端末
エミュレータ)インターフェース102、オペレーティン
グサブシステム(たとえば上級の音声機能)インターフ
ェース104、およびプロファイル106から成るプログラム
システムにどのようにして適合するかを示す図である。
インタープリタは知能端末またはワークステーション
(PC)において走行するプログラムであって、アプリケ
ーションプログラムインターフェース102とオペレーテ
ィングサブシステムインターフェース104とを結び付け
るものである。
アプリケーションプログラムインターフェース102およ
びオペレーティングサブシステムインターフェース104
はいずれも、オペレーティングサブシステムおよびアプ
リケーションプログラムを非常に細かく制御することの
できる低位のアプリケーションプログラムインターフェ
ースである。インタープリタプログラム100が遂行する
のは、プロファイル106において与えられている上位の
言語による記述を下位のコマンドに変換することであ
る。
インタープリタプログラムの流れは第6図に示す4つの
主たるステップから成る。最初のステップはプロファイ
ルの分解である。これにより、全てのプロファイルコマ
ンドに対して標準的な構造が設定され、後のコマンド実
行監視ステップで処理が可能となる。この最初のステッ
プで、基本的には注釈を含む自由な入力形式が可能とな
り、コマンドを処理するための構造が設定される。
第2のステップは、エミュレータおよび音声インターフ
ェースを初期設定するステップである。ここではプログ
ラムがまずインターフェースの存在することを確認して
次に先へ進んで必要な全てのコマンドを走行させるため
に設定されるインターフェースを取得する。
第3のステップは、分解されたプロファイルから生成さ
れるコマンドを用いる端末エミュレータまたは音声オペ
レーティングシステムによる機能の実行を監視(superv
ise)するステップである。このステップでは必要な機
能の実行を監視するためコマンドを順々に調べる。たと
えば、そのコマンドが“KEY"であれば適切な一連のキー
ストロークを端末エミュレータインターフェースに送る
こととなる。
第7図はプロファイルの分解がどのようにして行われる
かを示す図である。まずはじめに、標準的なオペレーテ
ィングシステムコマンドを使ってプロファイルがオープ
ン(OPEN)される。次にステップ108で、プロファイル
の1つのワードを読み取る。1つのワードは複数のスペ
ースによって記述される。プログラムが1つのファイル
の終りを越えると第8図に示す次のステップの処理に進
む。1つのファイルの終りに達していないときは判断ス
テップ112で、みつかったワードがキーワードであるか
否かを判断する。そのワードがキーワードでないときは
ステップ114でエラーを表示して処理を停止する。その
ワードがキーワードであったときはステップ116におい
てそのキーワードによって表わされるコマンドのための
構造を設定する。
この構造が設定されるとファイルの読取りが続けられる
(ステップ118)。この読取りが続行されている間にプ
ログラムがファイルの終りを越えたときは、エラーが発
生したことを意味する。というのは、ファイルの終りは
キーワード間にのみ生じるものだからである。すなわ
ち、ファイルの終りは1つのキーワードを処理している
間には生じ得ない。
判断ステップ122でコマンドの終りにきていないことを
確認する。この特定のプロファイルの言語のためのコマ
ンドはたとえばセミコロンによって記述される。もしそ
れがセミコロンでないなら、判断ステップ124で有効な
パラメータが存在するかどうかを確認する。これを確認
したなら、ステップ128においてそのパラメータに関す
る記述子と共にその構造にそのパラメータが加えられ制
御権がステップ118に移る。プログラムが現コマンドに
有効でないパラメータのキーワードに出会ったときは、
ステップ126でエラーを表示して停止する。
第8図に示す初期設定ルーチンではエミュレータアプリ
ケーションプログラムおよび音声オペレーティングシス
テムを初期設定する。ステップ130で、このエミュレー
タが存在するかどうかを確認する。エミュレータのドキ
ュメンテーションにおいて与えられるコマンドによって
この確認が行われる。もしエミュレータが存在しないな
ら、判断ステップ132でステップ134に分岐し、そこでエ
ラーメッセージを印刷してプログラムは停止する。もし
エミュレータが存在するなら、ステップ136で音声イン
ターフェースのために与えられたドキュメンテーション
の後に音声サブシステムが存在するかどうかを確認す
る。もし音声サブシステムが存在しないなら、エラーメ
ッセージが印刷されてプログラムは停止する。もし音声
サブシステムが存在するなら、ステップ140で音声サブ
システムがオープンされる。音声サブシステムをオープ
ンするときに、そのサブシステムがエラーコードに戻る
場合もある(判断ステップ142)。そうするとプログラ
ムは停止する(ステップ134)。音声サブシステムが戻
りコードなしにオープンされたときは、ステップ144で
音声機能をロードしてそれが準備できたかどうかを確認
する。判断ステップ146ではその戻りコードを検査す
る。もし戻りコードがエラーを示すものであるなら、ス
テップ134でエラーメッセージを印刷してプログラムは
停止する。そうしないときは、制御権が維持されステッ
プ148において電話回線に音声機能を接続する。判断ス
テップ150でもう一度エラーの戻りコードを検査する。
第9図は分解されたプロファイルによって生成されたコ
マンドの実行を監視(supervise)するプログラムの流
れ図である。はじめのステップ152で、コマンド構造の
リストにおける最初のコマンドを指標する。ステップ15
4はコマンドのタイプを判断する。判断ステップ156で弁
別されるコマンドの基本的なタイプは2つある。1つ
は、端末エミュレータまたは音声インターフェースサブ
システムに送るべき1つの機能から成るごとく単純なも
のである(タイプ#1)。これらのコマンドはステップ
158によって表わされるプロシージャで監視される。も
う1つのタイプのコマンドは複数のエミユレータおよび
音声機能から成るより複雑なコマンドである(タイプ#
2)。これらの複雑なコマンド(以下複合コマンドとい
う)は、どの機能を用いるかおよびそれらをどんな順番
で用いるかを正確に記述したパラメータのリストを有し
ている。これらの複合コマンドはステップ160によって
表わされるプロシージャで監視される。
適切なエミュレータおよび音声コマンドが送られると、
判断ステップ162で制御の流れを変更すべきかどうかが
判断される。ステップ164ではプロファイルコマンドに
おけるパラメータに基づいて制御の流れを調整する(コ
マンドポインタの調整)。
次の判断ステップ166では、そのコマンドポインタが変
更されたかどうかが判断される。もしそうでないとき
は、ステップ168で、次の命令へのコマンドポインタを
増分する。判断ステップ170の比較で、コマンドポイン
タがファイルの終りを示しているかどうかをみる。もし
そうでないなら、制御権はステップ154に戻される。コ
マンドポインタが、そのプログラムがコマンドリストの
終りのところにあるということを示していれば、制御権
はクローズダウンプログラムに移される。
第10図はインタープリタプログラムのクローズダウンの
流れを示す図である。はじめのステツプ172は、次のプ
ログラムのために全てのハードウェアを自由にするよう
音声サブシステムインターフェースにクローズコマンド
を発行する。ステップ174で、オープンされたままのフ
ァイルが残っていればそれを全てクローズし、ステップ
176でオペレーティングシステムに制御権を戻す。
強化されたIBM5250エミュレーションアプリケーション
のためのインターフェースプロトコルを定めるコマンド
および機能は、IBMユーザーガイド・マニュアルG570-22
02-0に公開されている。
参考のために音声サブシステムインターフェースのプロ
トコルを定義する機能を以下に列記する。
基本機能セット: オープン(OPEN) これは資源制御ブロック(RCB)を割り振ってカードへ
のアクセスを開始するものである。カードアドレスはこ
の機能およびRCBに渡され、基本識別子および接続識別
子が戻される。
クローズ(CLOSE) 音声オペレーティングシステムへのアクセスをクローズ
するもの。RCBはこの機能に渡される。
ESTINT 割込みルーチンを確立するもの。この機能に渡されるパ
ラメータには、トラップすべき割込みとその割込みを処
理するためのルーチンのアドレスとが含まれる。
MASKINT 割込みのトラッピングと付勢するもの。処理すべき割込
みはこの機能に渡される。
READSTAT RCBの現状況を読み取るもの。読み取るべきRCBはこの機
能に渡される。状況を持っていた割込の値が変化する。
何故なら最後のREADSTATが戻されるからである。
READCONN RCBのための現機能の接続に関するリストを戻すもので
ある。これは、所与のRCBに接続される全てのデバイス
に関するリストを戻す。
CLAIMHDW 所与のRCBのためのリストにおいて指定される特定のデ
バイスを要求するものである。これは、他のアプリケー
ションからデバイスを取得しなければならなかったかど
うかを示すコードを戻す。
OPTSET ディスクからメモリに指定された機能セットをロードす
るもの。これは、その機能セットがロードできるもので
あるかどうかを示すコードを戻す。
CONNFTOP 指定されたポートに指定された機能セットを接続するも
の。このポートは接続すべき機能セットのために利用可
能でなければならない。
DCONFFRP 指定されたポートから指定された機能セットを切断する
もの。この機能によりそのポートが他の機能セットのた
めに自由なものとなる。
CONNDTOP 指定されたポートに既に要求されたデバイスを接続する
もの。デバイスおよびポートはこの機能が呼び出された
ときに指定される。
CONNDEVS デバイスどうしを接続するもの。これらのデバイスはア
プリケーションによって既に要求されたものである。
DCONDEVS 接続されていたデバイスを切断するもの。これらのデバ
イスのうち少なくとも1つはアプリケーションによって
要求されたものである。
オンフック(ONHOOK) 電話を“オンフック”状態にするもの。この機能により
指定されたラインが“停止(Hung Up)”状態となる。
オフフック(OFFHOOK) 電話を“オフクック”状態にするもの。
ライン監視機能セット: この機能セットはESTINT、MASKINT、およびREASTAT機能
を使用する。これらの機能は、入力リング、ビジー信
号、およびダイヤルトーンの検出を含むライン監視割込
みのセットについて同じ名前の基本機能呼出しとして同
じサービスを遂行する。この機能セットは入ってくるDT
MF(Dual Tone Multiple Freguency)信号に基づいて割
込みを設定する。
テキスト−音声変換機能セット: INIT テキスト−音声変換(以下TTSという)機能セットを初
期設定するもの。TTS機能セットはこのコマンドが発行
される間にロードされポートに接続されていなければな
らない。
フラッシュ(FLUSH) TTSバッファをフラッシュするもの。TTS機能が次の
“(ポーズPAUSE)”によって停止された後、TTSバッフ
ァから音声化されていないテキストを除去するのに必要
なものである。
ポーズ(PAUSE) テキストから音声への変換を停止するもの。この機能に
より音声生成を制御プログラムで停止させることができ
る。
スピーク(SPEAK) ASCIIのテキストストリングから音声への変換を行うも
の。テキストストリングがこの機能に渡され、音声が生
成される。
以下プロファイルで発生する2つのタイプのコマンドを
みながらインタープリタのオペレーションを簡単にまと
め、その他、プロファイル、分解も最初の例で説明す
る。
プロファイル・ファイルは第7図においてオープンさ
れ、ステップ108でこの中味を調べてたとえば“セイ(S
AY)”のようなキーワードをみつける。判断ステップ11
2でステップ116に分岐し、そこでテキストストリングす
なわちSAYコマンドパラメータの置場所を設定する。ス
テップ118ではそのプロファイルからそのテキストスト
リングが読み取られ、ステップ128においてそのプログ
ラムコマンド構造にこのパラメータ(テキストストリン
グ)が加えられる。このコマンドの実行は第9図のステ
ップで監視される。
このSAYコマンドで、実際に何らかのメッセージが音声
合成される。そのメッセージがパラメータである。プロ
ファイルのリストにおいてそのようなパラメータの終り
にあるセミコロンがそのコマンドの終りを示す。したが
ってプログラムにおいてそのセミコロンに出会えば、次
のキーワードを捜すこととなる。
パラメータの有効性はステップ124で検査される。この
有効性は、そのストリングがたとえば引用符を有するか
どうかで判断することができる。所望の文字数ならびに
所望の行および列から成る大きさの四角形で囲まれた部
分によって示されるそのアプリケーションの画面の領域
内にSAYコマンドのパラメータがあるとき、これを有効
と判断してもよい。
プロファイルにおける全てのコマンドの分解が完了する
と、コマンド構造の全体のリストがPCのメモリに記憶さ
れ、第8図に示す如くエミュレータプログラムおよび音
声サブシステムが初期設定される。
SAYコマンドは第9図の流れに基づいて処理される。コ
マンドポインタがSAYコマンドを指標すると、判断ステ
ップ156でSAYコマンドは簡単なタイプ#1のコマンドで
あると判断され、前記SPEAK機能によりそのテキストス
トリングが音声サブシステムインターフェースに送られ
る。ステップ168でコマンドポンイタが増分され、判断
ステップ170においてコマンドポインタがプロファイル
全体の終りを示しているかどうかを判断する。
ウェイト(WAIT)コマンドは複合コマンドの1つである
(タイプ#2)。コマンドのタイプは判断ステップ156
で判断され、ステップ160において、エミュレータまた
は音声機能の複数の呼出しを発することができる。WAIT
コマンドにより、さらに幾つかの選択権が与えられる。
たとえば、エミュレータの画面に表示されている情報を
取得するためのGETSCREENコマンドをエミュレータに発
する。これによりエミュレータの画面を調べて、WAITコ
マンドの後に続くストリングをその表示画面から得られ
る情報とを比較する。両者が一致すれば、コマンドポイ
ンタはステップ164において調整され、他のコマンドが
指標される。WAITコマンドに基づいて指標された他のコ
マンドがたとえばメニュー(MENU)コマンドだとする
と、このMENUコマンドはステップ160で処理される。こ
のプロセスはタイブ#1のコマンドに出会うまで続けら
れる。以上のようにタイプ#2のコマンドは幾つかのコ
マンドが組合わさった複合的なコマンドであるといえ
る。
以下に本発明の可能な実施例(イ)ないし(ホ)を列記
しておく。
(イ)下記の(i)ないし(iii)を具備する、コンピ
ュータシステムにおける複数のデバイスにコマンドを供
給するためのプログラム変更装置。
(i)電話機から受け取ったタッチトーンを、コンピュ
ータシステムで走行するアプリケーションを制御するた
めのキーストロークコマンドに変換する変換装置。
(ii)タッチトーンに基づいてアプリケーションの画面
を電話機の音声に変換する変換装置。
(iii)様々なアプリケーション画面から電話機の音声
への変換が、選択されたアプリケーションに対し独立と
なるようタッチトーンに対応するキーストロークを選択
する選択装置。
(ロ)下記の(i)ないし(iii)を具備する、コンピ
ュータシステムにおける特定のアプリケーションに関係
なくそのシステムの複数のデバイスにコマンドを供給す
るためのプログラム変換装置。
(i)ユーザの入力(電話機を介するタッチトーン)を
コンピューターシステムで走行する少なくとも1つのア
プリケーションを制御するコマンドに変換する変換装
置。
(ii)コマンド(ユーザの入力)に応答してアプリケー
ションに作用する付加的な機能(音声合成器を用いるこ
とにより画面を読むこと)を提供する装置(ただしこの
付加的な機能はアプリケーションによって提供されるも
のではない)。
(iii)アプリケーションに作用する付加的な機能が独
立となるようユーザの入力に対応するキーストロークを
選択する選択装置。
(ハ)下記の(i)ないし(ii)のステップから成る、
アプリケーションプログラムを変えることなくオペレー
ティングシステムプログラムによって提供される機能で
アプリケーションプログラムのオペレーションを変更す
る方法。
(i)オペレーションの変更されるアプリケーションプ
ログラムのコマンドおよびこれに関連するパラメータの
ためのプロファイル・ファイルを読み取るステップ。
(ii)プロファイル・ファイルから読み取られたコマン
ドおよびパラメータに基づいてインタープリタプログラ
ムを初期設定するステップ。
(iii)インタープリタプログラムにおいて初期設定さ
れたコマンドおよびパラメータに応答してアプリケーシ
ョンプログラムおよびオペレーティングシステムプログ
ラムにおける機能を監視するためプロファイル・ファイ
ルからのコマンドを実行するステップ(これによりアプ
リケーションプログラムのオペレーションはオペレーテ
ィングシステムの機能を使って変更される。) 上記の方法において、アプリケーションプログラムは端
末エミュレーションプログラムであり、オペレーティン
グシステムは音声オペレーティングシステムであっても
よい。
プログラム変更装置(イ)はさらに次のような特徴を有
していてもよい。
・(i)の変換装置は、アプリケーションとは独立に、
選択されたタッチトーンをユーザのプログラムした一連
のキーストロークに解釈する(したがって、そのアプリ
ケーションは音声機能と整合するのに変更を必要としな
い)。
・(ii)の変換装置は画面の選択された一部を音声に変
換するためコンピュータシステムのコマンドを別のコマ
ンドに解釈する。
・(iii)の選択装置はアプリケーションのユーザイン
ターフェースを介してそのアプリケーションを制御する
ためコンピュータシステムにキーストロークを供給す
る。
・コンピュータシステムは、さらに(a)アプリケーシ
ョンおよびインタープリタを制御するためのパーソナル
コンピュータと、(b)画面から音声への変換を行う音
声変換器カードとを含む。
プログラム変換装置(ロ)はさらに次のような特徴を有
していてもよい。
・アプリケーションがディスプレイ機構でみることので
きる複数の画面を有し、選択装置がその画面に基づいて
キーストロークを選択する。
・(i)の変換装置が選択装置による選択のためのキー
ストロークを指定するキー(KEY)コマンドを有するプ
ロファイルを実行する。
・さらに上記画面は所定の形式を有し、ユーザは(ii)
に示した付加的な機能に基づいてオペレーションのため
の画面の一部を選択する。
・さらに(i)の変換装置はその付加的な機能に基づい
て画面の一部を指定するためのウェイト(WAIT)コマン
ドを有するプロファイルを実行する。
・さらにこのWAITコマンドはその付加的な機能に基づい
て少なくとも1つの画面の一部を指定するため少なくと
も1つの画面上に既知の文字ストリングに対応する文字
ストリングを有する。
・選択装置はユーザがあらかじめ指定する一連の所望の
キーストロークにおける1つのKEYコマンドに基づいて
キーストロークを選択する。
・さらにこのKEYコマンドにおいて指定されたキースト
ロークは所望の画面を得るためのアプリケーションプロ
グラムを制御するユーザのコマンドを含む。
(ニ)少なくとも1つのアプリケーションプログラムを
実行するため下記の(i)ないし(iii)を有するコン
ピュータシステム。
(i)上記少なくとも1つのアプリケーションプログラ
ムによっては提供されない付加的な機能を提供する装
置。
(ii)上記少なくとも1つのアプリケーションプログラ
ムおよび上記装置(i)に作用しこれらとは独立である
上位の言語装置であって、上記少なくとも1つのアプリ
ケーションプログラムおよび上記装置(i)に関係する
命令を含むもの。
(iii)上記上位の言語を上記少なくとも1つのアプリ
ケーションプログラムと整合するコマンドに解釈する変
換装置(これにより、上記装置(i)は上記少なくとも
1つのアプリケーションプログラムを変更することなく
これに付加的な機能を加えることができる)。
このコンピュータシステム(ニ)はさらに次のような特
徴を有していてもよい。
・(iii)の変換装置によって生成されるコマンドが、
上記少なくとも1つのアプリケーションプログラムを上
記付加的な機能のオペレーションに適した状態となるよ
う標準的なインターフェースコマンドを有する。
・(i)の装置がユーザのインターフェース情報から音
声への変換を行う音声合成機能を有する。
(ホ)付加的な機能を有するコンピュータでアプリケー
ションプログラム(ただしこのアプリケーションプログ
ラムは上記付加的な機能のために書かれたものではな
い)を実行するために下記の(i)ないし(v)のステ
ップを有する方法。
(i)ユーザの入力をアプリケーションプログラムに整
合するコマンドに変換するステップ。
(ii)アプリケーションプログラムを所望の状態に置く
ため上記整合のとれたコマンドをアプリケーションプロ
グラムに適用するステップ。
(iii)アプリケーションコマンドで実行すべき付加的
な機能を指定するステップ。
(iv)アプリケーションプログラムにおいて付加的な機
能が実行される部分を識別するステップ。
(v)アプリケーションプログラムとは独立して上記ア
プリケーションプログラムの一部で上記付加的な機能を
実行するステップ。
以上本発明を特定のアプリケーションプログラムおよび
オペレーティングシステムについて説明したが、これに
限らず他のアプリケーションプログラムおよひ他のオペ
レーティングシステムについてプロファイルおよびイン
タープリタプログラムを適合させることはもちろん可能
である。たとえば、ワード処理およびスプレッドシート
処理といったような既存のアプリケーションプログラム
と共にタッチスクリーンオペレーティングサブシステム
を機能させることができる。
E.発明の効果 以上説明したように本発明によれば、既存のアプリケー
ションプログラムを変更することなくコンピュータシス
テムに新しい機能を付加することが可能となる。
【図面の簡単な説明】
第1図は本発明の基本的な概念を説明する図、第2図は
第5図に示す信号処理システム50において利用できる資
源を示す図、第3図は信号処理システム50におけるコマ
ンドおよび割込みの流れを示す図、第4図はコマンドの
流れの詳細を示す図、第5図は信号処理システムを示す
図、第6図はインタープリタプログラムの流れを示す
図、第7図はプロファイル分解の流れを示す図、第8図
はエミュレータおよび音声および音声インターフェース
の初期設定、流れを示す図、第9図はコマンド実行の監
視の流れを示す図、第10図はインタープリタプログラム
のクローズダウンの流れを示す図である。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】パーソナル・コンピュータ上でキーストロ
    ークに応答する既存のアプリケーション・プログラム
    に、新たな入出力機能を付加しインターフェースするた
    めのインタープリタ装置であって、 上記の新たな入出力機能を制御するための機能インター
    フェース手段と、 上記のアプリケーション・プログラムを制御するための
    アプリケーション・インターフェース手段と、 上記の新たな入出力機能を介してなされるユーザ入力
    を、上記の既存のアプリケーション・プログラムに作用
    するキーストロークに変換するためのコマンドを含み、
    上記の機能インターフェース手段及びアプリケーション
    ・インターフェース手段を制御する、あらかじめ定義さ
    れた命令セットと、 上記の両インターフェース手段に接続され、上記の新た
    な入出力機能を介してなされるユーザ入力に応答して、
    上記のアプリケーション・プログラムを制御するため
    に、上記命令セットに従って該ユーザ入力をキーストロ
    ークに変換する手段とを備えた、 インタープリタ装置。
  2. 【請求項2】上記の新たな入出力機能が音声入出力機能
    である、特許請求の範囲第1項に記載のインタープリタ
    装置。
JP61230248A 1985-10-15 1986-09-30 インタープリタ装置 Expired - Fee Related JPH0754455B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/787,285 US4755932A (en) 1985-10-15 1985-10-15 Interpreter program for providing commands to a computer application program
US787285 1991-11-04

Publications (2)

Publication Number Publication Date
JPS6292026A JPS6292026A (ja) 1987-04-27
JPH0754455B2 true JPH0754455B2 (ja) 1995-06-07

Family

ID=25140991

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61230248A Expired - Fee Related JPH0754455B2 (ja) 1985-10-15 1986-09-30 インタープリタ装置

Country Status (5)

Country Link
US (1) US4755932A (ja)
EP (1) EP0218904A3 (ja)
JP (1) JPH0754455B2 (ja)
BR (1) BR8604508A (ja)
CA (1) CA1258713A (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4905138A (en) * 1985-10-17 1990-02-27 Westinghouse Electric Corp. Meta-interpreter
US5381555A (en) * 1987-05-18 1995-01-10 The Larches Corporation Method for designation of data in a data bank and extraction of data for use in a computer program
US5175855A (en) * 1987-07-27 1992-12-29 Laboratory Technologies Corporation Method for communicating information between independently loaded, concurrently executing processes
JPS6468172A (en) * 1987-09-09 1989-03-14 Canon Kk Computer
JPH01108830A (ja) * 1987-10-21 1989-04-26 Hitachi Ltd Sysoutデータの電子メールシステム
US5179703A (en) * 1987-11-17 1993-01-12 International Business Machines Corporation Dynamically adaptive environment for computer programs
AU3761889A (en) * 1988-05-26 1990-01-05 Genesis Electronics Corporation Voice information system and method for telephone applications
US5113429A (en) * 1988-09-29 1992-05-12 American Tel-A-System, Inc. Telephone answering service with integrated voice and textual message storage
US5420852A (en) * 1988-09-29 1995-05-30 American Tel-A-Systems, Inc. Digital switching system connecting buses with incompatible protocols and telephone answering system and private automatic branch exchange with integrated voice and textual message recording
US5259024A (en) * 1988-09-29 1993-11-02 America Tel-A-System, Inc. Telephone answering service with integrated voice and textual message storage
US4916726A (en) * 1988-09-29 1990-04-10 American Tel-A-System, Inc. Telephone answering service with integrated voice and textual message storage
US5093854A (en) * 1990-04-20 1992-03-03 Sucato John D Phone actuated calendar
US5133004A (en) * 1990-05-07 1992-07-21 Unisys Corporation Digital computer platform for supporting telephone network applications
US5210837A (en) * 1990-06-15 1993-05-11 Digital Equipment Corporation Methods and apparatus for transforming machine language program control into high-level language constructs by manipulating graphical program representations
US5136631A (en) * 1990-08-20 1992-08-04 Texas Instruments Incorporated Method and apparatus for programming a voice services system
US5255305A (en) * 1990-11-01 1993-10-19 Voiceplex Corporation Integrated voice processing system
WO1993002412A1 (en) * 1991-07-16 1993-02-04 The Bcb Technology Group Incorporated Dos compatible dictation and voice mail system
DE69327446T2 (de) * 1992-11-18 2000-05-11 Canon Information Syst Inc Verfahren und Gerät zur Gewinnung von Text aus einer strukturierten Datei und zu dessen Umsetzung in Sprache
US6397263B1 (en) 1993-11-03 2002-05-28 International Business Machines Corporation String command parser for message based systems
DE69426751T2 (de) 1993-12-06 2001-09-06 Canon Kk Benutzerdefinierbares interaktives System
US5625775A (en) * 1994-06-13 1997-04-29 International Business Machines Corporation Modem communication interface in a data processing system
US5946377A (en) * 1995-10-10 1999-08-31 Ast Research, Inc. Script-based DTMF information retrieval system
US5953392A (en) * 1996-03-01 1999-09-14 Netphonic Communications, Inc. Method and apparatus for telephonically accessing and navigating the internet
US6775264B1 (en) 1997-03-03 2004-08-10 Webley Systems, Inc. Computer, internet and telecommunications based network
US6009398A (en) * 1997-04-18 1999-12-28 U S West, Inc. Calendar system with direct and telephony networked voice control interface
EP1057099A1 (en) * 1998-02-25 2000-12-06 Lernout & Hauspie Speech Products N.V. Generic run-time engine for interfacing between applications and speech engines
US6721705B2 (en) 2000-02-04 2004-04-13 Webley Systems, Inc. Robust voice browser system and voice activated device controller
US7516190B2 (en) 2000-02-04 2009-04-07 Parus Holdings, Inc. Personal voice-based information retrieval system
US7024511B2 (en) * 2001-06-22 2006-04-04 Intel Corporation Method and apparatus for active memory bus peripheral control utilizing address call sequencing
JP2003070069A (ja) * 2001-08-29 2003-03-07 Matsushita Electric Ind Co Ltd コードレス電話装置
US7103158B2 (en) * 2002-02-28 2006-09-05 Pacific Bell Information Services Dynamic interactive voice architecture
TWI314407B (en) * 2006-07-11 2009-09-01 A method and system for blocking the specific function of the p2p application in the network

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1156899A (en) * 1968-03-13 1969-07-02 Photo Magnetic Syst Inc Computer Systems
JPS5784656A (en) * 1980-11-14 1982-05-27 Fujitsu Ltd Voice response device
JPS57152072A (en) * 1981-03-17 1982-09-20 Mitsubishi Electric Corp Audio response/video retrieval composite processing system
EP0085209B1 (en) * 1982-01-29 1986-07-30 International Business Machines Corporation Audio response terminal for use with data processing systems
US4598367A (en) * 1983-11-09 1986-07-01 Financial Design Systems, Inc. Financial quotation system using synthesized speech

Also Published As

Publication number Publication date
US4755932A (en) 1988-07-05
EP0218904A2 (en) 1987-04-22
JPS6292026A (ja) 1987-04-27
EP0218904A3 (en) 1988-11-17
CA1258713A (en) 1989-08-22
BR8604508A (pt) 1987-05-19

Similar Documents

Publication Publication Date Title
JPH0754455B2 (ja) インタープリタ装置
US6311159B1 (en) Speech controlled computer user interface
EP0878948B1 (en) Method and apparatus for voice interaction over a network using parameterized interaction definitions
US5924070A (en) Corporate voice dialing with shared directories
US6192339B1 (en) Mechanism for managing multiple speech applications
US5404528A (en) Scripting system
US7447637B1 (en) System and method of processing speech within a graphic user interface
US5734905A (en) User interface in object oriented computer system for performing intuitive object transformations
KR101098716B1 (ko) 컴퓨터 판독가능 매체 및 대화형 사용자 인터페이스 제공방법
CN100383755C (zh) 一种软件接口测试方法和装置
US20070043574A1 (en) Conversational computing via conversational virtual machine
US7165034B2 (en) Information processing apparatus and method, and program
KR20030060884A (ko) 웹 운영체제 및 웹 데스크탑
EP0472389A2 (en) Method and apparatus for programming a voice services system
US6061512A (en) Methods and apparatus for creating automated servers for display telephones
US6504914B1 (en) Method for dialog control of voice-operated information and call information services incorporating computer-supported telephony
US20030110040A1 (en) System and method for dynamically changing software programs by voice commands
US20010032083A1 (en) Language independent speech architecture
US20060198501A1 (en) Method and device for constructing a voice dialog
CA2208469C (en) Communication control device which converts modem commands into telephone control function to communicate and command conversion method thereof
EP1026871B1 (en) Interactive voice response system with general-purpose blocks
GB2149172A (en) Speech responsive apparatus
CN113918080B (zh) 一种虚拟键盘的控制方法、系统及计算机可读存储介质
EP0472125A2 (en) Voice services system
KR20040026935A (ko) Vxml을 이용한 교환기 관리 방법 및 시스템

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees