Přeskočit na hlavní obsah

Obsah a podpora (PRD-06)

info

Podpora zákazníků a obsahový marketing. Plné znění najdete níže na této stránce.

Scope​

FázeObrazovek
MVP1 (podpora/kontakt)
F12 (FAQ, chat)
F2+3 (blog feed, detail, empty)
Celkem6

Eskalační model​

FAQ (self-service) → Kontaktní formulář → Chat s agentem → Telefon

Klíčové funkce per fáze​

MVP: základní kontakt (info, formulář, provozní doba, mapa)

F1: FAQ s vyhledáváním a accordion, in-app chat s live agentem, volání z aplikace

F2+: blog/content feed, detail článku s galerií, inline event karty


Detailní specifikace (Plné znění PRD)​

PRD-06: Obsah a podpora — Colosseum MA

Verze1.0
Datum2026-02-23
StavDraft
VlastníkSymbio — Analýza & Design

1. Přehled a cíle​

Oblast obsahu a podpory zajišťuje dvě klíčové potřeby uživatele:

  1. Podpora — Když má uživatel problém, musí rychle najít řešení nebo kontakt. Od základního formuláře (MVP) přes FAQ a samoobsluhu (F1) až po in-app chat a volání (F1).
  2. Obsah — Inspirace a edukace formou blogu, článků a propojení se sociálními sítěmi. Rozšiřuje hodnotu aplikace mimo čistý ticketing (F2+).

Fázování​

FázeScope
MVPZákladní podpora — kontaktní informace, provozní doba, kontaktní formulář (S15)
F1Rozšířená podpora — FAQ s vyhledáváním (S17), in-app chat, volání z aplikace, historie konverzací (S18)
F2+Blog / content feed (S20), detail článku (S21), propojení se sociálními sítěmi

Cíle​

CílMetrikaFáze
Poskytnout základní kontakt na podporuDostupnost kontaktu z jakékoli obrazovky (max 2 tapy)MVP
Snížit zátěž zákaznické podporyPodíl vyřešených dotazů přes FAQ vs. kontaktF1
Zvýšit spokojenost se zákaznickým servisemCSAT score in-app chatuF1
Zkrátit čas do vyřešení problémuPrůměrný resolution time (chat vs. formulář)F1
Zvýšit engagement a čas strávený v aplikaciPočet zobrazení článků, průměrný čas čteníF2+
Zvýšit konverzi z obsahu na nákupCTR z článku na detail akce → checkoutF2+

Vazba na další PRD​

  • PRD-01 (Nákup vstupenek): Detail akce (P3) obsahuje link na podporu pořadatele. Chybové stavy (X3, X4) odkazují na kontakt podpory.
  • PRD-02 (Klientská zóna): Podpora je přístupná z uživatelského účtu (P9) jako položka menu. Historie chatu se váže na user account.
  • PRD-03 (Notifikace): Blog články mohou generovat push notifikace (F2+ — „Nový článek: ..."). FAQ deep link z notifikací.
  • PRD-05 (White-label): White-label aplikace zobrazuje kontakt na pořadatele (z brand konfigurace S24) s Colosseum fallbackem.

2. User stories​

MVP​

IDRoleStoryAkceptační kritéria
US-06-01Návštěvník / Registrovaný uživatelChci najít kontakt na zákaznickou podporuObrazovka podpory (S15) je dostupná z uživatelského účtu (P9) a z chybových stavů. Zobrazuje kontaktní údaje.
US-06-02Návštěvník / Registrovaný uživatelChci vědět, kdy je podpora dostupnáS15 zobrazuje provozní dobu (Po–Pá, víkendy, svátky).
US-06-03Návštěvník / Registrovaný uživatelChci odeslat dotaz na podporuKontaktní formulář na S15: jméno, email, kategorie dotazu, text zprávy, příloha (volitelná). Po odeslání potvrzení s referenčním číslem.
US-06-04Návštěvník / Registrovaný uživatelChci kontaktovat pořadatele konkrétní akceZ detailu akce (P3) sekce „Kontakt" s kontaktními údaji pořadatele (z CMS).

F1​

IDRoleStoryAkceptační kritéria
US-06-05Registrovaný uživatelChci najít odpověď na běžnou otázku bez kontaktování podporyFAQ (S17) s kategorizovanými otázkami a vyhledáváním. Accordion expand/collapse.
US-06-06Registrovaný uživatelChci chatovat s podporou v reálném časeIn-app chat (S18) s live agentem. Uživatel vidí status (online/offline), typing indicator, historii.
US-06-07Registrovaný uživatelChci zavolat podpoře přímo z aplikaceCTA „Zavolat" na S18 spustí telefonní hovor (native dialer) na linku podpory.
US-06-08Registrovaný uživatelChci vidět historii svých konverzací s podporouS18 zobrazuje seznam předchozích konverzací (chat + formulářové dotazy) se statusem (vyřešeno/otevřeno/čeká).
US-06-09Registrovaný uživatelChci odpověď z FAQ přímo v kontextu problémuFAQ otázky mohou být deep-linkovány z chybových stavů (X3, X4) a z notifikací.

F2+​

IDRoleStoryAkceptační kritéria
US-06-10Návštěvník / Registrovaný uživatelChci číst články a novinky o kulturních akcíchBlog feed (S20) zobrazuje karty článků s obrázkem, titulkem, perex, datem. Filtr dle kategorie.
US-06-11Návštěvník / Registrovaný uživatelChci přečíst celý článekDetail článku (S21): hero image, autor, datum, rich text, galerie, sdílení, related events.
US-06-12Návštěvník / Registrovaný uživatelChci z článku přejít přímo na akci, o které se píšeČlánek obsahuje inline karty propojených akcí s CTA „Koupit vstupenky" → detail akce (P3).
US-06-13Návštěvník / Registrovaný uživatelChci sdílet článekShare button na S21 — nativní system share (URL + preview image + titulek).
US-06-14Návštěvník / Registrovaný uživatelChci sledovat Colosseum na sociálních sítíchOdkazy na Instagram, Facebook, YouTube dostupné z profilu/účtu (P9) nebo footeru obrazovky podpory (S15).

3. Funkční specifikace​

3.1 MVP scope​

Podpora / Kontakt (S15)​

  • Přístup:

    • Z uživatelského účtu (P9) → položka menu „Podpora"
    • Z chybových stavů (X3, X4) → link „Potřebujete pomoc?"
    • Z detailu akce (P3) → sekce kontakt pořadatele → „Kontaktovat Colosseum podporu"
  • Layout:

    • Header: „Jak vám můžeme pomoci?"
    • Sekce „Kontakty":
      • Telefon: kliknutelné číslo (native dialer) s ikonou
      • Email: kliknutelná adresa (native email client) s ikonou
      • Provozní doba: strukturovaný výpis (Po–Pá: 9:00–18:00, So–Ne: zavřeno, svátky: zavřeno)
      • Online status indicator: „Jsme online" / „Momentálně offline — odpovíme příští pracovní den"
    • Sekce „Napište nám" (kontaktní formulář):
      • Jméno (prefill pro přihlášeného)
      • Email (prefill pro přihlášeného)
      • Kategorie dotazu (select): Nákup vstupenek / Moje vstupenky / Platby a refundy / Účet a přihlášení / Technický problém / Jiné
      • Popis problému (textarea, min 10 znaků)
      • Příloha (volitelná): max 3 soubory, max 10 MB per soubor, formáty: JPG, PNG, PDF
      • CTA: „Odeslat"
    • Po odeslání:
      • Success state: „Děkujeme! Vaše zpráva byla odeslána."
      • Referenční číslo: „Číslo vašeho dotazu: #XXXX"
      • „Obvykle odpovídáme do 24 hodin v pracovní dny."
      • CTA: „Zpět" / „Odeslat další dotaz"
    • Footer:
      • Sociální sítě: ikony Instagram, Facebook, YouTube (linky z CMS)
      • „Podmínky použití" a „Ochrana osobních údajů" (external links)

Kontakt pořadatele (z detailu akce P3)​

  • V detailu akce (P3) sekce „Kontakt" zobrazuje:
    • Název pořadatele (link na profil S13)
    • Telefon (pokud dostupný v CMS)
    • Email (pokud dostupný v CMS)
    • Web (pokud dostupný)
  • Pokud pořadatel nemá kontaktní údaje: fallback na Colosseum podporu

3.2 F1 rozšíření​

FAQ / Samoobsluha (S17)​

  • Přístup:

    • Z obrazovky podpory (S15) — sekce „Časté dotazy" nad formulářem
    • Z uživatelského účtu (P9) → „Často kladené otázky"
    • Deep link z chybových stavů a notifikací
  • Layout:

    • Vyhledávání: Search bar nahoře — full-text search across otázek a odpovědí
    • Kategorie: Horizontální chip filter:
      • Vše / Nákup vstupenek / Platby a refundy / Moje vstupenky / Účet / Věrnostní program / Technické problémy
    • Seznam otázek: Accordion (tap to expand/collapse):
      • Otázka (bold, collapsed by default)
      • Odpověď (rich text — bold, links, bullet points)
      • „Pomohla vám tato odpověď?" — 👍 / 👎 feedback
    • Footer: „Nenašli jste odpověď?" → CTA „Kontaktovat podporu" (→ S15 formulář nebo S18 chat)
  • Obsah: Spravovaný v CMS (Dato). Každá FAQ položka:

    • Otázka (String)
    • Odpověď (Rich Text)
    • Kategorie (select)
    • Priorita / pořadí (Int)
    • Status: publikováno / draft
  • Search: Client-side fuzzy search (offline capability) + server-side full-text pro lepší relevanci. Highlight matching textu v odpovědi.

Chat / Rozšířená podpora (S18)​

  • Přístup:

    • Z obrazovky podpory (S15) — CTA „Chatovat s námi" (viditelný jen pokud podpora online)
    • Z FAQ (S17) — „Nenašli jste odpověď? Napište nám."
    • Floating chat bubble (FAB) na vybraných obrazovkách (konfigurovatelné v CMS)
  • Chat interface:

    • Header: „Zákaznická podpora" + online/offline status + avatar agenta
    • Message list:
      • Bubliny: uživatel (vpravo, accent barva) / agent (vlevo, šedá)
      • Timestamp per zpráva
      • Typing indicator (animated dots) při psaní agenta
      • Podpora obrázků a souborů v chatu (upload/download)
      • Auto-scroll na nejnovější zprávu
    • Input bar:
      • Textové pole + send button
      • Attachment button (fotka, soubor)
      • Keyboard dismiss na scroll up
    • Offline stav:
      • „Podpora je momentálně offline. Odpovíme vám, jakmile budeme k dispozici."
      • Uživatel může odeslat zprávu — doručí se, až bude agent online
      • Alternativa: „Zavolejte nám" CTA s telefonním číslem
  • Volání z aplikace:

    • CTA „Zavolat" (ikona telefonu) v header S18 nebo v S15
    • Spouští native dialer s číslem zákaznické podpory
    • Číslo konfigurovatelné v CMS (per locale / per white-label app)
  • Historie konverzací:

    • Seznam předchozích konverzací na S18 (tab: „Chat" / „Historie")
    • Per konverzace: datum, preview poslední zprávy, status (otevřeno / vyřešeno / čeká na odpověď)
    • Tap → otevře celou konverzaci (read-only pro vyřešené, aktivní pro otevřené)
    • Formulářové dotazy z MVP se zobrazují také — status dle odpovědi podpory
  • Integrace: Doporučení: napojení na existující helpdesk řešení (Zendesk, Intercom, Freshdesk) přes SDK / API. Alternativa: vlastní řešení (vyšší náklady).

3.3 F2+ rozšíření​

Blog / Obsah — feed (S20)​

  • Přístup:

    • Tab bar položka „Magazín" / „Novinky" (nebo sub-tab pod Home)
    • Deep link z push notifikací
    • Cross-link z detailu akce (P3): „Přečtěte si více o [akci/pořadateli]"
  • Layout:

    • Header: „Novinky a zajímavosti" + search ikona
    • Featured článek: Velká karta nahoře (hero image, titulek, perex, datum). CMS-řízený výběr.
    • Filtr chips: Vše / Rozhovory / Tipy / Recenze / Novinky / Za scénou
    • Grid článků: 2-column grid nebo vertikální list:
      • Karta článku:
        • Obrázek (thumbnail, 16:9)
        • Kategorie badge
        • Titulek (max 2 řádky)
        • Perex (max 3 řádky)
        • Datum publikace
        • Čas čtení (estimated: word count / 200)
      • Tap → detail článku (S21)
    • Pagination: Infinite scroll nebo „Načíst další"
    • Empty state (X25): „Zatím žádné články. Sledujte nás pro novinky!" + CTA „Prozkoumat akce"
  • Propojení s akcemi: Články mohou být tagované na konkrétní Event / Organizer / Venue. V detailu akce (P3) sekce „Články" zobrazuje související obsah.

Detail článku (S21)​

  • Layout:
    • Hero image: Full-width, parallax scroll efekt
    • Metadata bar: Autor (jméno + avatar) | Datum publikace | Čas čtení | Kategorie badge
    • Titulek: H1, velký
    • Perex: Lead text (bold/italic, odlišený od body textu)
    • Body: Rich text:
      • Odstavce, nadpisy (H2, H3)
      • Obrázky (inline, full-width, galerie carousel)
      • Video embed (YouTube, Vimeo)
      • Citace (blockquote)
      • Seznamy (bullet, numbered)
      • Inline event karty: mini karta akce s CTA „Koupit vstupenky" → P3
    • Galerie: Swipeable horizontal galerie (pokud článek obsahuje >3 obrázky)
    • Sekce „Související akce": Karty propojených eventů (max 3)
    • Sdílení: Floating share button (bottom right) → native system share sheet
    • Footer:
      • „Líbil se vám článek?" — 👍 / 👎 feedback
      • „Další články" — horizontální carousel dalších článků ze stejné kategorie
      • Autor bio (krátké, kliknutelné na profil autora — pokud existuje)

Sociální sítě​

  • Umístění odkazů:
    • Obrazovka podpory (S15) — footer
    • Uživatelský účet (P9) — sekce „Sledujte nás"
    • Blog feed (S20) — footer
    • Volitelně: Home (P1) — footer
  • Platformy: Instagram, Facebook, YouTube
  • Chování: Tap → otevření v nativní app (pokud nainstalována) nebo v systémovém prohlížeči
  • URL: Konfigurovatelné v CMS (per hlavní app + per white-label app)

3.4 K diskusi​

—


4. Business rules​

IDPravidloPodmínky
BR-06-01Kontaktní formulář nevyžaduje přihlášeníNávštěvník (nepřihlášený) vyplňuje jméno a email ručně. Přihlášený = prefill.
BR-06-02Odpověď na formulář do 24 h v pracovní dnySLA — měřené od odeslání po první odpověď. Zobrazit uživateli jako expectation.
BR-06-03Chat dostupný jen v provozních hodináchMimo provozní dobu: offline stav s možností odeslat zprávu (odpověď příští pracovní den).
BR-06-04FAQ obsah spravuje Colosseum týmCMS: Dato. Editor přidává/edituje/řadí otázky. Kategorie jsou fixní (definované v kódu).
BR-06-05Blog články spravuje Colosseum týmCMS: Dato. Editor vytváří články, taguje na events/organizers/venues.
BR-06-06Blog článek může odkazovat na 0–N eventůVazba article → events. V detailu článku se zobrazují jako inline karty.
BR-06-07FAQ feedback (👍/👎) je anonymníSlouží pro interní analytiku. Uživatel nevidí agregovaný výsledek.
BR-06-08Chat historie se uchovává 12 měsícůPo 12 měsících se archivuje. Uživatel vidí jen posledních 12 měsíců.
BR-06-09Přílohy v chatu: max 10 MB per souborFormáty: JPG, PNG, PDF, HEIC. Video: ne (příliš velké).
BR-06-10Sociální sítě se otevírají v nativní appPokud nainstalována, jinak system browser. Univerzální link / deep link.
BR-06-11Blog push notifikace max 1× denněNový článek = max 1 push per den per uživatel (aby nedocházelo ke spamu při hromadné publikaci).

5. Data model​

SupportTicket​

AtributTypPopis
idUUIDUnikátní identifikátor
userIdUUID?FK → User (null pro nepřihlášené)
ticketNumberStringReferenční číslo (#XXXX)
categoryEnumpurchase, tickets, payments, account, technical, other
nameStringJméno odesílatele
emailStringEmail odesílatele
messageTextText dotazu
attachmentsJSONPole URL příloh
statusEnumnew, open, waiting_for_customer, resolved, closed
createdAtDateTimeDatum odeslání
resolvedAtDateTime?Datum vyřešení
sourceEnumform, chat

ChatConversation​

AtributTypPopis
idUUIDUnikátní identifikátor
userIdUUIDFK → User
supportTicketIdUUID?FK → SupportTicket (pokud navázáno)
statusEnumactive, waiting_agent, waiting_customer, resolved, closed
agentNameString?Jméno agenta
createdAtDateTimeDatum zahájení
lastMessageAtDateTimeDatum poslední zprávy
resolvedAtDateTime?Datum vyřešení

ChatMessage​

AtributTypPopis
idUUIDUnikátní identifikátor
conversationIdUUIDFK → ChatConversation
senderEnumuser, agent, system
contentTextText zprávy
attachmentsJSON?Pole URL příloh
createdAtDateTimeTimestamp
readAtDateTime?Čas přečtení (pro read receipts)

FaqItem (CMS)​

AtributTypPopis
idUUIDUnikátní identifikátor
questionStringText otázky
answerRichTextText odpovědi
categoryEnumpurchase, payments, tickets, account, loyalty, technical
sortOrderIntPořadí v rámci kategorie
statusEnumpublished, draft
helpfulCountIntPočet 👍
notHelpfulCountIntPočet 👎
createdAtDateTimeDatum vytvoření
updatedAtDateTimePoslední úprava

BlogArticle (CMS)​

AtributTypPopis
idUUIDUnikátní identifikátor
titleStringTitulek článku
slugStringURL slug
perexStringKrátký úvod (max 300 znaků)
bodyRichTextTělo článku
heroImageUrlStringURL hero obrázku
galleryUrlsString[]URL obrázků v galerii
categoryEnuminterview, tips, review, news, behind_the_scenes
authorNameStringJméno autora
authorAvatarUrlString?Avatar autora
eventIdsUUID[]FK → Event[] (propojené akce)
organizerIdsUUID[]FK → Organizer[] (propojení pořadatelé)
venueIdsUUID[]FK → Venue[] (propojená místa)
readingTimeMinutesIntOdhadovaný čas čtení
statusEnumpublished, draft, archived
publishedAtDateTime?Datum publikace
createdAtDateTimeDatum vytvoření
updatedAtDateTimePoslední úprava
likeCountIntPočet 👍
dislikeCountIntPočet 👎

6. Edge cases a error states​

ScénářChování
Kontaktní formulář — odeslání bez připojeníFormulář se uloží lokálně, odešle se při obnovení připojení. Toast: „Zpráva bude odeslána po obnovení připojení."
Chat — agent neodpoví do X minutPo 5 min čekání: systémová zpráva „Omlouváme se za čekání. Váš dotaz je ve frontě." Po 15 min: nabídka „Chcete raději odeslat zprávu emailem?"
Chat — ztráta připojení uprostřed konverzaceInline warning: „Ztráta připojení. Zprávy se odešlou po obnovení." Zprávy se bufferují lokálně.
FAQ — žádné výsledky vyhledávání„Pro '[hledaný text]' jsme nenašli žádnou odpověď." + CTA „Kontaktovat podporu"
FAQ — otázka odkazuje na funkci, která ještě není dostupnáOdpověď obsahuje info o plánovaném spuštění: „Tato funkce bude dostupná v příští aktualizaci."
Blog — článek odkazuje na zrušenou akciEvent karta v článku zobrazuje badge „Zrušeno". Link na detail akce stále funguje (detail zobrazuje info o zrušení).
Blog — uživatel otevře deep link na neexistující článekFallback: „Článek nebyl nalezen." + CTA „Zpět na novinky" (→ S20).
Sociální síť — nativní app není nainstalovánaOtevření v systémovém prohlížeči (Safari/Chrome).
Příloha ve formuláři > 10 MBValidace: „Soubor je příliš velký. Maximální velikost je 10 MB." File picker nepovolí výběr.
Nepřihlášený uživatel chce chatChat vyžaduje přihlášení (pro historii konverzací). CTA „Přihlaste se pro chat" + alternativa formulář (nevyžaduje login).
White-label app — kontakt na pořadateleS15 zobrazuje kontakt na pořadatele (z brand konfigurace S24). Colosseum podpora jako fallback: „Pro technické problémy s aplikací kontaktujte Colosseum."
Blog feed je prázdný (F2+ launch)Empty state (X25): ilustrace + „Připravujeme pro vás zajímavý obsah. Sledujte nás!" + sociální sítě ikony + CTA „Prozkoumat akce".
Uživatel odesílá formulář opakovaně (spam)Rate limiting: max 3 formuláře za hodinu. Po překročení: „Příliš mnoho dotazů. Zkuste to prosím později nebo zavolejte."

7. Screen mapping​

IDObrazovkaTypFázePopis
S15Podpora / KontaktSekundárníMVPKontaktní info, provozní doba, formulář
S17FAQ / SamoobsluhaSekundárníF1Kategorizované otázky, vyhledávání, accordion
S18Chat / rozšířená podporaSekundárníF1In-app chat, volání, historie konverzací
S20Blog / obsah — feedSekundárníF2+Seznam článků, filtr, propojení s akcemi
S21Detail článkuSekundárníF2+Rich text, galerie, related events, sdílení
X25Empty state — BlogPodpůrnáF2+Prázdný blog feed, CTA

8. Otevřené otázky​

Chat řešení — Vlastní implementace, nebo napojení na existující helpdesk (Zendesk, Intercom, Freshdesk)? Integrace přes SDK vs. API. Vliv na náklady a rychlost implementace.

Kdo tvoří blog obsah? — Colosseum interní tým, external copywriter, nebo pořadatelé? Frekvence publikace? Minimální objem pro smysluplný launch? (Doporučení: min. 10 článků při spuštění, 2–3 nové týdně.)

Blog kategorie — Finální seznam kategorií? Aktuální návrh: Rozhovory / Tipy / Recenze / Novinky / Za scénou. Doplnit/upravit dle content strategie.

FAQ — self-service scope — Kolik FAQ položek při launchi F1? Kdo je tvoří? Máme existující FAQ z webu colosseumticket.cz jako základ?

Volání z aplikace — technické řešení — Klasický telefonní hovor (native dialer), nebo VoIP (in-app volání)? VoIP = lepší UX, ale vyšší komplexita a náklady. Doporučení: native dialer v F1, VoIP jako F2+ volitelné rozšíření.

Podpora per pořadatel vs. centrální — Má každý pořadatel svou linku podpory, nebo vše jde přes Colosseum? Implikace pro routing chatů a formulářů.

Blog v MVP? — V PRD-00 otevřená otázka: „Blog v MVP, nebo až v další fázi?" Aktuální zařazení: F2+. Pokud se rozhodne pro dřívější fázi, přesunout S20, S21, X25 do F1.

Sociální sítě — in-app feed? — Aktuální návrh: jen linky na external platformy. Zvážit: embedded Instagram feed / YouTube playlist přímo v aplikaci? (Vyšší engagement, ale závislost na external API.)