Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Diese Funktion bietet die Möglichkeit einen Newsletter im System anzulegen und zu versenden. Im Gegensatz zu der Methode Newsletter-Versand (I) müssen die Empfänger hier aber nicht jedes mal angegeben werden. Stattdessen bietet diese Funktion die Möglichkeit Newsletter an bestehende Verteilerlisten oder Profilfilter zu senden. 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.8.0

Um einen Newsletter anzulegen oder versenden zu versenden wollen, müssen folgende Angaben gemacht werden:

  • Betreff des Newsletters
  • API-Key (optionale Authentifizierung, wenn nicht angegeben, dann wird die Authentifizierung über die IP-Adressen vorgenommen)
  • ID des Mandanten
  • Empfänger des Newsletters (entweder wird eine Verteilerliste oder eine Liste von Profilfiltern angegebenhier muss mindestens eines von beiden angegeben werden, es können aber auch beide Felder angegeben werden. Wenn nur Profilfilter angegeben wurden, wird der Zielgruppennewsletter verwendet.)
    • ID der Verteilerliste
    • Liste mit ID's von Profilfiltern
  • Inhalt des Newsletters, dabei können Sie wahlweise den Inhalt direkt angeben, oder eine ID einer bestehenden Newslettervorlage
    • HTML- oder Textinhalt des Newsletters
    • Alternativtext des Newsletters (falls der Inhalt HTML ist)
    • ID der Newslettervorlage
  • Ersetzung für die Variable $$SPECIAL-REPLACEMENT-TEXT$$ (Standard: "adhockInformation" => "") optionale Angabe
  • Die Versandzeit (im "xs:dateTime"-Format, z.B. 2017-10-23T20:29:00, Standard: "sendTime" => 0) optionale Angabe
  • Angezeigter Absendername (Standard: "senderName" => "") optionale Angabe
  • Absender E-Mail Adresse (Standard: "senderEmail" => "") optionale Angabe

...

  • 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.
  • Validation error => Es liegt ein Fehler im Request vor, dieser genügt nicht den Anforderungen. Details sind in der Fehlermeldung zu finden.
  • 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.
  • Invalid templateId! => Die angegebene Template-ID existiert nicht.
  • Autoimport is running. Please try again later. => Es läuft gerade ein automatischer Import, welcher den Newsletter beeinflussen würde. Funktion bitte später erneut aufrufen.
  • Filter with ID #id  is non existent. => Der angegebene Filter existiert nicht.
  • No Recipients are given! => Es wurde weder eine Newsletter-List-ID noch ein Profilfilter angegeben. Dadurch gibt es keine Empfänger an die der Newsletter versendet werden könnte.

Beispiel

Code Block
languagephp
themeEclipse
languagefirstlinephp2
titleErstellen und Versenden eines Newslettersfirstline2
linenumberstrue
$client = new SoapClient($wsdlUrl);
$createMailingRequest = new StdClass();
$createMailingRequest->mandatorId = 0;
$createMailingRequest->newsletterContent = utf8_encode("<html><body>HTML-Inhalt des Newsletters</body></html>");
$createMailingRequest->alternativeContent = utf8_encode("Text-Inhalt des Newsletters");
$createMailingRequest->subject = utf8_encode("Betreff des Newsletters");
$createMailingRequest->senderName = "Absendername";
$createMailingRequest->senderEmail = "user@example.com";
$createMailingRequest->recipients = new StdClass();
$createMailingRequest->recipients->newsletterListId = 1;
date_default_timezone_set('Europe/Berlin');
$createMailingRequest->sendTime = time();
try {
  $result = $client->createMailing($createMailingRequest);
  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";
  }
}


Code Block
languagephp
themeEclipse
languagefirstlinephp2
titleBeispielausgabefirstline2
linenumberstrue
object(stdClass)#4 (2) {
  ["success"]=>
  bool(true)
  ["newsletterId"]=>
  int(10153)
}

...