Events
Telusuri event hasil deteksi AI per kategori analitik (FRA, MPAA, MVAA, CE, LPR, PPE) dengan filter atribut, infinite scroll, dan toast alert real-time melalui WebSocket.
Pengenalan
Setiap kali AI melihat sesuatu yang memang diperintahkan untuk diperhatikan — sebuah wajah, plat kendaraan, orang yang melewati garis batas, atau kondisi keselamatan yang tidak terpenuhi — sistem menghasilkan satu event. Event itulah yang menjadi catatan terstruktur dari setiap temuan analitik.
Halaman Events (/events) adalah pintu masuk utama untuk menelusuri event-event tersebut, dikelompokkan per kategori analitik (FRA, MPAA, MVAA, CE, LPR, PPE), dilengkapi filter atribut yang spesifik per kategori, tampilan grid maupun tabel, serta infinite scroll.

Untuk integrator yang membangun sistem eksternal: halaman ini membaca data dari REST endpoint /api/event-history/{category} dengan cursor-based pagination. Sementara itu, toast alert real-time yang muncul di pojok kanan atas layar Lenz berasal dari WebSocket /api/alert_channel yang berjalan di background secara global — terlepas dari halaman yang sedang Anda buka.
Events vs Event History
Operator sehari-hari umumnya membuka Events ketika ingin menelusuri satu kategori secara cepat atau mengikuti perkembangan terkini, dan membuka Event History ketika perlu menggali arsip historis lintas tanggal atau kategori.
| Aspek | Events (/events) | Event History (/event-history) |
|---|---|---|
| Tampilan utama | Grid kartu event + tabel opsional | Tabel terkelompok per tanggal |
| Pemilihan kategori | Tab kategori di toolbar (FRA / MPAA / MVAA / CE / LPR / PPE) | Filter analitik multi-pilih |
| Filter atribut | Sidebar filter spesifik per kategori (gender, plat, area, dll.) | Filter Status & Logic ringkas |
| Pagination | Infinite scroll cursor-based | Pagination klasik dengan opsi load more |
| Penggunaan utama | Telusur cepat per kategori, deep-link ke detail | Investigasi & ekspor jangka panjang |
| Ekspor | Tersedia (PDF / Excel, hingga 100 event, berjalan di browser) | Tersedia (PDF / Excel, semua data) |
| Kesegaran data | Data historis dari database; toast alert muncul secara real-time dari WebSocket | Data historis dari database |
Halaman Events memuat data historis dari database melalui REST. Untuk melihat alert muncul langsung saat terjadi, perhatikan toast di pojok kanan atas — alert tersebut datang dari channel WebSocket terpisah yang tetap aktif di seluruh halaman Lenz, tidak hanya di halaman Events.
Alur Data Event
Diagram berikut menunjukkan dua jalur data yang relevan untuk halaman Events: REST untuk daftar/detail event dan WebSocket untuk toast alert real-time.
Membaca diagram ini dalam bahasa sehari-hari: kamera mengirim video mentah ke Visionaire yang kemudian menganalisisnya. Setiap temuan dikirimkan ke backend API, yang menyimpannya ke database dan sekaligus memeriksa apakah temuan tersebut memenuhi Alert Rule yang aktif. Halaman Events mengambil catatan dari database melalui REST setiap kali Anda membuka atau memfilter halaman.
Apabila sebuah event memenuhi kondisi Alert Rule, sistem secara bersamaan mendorongnya melalui WebSocket /api/alert_channel. Lenz menerima pesan tersebut secara langsung dan menampilkan toast notifikasi di pojok layar — bahkan ketika Anda sedang membuka halaman lain. Ini adalah jalur yang sama sekali terpisah dari REST; ia tidak perlu menunggu halaman di-refresh.
Cara Menggunakan
Buka halaman Events
Klik menu Events di sidebar Lenz. Halaman dimuat dengan kategori default fra. URL halaman menyimpan filter aktif (kategori, stream, rentang waktu, atribut) sehingga Anda dapat menyalin dan membagikan tampilan terfilter kepada rekan operator — siapa pun yang membuka link tersebut akan langsung melihat hasil yang sama.
Pilih kategori analitik
Gunakan toolbar kategori untuk memilih jenis event yang ingin Anda telusuri. Kategori menentukan kolom tabel, filter atribut, dan opsi pengurutan yang muncul di sidebar.
| Kategori | Kode | Deskripsi | Kapan digunakan operator |
|---|---|---|---|
| Face Recognition Analytics | fra | Pengenalan wajah: status known / unknown, similarity, atribut wajah | Gunakan tab ini ketika menyelidiki siapa yang muncul di kamera pada waktu tertentu, atau memverifikasi identitas seseorang |
| Multi-Person Attribute Analytics | mpaa | Deteksi orang dengan atribut (gender, usia, pakaian, area, direction, dwelling, density) | Gunakan tab ini ketika memantau pergerakan orang di suatu area — siapa yang masuk/keluar garis, berapa lama mereka berada di lokasi |
| Multi-Vehicle Attribute Analytics | mvaa | Deteksi kendaraan dengan atribut (tipe, merek, warna, kecepatan, logic counting/dwelling/density/speed) | Gunakan tab ini untuk memantau lalu lintas kendaraan, mendeteksi kendaraan yang berlama-lama di area terlarang, atau menelusuri kendaraan berdasarkan ciri fisik |
| Crowd Estimation | ce | Estimasi jumlah keramaian di area dengan interval | Gunakan tab ini untuk memantau kepadatan area — apakah suatu lokasi melebihi kapasitas aman |
| License Plate Recognition | lpr | Pembacaan plat nomor kendaraan, jenis plat, arah | Gunakan tab ini untuk menelusuri kendaraan berdasarkan nomor plat, atau memeriksa arah masuk/keluar di gerbang |
| PPE Detection | ppe | Deteksi perlengkapan keselamatan (helm, rompi, masker, kacamata, dll.) | Gunakan tab ini untuk memeriksa kepatuhan keselamatan kerja — siapa yang tidak mengenakan APD yang diwajibkan |

Gunakan filter di sidebar
Buka Filter di sidebar untuk mempersempit hasil. Filter dikelompokkan menjadi dua bagian:
Filter Umum — berlaku untuk semua kategori:
- Stream — pilih satu atau beberapa kamera/stream berdasarkan nama atau site
- Rentang Tanggal — batasi hasil pada periode tertentu
- Timezone — sesuaikan zona waktu tampilan
- Instance — pilih instance backend spesifik (mode Federation)
Filter per Kategori — bergantung pada kategori aktif:
- FRA: Status (known/unknown), gender, usia, masker, kacamata, penutup kepala, warna atasan/bawahan; pencarian berdasarkan kata kunci
- MPAA: Tipe logika (counting/dwelling/density), area, arah, dari/ke garis, gender, usia, masker, kacamata, penutup kepala, warna atasan/bawahan, tipe tubuh, ekspresi wajah, sarung tangan, pakaian atas/bawah, warna alas kaki, barang bawaan
- MVAA: Tipe kendaraan, merek, warna, vehicle advance, dari/ke garis, tipe logika (counting/dwelling/density/speed); pencarian berdasarkan merek
- CE: Nama area
- LPR: Tipe plat, tipe kendaraan, arah, status; pencarian berdasarkan nomor plat
- PPE: Kacamata pengaman, pelindung wajah, tali pengaman, pelindung kepala, warna helm, masker wajah, pakaian pelindung, warna pakaian pelindung, jenis alas kaki, sarung tangan, konteks kerja, tipe logika, area, dari/ke garis

Setiap perubahan filter langsung mengirim ulang query ke /api/event-history/{category} dengan parameter filter[...]. Filter aktif tercermin pada URL halaman secara otomatis sehingga link halaman dapat dibagikan.
Pilih view: Grid atau Tabel
Toggle Grid / Tabel di toolbar mengubah format tampilan:
- Grid — kartu event dengan thumbnail besar, cocok untuk review visual cepat (misalnya membandingkan wajah atau plat)
- Tabel — baris kompak dengan kolom atribut, cocok untuk skimming volume tinggi
Infinite scroll mengambil halaman berikutnya secara otomatis menggunakan next_cursor dari respons sebelumnya — cukup gulir ke bawah dan data berikutnya akan dimuat tanpa tombol "next page".
Klik event untuk melihat detail
Klik salah satu event untuk membuka panel Detail Event di sisi kanan layar (pada perangkat mobile, panel ini muncul sebagai layar penuh dari bawah). Panel berisi:
- Gambar utama — tangkapan kamera beresolusi penuh pada saat deteksi terjadi
- Gambar sekunder — gambar referensi: foto wajah yang terdaftar di database (untuk FRA), atau tangkapan plat nomor (untuk LPR)
- Atribut deteksi — semua atribut yang dianalisis oleh pipeline (gender, usia, pakaian,
plate_number, dan sebagainya). Dua atribut perlu penjelasan khusus:similarity(FRA) — nilai 0 hingga 1 yang menunjukkan seberapa mirip wajah yang terdeteksi dengan foto referensi di database. Nilai 1,0 berarti identik sempurna; nilai di atas 0,7 umumnya dianggap kemiripan yang kuat. Angka ini bukan persentase keyakinan bahwa orang tersebut adalah orang yang sama, melainkan ukuran kedekatan fitur wajah secara matematis.confidence— nilai 0 hingga 1 yang menunjukkan seberapa yakin model AI bahwa objek yang terdeteksi memang benar-benar objek yang dimaksud (misalnya: yakin bahwa itu adalah wajah, bukan gambar wajah di kertas). Ini bukan sama dengansimilarity.
- Informasi stream — nama kamera, lokasi, koordinat (jika dikonfigurasi), dan waktu deteksi yang tepat
- Tab Playback — putar ulang rekaman video sekitar 45 detik sebelum hingga 45 detik setelah waktu event (memerlukan NVR yang terhubung dan fitur Playback yang diaktifkan)
- Aksi follow-up — khusus event FRA: tandai tindak lanjut (cocok / tidak cocok / kadaluarsa / lainnya)

URL halaman juga mendukung deep-link ?open_event={event_id} — paste link tersebut akan membuka panel detail event yang dimaksud secara otomatis. Ini berguna untuk berbagi event spesifik dengan rekan operator atau manajer.
Ekspor hasil
Klik Ekspor di toolbar untuk membuka dialog ekspor.

Pilih:
- Format: PDF (cocok untuk laporan cetak atau presentasi) atau Excel (cocok untuk analisis lanjutan di spreadsheet)
- Cakupan: Halaman Saat Ini mengekspor event yang sudah dimuat di layar (hingga 100 event); Semua Event mengambil lebih banyak data sesuai filter aktif
- Sertakan Gambar: jika dicentang, setiap baris ekspor akan menyertakan gambar thumbnail dari event. Opsi ini meningkatkan ukuran file secara signifikan — PDF dengan 100 gambar bisa berukuran beberapa megabyte
Ekspor di halaman Events diproses langsung di browser Anda dan dibatasi hingga 100 event. Untuk mengekspor kumpulan data yang lebih besar, gunakan halaman Event History yang mendukung ekspor semua data secara asinkron di server.
Toast Alert: Tidak Hanya di Halaman Events
Penting untuk operator yang baru mengenal Lenz: Toast notifikasi alert muncul di pojok kanan atas layar terlepas dari halaman mana yang sedang Anda buka — baik di halaman Events, Streams, Konfigurasi, maupun halaman lainnya. Anda tidak perlu berada di halaman Events untuk menerima alert real-time.
Alert ini hanya muncul apabila event memenuhi minimal satu Alert Rule yang aktif. Jika Anda tidak melihat toast padahal kamera aktif mengirim event, pastikan Alert Rule sudah dikonfigurasi dan diaktifkan di menu Alert.
Fitur Utama
Tab Kategori per Analitik
Enam kategori (FRA, MPAA, MVAA, CE, LPR, PPE) masing-masing memiliki kolom, filter atribut, dan opsi pengurutan yang relevan secara otomatis.
Filter Multi-Dimensi
Kombinasikan filter Stream, rentang waktu, dan atribut spesifik kategori. Filter tercermin di URL — bagikan tampilan terfilter cukup dengan menyalin link halaman.
View Grid & Tabel
Beralih antara kartu visual untuk review cepat dan tabel kompak untuk skimming volume tinggi. Infinite scroll mengambil halaman berikutnya secara otomatis.
Toast Alert Real-time
WebSocket /api/alert_channel berjalan di background di seluruh sesi Lenz. Toast notifikasi muncul di pojok kanan atas saat event memenuhi Alert Rule, dengan suara dan warna sesuai Alert Type.
Detail Panel + Playback
Panel detail menampilkan gambar beresolusi penuh, semua atribut pipeline, dan tab Playback untuk memutar rekaman video di sekitar waktu event (memerlukan NVR).
Follow-up Action (FRA)
Operator dapat menandai status tindak lanjut event Face Recognition: cocok, tidak cocok, kadaluarsa, atau lainnya. Status terekam dan dapat dilacak di Event Follow-up.
Export PDF & Excel
Ekspor hasil sesuai filter aktif, hingga 100 event, langsung dari browser. Untuk ekspor data lebih besar, gunakan halaman Event History.
Federation Aware
Pilih instance backend tertentu di filter Instance. Parameter instance ikut terkirim ke setiap request dan menjadi bagian cache key.
WebSocket Protocol untuk Integrator
Bagian ini ditujukan untuk integrator yang ingin berlangganan langsung ke feed real-time dari luar Lenz — misalnya untuk membangun sistem notifikasi eksternal, dashboard monitoring, atau alur otomasi.
WebSocket adalah koneksi jaringan yang tetap terbuka sehingga server dapat mendorong event begitu terjadi — bayangkan perbedaan antara mengecek kotak surat setiap menit dengan tukang pos yang langsung mengetuk pintu saat ada paket. REST perlu di-polling berkala; WebSocket cukup dibuka sekali dan data mengalir masuk secara langsung.
Sistem menyediakan dua channel WebSocket:
| Channel | Endpoint | Isi | Otentikasi |
|---|---|---|---|
| Event Channel | /api/event_channel | Semua event mentah dari Visionaire (semua deteksi yang lewat pipeline) | Header Authorization: Bearer <token> |
| Alert Channel | /api/alert_channel | Hanya event yang memenuhi minimal satu Alert Rule aktif (untuk toast/notifikasi) | Query authorization=<token> (cara ini yang digunakan Lenz Dashboard) |
Endpoint Event Channel
wss://{BASE_URL}/api/event_channelGanti {BASE_URL} dengan hostname atau IP server backend Anda (tanpa protokol http:// atau https://).
Parameter Query
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
node_num | integer | Tidak | Nomor node (default: 0) |
stream_ids | string | Tidak | ID stream yang ingin dimonitor, pisahkan dengan koma untuk multiple |
analytic_id | string | Tidak | ID analitik untuk difilter, pisahkan dengan koma untuk multiple |
disable_base64_image | boolean | Tidak | Set true untuk menonaktifkan gambar base64 (hemat bandwidth, gunakan URL gambar) |
logic | string | Tidak | Filter berdasarkan logic type tertentu |
instance | string | Tidak | ID instance untuk arsitektur federation |
authorization | string | Tidak* | Bearer token (hanya untuk /api/alert_channel) |
is_aggregated | boolean | Tidak | Set true untuk menerima event dari semua instance dalam mode federation |
Parameter authorization di query string hanya digunakan pada channel alert (/api/alert_channel). Untuk event_channel, gunakan header Authorization: Bearer {token} saat handshake WebSocket.
Otentikasi
Sertakan Bearer Token pada saat handshake WebSocket melalui header HTTP:
// Browser API tidak mendukung custom header secara langsung.
// Gunakan token di query string untuk channel yang mendukungnya,
// atau gunakan Subprotocol header sebagai workaround.
const wsProtocol = location.protocol === 'https:' ? 'wss' : 'ws';
const baseUrl = location.host; // misalnya: lenz.contoh.com
const url = new URL(`${wsProtocol}://${baseUrl}/api/event_channel`);
url.searchParams.set('stream_ids', 'eb7022a64d9173a6,c1105b1c6e6b4f3a');
url.searchParams.set('analytic_id', 'NFV4-FR,NFV4-LPR');
url.searchParams.set('disable_base64_image', 'true');
const ws = new WebSocket(url.toString());
ws.onopen = () => {
console.log('Terhubung ke event channel');
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log('Event baru:', data);
};
ws.onclose = (event) => {
console.log('Koneksi tertutup:', event.code, event.reason);
};
ws.onerror = (error) => {
console.error('WebSocket error:', error);
};import WebSocket from 'ws';
// Dapatkan token terlebih dahulu melalui login
const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
const params = new URLSearchParams({
stream_ids: 'eb7022a64d9173a6,c1105b1c6e6b4f3a',
analytic_id: 'NFV4-FR,NFV4-LPR',
disable_base64_image: 'true',
});
const ws = new WebSocket(
`wss://api.contoh.com/api/event_channel?${params.toString()}`,
{
headers: {
Authorization: `Bearer ${token}`,
},
}
);
ws.on('open', () => {
console.log('Terhubung ke event channel');
});
ws.on('message', (data) => {
const event = JSON.parse(data.toString());
handleEvent(event);
});
ws.on('close', (code, reason) => {
console.log(`Koneksi tertutup: ${code} ${reason}`);
// Implementasikan reconnect dengan exponential backoff
setTimeout(() => reconnect(), 5000);
});
ws.on('error', (error) => {
console.error('WebSocket error:', error.message);
});
function handleEvent(event) {
// Proses event berdasarkan analytic_id
switch (true) {
case event.analytic_id.includes('FR'):
console.log(`[FRA] ${event.stream_id} - Status: ${event.pipeline_data?.status}`);
break;
case event.analytic_id.includes('LPR'):
console.log(`[LPR] ${event.stream_id} - Plat: ${event.pipeline_data?.plate_number}`);
break;
default:
console.log(`[${event.analytic_id}] ${event.stream_id}`);
}
}# cURL tidak mendukung WebSocket secara native.
# Gunakan websocat (https://github.com/vi/websocat) sebagai alternatif:
TOKEN="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
websocat \
-H "Authorization: Bearer ${TOKEN}" \
"wss://api.contoh.com/api/event_channel?stream_ids=eb7022a64d9173a6&disable_base64_image=true"Reconnect Otomatis
Lenz Dashboard mengimplementasikan reconnect otomatis dengan exponential backoff pada koneksi alert_channel. Sebaiknya Anda menerapkan logika yang sama di integrasi Anda:
| Parameter | Nilai |
|---|---|
reconnectInterval | 5.000 ms (5 detik, sebagai basis backoff) |
maxReconnectAttempts | 10 kali percobaan |
heartbeatInterval | 30.000 ms (30 detik) |
Backoff dihitung sebagai min(1000 × 2^attempt, 30000) + jitter — sehingga jeda antar percobaan semakin panjang, menghindari banjir koneksi ke server.
Alert Channel (untuk Toast & Sistem Eksternal)
Channel wss://{BASE_URL}/api/alert_channel hanya mengirim event yang sudah lolos minimal satu Alert Rule aktif. Cocok jika Anda hanya ingin menerima event-event signifikan, bukan seluruh aliran deteksi.
import WebSocket from 'ws';
const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
const params = new URLSearchParams({
authorization: token,
disable_base64_image: 'false',
is_aggregated: 'true', // ambil dari semua instance dalam Federation
});
const ws = new WebSocket(`wss://api.contoh.com/api/alert_channel?${params}`);
ws.on('message', (data) => {
const event = JSON.parse(data.toString());
// event.alert_history_id dan event.alert_type_id ikut terisi
console.log(`Alert ${event.alert_type_id}: ${event.analytic_id}`);
});Payload alert_channel mirip dengan event_channel, namun memiliki dua field tambahan:
| Field | Tipe | Deskripsi |
|---|---|---|
alert_history_id | string | ID alert history yang baru tercatat (lihat /api/alert-history/{id}) |
alert_type_id | number | ID Alert Type — gunakan untuk lookup warna, durasi, dan suara via /api/alert-type/{id} |
Format Event Payload
WebSocket Event Payload
Setiap pesan yang diterima dari WebSocket memiliki struktur berikut. Operator tidak pernah melihat JSON ini secara langsung — bagian ini ditujukan untuk integrator yang membangun sistem yang mem-parsing data event secara programatik.
{
"analytic_id": "NFV4-FR",
"stream_id": "eb7022a64d9173a6",
"node_num": 0,
"label": "UNKNOWN",
"location": "Lobby Utama",
"primary_image_url": "https://api.contoh.com/images/primary/abc123.jpg",
"secondary_image_url": "https://api.contoh.com/images/secondary/abc123.jpg",
"primary_image": null,
"secondary_image": null,
"result": "UNKNOWN",
"timestamp": "2026-04-30T08:23:45+07:00",
"status": "UNKNOWN",
"logic": "face_recognition",
"instance": null,
"alert_type_id": null,
"alert_history_id": null,
"pipeline_data": {
"face_id": "118747588341006337",
"similarity": 0.4893847107887268,
"status": "UNKNOWN",
"confidence_detection": 0.9988495111465454,
"variation": "13219648471735459236"
}
}Deskripsi Field Utama:
| Field | Tipe | Deskripsi |
|---|---|---|
analytic_id | string | ID analitik engine (contoh: NFV4-FR, NFV4-LPR, NFV4-PC) |
stream_id | string | ID stream/kamera sumber event |
node_num | integer | Nomor node Visionaire yang memproses event |
label | string | Label hasil deteksi (contoh: UNKNOWN, motorcycle, person) |
location | string | Nama lokasi/kamera seperti yang dikonfigurasi |
primary_image_url | string | URL gambar hasil tangkapan kamera |
secondary_image_url | string | URL gambar referensi (wajah terdaftar untuk FRA, plat untuk LPR) |
primary_image | string | null | Gambar base64 (hanya jika disable_base64_image=false) |
result | string | Teks hasil analitik (bisa berupa nama orang, plat, dll.) |
timestamp | string | Waktu deteksi dalam format ISO 8601 |
status | string | Status hasil (contoh: KNOWN, UNKNOWN) |
logic | string | Logic type yang digunakan (counting, dwelling, density, dll.) |
instance | string | null | ID instance backend jika dalam mode federation |
pipeline_data | object | Data spesifik per analitik (lihat di bawah) |
pipeline_data per Kategori
Field pipeline_data berisi detail analitik yang bervariasi per kategori. Sekali lagi, bagian ini untuk integrator — operator melihat atribut ini dalam bentuk label di panel detail, bukan sebagai JSON.
{
"face_id": "118747588341006337",
"similarity": 0.9234,
"status": "KNOWN",
"confidence_detection": 0.9988,
"variation": "13219648471735459236"
}| Field | Deskripsi |
|---|---|
face_id | ID wajah yang terdeteksi dalam database |
similarity | Nilai kemiripan 0–1 (1 = identik; nilai di atas 0,7 umumnya kuat) |
status | KNOWN atau UNKNOWN |
confidence_detection | Tingkat keyakinan deteksi wajah (0–1), terlepas dari identitas |
{
"plate_number": "B 1234 XYZ",
"label": "car",
"confidence": 0.9251,
"area_name": "Gerbang Masuk",
"bounding_box": {
"top": 0.409,
"left": 0.284,
"width": 0.247,
"height": 0.198
}
}| Field | Deskripsi |
|---|---|
plate_number | Nomor plat yang terbaca |
label | Jenis kendaraan (car, motorcycle, truck, dll.) |
confidence | Tingkat keyakinan pembacaan plat (0–1) |
area_name | Nama area/garis yang memicu event |
{
"area_name": "Area Pintu Masuk",
"label": "person",
"confidence": 0.9998,
"count": 3
}| Field | Deskripsi |
|---|---|
area_name | Nama area atau garis virtual yang dikonfigurasi |
label | Jenis objek yang terdeteksi (person) |
confidence | Tingkat keyakinan deteksi (0–1) |
count | Jumlah orang (untuk mode counting) |
Atribut tambahan seperti gender, usia, warna pakaian, dan sebagainya dikembalikan sebagai field-level di event (bukan di dalam pipeline_data) untuk kategori MPAA.
{
"area_name": "Gerbang Parkir",
"label": "car",
"confidence": 0.9875,
"count": 1
}| Field | Deskripsi |
|---|---|
area_name | Nama area atau garis virtual yang dikonfigurasi |
label | Jenis kendaraan yang terdeteksi |
confidence | Tingkat keyakinan deteksi (0–1) |
count | Jumlah kendaraan (untuk mode counting) |
Atribut tambahan seperti merek, warna, tipe kendaraan, dan kecepatan dikembalikan sebagai field-level di event (bukan di dalam pipeline_data) untuk kategori MVAA.
Tips & Troubleshooting
Selanjutnya
Event History
Telusuri arsip event historis dengan filter tanggal, export ke PDF/Excel untuk semua data, dan analisis mendalam.
Alert
Konfigurasi aturan alert otomatis yang mengirimkan notifikasi ketika kondisi tertentu terpenuhi.
Notification Channels
Sambungkan sistem alert ke email, webhook, atau channel lainnya untuk notifikasi eksternal.
Otentikasi
Panduan JWT, API Key, dan header federation untuk mengamankan koneksi WebSocket dan REST API.
API Reference — Assignment
Endpoint untuk mengelola Assignment analitik ke stream — template konfigurasi analitik, preset konfigurasi, dan drawing preset ROI.
API Reference — Events
Endpoint REST untuk mengambil event historis dan WebSocket channel untuk feed event real-time dari sistem analitik video.