Konfigurieren Sie dieses Ereignis für die Verarbeitung von Informationen zur Zustellungsbestätigung, die von Listenern gesendet wurden. Wenn der Statusparameter 0 zurückgibt, wurde die durch request_id identifizierte Push-Anforderung erfolgreich vom Listener (identifiziert durch den Parameter remote_device) empfangen.
Mit dem Parameter request_option können Sie eine Aktion als Reaktion auf die Zustellungsbestätigung initiieren. Wenn request_option gleich 0 ist, führt das confirmation_handler-Ereignis standardmäßig diese Aktion aus. Das Ereignis request_delete wird ausgeführt, um die ursprüngliche Push-Anforderung zu löschen. Wenn das Gerät, das die Zustellungsbestätigung sendet, nicht mit dem Gerät übereinstimmt, das durch request_id identifiziert wird, wird standardmäßig die ursprüngliche Push-Anforderung über ein sekundäres Gateway gesendet.
Mit der dblsn-Option -x können Listener Informationen zur Zustellungsbestätigung senden. Verwenden Sie die dblsn-Option -ni, wenn Sie die Zustellungsbestätigung wünschen, aber kein IP-Tracking. Weitere Hinweise finden Sie unter Listener-Optionen für Windows.
Dieses Ereignis erfordert eine Systemprozedur. Es ist nicht möglich, dieses Ereignis direkt mithilfe der Sybase Central-Methode zu konfigurieren. Weitere Hinweise finden Sie unter MobiLink-Server-Einstellungen für serverinitiierte Synchronisation.
Die folgenden Parameter können mit dem confirmation_handler-Ereignis erfasst werden:
Skriptparameter | Typ | Beschreibung |
---|---|---|
request_option (out) | Integer |
Regelt, wie der Notifier die Anforderung verarbeitet, nachdem der Handler zurückgegeben wurde. Die folgenden Werte können zurückgegeben werden:
|
status (in) | Integer |
Ein Überblick über die Situation. Der Status kann während der Entwicklung verwendet werden, um Probleme wie beispielsweise falsche Filter und Handler-Attribute zu identifizieren. Die folgenden Werte können zurückgegeben werden:
|
request_id (in) | Integer | Die Anforderungs-ID. Das request_cursor-Ereignis muss eine Spalte für die Anforderungs-ID enthalten, um das confirmation_handler-Ereignis zu verwenden. |
remote_code (in) | Integer |
Das vom entfernten Listener berichtete Ergebnis. Die folgenden Werte können zurückgegeben werden:
|
remote_device (in) | Varchar | Der Gerätename des antwortenden Listeners. |
remote_mluser (in) | Varchar | Der MobiLink-Benutzername des antwortenden Listeners. |
remote_action_return (in) | Varchar | Der Rückgabecode der entfernten Aktion. |
remote_action (in) | Varchar | Reserviert für den Aktionsbefehl. |
gateway (in) | Varchar | Das der Anforderung zugeordnete Gateway. |
address (in) | Varchar | Die der Anforderung zugeordnete Adresse. |
subject (in) | Varchar | Der der Anforderung zugeordnete Betreff. |
content (in) | Varchar | Der der Anforderung zugeordnete Inhalt. |
Im folgenden Beispiel erstellen Sie die Tabelle CustomConfirmation und protokollieren dann Bestätigungen mit der gespeicherten Prozedur CustomConfirmationHandler. Der Ausgabeparameter request_option beträgt immer 0. Daher wird die Notifier-Standardverarbeitung verwendet.
CREATE TABLE CustomConfirmation( error_code integer, request_id integer, remote_code integer, remote_device varchar(128), remote_mluser varchar(128), remote_action_return varchar(128), remote_action varchar(128), gateway varchar(255), address varchar(255), subject varchar(255), content varchar(255), occurAt timestamp not null default timestamp ) CREATE PROCEDURE CustomConfirmationHandler( out @request_option integer, in @error_code integer, in @request_id integer, in @remote_code integer, in @remote_device varchar(128), in @remote_mluser varchar(128), in @remote_action_return varchar(128), in @remote_action varchar(128), in @gateway varchar(255), in @address varchar(255), in @subject varchar(255), in @content varchar(255) ) BEGIN INSERT INTO CustomConfirmation( error_code, request_id, remote_code, remote_device, remote_mluser, remote_action_return, remote_action, gateway, address, subject, content) VALUES ( @error_code, @request_id, @remote_code, @remote_device, @remote_mluser, @remote_action_return, @remote_action, @gateway, @address, @subject, @content ); SET @request_option = 0; END |
Mit dem folgenden Befehl können Sie die gespeicherte Prozedur ml_add_property mit einer konsolidierten SQL Anywhere-Datenbank verwenden:
call ml_add_property( 'SIS', 'Notifier(myNotifier)', 'confirmation_handler', 'call CustomConfirmation(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'); |
Alternativ dazu können Sie dieses Ereignis aufrufen, indem Sie einer Notifier-Konfigurationsdatei folgende Zeile hinzufügen:
Notifier(myNotifier).confirmation_handler = call CustomConfirmation(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) |
Führen Sie die Datei mit der mlsrv11-Option -notifier aus. Weitere Hinweise zum Konfigurieren einer Notifier-Konfigurationsdatei finden Sie unter Serverseitige Einstellungen mit der Notifier-Konfigurationsdatei konfigurieren.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |