Lewati ke konten utama

Pendahuluan

Berlangganan untuk menerima notifikasi dan pembaruan terkait produk.

Informasi lebih lanjut tentang antarmuka pengguna modul ini https://doc.oneentry.cloud/docs/category/events


🎯 Apa yang dilakukan modul ini?

Modul Events memungkinkan Anda mendaftar pengguna untuk notifikasi produk - seperti email ketika produk tersedia kembali, atau peringatan ketika harga turun. Anda mengonfigurasi acara di panel admin OneEntry; SDK mengelola siapa yang terdaftar untuk apa.

Anggap saja ini sebagai sistem langganan produk - pengguna mendaftar untuk produk tertentu (atau formulir) dan menerima notifikasi ketika ada perubahan.

🚀 Memulai dengan Cepat

Inisialisasi modul dari defineOneEntry:


const { Events } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);

Daftar acara yang tersedia (publik — tidak memerlukan otorisasi):

// Fetch all events configured in the admin panel.
const events = await Events.getAllEvents();

events.forEach((event) => {
console.log(event);
});

Untuk mendaftar pengguna ke acara produk, Anda harus diotorisasi terlebih dahulu, kemudian panggil subscribeByMarker(marker, productId, langCode?):

// Requires an authorized user (see AuthProvider).
const ok = await Events.subscribeByMarker("product_price_change", 12345, "en_US");
console.log(ok); // true on success

✨ Konsep Kunci

Apa itu Acara Produk?

Acara produk adalah notifikasi yang dipicu oleh perubahan pada produk:

  • Pemicu - apa yang terjadi pada produk (misalnya "tersedia kembali", "harga turun")
  • Notifikasi - apa yang diterima oleh pelanggan (email atau push)
  • Pelanggan - pengguna yang memilih untuk menerima pembaruan produk ini
  • Template - konten pesan notifikasi (dikonfigurasi di panel admin)

Modul ini juga mendukung acara formulir: mendaftar untuk / berhenti berlangganan dari notifikasi yang terkait dengan pengiriman formulir menggunakan subscribeToForm / unsubscribeFromForm.

Saluran Notifikasi

SaluranDeskripsiTerbaik Untuk
EmailMengirim pesan emailPeringatan restock, penurunan harga, buletin
Push NotificationPeringatan mobile/browserPeringatan mendesak, penjualan kilat

📋 Apa yang Perlu Anda Ketahui

Acara dikonfigurasi di panel admin

Pemicu, saluran, dan template diatur di panel admin OneEntry. SDK tidak membuat acara atau memicu mereka secara manual — acara dipicu secara otomatis ketika data produk berubah. SDK digunakan untuk mendaftar acara dan mengelola langganan.

Otorisasi

getAllEvents() adalah publik. Setiap metode langganan (getAllSubscriptions, subscribeByMarker, unsubscribeByMarker, subscribeToForm, unsubscribeFromForm, getFormSubscriptions) memerlukan pengguna yang terotorisasi — lihat AuthProvider.

Variabel Template

Gunakan placeholder dalam template notifikasi untuk menyertakan detail produk seperti nama, harga, dan ketersediaan. Template diedit di panel admin.


📊 Tabel Referensi Cepat - Metode Umum

MetodeApa yang Dilakukannya
getAllEvents()Mendapatkan semua acara yang tersedia
getAllSubscriptions() 🔐Mendapatkan semua langganan produk
subscribeByMarker() 🔐Mendaftar untuk acara produk berdasarkan marker
unsubscribeByMarker() 🔐Berhenti berlangganan dari acara produk berdasarkan marker
subscribeToForm() 🔐Mendaftar untuk acara formulir berdasarkan marker
unsubscribeFromForm() 🔐Berhenti berlangganan dari acara formulir berdasarkan marker
getFormSubscriptions() 🔐Mendapatkan semua langganan formulir

🔐 metode memerlukan otorisasi pengguna — lihat AuthProvider. getAllEvents() dapat diakses tanpa otorisasi.


❓ Pertanyaan Umum (FAQ)

Bagaimana cara membuat atau mengedit acara produk?

Acara dibuat dan dikonfigurasi di panel admin OneEntry (bagian Events) — atur pemicu, saluran, dan template di sana, kemudian aktifkan acara. SDK hanya mencantumkan acara dan mengelola langganan.


Bisakah saya memicu acara produk secara manual dari kode saya?

Tidak. SDK tidak mendukung pemicu manual — acara dipicu secara otomatis berdasarkan pemicu yang dikonfigurasi di OneEntry ketika data produk berubah.


Mengapa pendaftaran gagal dengan kesalahan otorisasi?

Metode langganan memerlukan pengguna yang terotorisasi. Otorisasi terlebih dahulu melalui modul AuthProvider, kemudian panggil subscribeByMarker / subscribeToForm. getAllEvents() berfungsi tanpa otorisasi.


🎓 Praktik Terbaik

  • Otorisasi pengguna sebelum memanggil metode langganan apa pun.
  • Gunakan marker acara yang deskriptif (misalnya product_back_in_stock, product_price_drop).
  • Selalu tawarkan jalur berhenti berlangganan yang mudah (unsubscribeByMarker / unsubscribeFromForm).
  • Tangani kesalahan langganan dengan baik dan periksa bentuk pengembalian IError.

🔗 Dokumentasi Terkait