# Apa itu OmniStream?


**OmniStream** adalah platform CRM (Customer Relationship Management)
omnichannel yang dirancang untuk menyatukan semua komunikasi pelanggan
di satu tempat. Alih-alih tim support Anda membuka aplikasi WhatsApp,
Instagram, dan email masing-masing, OmniStream menggabungkan ketiganya
dalam satu inbox terpadu dengan fitur real-time, otomatisasi, dan
analitik.

![Ilustrasi produk OmniStream](/screenshots/dashboard.png)

## Siapa yang menggunakan OmniStream?

OmniStream dirancang untuk tim customer service, penjualan, dan support
di organisasi berskala menengah ke atas — terutama yang:

- Menerima pesan masuk dari banyak channel sekaligus.
- Membutuhkan pelacakan waktu respon (SLA) dan beban kerja per agent.
- Ingin meng-campaign pesan massal ke pelanggan (broadcast WhatsApp).
- Menginginkan data komunikasi tersimpan aman di infrastruktur sendiri
  (self-hosted).

## Kanal yang didukung

OmniStream v1 mendukung tiga kanal komunikasi:

| Channel | Inbound | Outbound | Status Pesan | Media |
|---------|---------|----------|--------------|-------|
| **WhatsApp** | Meta Cloud API webhook | Meta Graph API | sent/delivered/read/failed | Gambar, dokumen, video, audio, lokasi |
| **Instagram DM** | Meta Messaging webhook | Meta Graph API | delivered/read | Gambar, video, audio |
| **Email** | Webhook (SendGrid Inbound Parse kompatibel) | SMTP (lettre 0.11) | pending/sent/failed | HTML + plain text, lampiran |

Integrasi channel dikonfigurasi di halaman
[Integrations](/panduan/integrasi/integrations-overview) (hanya peran
Admin yang dapat mengelola kredensial channel).

## Fitur utama

### Inbox terpadu
Semua pesan dari semua channel muncul di satu layar `/inbox`, lengkap
dengan filter status, pencarian, dan indikator messaging window.

### Agent dan peran (RBAC)
Tiga peran: **Agent**, **Supervisor**, dan **Admin**. Setiap peran
memiliki akses yang berbeda — agent hanya melihat percakapan yang
ditugaskan kepadanya, supervisor melihat seluruh divisi, admin
mengatur workspace.

### Quick replies dan template
Balasan standar yang dapat disisipkan dengan perintah `/`, plus
template WhatsApp yang telah disetujui Meta untuk mengirim pesan di
luar messaging window.

### SLA tracking
Kebijakan waktu respon dan waktu penyelesaian yang dapat dikonfigurasi
per channel atau per divisi. Pelanggaran SLA dihitung otomatis dan
dikirimkan ke supervisor via notifikasi real-time.

### Campaign broadcast
Kirim pesan WhatsApp ke banyak kontak sekaligus menggunakan template
yang telah disetujui, dengan tracking deliverability per penerima.

### Outgoing webhook
Publikasikan event (pesan masuk, pesan keluar, percakapan resolved,
dst.) ke sistem eksternal Anda dengan HMAC-signed payload.

### Analytics
Dashboard real-time untuk jumlah percakapan, waktu respon rata-rata,
kinerja agent, dan CSAT score.

## Arsitektur singkat

OmniStream adalah aplikasi **event-driven** berbasis microservice.
Selengkapnya di [Konsep inti](/panduan/pengenalan/konsep-inti).
Dari sudut pandang pengguna akhir, semua interaksi terjadi melalui
antarmuka web yang Anda buka di browser.

## Self-hosted dan open-source

Berbeda dengan CRM SaaS seperti Intercom atau Zendesk, OmniStream
dijalankan **di infrastruktur Anda sendiri**: server on-premise, VPS,
atau cloud instance milik perusahaan. Semua data pelanggan (kontak,
percakapan, pesan) tersimpan di PostgreSQL dan MongoDB yang Anda
kontrol, tanpa control-plane pihak ketiga.

- **PostgreSQL 15** — data relasional (agents, contacts, conversations,
  quick replies, SLA, campaigns, webhooks).
- **MongoDB 7** — penyimpanan pesan volume tinggi dan audit raw
  webhook payload.
- **Redis 7** — pub/sub real-time dan cache.
- **Redpanda** (kompatibel Kafka) — event broker.
- **MinIO** — object storage S3-kompatibel untuk media.
- **Mailpit** — server SMTP lokal untuk development.

## Di mana memulai

- **Pengguna baru?** Mulai dari [Konsep inti](/panduan/pengenalan/konsep-inti)
  untuk memahami istilah seperti *percakapan*, *tag*, dan *SLA*, lalu
  ikuti [Login pertama](/panduan/memulai/login).
- **Ingin langsung bekerja sebagai agent?** Buka
  [Inbox Agent](/panduan/agent/inbox).
- **Developer yang ingin mengintegrasikan via API?** Buka
  [API Reference](/api).
- **Admin yang akan mengonfigurasi channel?** Mulai dari
  [Integrasi](/panduan/integrasi/integrations-overview).

---

Baca selanjutnya: [Konsep inti](/panduan/pengenalan/konsep-inti).
