HCL ZIETrans マクロ処理エンジンがこれらのタイミング・エレメントと属性を使用する方法

非終了画面の場合 (exitscreen 属性は「false」に設定)、pausetimevalue の遅延が実行されるのは、画面のアクションがすべて実行された後で、次の画面の登録または認識が開始する前です。pause 属性が画面に定義されている場合、アクション後の遅延について、pausetime の値の代わりに pause の値が使用されます。

終了画面として定義されているマクロ画面の場合 (exitscreen 属性は「true」に設定)、pausetime 属性 (およびその終了画面に定義されている pause 属性) は実質的に無視され、すべての画面のアクションが完了した後に自動的に実行される追加の遅延はありません。これによって、マクロ・エンジンはマクロの最終画面までナビゲートすると、遅延を追加しません。

さらに、すべてのマクロ画面について、画面の最後のアクションでない <prompt> または <insert> の後、pausetimevalue /2 の時間、マクロはスリープ状態になります。

例えば、図 1 で示すように、pausetime="1000" で、他の pause 属性が画面に定義されていない場合、マクロは最初のアクション (prompt) の後に 500 ミリ秒、4 番目のアクションの後に 500 ミリ秒、そして (現在の画面が終了画面でない場合) すべてのアクションが実行された後に 1000 ミリ秒の、合計 2000 ミリ秒の間スリープ状態になります。
図 1. pausetimevalue の例 1
<actions>
       <prompt...
       <extract...
       <extract...
       <prompt...
       <insert...
</actions>

マクロ内で、<pause> エレメントはどこに配置されていてもインラインで実行され、pausetime 属性または pause 属性の設定でオーバーライドされませんが、<HAScript> エレメントの ignorepauseforenhancedtn 属性が「true」に設定されている場合、この属性でオーバーライドされることがあります。

上の例を拡張して、図 2 で示すように、pausetime="1000" で、他の pause 属性が画面に定義されていない場合、マクロは最初のアクション (prompt) の後に 500 ミリ秒、4 番目のアクションの後に 500 ミリ秒、5 番目のアクション (insert) の後に 500 ミリ秒、6 番目のアクション (<pause> エレメント) の後に 150 ミリ秒、そして (現在の画面が終了画面でない場合) すべてのアクションが実行された後に 1000 ミリ秒の、合計 2650 ミリ秒の間スリープ状態になります。
図 2. pausetimevalue の例 2
<actions>
       <prompt...
       <extract...
       <extract...
       <prompt...
       <insert...
       <pause value="150"/>
</actions>
これが終了画面の場合、合計スリープ時間は 1650 ミリ秒です。また、<HAScript> エレメントの ignorepauseforenhancedtn 属性と、<pause> エレメントの ignorepauseoverrideforenhancedtn 属性が設定されている場合、この例の明示的な <pause> エレメントが実行されても無視されても、これらの属性は有効になります。