PTS PTS-Ticari · Mobil API

Telefon ile merkez arasındaki kapı

Plasiyerin telefonu, sahada yaptığı her işi bu kapıdan merkeze gönderiyor. Bu sayfa o kapının ne yaptığını anlatır ve gerçekten çalıştığını burada, kendi gözünüzle denemenizi sağlar.

Önce şunu bilin: API bu adreste değil

Bu sayfa yalnız bir tanıtım ve deneme sayfasıdır. Telefonun konuştuğu adres burası değil, her firmanın kendi adresidir: https://firmaniz.plasiyertakip.com/api/v1/…

Bunun sebebi güvenlik: sunucu, isteğin geldiği adresten hangi firma olduğunu çözüyor ve jetonun üzerindeki firma adıyla karşılaştırıyor. İkisi tutmuyorsa isteği reddediyor. Bütün firmalar tek ortak adrese taşınsaydı bu kapı ortadan kalkardı; o yüzden taşınmıyor.

Aşağıda firmanızın adres adını yazdığınızda, bu sayfa istekleri doğrudan firmanızın kendi adresine gönderir.

1Sunucunuz ayakta mı?

Firmanızın adres adını yazın, sayfa sunucuya “orada mısın” diye sorsun. Bu soru için kullanıcı adı veya şifre gerekmez.

.plasiyertakip.com

Sorulacak adres: https://….plasiyertakip.com

Firma
Firma kodu
Sunucu sürümü
Sunucu saati


      

2Gerçekten giriş yapın

Aşağıdaki bilgiler gerçek giriş bilgileridir; sayfa bunlarla sunucuya gerçekten bağlanır. Şifreniz bu sayfada hiçbir yere kaydedilmez, gönderildiği anda kutudan da silinir.

Merkez, telefonu sisteme tanıtırken bu numarayı verir. Telefon kaybolduğunda merkez onu kestiği anda jeton da ölür.

Bunu siz yazmıyorsunuz — 1. adımda sunucunun kendisi söyledi. Sunucu bu kodu adresle karşılaştırır; tutmuyorsa girişi reddeder.

3Sunucu sizi nasıl tanıyor?

Giriş başarılı olduğunda sayfa hemen /oturum/ben ucunu çağırır. Telefon da her açılışta aynısını yapar: jeton hâlâ geçerli mi, bu kişi neyi yapabilir?


      

Burası 2. adımdan sonra dolar.

Ne çağrıldı?

Bu sayfanın gönderdiği her istek burada görünür. Yalnız yöntem, adres ve sonuç yazılır — şifre, jeton ve gövde yazılmaz.

Henüz istek gönderilmedi.

Şu an açık olan uçlar

Hepsi https://firmaniz.plasiyertakip.com/api/v1/ ile başlar. Cevabın şekli her zaman aynıdır; hata da başarı da aynı zarfla döner.

Tablo geniş — parmağınızla yana kaydırın.

Ne yapar Ne ister Ne döner
GET
/saglik
Sunucu ayakta mı, firma tanımlı mı, Saha modülü açık mı. Hiçbir şey. Kimlik istemez. Firma unvanı ve kodu, sunucu sürümü, bağlantı şifreli mi, veri deposu bağlı mı. Hiçbir iş verisi dönmez.
POST
/cihaz/kayit
Bir telefonu ilk kez sisteme tanıtır. Merkezden alınan tek kullanımlık tanıtma kodu + plasiyerin şifresi. Telefon kaydı ve jeton. Kod ikinci kez kullanılamaz.
POST
/cihaz/kullanici
Aynı telefonu başka bir plasiyere devreder. Geçerli jeton + yeni plasiyerin şifresi. Tanıtma kodu istenmez — sabah 05:00'te şoför değişince merkezde kimse olmuyor. Yeni jeton. Eski jeton anında ölür.
POST
/oturum/giris
Kullanıcı adı ve şifreyle jeton alır. Kullanıcı adı, şifre, firma kodu; plasiyer ise telefonun tanıtım numarası. 12 saatlik jeton + 60 günlük yenileme jetonu.
POST
/oturum/yenile
Süresi dolan jetonun yerine yenisini verir. Yenileme jetonu. Yeni jeton çifti. Aynı yenileme jetonu en çok iki kez kullanılabilir: bir kullanım + bir tekrar.
POST
/oturum/cikis
Jetonu öldürür. Jeton. Onay. Jeton zaten ölmüşse de hata vermez — ağ koptuktan sonra tekrar denemek güvenli olmalı.
GET
/oturum/ben
“Jetonum geçerli mi, ben neyi yapabilirim?” Jeton. Firma, kimlik türü, telefon durumu, yetki listesi, jetonun bitiş saati.

Teslimat ve tahsilat uçları burada yok — iki sebeple

Birincisi: henüz yazılmadılar. Bugün açık olan yedi uç, kapının kendisidir; iş uçları ikinci turda gelecek.

İkincisi: yazıldıklarında da bu sayfaya deneme düğmesi konmayacak. Bu konsol gerçek firmanın gerçek verisine bağlanıyor. Bir “deneme teslimatı”, gerçek bir belge keser, gerçek stoğu düşürür ve gerçek bir borç yazardı. Sayfa yalnız okuma ve giriş uçlarını çağırır.

Bir istek reddedilirse telefon ne yapar?

Sunucu her reddi üç sınıftan birine koyar ve sınıfı cevabın içinde açıkça söyler. Telefon sınıfı hata cümlesinden tahmin etmez.

Bu ayrım neden var: 19 kez denenen teslimat

Çalışan sistemde sunucu sınıfı söylemiyordu; tek bir sayı hem “jetonun geçersiz” hem “bu müşteriye yetkin yok” anlamına geliyordu. Telefon ikisini ayırmak için hata cümlesini okumaya çalışıyordu.

Bir gün “müşterinin borç sınırı doldu” cevabı yanlışlıkla kimlik sayıldı. Gerçek bir tablette bir teslimat 19 kez denendi, orada takıldı ve arkasındaki 4 kayıt hiç gidemedi. Kuyruk tıkandı, akşama kadar kimse fark etmedi.

Bugün o cevap kalıcı sınıfındadır: kayıt hata listesine düşer, plasiyer görür ve kuyruk akmaya devam eder. Sınıfı sunucu söyler, tek bir listeden okur; hiçbir uç kendi sınıfını seçemez.

Tablo geniş — parmağınızla yana kaydırın.

Ne olduğundaSunucunun koduSınıf
Jetonun süresi dolduJETON_SURESI_DOLDUKimlik
Merkez bu telefonu kestiCIHAZ_PASIFKimlik
Hesap kapatıldıKULLANICI_PASIFKimlik
Kullanıcı adı veya şifre hatalıKIMLIK_HATALIKalıcı
Bu işlem için yetki yokYETKI_YOKKalıcı
Saha modülü bu firmada kapalıMODUL_KAPALIKalıcı
Gönderilen bilgi eksik ya da bozukGECERSIZ_ALANKalıcı
Telefon sürümü çok eskiSURUM_COK_ESKIKalıcı
Abonelik salt okunur (yazma kapalı)ABONELIK_SALT_OKUNURGeçici
Çok sık istek gönderildiCOK_FAZLA_ISTEKGeçici
Sunucu meşgul ya da arızalıSUNUCU_MESGULGeçici

Tek istisna: “abonelik salt okunur” neden geçici sayılıyor

Kural gereği bu bir iş kuralı reddidir, yani kalıcı olmalıydı. Kalıcı olsaydı sahadaki kayıt hata listesine düşer ve kaybolurdu: mal gitmiş, para alınmış, kayıt yok.

Geçici olduğunda kuyruk tıkanır — ama tıkanmanın bedeli sıfırdır: firma zaten salt okunur, arkadaki kayıtların da gideceği bir yer yok. Abonelik açıldığı anda kuyruk kendiliğinden boşalır.

Bu sayfa neyi saklıyor?

Hiçbir şeyi. Somut olarak:

  • Sayfanın içinde gömülü hiçbir şifre, jeton veya adres sırrı yok. Kimlik bilgisini her seferinde siz yazıyorsunuz.
  • Şifre gönderildiği anda kutudan siliniyor.
  • Jeton yalnız o anki sayfa belleğinde duruyor. Çerez yok, kalıcı depo yok, adres çubuğunda iz yok. Sekmeyi kapattığınızda jeton gider.
  • Jeton ekrana hiç basılmıyor — ekran paylaşımında ya da fotoğrafta dışarı çıkmasın diye. “Sunucudan geleni olduğu gibi göster” düğmesi de yalnız sağlık ve ben cevaplarını gösterir; giriş cevabı jeton taşıdığı için hiç gösterilmez.
  • İstek günlüğüne yalnız yöntem, adres ve sonuç yazılıyor; gövde ve başlıklar yazılmıyor.
  • Bütün istekler yalnız https ile gidiyor. Şema değiştirilemiyor — şifresiz bir adrese giriş yaptırmak mümkün değil.
  • Sayfada yazma ucu düğmesi yok: bir deneme gerçek bir belge doğuramaz.
  • Sayfa sunucuya hiçbir yetenek bildirmiyor. Sunucu, yetenek bildirmeyen bir istemciye hiçbir komut göndermez — böylece telefona gitmesi gereken bir komut bu deneme sayfasına düşüp sessizce kaybolamaz.

Tek istisna: karanlık/aydınlık tercihi sekme kapanana kadar saklanıyor. Sır değil, sekmeyle birlikte o da gidiyor.