Tok rada: Ankete — Prikupljanje povratnih informacija
Uključeni moduli: Ankete · Email liste · Klijenti · Lidovi · Zaposleni
Ko ga koristi: Marketing · Customer Success · HR
Tipično trajanje: Kreiranje + slanje = 30 min · Odgovori = 1–14 dana
Pregled
Modul Ankete omogućava kreiranje upitnika sa 6 tipova pitanja, slanje putem email-a listama primalaca i prikupljanje odgovora putem javnog linka. Slanje je 100% ručno — ne postoje automatski okidači na CRM događaje (faktura plaćena, tiket zatvoren, projekat završen).
Ne postoji namenski NPS tip. Najbliži ekvivalent je tip
rating(1–5 zvezda), koji nije standardna NPS skala (0–10) i ne izračunava NPS rezultat. Ako vam je potreban pravi NPS, koristite tipratingsa prilagođenim uputstvima u tekstu pitanja.
Odgovori nisu povezani sa CRM zapisima.
tblsurveyresultsetsčuva samo IP + user agent — bez client_id, bez lead_id. Nije moguće automatski identifikovati ko je odgovorio (osim ako ne koristite prilagođena polja u email listama ili personalizovane linkove).
Slanje funkcioniše kroz cron. Email poruke se ne šalju odmah — stavljaju se u red i obrađuju kroz cron sa minimumom od 1 sat između pokretanja, maksimalno 100 poruka po pokretanju.
Dijagram toka
[KREIRANJE ANKETE]
│
├── Nova anketa: subject, description (telo emaila), viewdescription (javno zaglavlje)
├── Dodavanje pitanja: input / textarea / checkbox / radio / rating / progress1
├── Opcije pristupa: active, onlyforloggedin, iprestrict, redirect_url
└── Generisan javni URL: site_url/survey/{id}/{hash}
│
↓
[SLANJE — ručno, zaposleni pokreće]
│
├── Ankete → {anketa} → kartica Pošalji anketu
├── Odabir primalaca (jedna ili više opcija):
│ ├── Svi aktivni kontakti (sa opcionim filterom grupe klijenata)
│ ├── Svi lidovi (sa opcionim filterom statusa lida)
│ ├── Svi aktivni zaposleni
│ └── Prilagođene email liste
│
├── Insert u tblsurveysemailsendcron (red za slanje)
├── Insert u tblsurveysendlog: total=0, iscronfinished=0
└── Status: "čeka cron"
│
↓
[OBRADA KROZ CRON]
│
├── Uslov: trenutno vreme - last_survey_send_cron ≥ 1 sat
├── Šalje maksimalno survey_send_emails_per_cron_run (podrazumevano 100) email poruka
├── Svaki email: zamenjuje {survey_link} javnim URL-om
│ + prilagođena polja iz email liste (npr.: {list-firstname})
├── Uspešno slanje: briše red iz tblsurveysemailsendcron
└── Po završetku: tblsurveysendlog.iscronfinished = 1
│
↓
[POPUNJAVANJE ANKETE — ispitanik]
│
├── Ispitanik otvara javni URL: /survey/{id}/{hash}
├── Popunjava pitanja
├── Pri slanju:
│ ├── Insert u tblsurveyresultsets: ip, useragent, date (bez client_id!)
│ └── Insert u tblform_results: jedan red po odgovoru (po boxid/boxdescriptionid)
└── Preusmeravanje na redirect_url (ako je konfigurisano) ili poruka potvrde
│
↓
[PREGLED REZULTATA]
│
├── Ankete → {anketa} → kartica Rezultati
├── checkbox/radio/rating: trake napretka sa brojem i % po opciji
└── input/textarea/progress1: lista svih tekstualnih odgovora (modalni prozor)
[POVRATNE INFORMACIJE PRIKUPLJENE ✓]
Korak po korak
1. Kreiranje ankete
Gde: /admin/surveys → Nova anketa
| Polje | Opis |
|---|---|
subject |
Predmet email poruke za slanje |
description |
Telo email-a (podržava merge tag {survey_link}) |
viewdescription |
Tekst prikazan u zaglavlju javne stranice ankete |
active |
1 = javno vidljivo · 0 = 404 za ne-zaposlene |
onlyforloggedin |
Ako je 1, zahteva autentifikovanu sesiju (klijent ili zaposleni) |
iprestrict |
Ako je 1, dozvoljava samo jedan odgovor po IP adresi |
redirect_url |
URL preusmeravanja po završetku (opciono) |
Vizuelna polja (opciono):
header_bg, footer_bg, wrapper_color, footer_description — prilagođavaju izgled javne stranice.
2. Tipovi pitanja
Gde: u obrascu ankete → Dodaj pitanje
Tip (boxtype) |
Prikaz | Sačuvan odgovor |
|---|---|---|
input |
Polje za unos jednolinijskog teksta | Slobodan tekst u tblform_results.answer |
textarea |
Polje za unos višelinijskog teksta | Slobodan tekst u tblform_results.answer |
checkbox |
Više opcija za odabir | boxdescriptionid po odabranoj opciji |
radio |
Jedna opcija za odabir | boxdescriptionid odabrane opcije |
rating |
5 zvezda (Loše / Dobro / Vrlo dobro / Odlično / Sjajno) | boxdescriptionid sa vrednošću 1–5 |
progress1 |
Klizač 0–100 | Numerička vrednost u answer |
Tip
progress2(numeričke trake napretka) je onemogućen u interfejsu (PHP kod za dugme za dodavanje je zakomentarisan). Zaposleni ga ne mogu dodati.
Polja po pitanju:
question— tekst pitanjarequired—1= obavezno za slanjequestion_order— redosled prikaza
3. Email liste — prilagođene liste primalaca
Gde: /admin/surveys → Email liste → Nova lista
Email liste omogućavaju slanje na email adrese koje ne moraju biti kontakti ili lidovi u CRM-u.
| Polje | Opis |
|---|---|
name |
Naziv liste |
| Email adrese | Individualno dodavanje ili uvoz iz CSV-a |
| Prilagođena polja | Dodatna polja po email adresi (npr.: Ime, Kompanija) — mogu se koristiti kao merge tagovi u email-u sa sintaksom {list-name-fieldname} |
4. Slanje ankete
Gde: /admin/surveys/{id} → kartica Pošalji anketu
Dostupni primaoci:
| Opcija | Opcioni filter | GDPR filtrirano? |
|---|---|---|
| Svi aktivni kontakti | Grupa klijenata | Da (ako je GDPR aktivan) |
| Svi lidovi | Status lida | Da (ako je GDPR aktivan) |
| Svi aktivni zaposleni | — | Ne |
| Email liste | Odabir specifičnih lista | Ne |
Obavezan merge tag: Uključite
{survey_link}u poljedescription(telo email-a). Bez njega, email ne sadrži link na anketu.
Konfiguracija obima slanja:
Gde: /admin/settings → kartica Cron → Ankete
| Opcija | Podrazumevano | Opis |
|---|---|---|
survey_send_emails_per_cron_run |
100 | Email poruke poslate po pokretanju crona |
Minimalni interval između pokretanja crona je 1 sat (opcija last_survey_send_cron se ažurira pri svakom pokretanju).
5. Pregled rezultata
Gde: /admin/surveys/{id} → kartica Rezultati
Za checkbox, radio, rating:
- Svaka opcija prikazuje: broj glasova / ukupan broj popunjavanja = procenat
- Traka napretka vizualizuje raspodelu
Za input, textarea, progress1:
- Dugme Prikaži sve odgovore → modalni prozor sa listom svih tekstualnih odgovora
Važna ograničenja:
- Nema izvoza odgovora u CSV/Excel format
- Nema analize trendova tokom vremena
- Nema poređenja između anketa
- Nema izračunavanja NPS rezultata (čak ni pri korišćenju ocene 1–5)
- Odgovori nisu asocirani sa client_id niti lead_id
6. Dostupne automatizacije (ograničene)
Modul Ankete nema integraciju sa:
workflow_automation(nema okidača na CRM događaje)ma(Marketinška automatizacija)- Bilo kojim drugim CRM hook-om (faktura plaćena, tiket zatvoren, itd.)
Jedina postojeća automatizacija: cron za slanje (obrada reda tblsurveysemailsendcron).
Potrebne dozvole
| Dozvola | Pristup |
|---|---|
surveys → view |
Pregled anketa i rezultata |
surveys → create |
Kreiranje novih anketa |
surveys → edit |
Izmena postojećih anketa |
surveys → delete |
Brisanje |
| Konfiguracija obima crona | is_admin() |
Česte greške
| Problem | Uzrok | Rešenje |
|---|---|---|
| Email poruke se ne šalju | Cron neaktivan ili interval od 1h nije dostignut | Proverite da cron posao radi + sačekajte barem 1 sat |
| Anketa prikazuje 404 | active = 0 |
Postavite active = 1 na anketi |
| Nema linka u email-u | {survey_link} nedostaje iz description |
Dodajte merge tag u telo email-a |
| Ne zna se ko je odgovorio | tblsurveyresultsets ne čuva client_id |
Koristite email liste sa prilagođenim poljima + pitajte za email u anketi |
| "Rating" nije pravi NPS | Ocena je 1–5 zvezda, ne 0–10 | Eksplicitno dokumentujte skalu u tekstu pitanja; ručno izračunajte NPS iz izvoza |
| Cron šalje manje od 100 / pokretanje | survey_send_emails_per_cron_run = manja vrednost |
Prilagodite u Podešavanja → Cron → Ankete |
Reference modula
- Klijenti — slanje kontaktima
- Lidovi — slanje lidovima
- Marketinške kampanje — email kampanje (za automatizovane email poruke)
- GDPR — filtriranje pristanka pri slanju