API knihovna pro práci se systémem CentralNews.
Připojení k CentralNews probíhá dle této dokumentace: http://centralnews.itstudio.cz/bundles/centralnewssubscriber/doc/ws.pdf
Composer: composer require itstudiocz/centralnews-api-php
$params = array(
CentralNews\Service\Client::URL => 'http://localhost',
CentralNews\Service\Client::TOKEN => 'xxxxxxxxxxxxxxx',
CentralNews\Service\Client::USER => 'user',
CentralNews\Service\Client::PASSWORD => 'password',
);
$client = new CentralNews\Service\Client($params);
// proměnné použité dále v příkladech
$groupId = 1; // je číselný identifikátor skupiny (1,2, ..)
$email = "info@itstudio.cz"; // je platná emailová adresa
$newGroup = new CentralNews\Entity\SubscriberGroup();
$newGroup->setName('New Group');
$newGroup->setDescription('description');
$subscriberManager = $client->getSubscriberManager();
$subscriberManager->addGroup($newGroup);
$subscriberManager = $client->getSubscriberManager();
$groups = $subscriberManager->getGroups();
- počet všech
$subscriberManager = $client->getSubscriberManager();
$count = $subscriberManager->getSubscribersCount();
- počet ve skupině
$subscriberManager = $client->getSubscriberManager();
$group = new \CentralNews\Entity\Group($groupId);
$count = $subscriberManager->getSubscribersCount($group);
$group = new \CentralNews\Entity\Group($groupId);
$subscriberManager = $client->getSubscriberManager();
$subscriber = $subscriberManager->getSubscriber($email, $group);
- všechny
$subscriberManager = $client->getSubscriberManager();
$data = $subscriberManager->getSubscriberFields();
- ve skupině
$subscriberManager = $client->getSubscriberManager();
$group = new \CentralNews\Entity\Group($groupId);
$data = $subscriberManager->getSubscriberFields($group);
$group = new \CentralNews\Entity\Group($groupId);
$subscriberManager = $client->getSubscriberManager();
$subscriberManager->deleteSubscriber($email, $group);
- když existují, aktualizují se jejich údaje
$subscribers[] = new CentralNews\Entity\Subscriber($email);
$group = new CentralNews\Entity\Group($groupId);
$subscriberManager = $client->getSubscriberManager();
$subscriberManager->saveSubscribers($subscribers, $group);
- když odběratel existuje, přeskočí se (neaktualizuje se)
$subscribers[] = new CentralNews\Entity\Subscriber($email);
$group = new CentralNews\Entity\Group($groupId);
$subscriberManager = $client->getSubscriberManager();
$subscriberManager->importSubscribers($subscribers, $group);
$eventManager = $client->getEventManager();
$lostCart = new \CentralNews\Entity\LostCart();
$lostCart->setEmail($email);
$product = new CentralNews\Entity\Product();
$product->setName('product name');
$product->setPrice(100);
$lostCart->addProduct($product);
$eventManager->callLostCart($lostCart);
$manager = $client->getManager();
$request = new CentralNews\Service\Request($operation, $params);
$response = $manager->sendRequest($request);