Sistem donanımdan bağımsız çalışır: QR sadece kimliktir, kararı her zaman /api/scan verir. Bu yüzden telefon, tablet ya da turnike — hepsi aynı uçtan konuşur. Aşağıdaki sözleşme bir turnike entegratörüne doğrudan verilebilir.
Turnikenin QR/barkod okuyucusu (veya ona bağlı bir mini-PC/RPi köprü) her okutmada şu isteği atar:
POST /api/scan
Content-Type: application/json
{ "token": "USR-8f7a9c2d41b6", // QR içeriği (kimlik)
"hotelId": 3, // cihazın bağlı olduğu otel
"zone": "salon", // "salon" | "dis_kapi"
"scanUuid": "b1c2-...", // çevrimdışı tekrar koruması
"scannedAt": "2027-01-13T09:12:00Z" } // opsiyonel (çevrimdışı kuyruk)
Yanıt, turnikenin kapıyı açıp açmayacağını söyler:
{ "ok": true, "yon": "in", "ad": "Ahmet Yılmaz", "zoneAd": "Salon", "sure": "—" } → RÖLE AÇ
{ "ok": true, "yon": "out", "ad": "Ahmet Yılmaz", "sure": "2s 43dk" } → RÖLE AÇ
{ "ok": false, "reason": "BULUNAMADI" } → AÇMA + uyarı
| Mod | Kural | Nerede |
|---|---|---|
| Yoklama (MVP) | Bilinen her QR’da aç + kaydet; sadece bilinmeyen kodda açma. Kimse geri çevrilmez. | Dış kapı |
| Erişim kontrolü (Faz 2) | ok && izin ise aç; ödeme/onay yoksa reddet. | Salon (ücretli/onaylı zon) |
| Katman | Donanım | Maliyet | Ne zaman |
|---|---|---|---|
| Telefon / tablet | Güvenliğin kendi telefonu (bu PWA) | 0 TL | Şimdi — her iki zon |
| Turnike | Bel/kanatlı turnike + QR okuyucu + köprü | bayi teklifi | Faz 2 — sadece salon |
| Tip | Uygun | Not |
|---|---|---|
| Bel turnike (tripod) | En ekonomik, hızlı akış | Standart fuar girişi |
| Kanatlı (flap) bariyer | Premium salon görünümü | Belek resort holü için şık |
| Swing / geniş geçiş | Engelli + bagaj/valiz | KVKK/erişilebilirlik |
20 otelin hepsine turnike koyma. Turnikeyi yalnızca salon girişine koy — ücretlendirmenin ve kalabalığın olduğu asıl nokta orası. Dış kapı, resortların zaten var olan güvenliğiyle + telefon PWA ile yürür.
Böylece donanım maliyeti “20 otel × turnike” değil, “aktif salon sayısı × 1–2 turnike” olur. QR okuyucular sabit; müşteri hiçbir şey değiştirmez; sistem hangi turnikenin hangi otel+zon olduğunu bilir.