Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Serverinitiierte Synchronisation » Serverinitiierte Synchronisation einrichten » Listener » Message-Handler » Erweiterte Message-Handler-Funktionen

 

Verbindungsinitiierte Synchronisation

Auf Windows-Geräten können Sie die Synchronisation initiieren, wenn sich die Netzwerkverbindung ändert.

Wenn die IP-Netzwerkverbindung hergestellt oder abgebrochen wird, sendet das Gerät eine Push-Benachrichtigung mit der Nachricht _IP_CHANGED_ an den Listener. Wenn das Gerät einen neuen optimalen Pfad zum MobiLink-Server findet, sendet es eine Push-Benachrichtigung mit der Nachricht _BEST_IP_CHANGED_ an den Listener. Mit einem Message-Handler können Sie diese Änderungen der Netzwerkverbindung erkennen und eine Aktion initiieren.

Änderungen der Netzwerkverbindung erkennen

Die Nachricht _IP_CHANGED_ zeigt an, dass eine Änderung der IP-Netzwerkverbindung aufgetreten ist. Eine Änderung tritt normalerweise ein, wenn ein Gerät in die Reichweite eines WiFi-Netzwerks kommt, wenn der Benutzer eine RAS-Verbindung herstellt oder wenn er das Gerät in eine Dockingstation stellt. Sie können die Nachricht _IP_CHANGED_ referenzieren, indem Sie den Listener mit folgender Syntax ausführen:

dblsn ... -l "message=_IP_CHANGED_;action='...'"

Das folgende Beispiel zeigt die Verwendung der Nachricht _IP_CHANGED_. Der Message-Handler filtert die Nachricht und sendet sie an den Server. Bei einer Trennung der Verbindung wird ein Fehler generiert.

dblsn -l "message=_IP_CHANGED_;
    action='
        SOCKET port=12345;
        sendText=IP changed: $adapters|$network_names;
        recvText=beeperAck;
        timeout=5';
    continue=yes;"
Änderung des optimalen Pfads zu einem MobiLink-Server erkennen

Die Nachricht _BEST_IP_CHANGED_ zeigt an, dass sich der optimale Pfad zum MobiLink-Server geändert hat. Sie können diese Nachricht referenzieren, wenn Sie den Listener mit folgender Syntax ausführen:

dblsn ... -x MobiLink-Protokolloptionen -l "message=_BEST_IP_CHANGED_;action='...'"

Beim Filtern der Nachricht _BEST_IP_CHANGED_ können Sie mithilfe der Aktionsvariablen $best_ip nützliche Aktionen initiieren. $best_ip ersetzt die IP-Adresse, die die vorherige beste IP-Verbindung darstellt. Wenn keine IP-Verbindung vorhanden ist, gibt $best_ip den Wert 0.0.0.0 zurück.

Im folgenden Beispiel wird die Nachricht _BEST_IP_CHANGED_ verwendet, um eine Synchronisation zu initiieren, wenn die beste IP-Verbindung sich ändert. Bei einer Trennung der Verbindung wird ein Fehler generiert.

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'"
Hinweis

Wenn Sie die verbindungsinitiierte Synchronisation mit Ihren Anwendungen testen, sollten Sie den Listener auf einem anderen Computer als den MobiLink-Server ausführen.

Siehe auch