﻿<?php
	/**
	 * Dies ist eine Beispielimplementierung um Abonnenten in Backclick über die SOAP-Schnittstelle 
	 * via PHP zu löschen. Als Eingabe wird ein Objekt erwartet was alle zu löschenden/abzumeldenden 
	 * E-Mail-Adressen enthält und die Angabe der Verteilerlisten, von der die Abonnenten abgemeldet 
	 * werden sollen. Es ist dabei nur möglich für alle angegebenen Emailadressen die selben 
	 * Verteilerlisten anzugeben. Hat ein Abonnent keine Verteilerlistenzuordnung mehr, dann wird 
	 * dieser komplett aus dem System entfernt. Zusätzlich zu den E-Mail-Adressen und den Verteilerlisten 
	 * muss die Mandanten-ID angegeben werden, unter welchem die Aktion ausgeführt werden soll.
	 *
	 * STAND: Backclick-Version: 5.9.0
	 */
	 
  // SoapClient erzeugen
  $wsdlUrl = ""; //Die URL Ihrer Schnittstelle
  $client = new SoapClient($wsdlUrl);
  
  // Timezone setzen (für Aufrufe diverser Funktionen nötig)  
  date_default_timezone_set('Europe/Berlin');
  
	//Request-Objekt erzeugen
	$request = new StdClass();
	
	//Mandanten-ID setzen
	$request->mandatorId = 0;
	
  //Wenn ein API-Key, anstatt einer IP-basierten Freigabe verwendet wird:
  //$request->apiKey = "";
	
	//Setzen des Double-Opt-Out Templates. Wenn keins verwendet werden soll, dann eine "0" eintragen.
	//$request->doubleOptOutTemplateId = 0;
	
	//E-Mail-Adressen hinzufügen
	$request->subscriberEmails = array();
	array_push($request->subscriberEmails, "user@example.com");
	
	//Verteilerlisten angeben, von denen die Adressen abgemeldet werden sollen
	$request->newsletterListIdsToDelete = array();
	array_push($request->newsletterListIdsToDelete, 1);
	
	//Ausführen der Abfrage
	try {
		var_dump($client->deleteSubscriber($request));
	} catch (Exception $e) {
		//Hier ist ein Fehler aufgetraten und abgefangen worden, wir geben die Fehlermeldung aus.
		echo "Fehler aufgetreten: " . $e->getMessage() . "\r\n";
	}

?>