2declare(strict_types=1);
4namespace Bitrix\Landing\Copilot\Generation;
6use Bitrix\Landing\Copilot\Generation;
16 private ?
int $siteId =
null;
17 private ?
int $landingId =
null;
19 private string $name =
'';
20 private ?
array $params =
null;
21 private ?
string $error =
null;
28 $this->generation = $generation;
38 $this->siteId = $siteId;
50 $this->landingId = $landingId;
61 public function send(
string $eventName, ?
array $params =
null): void
63 $this->name = $eventName;
64 $this->params = $params;
67 $this->sendBackendEvent();
68 $this->sendFrontendEvent();
77 public function sendError(
string $eventName,
string $error): void
79 $this->name = $eventName;
81 $this->error = $error;
83 $this->sendBackendEvent();
84 $this->sendFrontendEvent();
87 private function sendBackendEvent(): void
89 $event = new \Bitrix\Main\Event(
92 $this->getEventParams(),
97 private function sendFrontendEvent(): void
99 if (Loader::includeModule(
'pull'))
101 $command =
'LandingCopilotGeneration:' .
$this->name;
103 $this->generation->getAuthorId(),
105 'module_id' =>
'landing',
106 'command' => $command,
107 'params' => $this->getEventParams(),
115 private function getEventParams():
array
118 'generationId' => $this->generation->getId(),
126 if ($this->landingId)
128 $params[
'landingId'] = $this->landingId;
setLandingId(?int $landingId)
sendError(string $eventName, string $error)
send(string $eventName, ?array $params=null)
__construct(Generation $generation)
static add($recipient, array $parameters, $channelType=\CPullChannel::TYPE_PRIVATE)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
if($inWords) echo htmlspecialcharsbx(Number2Word_Rus(roundEx($totalVatSum $params['CURRENCY']