# Cordova-Plugin API-Referenz

```txt title="example"
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");

// Should be called before pushwoosh.onDeviceReady
document.addEventListener('push-notification', function(event) {
	var notification = event.notification;
	// handle push open here
});

// Initialize Pushwoosh. This will trigger all pending push notifications on start.
pushwoosh.onDeviceReady({
	appid: "XXXXX-XXXXX",
	serviceName: "XXXX"
});

pushwoosh.registerDevice(
	function(status) {
		var pushToken = status.pushToken;
    	// handle successful registration here
  },
  function(status) {
    // handle registration error here
  }
);
```

## onDeviceReady

```javascript
PushNotification.prototype.onDeviceReady = function( config )
```

_\[android, ios, wp8, windows]_\
Initialisiert das Pushwoosh-Plugin und löst eine Start-Push-Nachricht aus. Sollte bei jedem App-Start aufgerufen werden.

`config.appid` – Pushwoosh-Anwendungscode.

`config.serviceName` – MPNS-Dienstname für die wp8-Plattform.

```txt title="example"
// initialize Pushwoosh with appid : "PUSHWOOSH_APP_ID", serviceName : "WINDOWS_PHONE_SERVICE". This will trigger all pending push notifications on start.
pushwoosh.onDeviceReady({
    appid : "XXXXX-XXXXX",
    serviceName: "XXXX"
});
```

## registerDevice

```javascript
PushNotification.prototype.registerDevice = function( success, fail )
```

_\[android, ios, wp8, windows]_\
Registriert das Gerät für Push-Benachrichtigungen und ruft einen Push-Token ab.

`success` – Erfolgs-Callback. Der Push-Token wird als „status.pushToken“-Parameter an diesen Callback übergeben.

`fail` – Fehler-Callback

```txt title="example"
pushwoosh.registerDevice(
    function(status) {
        alert("Registered with push token: " + status.pushToken);
    },
    function(error) {
        alert("Failed to register: " +  error);
    }
);
```

## unregisterDevice

```javascript
PushNotification.prototype.unregisterDevice = function(	success, fail	)
```

_\[android, ios, wp8, windows]_\
Deregistriert das Gerät vom Empfang von Push-Benachrichtigungen.

`success` – Erfolgs-Callback

`fail` – Fehler-Callback

## setTags

```javascript
PushNotification.prototype.setTags = function(	config, success, fail	)
```

_\[android, ios, wp8, windows]_\
Setzt Tags für das Gerät.

**Parameter**

`config` – Objekt mit benutzerdefinierten Geräte-Tags

`success` – Erfolgs-Callback. Der Push-Token wird als „status.pushToken“-Parameter an diesen Callback übergeben.

`fail` – Fehler-Callback

```txt title="example"
// sets tags: “deviceName” with value “hello” and “deviceId” with value 10
pushwoosh.setTags({deviceName:"hello", deviceId:10},
    function() {
        console.warn('setTags success');
    },
    function(error) {
        console.warn('setTags failed');
    }
);

// sets list tags "MyTag" with values (array) "hello", "world"
pushwoosh.setTags({"MyTag":["hello", "world"]});
```

## getTags

```javascript
PushNotification.prototype.getTags = function(	success, fail	)
```

_\[android, ios, wp8, windows]_\
Gibt Tags für das Gerät zurück, einschließlich der Standard-Tags.

`success` – Erfolgs-Callback. Empfängt Tags als Parameter.

`fail` – Fehler-Callback

```javascript
pushwoosh.getTags(
    function(tags) {
        console.warn('tags for the device: ' + JSON.stringify(tags));
    },
    function(error) {
        console.warn('get tags error: ' + JSON.stringify(error));
    }
);
```

## getPushToken

```javascript
PushNotification.prototype.getPushToken = function(	success	)
```

_\[android, ios, wp8, windows]_\
Gibt den Push-Token zurück, falls er verfügbar ist. Beachten Sie, dass der Token auch im Callback der `registerDevice`-Funktion übergeben wird.

`success` – Erfolgs-Callback.

```javascript
pushwoosh.getPushToken(
    function(token) {
        console.warn('push token: ' + token);
    }
);
```

## getPushwooshHWID

```javascript
PushNotification.prototype.getPushwooshHWID = function(	success	)
```

_\[android, ios, wp8, windows]_\
Gibt die Pushwoosh-HWID zurück, die für die Kommunikation mit der Pushwoosh-API verwendet wird.

`success` – `getPushwooshHWID`-Callback

```
pushwoosh.getPushwooshHWID(
    function(token) {
        console.warn('Pushwoosh HWID: ' + token);
    }
);
```

## getRemoteNotificationStatus

```javascript
PushNotification.prototype.getRemoteNotificationStatus = function(	callback, error	)
```

_\[android, ios]_\
Gibt den detaillierten Status der Berechtigungen für Push-Benachrichtigungen zurück.

`callback` – Erfolgs-Callback. Empfängt ein Objekt mit den folgenden Eigenschaften:

```
{
  "enabled" : Flag für aktivierte Benachrichtigungen.
  "pushBadge" : Berechtigung für Badges erteilt. (nur iOS)
  "pushAlert" : Berechtigung für Alarme erteilt. (nur iOS)
  "pushSound" : Berechtigung für Ton erteilt. (nur iOS)
}
```

`error` — Fehler-Callback

## setApplicationIconBadgeNumber

```javascript
PushNotification.prototype.setApplicationIconBadgeNumber = function(	badgeNumber	)
```

_\[android, ios]_\
Setzt die Badge-Nummer des Anwendungssymbols.

`badgeNumber` – Badge-Nummer des Symbols

## getApplicationIconBadgeNumber

```javascript
PushNotification.prototype.getApplicationIconBadgeNumber = function(	callback	)
```

_\[android, ios]_\
Gibt die Badge-Nummer des Anwendungssymbols zurück.

`callback` – Erfolgs-Callback

```
pushwoosh.getApplicationIconBadgeNumber(function(badge){ alert(badge);} );
```

## addToApplicationIconBadgeNumber

```javascript
PushNotification.prototype.addToApplicationIconBadgeNumber = function( badgeNumber )
```

_\[android, ios]_\
Fügt einen Wert zur Badge des Anwendungssymbols hinzu.

`badgeNumber` — inkrementelle Badge-Nummer des Symbols

## getLaunchNotification

```javascript
PushNotification.prototype.getLaunchNotification = function(	callback	)
```

_\[android, ios]_\
Gibt die Payload der Push-Benachrichtigung zurück, wenn die App als Reaktion auf eine Push-Benachrichtigung gestartet wurde, andernfalls null.

`callback` – Erfolgs-Callback

## clearLaunchNotification

```javascript
PushNotification.prototype.clearLaunchNotification = function(	callback	)
```

_\[android, ios]_\
Löscht die Startbenachrichtigung, `getLaunchNotification()` gibt nach diesem Aufruf null zurück.

## setUserId

```javascript
PushNotification.prototype.setUserId = function(	userId	)
```

_\[android, ios]_\
Setzt den Benutzeridentifikator – eine Facebook-ID, einen Benutzernamen, eine E-Mail-Adresse oder eine andere Benutzer-ID. Dies ermöglicht den Abgleich von Daten und Events über mehrere Geräte eines Benutzers hinweg.

`userId` – Benutzer-String-Identifikator

## postEvent

```javascript
PushNotification.prototype.postEvent = function( event, attributes )
```

_\[android, ios]_\
Postet Events für In-App-Nachrichten. Dies kann die Anzeige von In-App-Nachrichten auslösen, wie im Pushwoosh Control Panel festgelegt.

`event` – auszulösendes Event

`attributes` – Objekt mit zusätzlichen Event-Attributen

```
pushwoosh.setUserId("XXXXXX");
pushwoosh.postEvent("buttonPressed", { "buttonNumber" : 4, "buttonLabel" : "banner" });
```

## createLocalNotification

```javascript
PushNotification.prototype.createLocalNotification = function( config, success, fail )
```

_\[android, ios]_\
Plant eine lokale Benachrichtigung.

`config.msg` – Benachrichtigungsnachricht

`config.seconds` – Benachrichtigungsverzögerung in Sekunden

`config.userData` – zusätzliche Daten, die in der Benachrichtigung übergeben werden

`success` – Erfolgs-Callback

`fail` – Fehler-Callback

```
pushwoosh.createLocalNotification({msg:"Your pumpkins are ready!", seconds:30, userData:{}})
```

## clearLocalNotification

```javascript
PushNotification.prototype.clearLocalNotification = function()
```

_\[android]_\
Löscht alle ausstehenden lokalen Benachrichtigungen, die von `createLocalNotification` erstellt wurden.

## clearNotificationCenter

```javascript
PushNotification.prototype.clearNotificationCenter = function()
```

_\[android]_\
Löscht alle Benachrichtigungen, die im Android Notification Center angezeigt werden.

## setMultiNotificationMode

```javascript
PushNotification.prototype.setMultiNotificationMode = function( success, fail )
```

_\[android]_\
Ermöglicht die Anzeige mehrerer Benachrichtigungen im Android Notification Center.

## setSingleNotificationMode

```javascript
PushNotification.prototype.setSingleNotificationMode = function(	success,
fail	)
```

_\[android]_\
Ermöglicht, dass nur die letzte Benachrichtigung im Android Notification Center angezeigt wird.

## setSoundType

```javascript
PushNotification.prototype.setSoundType = function( type, success, fail )
```

_\[android]_\
Setzt den Standardton für eingehende Pushes.

`type` – Tontyp (0 – Standard, 1 – kein Ton, 2 – immer)

## setVibrateType

```javascript
PushNotification.prototype.setVibrateType = function(type, success, fail )
```

_\[android]_\
Setzt den Standard-Vibrationsmodus für eingehende Pushes.

`type` – Vibrationstyp (0 – Standard, 1 – keine Vibration, 2 – immer)

## setLightScreenOnNotification

```javascript
PushNotification.prototype.setLightScreenOnNotification = function( on, success, fail )
```

_\[android]_\
Schaltet den Bildschirm ein, wenn eine Benachrichtigung eintrifft.

`on` – Bildschirm-Entsperrung aktivieren/deaktivieren (standardmäßig deaktiviert)

## setEnableLED

```javascript
PushNotification.prototype.setEnableLED = function( on, success, fail )
```

_\[android]_\
Aktiviert das Blinken der LED, wenn eine Benachrichtigung eintrifft und das Display ausgeschaltet ist.

`on` – LED-Blinken aktivieren/deaktivieren (standardmäßig deaktiviert)

## setColorLED

```javascript
PushNotification.prototype.setColorLED = function( color, success, fail )
```

_\[android]_\
Setzt die LED-Farbe. In Verbindung mit [setEnableLED](#setenableled) verwenden.

`color` – LED-Farbe im ARGB-Integer-Format

## getPushHistory

```javascript
PushNotification.prototype.getPushHistory = function(	success	)
```

_\[android]_\
Gibt ein Array der empfangenen Push-Benachrichtigungen zurück.

`success` – Erfolgs-Callback

```
pushwoosh.getPushHistory(function(pushHistory) {
    if(pushHistory.length == 0)
        alert("no push history");
    else
        alert(JSON.stringify(pushHistory));
});

pushwoosh.clearPushHistory();
```

## clearPushHistory

```javascript
PushNotification.prototype.clearPushHistory = function()
```

_\[android]_\
Löscht den Push-Verlauf.

## cancelAllLocalNotifications

```javascript
PushNotification.prototype.cancelAllLocalNotifications = function( callback )
```

_\[ios]_\
Löscht alle lokalen Benachrichtigungen aus der Benachrichtigungszentrale.

## presentInboxUI

_\[android, ios]_\
Öffnet den [Inbox](/de/developer/guides/message-inbox/mobile-message-inbox)-Bildschirm. Akzeptiert ein optionales Stilobjekt. Die vollständige Liste der Stilschlüssel finden Sie unter [Einrichten der Message Inbox für Cordova](/de/developer/pushwoosh-sdk/cross-platform-frameworks/cordova/setting-up-message-inbox-for-cordova/).

```javascript
PushNotification.prototype.presentInboxUI = function( params )
```

## loadMessages

_\[android, ios]_\
Lädt das Array der Inbox-Nachrichten.

```javascript
PushNotification.prototype.loadMessages = function( success, fail )
```

## unreadMessagesCount

_\[android, ios]_\
Gibt die Anzahl der ungelesenen Inbox-Nachrichten zurück.

```javascript
PushNotification.prototype.unreadMessagesCount = function( success )
```

## messagesCount

_\[android, ios]_\
Gibt die Gesamtzahl der Inbox-Nachrichten zurück.

```javascript
PushNotification.prototype.messagesCount = function( success )
```

## messagesWithNoActionPerformedCount

_\[android, ios]_\
Gibt die Anzahl der Inbox-Nachrichten zurück, für die keine Aktion ausgeführt wurde.

```javascript
PushNotification.prototype.messagesWithNoActionPerformedCount = function( success )
```

## readMessage

_\[android, ios]_\
Markiert eine Inbox-Nachricht als gelesen.

```javascript
PushNotification.prototype.readMessage = function( number )
```

## deleteMessage

_\[android, ios]_\
Löscht eine Nachricht aus der Inbox.

```javascript
PushNotification.prototype.deleteMessage = function( number )
```

## performAction

_\[android, ios]_\
Führt die einer Inbox-Nachricht zugewiesene Aktion aus, z. B. das Öffnen einer URL.

```javascript
PushNotification.prototype.performAction = function( number )
```

## setCommunicationEnabled

Eine binäre Methode, die die gesamte Kommunikation mit Pushwoosh aktiviert/deaktiviert. Der boolesche Wert **false** meldet das Gerät vom Empfang von Push-Benachrichtigungen ab und stoppt den Download von In-App-Nachrichten. Der Wert **true** kehrt den Effekt um.

```javascript
PushNotification.prototype.setCommunicationEnabled = function(enable, success, fail)
```

## removeAllDeviceData

Entfernt alle Daten über das Gerät.

```javascript
PushNotification.prototype.removeAllDeviceData = function()
```

## push-receive

_\[android, ios]_\
Ereignis für den Empfang von Push-Benachrichtigungen. Wird ausgelöst, wenn die Anwendung eine Push-Benachrichtigung im Vorder- oder Hintergrund empfängt. Geschlossene Anwendungen empfangen dieses Ereignis nicht.

**Ereigniseigenschaften**

`message` – (`string`) Nachricht der Push-Benachrichtigung

`userdata` – (`object`/`array`) Benutzerdefinierte Daten der Push-Benachrichtigung

`onStart` – (`boolean`) Ist eine Startbenachrichtigung

`foreground` – (`boolean`) Wird die Benachrichtigung im Vordergrund empfangen

`android` – (`object`) Android-spezifische Benachrichtigungs-Payload

`ios` – (`object`) iOS-spezifische Benachrichtigungs-Payload

`windows` – (`object`) Windows-spezifische Benachrichtigungs-Payload

```
document.addEventListener('push-receive',
	function(event) {
		var userData = event.notification.userdata;

		if (typeof(userData) != "undefined") {
			// handle custom notification data
			console.warn('user data: ' + JSON.stringify(userData));
		}
	}
);
```

## Vordergrundbenachrichtigungen

Standardmäßig zeigt das Pushwoosh-Plugin keine Benachrichtigungen im Vordergrund an und löst automatisch das `push-receive`-Ereignis aus. Informationen zur Steuerung dieses Verhaltens finden Sie im [Leitfaden zur Plugin-Anpassung](/de/developer/pushwoosh-sdk/cross-platform-frameworks/cordova/customizing-cordova-plugin/).

### push-notification

_\[android, ios, wp8, windows]_\
Ereignis zur Annahme von Push-Benachrichtigungen. Es wird ausgelöst, wenn der Benutzer auf die Push-Benachrichtigung tippt.

```
document.addEventListener('push-notification',
	function(event) {
		var message = event.notification.message;
		var userData = event.notification.userdata;

		if (typeof(userData) != "undefined") {
			console.warn('user data: ' + JSON.stringify(userData));
		}
	}
);
```

**Ereigniseigenschaften**

Gleich wie bei [push-receive](#push-receive)

### additionalAuthorizationOptions

_\[nur ios]_\
Bietet _z_usätzliche [Autorisierungsoptionen für Benachrichtigungen](https://developer.apple.com/documentation/usernotifications/unauthorizationoptions?language=objc). Sollte vor dem Aufruf von **registerDevice** aufgerufen werden.

```
pushwoosh.additionalAuthorizationOptions({ 
	"UNAuthorizationOptionCriticalAlert" : 1,
	"UNAuthorizationOptionProvisional": 0 // set 0 or don't specify the option if you don't want to add it to your app. 
});
```