Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
メッセージ転送のタイミングを決定するポリシーを指定します。
qauagent -policy policy-type ...
policy-type: ondemand | scheduled[ interval-in-seconds ] | automatic | rules-file
QAnywhere ではポリシーを使用して、メッセージ転送のタイミングを決定します。policy-type には、次のいずれかの値を指定できます。
ondemand QAnywhere クライアントアプリケーションによって適切なメソッドが呼び出されたときだけ、メッセージが転送されます。
QAManager PutMessage() メソッドは、メッセージをローカルのキューに登録します。キューに登録されたメッセージは、QAManager TriggerSendReceive() メソッドが呼び出されるまでサーバーに転送されません。同様に、サーバー上で送信待機中のメッセージは、クライアントによって TriggerSendReceive() が呼び出されるまで、クライアントに送信されません。
ondemand ポリシーが使用されている場合は、アプリケーションはサーバーから Push 通知を受信するとメッセージを転送します。Push 通知時にはシステムメッセージが QAnywhere クライアントに配信されます。クライアントアプリケーションでは、TriggerSendReceive() を呼び出すことによって、このシステムメッセージに応答できます。
例については、システムキューを参照してください。
scheduled 指定された間隔でメッセージを転送します。デフォルト値は 900 秒 (15 分) です。
スケジュール設定ポリシーを指定すると、次のいずれかの条件が満たされたときに、n 秒間隔でメッセージが転送されます。
前回の時間間隔が経過した後、クライアントメッセージストアに新しいメッセージを受信した。
前回の時間間隔が経過した後、メッセージステータスが変化した。この現象は、通常、アプリケーションがメッセージの受信を確認したときに起こります。
前回の時間間隔が経過した後、Push 通知を受信した。
前回の時間間隔が経過した後、ネットワークステータス変更通知を受信した。
Push 通知が無効にされた。
時間間隔を無視するには、トリガーの送受信メソッドを呼び出します。このメソッドを使用すると、時間間隔が経過する前にメッセージを転送できます。
automatic 次のいずれかのイベントが発生した場合に、メッセージを転送します。
QAnywhere Ultra Light Agent は、メッセージキューをできるかぎり最新の状態に維持しようとします。次のいずれかのイベントが発生すると、クライアントのキューに登録されているメッセージがサーバーに配信され、サーバー上のキューに登録されているメッセージがクライアントに配信されます。
PutMessage() の呼び出し。
TriggerSendReceive() の呼び出し。
Push 通知。
クライアント上のメッセージステータスの変化。たとえば、アプリケーションがローカルのキューからメッセージを取り出すとステータスの変化が発生します。この場合、メッセージステータスは保留から受信済みに変化します。
rules-file クライアントの転送ルールファイルを指定します。転送ルールファイルには、メッセージを転送するタイミングを決定するための複雑なルールセットを記述できます。