Добавление подписчика в адресную книгу dotmailer
У меня проблемы с добавлением подписчика в определенную адресную книгу в dotmailer с помощью nusoap. У меня нет проблем с добавлением общего подписчика ко всем контактам с помощью метода CreateContact, однако, когда я пытаюсь использовать метод AddContactToAddressbook, я просто не работаю. Оператор if, используемый в нижней части, возвращает успешное выполнение, однако в $result
переменная.
<?php
function subscribe($email, &$result)
{
global $postURL, $username, $password;
$addressBookId = "######";
$contact = array("Email" => $email, "EmailType" => "Html");
$params = array("username" => $username, "password" => $password, "contact" => $contact, "addressbookId" => $addressBookId);
$client = new soapclient($postURL, true);
$error = $client->getError();
$result = $client->call('AddContactToAddressbook', $params);
if($client->fault) {
$rv = false;
} else {
// Check for errors
if($error) {
$rv = false;
} else {
$rv = true;
}
}
return $rv;
}
if(subscribe("test@test.com", $result)) {
echo "success<br />";
print_r($result);
} else {
echo "failed<br />";
}
?>
Этот код работает как есть только с изменением
$result = $client->call('AddContactToAddressbook', $params);
в
$result = $client->call('CreateContact', $params);
Но тогда подписчика нет в каком-то конкретном списке. Кто-нибудь знает, что я могу делать неправильно?
пс $addressBookId
переменная была отключена преднамеренно, я не пытался запустить ее с '######' в качестве значения, если вам интересно. И однажды в производстве $result
переменная не будет возвращена с функцией.
Спасибо
1 ответ
Использование
$result = $client->call('AddContactToAddressBook', $params);
капитал B
на книгу