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.
Webinary automatyczne od devstyle
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.
Dlaczego własny system
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ą.
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.
WebiStyle nie przechowuje wideo. Przy webinarze podajesz źródło: nagranie w Mux, film na YouTube albo Vimeo, link do pliku HLS lub MP4.
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
Formularz zapisu zostaje na naszych stronach. Resztę robi WebiStyle: terminy, potwierdzenie e-maila, przypomnienia, strona sesji, pokój i powtórka.
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.
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.
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.
Pokój
Pokój to lekka strona, zrobiona najpierw pod telefon. Wszyscy zapisani na dany termin widzą tę samą sekundę nagrania, jak na prawdziwej sesji.
Źródła wideo
Każde źródło gra w naszym odtwarzaczu, z tą samą synchronizacją sesji, blokadą przewijania i pomiarem oglądania.
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 osadzony z youtube-nocookie.com, Vimeo z wyłączonym śledzeniem. Na Vimeo bez płatnego konta kontrolki zostają, więc przewinięcie cofamy sami.
Własny hosting? Wystarczy publiczny adres https pliku .m3u8 albo .mp4.
Dla Mux, Vimeo i HLS długość nagrania przychodzi od dostawcy. Przy YouTube i MP4 podaje ją panel albo agent.
Transmisja na żywo z YouTube osadzona w pokoju WebiStyle, z tym samym zapisem, przypomnieniami i obecnością co webinary z nagrania.
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
Te funkcje mają już ustalone zasady i czekają w kolejce. Budujemy je po pokoju i odtwarzaczu.
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.
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.
Oferta pokazuje się w ustalonej sekundzie, przycisk prowadzi do koszyka przez nasz link (liczy kliknięcie, dodaje UTM, bez danych osobowych w adresie).
„Pokaż ofertę teraz” i „uruchom ankietę” z panelu albo przez API. Po transmisji te momenty zapisują się do powtórki.
W „oglądaj teraz” i w powtórce zamiast czatu: pytanie trafia mailem do skrzynki obsługi marki, odpowiedź wraca zwykłą pocztą.
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
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.
# 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
Webinar z nagrania może działać bez sztuczek. Te reguły są wpisane w system, a nie w dobre chęci.
Nie udajemy transmisji na żywo. Uczestnik wie, że ogląda nagranie o ustalonej porze.
Liczba oglądających to prawdziwi ludzie w pokoju. Licznik można wyłączyć albo pokazywać dopiero od ustalonej liczby osób.
Żadnych wiadomości od zmyślonych osób. Pytania z poprzednich edycji mają etykietę i podpis.
Zegar przy ofercie odlicza do chwili, w której oferta naprawdę się kończy.
Bez kliknięcia w link potwierdzający nie wysyłamy przypomnień ani follow-upu i nie przekazujemy adresu do MailStyle.
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
Imię, e-mail, zgody i to, co ktoś obejrzał. Reszta zostaje poza systemem.
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.
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.
Link do pokoju jest podpisany i nie zawiera danych osobowych. Strona sesji nie trafia do wyszukiwarek i nie przekazuje adresu dalej.
W logach i dzienniku zdarzeń są identyfikatory, bez imion i adresów e-mail. Odpowiedź formularza jest taka sama dla nowego i znanego adresu.
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.
W planie: Plausible bez ciasteczek zawsze, Pixel Meta tylko po zgodzie w CookieStyle. Celem jest grupa odbiorców „widzowie webinaru”.
Panel
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.
Gdzie jesteśmy
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.
Mniej znaczy pewniej
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.