![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/app/bundles/NotificationBundle/Api/ |
<?php namespace Mautic\NotificationBundle\Api; use GuzzleHttp\Client; use Mautic\NotificationBundle\Entity\Notification; use Mautic\PageBundle\Model\TrackableModel; use Mautic\PluginBundle\Helper\IntegrationHelper; use Psr\Http\Message\ResponseInterface; abstract class AbstractNotificationApi { public function __construct( protected Client $http, protected TrackableModel $trackableModel, protected IntegrationHelper $integrationHelper ) { } /** * @param string $endpoint One of "apps", "players", or "notifications" * @param array $data Array of data to send */ abstract public function send(string $endpoint, array $data): ResponseInterface; /** * @return ResponseInterface */ abstract public function sendNotification($id, Notification $notification); /** * Convert a non-tracked url to a tracked url. * * @param string $url * * @return string */ public function convertToTrackedUrl($url, array $clickthrough, Notification $notification) { /* @var \Mautic\PageBundle\Entity\Redirect $redirect */ $trackable = $this->trackableModel->getTrackableByUrl($url, 'notification', $clickthrough['notification']); return $this->trackableModel->generateTrackableUrl($trackable, $clickthrough, [], $notification->getUtmTags()); } }