Evde geçiş sistemi api nasıl yapılır
Evde Geçiş Sistemi API Nasıl Yapılır?
Evde kendi geçiş kontrol sisteminizi kurmaya başladığınızda, bir noktada "bunu yazılım ile nasıl yönetirim?" sorusuyla karşılaşırsınız. İşte burada devreye API giriyor. Ben de başlangıçta bu konuda tereddüt yaşamıştım, ama açıkçası geçiş sistemi API'si düşündüğünüz kadar karmaşık değil. Adım adım ilerlerseniz, kendi ev sisteminizde veya apartmanınızda professional bir kontrol mekanizması kurabilirsiniz.
API Nedir ve Neden Geçiş Sisteminize İhtiyacınız Var?
API, Application Programming Interface demek. Basit anlatımla, yazılımınızın donanımsal bileşenlerinizle (kartlı okuyucu, kilit, vb.) konuşmasını sağlayan bir köprü. Bir API olmadan, kart okuyucudan gelen bilgiyi nasıl işleyeceğinizi, kimi geçirmeyeceğini, kilit açılsın mı kapansın mı diye tek tek karar vermeniz gerekir. API sayesinde tüm bu işlemler otomatikleştirilir.
Adım 1: İhtiyaçlarınızı Tanımlayın
İlk olarak, sisteminizin ne yapması gerektiğini yazın. Örneğin:
- Kaç kapısı kontrol edilecek?
- Kimler girebilecek ve hangi saatlerde?
- Geçiş verilerini kaydetmek istiyor musunuz?
- Mobil uygulama üzerinden kontrol etmek gerekiyor mu?
- Bulut tabanlı mı, yerel panel mi kullanacaksınız?
Bu sorulara cevap verirseniz, API'nizin nasıl tasarlanması gerektiği ortaya çıkar. Tek bir kapı, sabit saatler ve basit kart okuma mi gerçekten ihtiyacınız? Yoksa gelecekte çoklu kullanıcı, zaman profilleri ve farklı yetkilendirmeler mi ekleyebilir olmanız gerekiyor?
Adım 2: Donanımsal Altyapıyı Hazırlayın
API yazabilmek için önce, okuyucunuzdan veri alamanız gerekir. Kurulumunuzda şunlar olmalı:
- RFID ya da kartlı okuyucu (USB ya da seri port bağlantılı)
- Kontrol paneli (geçiş kontrol cihazı)
- Elektrik kilit ya da motorlu kilit
- Bilgisayar ya da Raspberry Pi gibi bir cihaz API'yi çalıştırmak için
Okuyucunuz hangi protokolle (Wiegand, USB HID, seri iletişim) çalışıyor, bunu öğrenin. Bu bilgi, API'de veri okuma kısmını yazarken kritik olacaktır.
Adım 3: Programlama Dilini Seçin
Basit bir API için Python, Node.js ya da C# gibi diller idealdir. Ben Python'ı seviyorum; açık kaynak kütüphaneleri çok zengin ve başlamak kolay.
Örneğin, seri port üzerinden veri okuyan basit bir yapı şöyle başlar:
Okuyucudan gelen kartın ID numarasını al → Veritabanında kontrol et → Eğer kayıtlıysa ve şu an girmesine izin veriliyorsa → Kilidi aç → Geçişi logla
Adım 4: Veritabanı Kurun
Kimin hangi kartla girmesine izin verileceğini, hangi saatlerde, hangi kapıdan geçebileceğini depolamanız gerekir. SQLite (basit projeler için) ya da MySQL (daha büyük sistemler için) kullanabilirsiniz.
Temel tablolar:
- Kullanıcılar: İsim, kimlik numarası, durumu (aktif/pasif)
- Kartlar: Kart ID, kimin kartı, aktivasyon tarihi
- Zaman Profilleri: Sabah 8-18 arası giriş yapabilir, vs.
- Geçiş Logları: Kim, ne zaman, hangi kapıdan girdi
Adım 5: API Endpoint'lerini Yazın
API'nin dış dünyaya sunacağı "komutlar"ı tanımlayın:
- POST /api/check-card → Kartı kontrol et, giriş izni ver ya da reddet
- GET /api/logs → Geçiş kayıtlarını getir
- POST /api/add-user → Yeni kullanıcı ekle
- PUT /api/user/:id → Kullanıcı bilgisini güncelle
- POST /api/unlock-door → Kapıyı uzaktan aç (opsiyonel)
Adım 6: Güvenliği Göz Önünde Bulundurun
API'nize erişim şifresiz değil, kesinlikle başkasına açık olmamalıdır. Token tabanlı kimlik doğrulama (JWT) ekleyin. Kart numaralarını ve şifreleri düz metin olarak loglamayın.
Sık Yapılan Hatalar
1. Çok Hızlı Başlamak: API yazılımına başlamadan önce, donanımınızı test edin. Kart okuyucu düzgün çalışıyor mu? Kilit açılıyor mu? Bunlar belirli olmadan yazılım üzerine uğraşmak vakit kaybıdır.
2. Zaman Profilleri Unutmak: Kullanıcıyı eklediniz ama "bu kişi sadece 9-17 arası girmeli" kuralını koymadınız. API'de mutlaka zaman kontrol mekanizması bulunmalı.
3. Hata Yönetimini İhmal Etmek: Kart okuyucu bağlantısı koptu, veritabanı erişilemedi, kilit açılmadı... Tüm bu senaryolara karşı hata mesajları ve fallback mekanizmaları yazın.
4. Yedekleme Yapmamak: Geçiş verileriniz değerli bilgilerdir. API'nizi her çalıştırdığında, bir kopyasını alın.
Özet
Evde geçiş sistemi API'si kurmak, temelden başladığınızda gayet makul bir proje. Donanımınızı tanıyın, basit bir veritabanı tasarlayın, programlama dilinizde kart okuma işlevini yazın ve sırasıyla kontrol mekanizmalarını ekleyin. Hata işlemesi ve güvenliği unutmayın. İlk başta işlevsel olması yeterli; zamanla, mobil uygulama desteği ya da bulut entegrasyonu gibi özellikleri ekleyebilirsiniz. Kendi sisteminizi kurmanın güzelliği, tam olarak ihtiyacınız olanı yapmasını sağlayabilmektir.