音声認識アプリケーションのサンプル
音声認識アプリケーションのサンプルでは、ステート マシンを使って柔軟なプロセスを作成する方法を示します。また、再帰ステートとステート初期化アクティビティの使用についても示します。
音声認識アプリケーションは、標準的な対話型の音声応答 (IVR) アプリケーションです。アプリケーションで使用されるステート マシン ワークフローは、標準的な電話アプリケーション メニューを表します。このメニューは、さまざまなレベルのメニューを表す各種ステートで構成されます。どのステートでも有効なイベントは限られており、それら有効なイベントが、メニューで選択可能なオプションということになります。
ただし、どのステートでも選択できるメニュー オプションが 2 つあります。
'*' メニュー オプションは会話を終了します。
'9' というオプションを選択すると、メイン メニューに戻ります。
これらのイベントを処理するイベント ハンドラがルート ステート マシンに付加されます。これにより、そのオプションがどのステートでも継承され、選択できるようになっています。
ユーザー インターフェイスには、システムと通信するための一連のボタンがあります。どのステートでも、それらのボタンのうちの一部が有効になっています。これは、ステート マシン モデルで使用可能なクエリ機能を使用して行われます。StateMachineWorkflowInstance を使用してステート マシンを照会し、現行のステートを取得し、さらにそこで有効なイベントを取得する仕組みは、コードを調べるとわかります。
サンプルをビルドするには
このトピックの [サンプルのダウンロード] をクリックしてサンプルをダウンロードします。
ローカル コンピュータのハード ディスクにサンプル プロジェクトがダウンロードされます。
[スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft Windows SDK] をポイントし、[CMD シェル] をクリックします。
サンプルのソース ディレクトリに移動します。
コマンド プロンプトで、「MSBUILD <ソリューション ファイル名>」と入力します。
サンプルを実行するには
SDK コマンド プロンプト ウィンドウで、SpeechUI\bin\debug フォルダにある .exe ファイルを実行します (このサンプルでは、メイン フォルダの下にあります)。
[Start Phone Session] をクリックします。
次の点に注意してください。
表示されるテキストは、電話からのブロードキャストをシミュレートします。
選択可能なメニュー選択に対応するボタンのみ有効です。任意のメニュー項目を選択し、ステート マシンの反応を調べることができます。
* ボタンと 9 ボタンは常にアクティブとなっています。これは、それらのボタンに対応するイベント ハンドラがルート ステート マシン レベルで処理されるためです。
関連項目
その他の技術情報
Tutorial: Create a State Machine Workflow
State Machine Workflows
注文処理ステート マシンのサンプル
Windows Workflow Foundation のサンプル
Copyright © 2007 by Microsoft Corporation.All rights reserved.