---
title: "Zaznamenávanie udalostí — Plausible for Laravel | Roundly"
description: "Posielajte zobrazenia stránok a vlastné udalosti zo servera — synchrónne, cez frontu alebo v dávke — s návštevníkom pre Plausible."
url: https://roundly-consulting.com/sk/open-source/navody/plausible-for-laravel/udalosti
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Plausible for Laravel](https://roundly-consulting.com/sk/open-source/navody/plausible-for-laravel.md)

# Zaznamenávanie udalostí

Konverzie sledujte na strane servera — aj tam, kam JavaScript na frontende nedosiahne: API volania, webhooky, úlohy vo fronte. Plausible potrebuje user-agent a IP návštevníka na počítanie unikátnych návštevníkov, preto ich pred zaznamenaním zadajte cez fromRequest() alebo setVisitor():

```php
use RoundlyConsulting\Plausible\DataTransferObjects\Revenue;
use RoundlyConsulting\Plausible\Facades\Plausible;
use RoundlyConsulting\Plausible\Requests\Events\CaptureEventRequest;

// Lift the visitor from the current request, send a pageview in one call
Plausible::events()->fromRequest(request())->pageview('https://my-site.com/blog/x');

// A custom event (goal) in one call — the site defaults to plausible.site
Plausible::events()->fromRequest(request())->event(
    'Signup',
    url: 'https://my-site.com/register',
    props: ['plan' => 'pro'],
    revenue: Revenue::of('49.00', 'EUR'),   // optional
    site: null,                              // optional override
);

// A custom event, fired on the queue so it never blocks the response
Plausible::events()
    ->fromRequest(request())
    ->captureQueued(CaptureEventRequest::make(
        site: 'my-site.com',
        url: 'https://my-site.com/signup',
        name: 'Signup',
        props: ['plan' => 'pro'],
    ));

// The explicit, synchronous form still works
$response = Plausible::events()
    ->setVisitor(userAgent: request()->userAgent(), ipAddress: request()->ip())
    ->capture(CaptureEventRequest::make(
        site: 'my-site.com',
        url: 'https://my-site.com/blog/some-post',
        referrer: 'https://affiliate-site.com',
        props: ['author' => 'jane'],
    ));
```

fromRequest() prevezme user-agent a IP z requestu; setVisitor() ich berie explicitne — napríklad tie, ktoré ste si uložili pri pôvodnej návšteve:

```php
// In a webhook handler or a job there is no browser request in scope —
// pass the identifiers you stored with the original visit
Plausible::events()
    ->setVisitor($order->user_agent, $order->ip_address)
    ->capture(CaptureEventRequest::make(
        site: 'my-site.com',
        url: 'https://my-site.com/checkout/complete',
        name: 'Payment Settled',
    ));
```

Návštevník sa posiela v hlavičkách User-Agent a X-Forwarded-For. Zaznamenanie bez neho vyhodí RoundlyConsulting\\Plausible\\Exceptions\\UniqueVisitorIdentifierRequired. API kľúč netreba: Events API je bez autentifikácie a balík tam váš kľúč nikdy nepošle — stačí PLAUSIBLE\_URL.

## CaptureEventRequest

| Parameter | Predvolené | Účel |
| --- | --- | --- |
| `site` | — | Web (doména), ku ktorému udalosť patrí. Povinné. |
| `url` | — | URL stránky, na ktorej udalosť nastala. Povinné. |
| `name` | pageview | Názov udalosti — pageview alebo ľubovoľný názov vlastného cieľa. |
| `referrer` | null | URL odkazujúcej stránky, posiela sa len ak je nastavená. |
| `props` | \[\] | Vlastné vlastnosti udalosti, posielajú sa len ak nie sú prázdne. |
| `revenue` | null | DTO Revenue — pozri Tržby. |
| `interactive` | true | Hodnota false odošle udalosť ako neinteraktívnu. |

## Zobrazenia stránok a fronta

- pageview($url, $site = null) — zaznamená zobrazenie stránky a použije nakonfigurovaný predvolený web; ak chýba oboje, vyhodí MissingConfiguration.
- event($name, url:, props:, revenue:, site:, referrer:, interactive:) — obdoba pageview() pre vlastné udalosti: rovnako použije predvolený web a vráti Response.
- capture($request) — odošle synchrónne a vráti Response.
- captureQueued($request) — odošle do fronty RoundlyConsulting\\Plausible\\Jobs\\CaptureEventJob s návštevníkom uloženým ako obyčajné reťazce, takže úloha zostane serializovateľná a odpoveď sa nikdy nezdrží.

## Hromadné zaznamenanie

Pri hromadných alebo historických importoch pošlite veľa udalostí naraz — synchrónne alebo ako jednu dávku úloh vo fronte:

```php
$events = [
    CaptureEventRequest::make(site: 'my-site.com', url: 'https://my-site.com/a', name: 'import'),
    CaptureEventRequest::make(site: 'my-site.com', url: 'https://my-site.com/b', name: 'import'),
];

Plausible::events()->fromRequest(request())->captureMany($events);        // list<Response>
$batch = Plausible::events()->fromRequest(request())->captureManyQueued($events); // Illuminate\Bus\Batch
```

captureMany() odošle udalosti postupne a vráti odpovede v rovnakom poradí. captureManyQueued() odošle jednu CaptureEventJob na udalosť ako Laravel job batch s názvom plausible:capture, takže aplikácia potrebuje nastavené dávkovanie úloh (tabuľku job\_batches). Úlohy podporujú dávky: úloha v zrušenej dávke nič neodošle.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/plausible-for-laravel.md)
