Auto Reply WA untuk Event & Webinar

Setup auto reply WhatsApp untuk event dan webinar. Registrasi otomatis, reminder, follow up. Event management via WA!

Auto Reply WA untuk Event & Webinar
Auto Reply WA untuk Event & Webinar

Kelola event via WhatsApp = Registration rate naik!

WhatsApp lebih personal dari email. Auto reply untuk event bisa boost registrasi dan reduce no-show.


Use Cases Event Bot

📅 JENIS EVENT:

- Webinar / Online seminar
- Workshop / Kursus
- Product launch
- Community meetup
- Company event
- Conference
- Private class

Flow Event Registration

┌────────────────────────────────────┐
│         PROMO/AWARENESS            │
│    (Social media, ads, blast)      │
└──────────────────┬─────────────────┘
                   │
                   ▼
┌────────────────────────────────────┐
│     REGISTRATION VIA WHATSAPP      │
│   (Customer chat "DAFTAR EVENT")   │
└──────────────────┬─────────────────┘
                   │
                   ▼
┌────────────────────────────────────┐
│       BOT: COLLECT DATA            │
│   (Nama, Email, No. HP, dll)       │
└──────────────────┬─────────────────┘
                   │
                   ▼
┌────────────────────────────────────┐
│       CONFIRMATION + TICKET        │
│   (QR code, event details)         │
└──────────────────┬─────────────────┘
                   │
                   ▼
┌────────────────────────────────────┐
│     REMINDER SEQUENCE              │
│   (H-7, H-3, H-1, Hari H)          │
└──────────────────┬─────────────────┘
                   │
                   ▼
┌────────────────────────────────────┐
│       POST-EVENT FOLLOW UP         │
│   (Thank you, feedback, next)      │
└────────────────────────────────────┘

Template Messages

Event Announcement:

🎉 [NAMA EVENT]

📅 Tanggal: [TANGGAL]
⏰ Waktu: [JAM] WIB
📍 Lokasi: [TEMPAT/ZOOM]

🎯 Yang akan dipelajari:
✅ [Point 1]
✅ [Point 2]
✅ [Point 3]

🎁 BONUS:
- E-book eksklusif
- Certificate
- Rekaman (lifetime access)

💰 Investasi: [HARGA]
🔥 Early Bird: [HARGA DISKON] (sampai [TANGGAL])

Mau daftar? Ketik DAFTAR! 🚀

Registration Flow:

Step 1 - Greeting:
"Hai! Terima kasih mau daftar [EVENT]! 🎉

Sebentar ya, kami butuh beberapa info.

Siapa nama lengkap kakak?"

Step 2 - Email:
"Terima kasih [NAMA]!

Sekarang, email kakak apa?
(untuk kirim link zoom & materi)"

Step 3 - Phone Confirm:
"Email: [EMAIL] ✅

Apakah nomor WA ini ([NOMOR]) yang akan digunakan?
Ketik YA atau kirim nomor lain."

Step 4 - Payment (if paid):
"Perfect! Detail pendaftaran:

📋 Nama: [NAMA]
📧 Email: [EMAIL]
📱 WA: [NOMOR]
🎫 Event: [NAMA EVENT]
💰 Investasi: Rp [HARGA]

Untuk konfirmasi, transfer ke:
🏦 BCA: 1234567890
👤 a.n. [NAMA REKENING]

Setelah transfer, kirim bukti ke sini ya!"

Confirmation:

✅ REGISTRASI BERHASIL!

Hai [NAMA]! Selamat, kamu sudah terdaftar!

📋 Detail Event:
🎫 [NAMA EVENT]
📅 [TANGGAL], [JAM] WIB
📍 [LOKASI/PLATFORM]

🎟️ Nomor Registrasi: #REG-[NOMOR]

📱 Link Zoom: [akan dikirim H-1]
📚 Materi: [akan dikirim setelah event]

⚠️ PENTING:
- Join 10 menit sebelum mulai
- Siapkan notes
- Pastikan koneksi internet stabil

Ada pertanyaan? Reply pesan ini!

Sampai jumpa di event! 🎉

Reminder Sequence

H-7 (Save the Date):

⏰ REMINDER: 1 MINGGU LAGI!

Hai [NAMA]! 👋

Jangan lupa, [EVENT] akan dimulai dalam 7 hari!

📅 [TANGGAL]
⏰ [JAM] WIB

Mark your calendar! 📌

Tips persiapan:
- Review materi yang akan dibahas
- Siapkan pertanyaan
- Pastikan jadwal clear

See you soon! 🚀

H-3:

⏰ REMINDER: 3 HARI LAGI!

[NAMA], getting excited? 🎉

[EVENT] akan dimulai hari [HARI], [TANGGAL]!

🎯 Yang akan kita bahas:
- [Topic 1]
- [Topic 2]
- [Topic 3]

Sudah siap? Ketik SIAP! 💪

H-1:

⏰ BESOK! [EVENT]

Hai [NAMA]! 

BESOK kita ketemu di [EVENT]!

📅 [TANGGAL]
⏰ [JAM] WIB
📍 Zoom Meeting

🔗 LINK ZOOM:
[LINK]

Meeting ID: [ID]
Passcode: [PASSCODE]

⚠️ Checklist:
□ Calendar reminder set
□ Link zoom saved
□ Internet connection ready
□ Notebook prepared

Sampai jumpa besok! 🙌

Hari H (1 jam sebelum):

🔔 1 JAM LAGI!

[NAMA], [EVENT] dimulai 1 jam lagi!

🔗 JOIN SEKARANG:
[LINK ZOOM]

Meeting ID: [ID]
Passcode: [PASSCODE]

💡 Tips:
- Join 10 menit lebih awal
- Matikan notifikasi HP
- Siapkan notes

Klik link di atas untuk join! 🚀

Hari H (5 menit sebelum):

🚨 STARTING IN 5 MINUTES!

[NAMA], we're about to start!

🔗 CLICK TO JOIN:
[LINK ZOOM]

See you inside! 👋

Post-Event Follow Up

Thank You (Same Day):

🎉 TERIMA KASIH!

Hai [NAMA]!

Terima kasih sudah join [EVENT] hari ini!

📚 MATERI:
- Slide: [LINK]
- Recording: [LINK]
- E-book: [LINK]

🏆 CERTIFICATE:
[LINK CERTIFICATE]

Ada feedback untuk kami?
Ketik saran/kritik kakak, sangat berarti! 🙏

Feedback Request (H+1):

📝 MINTA FEEDBACK

Hai [NAMA]! 👋

Gimana [EVENT] kemarin?

Tolong rate 1-5:
⭐ Content/materi
⭐ Penyampaian
⭐ Overall experience

Format: [ANGKA] [ANGKA] [ANGKA]
Contoh: 5 4 5

Plus comment/saran kalau ada! 🙏

Next Event Promo (H+3):

🎯 EVENT SELANJUTNYA

Hai [NAMA]!

Senang kamu suka [EVENT] kemarin!

Ada kabar baik! Event lanjutan:

🎫 [NAMA EVENT NEXT]
📅 [TANGGAL]
⏰ [JAM] WIB

🔥 EXCLUSIVE untuk alumni:
DISKON 30%! Kode: ALUMNI30

Mau daftar? Ketik DAFTAR! 🚀

Implementation

Registration Handler:

javascript

const registrationState = new Map();

const events = {
    'webinar-ai': {
        name: 'Webinar AI untuk Bisnis',
        date: '2026-03-01',
        time: '14:00',
        platform: 'Zoom',
        price: 0, // Free
        capacity: 100,
        registered: 45
    }
};

client.on('message', async msg => {
    const text = msg.body.toUpperCase();
    
    if (text === 'DAFTAR' || text === 'REGISTER') {
        registrationState.set(msg.from, { step: 'select_event' });
        await msg.reply(getEventListMessage());
        return;
    }
    
    const state = registrationState.get(msg.from);
    if (!state) return;
    
    switch (state.step) {
        case 'select_event':
            state.event = msg.body;
            state.step = 'get_name';
            await msg.reply('Great! Siapa nama lengkap kakak?');
            break;
            
        case 'get_name':
            state.name = msg.body;
            state.step = 'get_email';
            await msg.reply(`Terima kasih ${state.name}! Email kakak apa?`);
            break;
            
        case 'get_email':
            if (!isValidEmail(msg.body)) {
                await msg.reply('Hmm, email-nya sepertinya tidak valid. Coba ketik ulang ya!');
                return;
            }
            state.email = msg.body;
            state.step = 'confirm';
            await msg.reply(getConfirmationMessage(state));
            break;
            
        case 'confirm':
            if (msg.body.toUpperCase() === 'YA') {
                const registration = await createRegistration(msg.from, state);
                await msg.reply(getSuccessMessage(registration));
                await scheduleReminders(registration);
                registrationState.delete(msg.from);
            }
            break;
    }
});

Reminder Scheduler:

javascript

async function scheduleReminders(registration) {
    const eventDate = new Date(registration.event.date);
    
    const reminders = [
        { daysBefore: 7, template: 'reminder_7days' },
        { daysBefore: 3, template: 'reminder_3days' },
        { daysBefore: 1, template: 'reminder_1day' },
        { hoursBefore: 1, template: 'reminder_1hour' },
        { minutesBefore: 5, template: 'reminder_5min' }
    ];
    
    for (const reminder of reminders) {
        let sendAt;
        
        if (reminder.daysBefore) {
            sendAt = new Date(eventDate);
            sendAt.setDate(sendAt.getDate() - reminder.daysBefore);
            sendAt.setHours(10, 0, 0, 0);
        } else if (reminder.hoursBefore) {
            sendAt = new Date(eventDate);
            sendAt.setHours(sendAt.getHours() - reminder.hoursBefore);
        } else if (reminder.minutesBefore) {
            sendAt = new Date(eventDate);
            sendAt.setMinutes(sendAt.getMinutes() - reminder.minutesBefore);
        }
        
        await db.scheduledMessages.insert({
            phone: registration.phone,
            template: reminder.template,
            data: registration,
            sendAt: sendAt,
            status: 'pending'
        });
    }
}

Best Practices

DO ✅

- Simple registration (3-4 fields max)
- Immediate confirmation
- Multiple reminders (but not too many)
- Easy access to event link
- Post-event follow up
- Collect feedback

DON'T ❌

- Terlalu banyak form fields
- No confirmation
- Reminder spam
- Susah cari link event
- No follow up
- Ignore no-shows

FAQ

Berapa reminder yang ideal?

4-5 reminders: H-7, H-3, H-1, H-1jam, H-5menit. Adjust based on event type.

Bagaimana reduce no-show?

Reminders + easy access. Kirim link event di setiap reminder, bukan hanya sekali.

Integrate payment gateway atau manual confirm. Kirim ticket setelah payment verified.


Kesimpulan

Event bot = Higher attendance!

Without BotWith Bot
Manual registrationAuto registration
Forget to remindAuto reminders
High no-showBetter attendance
No follow upAuto feedback

Automate your event management!

Setup Event Bot →


Artikel Terkait