Webinary automatyczne od devstyle

Nagranie raz. Webinar o stałej porze. Bez udawania live.

WebiStyle to platforma webinarów automatycznych, którą budujemy w devstyle. Zapis z naszych landingów, terminy, przypomnienia e-mail i pokój, w którym nagranie leci jak sesja: wszyscy z danego terminu oglądają tę samą chwilę. Do tego ten sam pokój wokół naszych transmisji na YouTube.

  • Webinary z nagrania
  • Live na YouTube
  • Terminy, JIT, „oglądaj teraz”
  • Powtórki
  • Polski i angielski
  • Gotowy na agentów AI
  • 15 mintyle można się spóźnić; potem zapis na kolejny termin jednym kliknięciem
  • 48 hdomyślna ważność powtórki, ustawiana osobno dla każdego webinaru
  • 4 źródławideo: Mux, YouTube, Vimeo i bezpośredni link HLS albo MP4
  • PL i ENpokój, powtórka i maile w języku ustawionym dla webinaru

Dlaczego własny system

Webinar z nagrania, który nie udaje, że jest na żywo

Autowebinary prowadzimy dziś w zewnętrznym narzędziu, a większość webinarów to transmisje na YouTube. Chcemy jednego miejsca na zapisy, przypomnienia, pokój i statystyki, połączonego z naszymi landingami i MailStyle. I uczciwego wobec ludzi, którzy przychodzą.

Jawnie z nagrania

Uczestnik wie, że ogląda nagranie. Licznik osób jest prawdziwy albo nie ma go wcale, a odliczanie oferty kończy się wtedy, kiedy naprawdę kończy się oferta.

Nagranie zostaje u Ciebie

WebiStyle nie przechowuje wideo. Przy webinarze podajesz źródło: nagranie w Mux, film na YouTube albo Vimeo, link do pliku HLS lub MP4.

API na pierwszym miejscu

Panel jest tylko jednym z klientów API. Agent AI z kluczem założy webinar, ustawi terminy i przypomnienia tak samo jak człowiek w panelu.

Funkcje

Od formularza na landingu do powtórki

Formularz zapisu zostaje na naszych stronach. Resztę robi WebiStyle: terminy, potwierdzenie e-maila, przypomnienia, strona sesji, pokój i powtórka.

Zapis i terminy

Terminy, jakie lubisz: stałe, co kwadrans albo od razu

Zwykły formularz HTML na landingu wysyła dane do API WebiStyle, tak jak dziś zapisy do MailStyle. Lista terminów pod formularzem przychodzi z tego samego API.

  • Stałe godziny (co 15 minut) w wybrane dni tygodnia
  • Just-in-time: najbliższy termin co 15, 30 albo 60 minut
  • „Oglądaj teraz”: osobna sesja od chwili zapisu
  • Termin jednorazowy, daty wyłączone, okno aktywności od-do
  • Limit widocznych terminów i ukrywanie tych, które są za blisko
  • Strefa czasowa webinaru; uczestnik widzi godzinę w swojej strefie, także przy zmianie czasu
Potwierdzenie i przypomnienia

Mail z kalendarzem, przypomnienia i zmiana terminu

Każdy zapis wymaga potwierdzenia e-maila. Link z maila prowadzi na stronę sesji w barwach webinaru: termin, odliczanie, dodanie do kalendarza. W chwili startu ta sama strona zamienia się w pokój.

  • Potwierdzenie z plikiem kalendarza (.ics), przypomnienia 24 h i 1 h przed, „startujemy” w chwili startu
  • Po sesji link do powtórki, osobno dla obecnych i nieobecnych
  • Przypomnienie, którego czas minął przed zapisem, nie wychodzi
  • „Zmień termin” w każdym przypomnieniu, bez ponownego potwierdzania
  • Potwierdzony adres przez 24 miesiące nie potwierdza się drugi raz u tej samej marki
  • Zapisy chronią niewidoczne limity po stronie serwera, bez captchy
Powtórka

Powtórka z przewijaniem dla wszystkich zapisanych

Po sesji każdy zapisany może obejrzeć nagranie jeszcze raz, tym razem z przewijaniem. Ważność powtórki ustawiasz osobno dla każdego webinaru.

  • Domyślnie 48 h od startu sesji; po tym czasie jasny komunikat „powtórka wygasła”
  • Webinar bez powtórki? Też się da
  • Obejrzane fragmenty z sesji i z powtórki liczą się razem do procentu obejrzenia
  • Data wygaśnięcia widoczna pod odtwarzaczem

Pokój

Nagranie jako sesja: wszyscy w tej samej chwili

Pokój to lekka strona, zrobiona najpierw pod telefon. Wszyscy zapisani na dany termin widzą tę samą sekundę nagrania, jak na prawdziwej sesji.

  • Bez przewijania; po pauzie odtwarzacz wraca do bieżącej sekundy sesji
  • Wejście do 15 minut od startu; później „sesja już trwa” i zapis na najbliższy termin jednym kliknięciem
  • Przycisk „Dołącz” włącza obraz i dźwięk także na telefonach
  • Ciemny pokój z logo i kolorem akcentu ustawianym dla webinaru
  • Obecność: wszedł w trakcie sesji i nagranie grało co najmniej 60 sekund; do tego procent obejrzenia
  • Pokój, powtórka i maile po polsku albo po angielsku

Źródła wideo

Nagranie z Mux, YouTube, Vimeo albo z linku

Każde źródło gra w naszym odtwarzaczu, z tą samą synchronizacją sesji, blokadą przewijania i pomiarem oglądania.

Mux z podpisanym odtwarzaniem

Odtwarzacz dostaje krótkie tokeny tylko na czas sesji albo powtórki. Klucz podpisywania marki leży zaszyfrowany w bazie i nigdy nie trafia do przeglądarki.

YouTube i Vimeo

YouTube osadzony z youtube-nocookie.com, Vimeo z wyłączonym śledzeniem. Na Vimeo bez płatnego konta kontrolki zostają, więc przewinięcie cofamy sami.

Link HLS albo MP4

Własny hosting? Wystarczy publiczny adres https pliku .m3u8 albo .mp4.

Długość sama się wpisze

Dla Mux, Vimeo i HLS długość nagrania przychodzi od dostawcy. Przy YouTube i MP4 podaje ją panel albo agent.

Live na YouTube w naszym pokoju

Transmisja na żywo z YouTube osadzona w pokoju WebiStyle, z tym samym zapisem, przypomnieniami i obecnością co webinary z nagrania.

Blokada to wygoda

Mówimy wprost: brak przewijania pilnuje rytmu sesji, a nie zabezpiecza nagrania. Na YouTube i Vimeo da się ją obejść narzędziami przeglądarki.

Kolejne etapy

Czat, oferty i statystyki

Te funkcje mają już ustalone zasady i czekają w kolejce. Budujemy je po pokoju i odtwarzaczu.

W kolejnym etapie

Czat sesji z moderacją

Wspólny czat terminu. Wiadomości widać od razu, te z linkami czekają na akceptację, jedna wiadomość na 5 sekund. Zespół odpowiada na żywo, usuwa i blokuje.

W kolejnym etapie

Pytania z poprzednich edycji

Wiadomości przypięte do sekund nagrania, zawsze z etykietą: „pytanie z poprzedniej edycji” z podpisem typu Anna K. albo „częste pytanie” z podpisem zespołu. Bez zmyślonych imion.

W kolejnym etapie

Oferty i ankiety w rytm nagrania

Oferta pokazuje się w ustalonej sekundzie, przycisk prowadzi do koszyka przez nasz link (liczy kliknięcie, dodaje UTM, bez danych osobowych w adresie).

W kolejnym etapie

Sterowanie live na YouTube

„Pokaż ofertę teraz” i „uruchom ankietę” z panelu albo przez API. Po transmisji te momenty zapisują się do powtórki.

W kolejnym etapie

Zadaj pytanie

W „oglądaj teraz” i w powtórce zamiast czatu: pytanie trafia mailem do skrzynki obsługi marki, odpowiedź wraca zwykłą pocztą.

W kolejnym etapie

Statystyki i MailStyle

Zapisał się, był, obejrzał połowę, kliknął ofertę, nie był, obejrzał powtórkę, kupił. Te zdarzenia trafiają do MailStyle, który na ich podstawie wysyła follow-up.

Agenci AI

Wszystko przez API, także dla agentów AI

Agent AI (na przykład Claude Code) dostaje klucz i adres opisu OpenAPI. Założy webinar, ustawi źródło wideo, terminy i przypomnienia, sprawdzi najbliższe sesje i opublikuje webinar tak samo jak człowiek w panelu.

  • REST API z publicznym opisem OpenAPI; panel korzysta z tego samego API
  • Klucze z zakresami i datą ważności: webinary, zapisy, dane osobowe, moderacja czatu, sterowanie live, klucze
  • Limity zapytań i dziennik zmian: wiadomo, co zrobił człowiek, a co który agent
  • Jeden format błędu z podpowiedzią, co poprawić
  • API czatu (czytanie, odpowiadanie, moderacja) razem z czatem, żeby można było podpiąć agenta
  • Serwer MCP później
# agent AI zakłada webinar
POST /api/v1/webinars
Authorization: Bearer ...
{
  "title": "Pierwsza aplikacja w chmurze",
  "slug": "pierwsza-aplikacja",
  "kind": "recorded",
  "locale": "pl",
  "video": { "provider": "mux", "ref": "..." },
  "schedule": {
    "timeZone": "Europe/Warsaw",
    "fixed": { "times": ["12:00", "19:00"],
               "weekdays": [2, 4, 6] },
    "watchNow": true,
    "visibleLimit": 3
  }
}

# potem publikacja
POST /api/v1/webinars/{id}/publish

Zasady

Uczciwie wobec uczestników

Webinar z nagrania może działać bez sztuczek. Te reguły są wpisane w system, a nie w dobre chęci.

  • Jawnie z nagrania

    Nie udajemy transmisji na żywo. Uczestnik wie, że ogląda nagranie o ustalonej porze.

  • Licznik prawdziwy albo żaden

    Liczba oglądających to prawdziwi ludzie w pokoju. Licznik można wyłączyć albo pokazywać dopiero od ustalonej liczby osób.

  • Bez czatu udającego obecnych

    Żadnych wiadomości od zmyślonych osób. Pytania z poprzednich edycji mają etykietę i podpis.

  • Odliczanie do prawdziwego końca

    Zegar przy ofercie odlicza do chwili, w której oferta naprawdę się kończy.

  • Najpierw potwierdzony e-mail

    Bez kliknięcia w link potwierdzający nie wysyłamy przypomnień ani follow-upu i nie przekazujemy adresu do MailStyle.

  • Spóźniony nie zostaje z niczym

    Po 15 minutach wejście się zamyka, ale ta sama strona proponuje najbliższy termin, a po sesji przychodzi link do powtórki.

Prywatność i bezpieczeństwo

Bierzemy tylko to, bez czego webinar nie działa

Imię, e-mail, zgody i to, co ktoś obejrzał. Reszta zostaje poza systemem.

AWS we Frankfurcie

Docelowo osobne konto AWS w regionie Frankfurt (eu-central-1). Baza w Supabase, w osobnej schemie z własną rolą, bez dostępu do innych danych.

Zgody z treścią i datą

Każda zgoda zapisuje się z dokładnym tekstem, który widział uczestnik, wersją i czasem. Zgoda na newsletter liczy się dopiero po potwierdzeniu e-maila.

Podpisane linki

Link do pokoju jest podpisany i nie zawiera danych osobowych. Strona sesji nie trafia do wyszukiwarek i nie przekazuje adresu dalej.

Logi bez danych osobowych

W logach i dzienniku zdarzeń są identyfikatory, bez imion i adresów e-mail. Odpowiedź formularza jest taka sama dla nowego i znanego adresu.

Marki oddzielone w bazie

devstyle i slowbiz to osobne marki z oddzielonymi danymi. Izolację wymusza Postgres (row-level security), a testy sprawdzają, że nic nie przechodzi między markami.

Statystyki bez ciasteczek

W planie: Plausible bez ciasteczek zawsze, Pixel Meta tylko po zgodzie w CookieStyle. Celem jest grupa odbiorców „widzowie webinaru”.

Panel

Panel po polsku, jasny jak MailStyle

Panel jest klientem tego samego API co agenci. Dziś obsługuje webinary, źródło wideo i harmonogram. Kolejne etapy dokładają maile, oferty, ankiety, statystyki, osoby, klucze API, panel sterowania na żywo, role admina i moderatora oraz logowanie kontem Google firmy.

  • Lista webinarów ze statusem, językiem i adresem
  • Formularz webinaru: podstawy, źródło wideo, harmonogram
  • Podgląd najbliższych terminów w strefie webinaru
  • Szkic, publikacja, archiwum

Gdzie jesteśmy

W budowie. Na razie lokalnie.

WebiStyle nie jest jeszcze dostępny. Budujemy go etapami, każdy sprawdzony testami, na razie na naszych komputerach. Po wdrożeniu na AWS pierwszym webinarem w WebiStyle będzie jeden z naszych autowebinarów.

  1. Fundamentterminy, zapis z potwierdzeniem, przypomnienia, API, panelgotowe lokalnie
  2. Pokój i odtwarzaczstrona sesji, pokój, powtórka, obecność, źródła wideogotowe lokalnie
  3. Czat, oferty, statystykii logowanie Google do panelunastępne
  4. Wdrożenie i pilotAWS, wysyłka maili, pierwszy webinarpotem

Mniej znaczy pewniej

Czego celowo nie budujemy

Strony zapisu robimy sami i dobrze, wideo trzymamy w Mux, a na żywo nadajemy na YouTube. WebiStyle nie musi tego powtarzać. Ma zrobić dobrze zapis, terminy i pokój.

  • Live z kamery w przeglądarce
  • Hosting nagrań
  • Kreator stron zapisu
  • Czat udający obecnych
  • Fałszywy licznik widzów
  • Dowolny kod osadzenia wideo