Server-Sent Events

Realtime Registry bằng SSE.

Backend hiện có endpoint GET /api/public/v1/stream. Connection trả event-stream, gửi snapshot mới nhất rồi refresh mỗi 5 giây, heartbeat mỗi 15 giây và tự đóng sau 120 giây.

Protocol

Payload và nhịp stream.

event: latest

Mỗi snapshot public trả danh sách tối đa 10 Evidence mới nhất.

5 giây

Server gọi lại query registry để cập nhật snapshot.

15 giây

Heartbeat comment : ping giữ connection sống.

120 giây

Server đóng connection; client EventSource sẽ reconnect.

Example

Consumer tối giản.

const es = new EventSource(
  'https://copyright.info.vn/api/public/v1/stream'
);

es.addEventListener('latest', (event) => {
  const payload = JSON.parse(event.data);
  console.log(payload.results);
});

es.addEventListener('error', () => {
  console.log('stream interrupted; browser will reconnect');
});
Security & caching

Chỉ public-safe metadata.

Public filtering

Query chỉ lấy Evidence SEALED và visibility PUBLIC, sau đó dùng public-safe owner và verification fields.

No raw file stream

SSE chỉ đẩy metadata JSON. Nội dung tài liệu gốc không được truyền qua stream.