OmniStream Docs
  • Panduan Pengguna
  • Developer
  • API Reference
Developer Hub
Pendahuluan
Autentikasi
Model Data
    Ikhtisar Model DataSchema PostgreSQLKoleksi MongoDBRedis Pub/SubModel AgentModel ContactModel ConversationModel MessageRoles & Permissions
Webhook
WebSocket
Self-Hosting
Error & Rate Limit
Model Data

Ikhtisar Model Data

Ikhtisar Model Data

OmniStream memisahkan seluruh tipe data domain ke dalam crate omni-common supaya seluruh microservice (api-gateway, webhook-ingestor, chat-engine, message-sender, ws-server) memakai struct yang sama. File sumbernya ada di crates/omni-common/src/models/ (total 18 modul file .rs, tidak termasuk mod.rs).

Verifikasi jumlah modul pada commit apapun:

TerminalCode
ls crates/omni-common/src/models/ | grep -v '^mod\.rs$' | wc -l # → 18

18 modul model

Enumerasi lengkap (urut alfabet):

#ModulFileBacking storePeran
1activity_logcrates/omni-common/src/models/activity_log.rsPostgreSQLJejak audit per-agent (login, ubah kontak, resolve conversation, dll)
2agentcrates/omni-common/src/models/agent.rsPostgreSQLUser internal CRM: admin / supervisor / agent (RBAC)
3automationcrates/omni-common/src/models/automation.rsPostgreSQLAturan otomatisasi (trigger + action). Deferred v1.1 (lihat SCOPE.md)
4campaigncrates/omni-common/src/models/campaign.rsPostgreSQLKampanye broadcast + penerima + status pengiriman
5chat_expirationcrates/omni-common/src/models/chat_expiration.rsPostgreSQLAturan auto-resolve conversation. Deferred v1.1
6contactcrates/omni-common/src/models/contact.rsPostgreSQLPelanggan/end-user (kunci = phone/email)
7conversationcrates/omni-common/src/models/conversation.rsPostgreSQLPercakapan antara contact dan agent (state machine open/resolved)
8csatcrates/omni-common/src/models/csat.rsPostgreSQLSurvei kepuasan pelanggan setelah resolve
9divisioncrates/omni-common/src/models/division.rsPostgreSQLDivisi/tim + keanggotaan agent
10eventscrates/omni-common/src/models/events.rsKafka + RedisSkema event untuk topik Kafka dan channel Redis pub/sub
11integrationcrates/omni-common/src/models/integration.rsPostgreSQLKonfigurasi channel (WhatsApp/Instagram/Email) dengan hot-reload
12messagecrates/omni-common/src/models/message.rsMongoDBPesan chat individual (volume tinggi, karena itu disimpan di Mongo)
13notecrates/omni-common/src/models/note.rsPostgreSQLCatatan internal pada sebuah conversation
14quick_replycrates/omni-common/src/models/quick_reply.rsPostgreSQLTemplate pesan cepat milik organisasi/agent
15scheduled_messagecrates/omni-common/src/models/scheduled_message.rsPostgreSQLPesan terjadwal yang di-dispatch oleh scheduler
16slacrates/omni-common/src/models/sla.rsPostgreSQLKebijakan SLA + log pelanggaran
17webhookcrates/omni-common/src/models/webhook.rsPostgreSQLOutgoing webhook definitions + antrian webhook_deliveries
18webhook_auditcrates/omni-common/src/models/webhook_audit.rsMongoDBRaw webhook payload untuk replay/forensik

File mod.rs tidak dihitung sebagai modul domain. Commit paling awal masih menyebut "17 model modules" di CLAUDE.md; counter sebenarnya adalah 18 sejak automation.rs dan chat_expiration.rs ditambahkan. Lihat drift register di docs-site/SCOPE.md Section 3.

Pemisahan backing store

  • PostgreSQL menyimpan 15 dari 18 modul — semua data relasional: agent, contact, conversation, note, quick_reply, scheduled_message, integration, division, sla, campaign, csat, webhook, activity_log, automation, chat_expiration.
  • MongoDB menyimpan 2 modul volume-tinggi: message (satu dokumen per pesan chat) dan webhook_audit (payload mentah webhook inbound untuk replay).
  • Kafka + Redis memegang events — bukan "store", melainkan skema wire-format untuk kanal event antar-service (lihat developer/model-data/redis-pubsub dan developer/webhook/outgoing).

Referensi

  • Daftar file resmi: crates/omni-common/src/models/mod.rs
  • Struktur Postgres mentah: 41 file migrasi di migrations/ (lihat developer/self-hosting/migrations)
  • Koleksi MongoDB: dibangun otomatis di crates/omni-common/src/db/mongodb.rs::setup_indexes
Last modified on June 8, 2026
RBAC dan matriks izinSchema PostgreSQL
On this page
  • 18 modul model
  • Pemisahan backing store
  • Referensi