Digital Signage
Ekrana video değil, küçük bir JSON gider; tasarım cihazda çizilir.
Android ekranlara video yerine küçük JSON dokümanları gönderip cihazda şablonlarla render eden gerçek zamanlı sistem.
- Rol
- Backend, yönetim paneli, Android
- Yıl
- 2026
- Durum
- Açık kaynak
- Yığın
- NestJS · Next.js · Kotlin · Jetpack Compose · WebSocket · Docker
- Bağlantılar
- Kaynak kod
Mimari
Mimari
- 01
Android ekran
Kotlin + Jetpack Compose. Şablonlar APK’nın içinde; yeni şablon bir satır kayıt ve bir Composable.
- 02
Yönetim paneli
Next.js. Ekranlar, cihazlar, medya, zamanlama ve ekip; önizleme cihazla aynı ölçülerle çizilir.
- 03
WebSocket
OkHttp ile konuşabilen ham WebSocket; değişiklikler RFC 6902 delta olarak gider.
- 04
NestJS + SQLite
Çok kiracılı organizasyonlar, roller, davetler, plan limitleri ve zamanlama motoru.
Ekranlar
Ekranlar
Dört şablonla dört ekran: bilgi, sipariş, sıra numarası ve medya.
Eşleştirme
Yeni cihaz kimliğini ve QR kodunu gösterir; panelden kodla eşleştirilir.
Gerçek ekran görüntüleri, dil ve temaya göre değişir
Nasıl çalışıyor
Kontrol düzlemi JSON
Sunucu ekrana sadece “bu şablonu bu veriyle çiz” der. Ağır medya ayrı bir kütüphanede durur; cihaz onu önceden indirir, SHA-256 ile doğrular ve diskten oynatır. Böylece değişiklik neredeyse hiç bant genişliği harcamadan, bir saniyenin altında cihaza ulaşacak şekilde tasarlandı.
Sadece fark gider
Yeni bir sipariş eklendiğinde ekranın tamamı değil, yalnızca değişen alanlar gider. Cihaz farkı uygulayamazsa tam veriyi kendisi ister. Panelden gelen HTTP değişikliği, süreç içi bir olay veri yolu üzerinden cihazın bağlı olduğu WebSocket’e aktarılır.
Ağ gidince ekran kararmaz
Son ekran cihazda saklanır ve bağlantı yokken ya da açılışta gösterilir; medya önbellekten oynar. Cihaz artan aralıklarla yeniden bağlanır, uygulama çökerse kendini yeniden başlatır ve bozuk bir sürümde sonsuz döngüye girmemek için 2 dakikada 3 çökmeden sonra durur.
Ekipler, entegrasyonlar ve kurulum
Organizasyonlar, sahip/editör/izleyici rolleri, e-posta davetleri, iki adımlı doğrulama, ekran bazlı API anahtarlarıyla POS ve sıramatik entegrasyonu. Kurulum Docker Compose ve Caddy ile tek komut, HTTPS otomatik.