Windows デバイスでは、接続の変更時に同期を開始できます。
IP 接続が確立されたり、失われたりすると、デバイスはメッセージ _IP_CHANGED_ を含む Push 通知を Listener に送信します。デバイスは、Mobile Link サーバへの新しい最適パスを見つけると、メッセージ _BEST_IP_CHANGED_ を含む Push 通知を Listener に送信します。メッセージ・ハンドラを使用すると、接続に関するこれらの変更を検出し、アクションを開始できます。
_IP_CHANGED_ メッセージは、IP 接続が変更されたことを示します。接続の変更は、デバイスが WiFi ネットワークの範囲に入ったり、ユーザが RAS 接続を開始したり、ユーザがデバイスをクレドールに置いたりした場合に発生します。_IP_CHANGED_ メッセージを参照するには、次の構文を使用して Listener を実行します。
dblsn ... -l "message=_IP_CHANGED_;action='...'" |
次の例は、_IP_CHANGED_ メッセージの使用方法を示します。メッセージ・ハンドラはメッセージをフィルタリングし、サーバに送信します。接続が失われると、エラーが生成されます。
dblsn -l "message=_IP_CHANGED_; action=' SOCKET port=12345; sendText=IP changed: $adapters|$network_names; recvText=beeperAck; timeout=5'; continue=yes;" |
_BEST_IP_CHANGED_ メッセージは、Mobile Link サーバへの最適パスが変更されたことを示します。このメッセージを参照するには、次の構文を使用して Listener を実行します。
dblsn ... -x MobiLink-protocol-options -l "message=_BEST_IP_CHANGED_;action='...'" |
_BEST_IP_CHANGED_ メッセージの実行時に、最善の IP 接続を表すローカルの IP アドレスに置き換える $best_ip action 変数を使用すると、役立つアクションを開始できます。IP 接続が存在しない場合、$best_ip は 0.0.0.0 を返します。
次の例では、_BEST_IP_CHANGED_ メッセージを使用して、最善の IP 接続が変更されたときに同期を起動しています。接続が失われると、エラーが生成されます。
dblsn -x http(host=mlserver.company.com) -v2 -m -i 3 -ot dblsn.log -l "message=_BEST_IP_CHANGED_; action=' START dbmlsync.exe -ra -c eng=remote;uid=DBA;pwd=sql -n test_pub'" |
ご使用のアプリケーションで接続起動同期をテストする場合は、Listener を Mobile Link サーバとは別のコンピュータで実行します。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |