Page tree
Skip to end of metadata
Go to start of metadata

Beschreibung

Diese Funktion bietet die Möglichkeit einen Newsletter zu versenden. Im Gegensatz zu der Funktion Newsletter-Versand (II) müssen die Empfänger hier angegeben werden. Die Funktion gibt als Ergebnis ein Objekt zurück, welches die ID des angelegten Newsletters enthält. So haben Sie dann die Möglichkeit über die Funktionen NewsletterStatistic und BackclickStatistic die Statistiken zu dem Newsletter abzurufen.

Verfügbar ab Backclick-Version: 5.7.5

Wenn Sie einen Newsletter anlegen/versenden wollen, dann müssen Sie folgende Angaben machen:

  • Empfänger des Newsletters, diese werden als Array angegeben und müssen die hier stehenden Angaben haben
    • E-Mail Adresse des Abonnenten
    • Verteilerlisten, welche der Abonnent abonnieren soll
    • ID des Mandanten
    • ID des Double-Opt-In Templates für das Abonnieren von neuen Verteilerlisten (Standard: "doubleOptinTemplateId" => 0 (kein Template)); optionale Angabe
    • ID des Profiländern Templates für das Verändern von Abonnentendatensätzen (Standard: "changeProfileTemplateId" => 0 (kein Template)); optionale Angabe
    • Abonnentendaten:
      • Name des Felds (Pflichtfeld, wenn die Daten eines Abonnenten angegeben werden)
      • Wert des Felds (Pflichtfeld, wenn die Daten eines Abonnenten angegeben werden)
  • Ersetzung für die Variable $$SPECIAL-REPLACEMENT-TEXT$$ (Standard: "adhockInformation" => "") optionale Angabe
  • Betreff des Newsletters
  • Inhalt des Newsletters, dabei können Sie wahlweise den Inhalt direkt angeben, oder eine ID einer bestehenden Newslettervorlage verwenden
    • HTML- oder Textinhalt des Newsletters
    • Alternativtext des Newsletters (falls der Inhalt HTML ist)
    • ID der Newslettervorlage
  • ID des Mandanten
  • Versandzeit des Newsletters (im "xs:dateTime"-Format, z.B. 2017-10-23T20:29:00)
  • Angezeigter Absendername (Standard: "senderName" => "") optionale Angabe
  • Absender E-Mail Adresse (Standard: "senderEmail" => "") optionale Angabe
  • API-Key (optionale Authentifizierung, wenn nicht angegeben, dann wird die Authentifizierung über die IP-Adressen vorgenommen)

Als Ergebnis bekommen Sie den Status des Aufrufs. Er enthält die Information, ob der Aufruf erfolgreich war oder nicht. Falls der Aufruf erfolgreich war, enthält das Ergebnis zusätzlich die ID des angelegten Newsletters.

Folgende Fehlermeldungen können bei fehlerhaften Requests auftreten:

  • No templateId AND no newsletterContent given! => Es wurde weder eine Template-ID noch der Inhalt zu dem Newsletter angegeben.
  • No subject given. => Der Betreff wurde nicht angegeben.
  • Validation error => Es liegt ein Fehler im Request vor, dieser genügt nicht den Anforderungen. Details sind in der Fehlermeldung zu finden.
  • Invalid domain of sender address ("example.com"). If you want to send email for this domain, please contact your admin. => Die angegebene Absenderdomain darf unter dem Mandanten nicht verwendet werden.
  • Invalid templateId! => Die angegebene Template-ID existiert nicht.

Beispiel

Beispiel für den Versand eines Newsletters
$client = new SoapClient($wsdlUrl);
$sendNewsletterRequest = new StdClass();
$sendNewsletterRequest->mandatorId = 0;
$sendNewsletterRequest->newsletterContent = utf8_encode("<html><body>HTML-Inhalt des Newsletters</body></html>");
$sendNewsletterRequest->alternativeContent = utf8_encode("Text-Inhalt des Newsletters");
$sendNewsletterRequest->subject = utf8_encode("Betreff des Newsletters");
$sendNewsletterRequest->senderName = "Absendername";
$sendNewsletterRequest->senderEmail = "user@example.com";
$sendNewsletterRequest->subscribers = array();
date_default_timezone_set('Europe/Berlin');
$sendNewsletterRequest->sendTime = time();
$subscriber = new StdClass();
$subscriber->mandatorId = 0;
$subscriber->subscriberEmail = "user@example.com";
$subscriber->newsletterListIds = array(1);
$subscriber->subscriberFields = array();
$subscriberField = new StdClass();
$subscriberField->fieldName = utf8_encode ("VORNAME");
$subscriberField->fieldValue = utf8_encode ("Vorname");
array_push($subscriber->subscriberFields, $subscriberField);
$subscriberField = new StdClass();
$subscriberField->fieldName = utf8_encode ("NACHNAME");
$subscriberField->fieldValue = utf8_encode ("User");
array_push($subscriber->subscriberFields, $subscriberField);
array_push($sendNewsletterRequest->subscribers, $subscriber);
try {
  $result = $client->sendNewsletter($sendNewsletterRequest);
  var_dump($result);
} catch (Exception $e) {
  echo "\n" . $e->getMessage() . "\n";
  if (is_array($e->detail->ValidationError)) {
    foreach ($e->detail->ValidationError as $ve) {
      echo $ve . "\n";
    }
  } else {
    echo $e->detail->ValidationError . "\n";
  }
}
Beispielausgabe
object(stdClass)#6 (2) {
  ["success"]=>
  bool(true)
  ["newsletterId"]=>
  int(10254)
}

Quellcode

Um ein funktionsfähiges Beispiel testen können, steht hier der Quellcode zum Download zur Verfügung.

Beispiel für den Versand eines Newsletters