Skip to content

Commit 3d15e3e

Browse files
committed
ADO-313: Adds Capi event to the message queue
1 parent 4290a02 commit 3d15e3e

File tree

1 file changed

+13
-15
lines changed

1 file changed

+13
-15
lines changed

app/code/Meta/Conversion/Model/CapiTracker.php

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,35 +3,33 @@
33

44
namespace Meta\Conversion\Model;
55

6-
use Meta\BusinessExtension\Helper\FBEHelper;
7-
use Meta\Conversion\Helper\ServerEventFactory;
8-
use Meta\Conversion\Helper\ServerSideHelper;
96
use Magento\Customer\Model\Session as CustomerSession;
7+
use Magento\Framework\Serialize\Serializer\Json as JsonSerializer;
8+
use Magento\Framework\MessageQueue\PublisherInterface;
109

1110
class CapiTracker
1211
{
1312

13+
/**
14+
* @param CustomerSession $customerSession
15+
* @param CapiEventIdHandler $capiEventIdHandler
16+
* @param JsonSerializer $jsonSerializer
17+
* @param PublisherInterface $publisher
18+
*/
1419
public function __construct(
15-
private readonly FBEHelper $fbeHelper,
16-
private readonly ServerSideHelper $serverSideHelper,
17-
private readonly ServerEventFactory $serverEventFactory,
1820
private readonly CustomerSession $customerSession,
1921
private readonly CapiEventIdHandler $capiEventIdHandler,
22+
private readonly JsonSerializer $jsonSerializer,
23+
private readonly PublisherInterface $publisher
2024
) { }
2125

2226
public function execute(array $payload, string $eventName, string $eventType, bool $useSessionForEventIds = false): void
2327
{
2428
if (isset($payload)) {
25-
$payload['custom_properties'] = [];
26-
$payload['custom_properties']['source'] = $this->fbeHelper->getSource();
27-
$payload['custom_properties']['pluginVersion'] = $this->fbeHelper->getPluginVersion();
2829
$eventId = $this->generateEventId($eventName, $useSessionForEventIds);
29-
$event = $this->serverEventFactory->createEvent($eventType, array_filter($payload), $eventId);
30-
if (isset($payload['userDataFromOrder'])) {
31-
$this->serverSideHelper->sendEvent($event, $payload['userDataFromOrder']);
32-
} else {
33-
$this->serverSideHelper->sendEvent($event);
34-
}
30+
$payload['event_id'] = $eventId;
31+
$payload['event_type'] = $eventType;
32+
$this->publisher->publish('send.conversion.event.to.meta', $this->jsonSerializer->serialize($payload));
3533
}
3634
}
3735

0 commit comments

Comments
 (0)