Deze configuratie implementeert een intelligente, gestructureerde aanpak voor Chatwoot + WhatsApp integratie voor Stephen's Privélessen. Het systeem gebruikt custom attributes, lean labels en automation rules voor optimale routing en rapportage.
contact_attributes.yaml)Blijvende profieleigenschappen per contact:
language - Voorkeurstaal (nl|en)school_level - Onderwijsniveau (po|vmbo|havo|vwo|mbo|university_wo|university_hbo|adult)segment - Segment (parent, student, company, etc.)conversation_attributes.yaml)Per-ticket eigenschappen die resetten per conversatie:
program - Specifiek programma (mbo_rekenen_2f|3f|ib_math_sl|hl|cambridge)topic_primary - Hoofdonderwerp (calculus, percentages)topic_secondary - Secundair onderwerptoolset - Benodigde tools (python,spss,r)lesson_mode - Lesmodus (online|in_person|hybrid)is_adult - 18+ checklanguage_prompted - Anti-loop vlag voor taalvraagintake_completed - Intake voltooid (audience+subject+service)labels_lean.yaml)Lean labels georganiseerd per categorie:
audience:po|vmbo|havo|vwo|mbo|university:wo|university:hbo|adultsubject:math|stats|science|english|data-science|programming|didactics|economics|creativeservice:trial|1on1|group|exam-prep|workshop|project-supervision|consultancystatus:awaiting_reply|booked|awaiting_paypayment:paid|overduepriority:urgentflag:vip|spamautomations.yaml)Volledige rules-spec voor intelligente routing:
conversation_createdchannel = WhatsAppsource:whatsapp, zet language_prompted=falseconversation_createdcontact.language is leeg AND language_prompted=falselanguage_prompted=truemessage_createdcontact.language, stuur bevestigingmessage_createdcontact.school_level + voeg audience-label toemessage_createdconversation.program + baseline subject-labelmessage_createdtopic_primary en toolset, voeg subject-labels toemessage_createdmessage_createdsubject:programming|data-science → assign team "Data/Programming"audience:vmbo|havo|vwo & subject:math|science|english → VO-docentenaudience:university:wo|hbo → HO/Universiteitprogram in {ib_math_sl, ib_math_hl} → International/IBpayment:* → Financepayment:info, assign Financestatus:bookedpayment:paid (en verwijder status:awaiting_pay|payment:overdue)priority:urgent + teamnotificatielabel_addedaudience:*Attributes:
program: mbo_rekenen_3f
topic_primary: "percentages"
toolset: ""
Labels:
audience:mbo
subject:math
service:trial
status:awaiting_reply
Attributes:
program: none
topic_primary: "calculus"
toolset: "python"
Labels:
audience:university:wo
subject:math
subject:data-science
service:1on1
# Contact attributes
curl -X POST "https://your-chatwoot.com/api/v1/accounts/{account_id}/custom_attribute_definitions" \
-H "Api-Access-Token: {admin_token}" \
-H "Content-Type: application/json" \
-d @contact_attributes.yaml
# Conversation attributes
curl -X POST "https://your-chatwoot.com/api/v1/accounts/{account_id}/custom_attribute_definitions" \
-H "Api-Access-Token: {admin_token}" \
-H "Content-Type: application/json" \
-d @conversation_attributes.yaml
# Create all labels from labels_lean.yaml
curl -X POST "https://your-chatwoot.com/api/v1/accounts/{account_id}/labels" \
-H "Api-Access-Token: {admin_token}" \
-H "Content-Type: application/json" \
-d '{"title": "audience:vmbo"}'
De automation rules in automations.yaml moeten handmatig worden geconfigureerd in de Chatwoot interface, omdat de API voor automations beperkt is.
🌍 In welke taal wil je communiceren? / In which language would you like to communicate?
🇳🇱 Nederlands
🇬🇧 English
📚 Wat is je huidige onderwijsniveau? / What is your current education level?
🏫 VMBO
🎓 HAVO
🎓 VWO
🎓 HBO
🎓 WO
💼 Volwassenenonderwijs
🏢 Werknemer
📖 Welk vak wil je bijles in? / Which subject do you want tutoring in?
📊 Wiskunde
🧮 Rekenen
📈 Economie
🔬 Natuurkunde
🧪 Scheikunde
🌍 Aardrijkskunde
📖 Nederlands
🇬🇧 Engels
🇩🇪 Duits
🇫🇷 Frans
📚 Studievaardigheden
📅 In welk jaar/leerjaar zit je? / In which year/grade are you?
1️⃣ Jaar 1
2️⃣ Jaar 2
3️⃣ Jaar 3
4️⃣ Jaar 4
5️⃣ Jaar 5
6️⃣ Jaar 6
🎓 Eindexamenjaar
💼 Volwassen
🎯 Hoe wil je de les volgen? / How would you like to follow the lesson?
🏠 Online (via Zoom)
🏫 Offline (bij jou thuis)
🏢 Offline (bij mij thuis)
🤔 Weet nog niet
intake_completed=trueVoor vragen over deze setup, neem contact op met Stephen via de bot of direct.