Ana içeriğe geç

Sistem Konsolu — DSO Şablonları

Sistem Konsolu (/console), platform yöneticileri (süper yönetici) için ayrılmış bir kontrol panelidir. DSO Şablonları (/console/dso-templates) sayfası, firmaların (tenant) OSOS bağlantısı kurarken seçtiği dağıtım şirketi (DSO/EDAŞ) kataloğunu yönetmenizi sağlar: her dağıtım şirketinin teknik bağlantı ayarları (API adresi, kimlik doğrulama yolu, adapter) burada tek yerde tanımlanır; firmalar bu ayarları elle girmez, yalnızca kataloğdan şablonu seçer.

Bu sayfa kimin için?

DSO Şablonları sayfası yalnızca süper yönetici yetkisine sahip platform operatörlerine açıktır. Firma (tenant) kullanıcıları bu ekranı görmez — onlar yalnızca OSOS Bağlantısı Kurma sihirbazında buradaki şablonları bir açılır menüden seçer. Bu katalog firmalar arası (cross-tenant) ortak bir sözlüktür; tek bir firmaya ait değildir.


DSO şablonu nedir? Neden var?

Bir firma OSOS (Otomatik Sayaç Okuma Sistemi) üzerinden dağıtım şirketinin sayaç verisini çekmek için bir bağlantı kurar. Bu bağlantının çalışması için teknik bilgiler gerekir: dağıtım şirketinin API adresi, token (jeton) alma yolu, kimlik doğrulama biçimi ve hangi yazılım adapter'ının kullanılacağı.

Eskiden bu teknik bilgiler her bağlantıda ayrı ayrı elle giriliyordu — hataya açık ve tekrarlı. DSO Şablonları kataloğu bu bilgileri platform seviyesinde tek yere taşır:

  • Siz (süper yönetici) her dağıtım şirketi için bir şablon tanımlarsınız (API adresi, adapter, kimlik doğrulama biçimi).
  • Firma kullanıcısı bağlantı kurarken yalnızca "Başkent EDAŞ" gibi bir şablonu seçer; teknik ayarlar şablondan otomatik gelir.
Şablon sır (credential) TUTMAZ

Bu katalog yalnızca sır olmayan bağlantı-biçimi bilgisini tutar (adres, yol, adapter). Kullanıcı adı, parola, istemci sırrı (client secret) gibi kimlik bilgileri her firmanın kendi bağlantısında şifreli olarak saklanır — şablonda asla yer almaz ve bu ekranda hiçbir zaman görünmez.


Sayfaya nasıl gelinir?

Sol menüden Sistem Konsolu → DSO Şablonları'nı açın (doğrudan adres: /console/dso-templates). Sayfa başlığında "DSO Şablonları" yazar; hemen altında şablon tablosu görünür.

Sıfırdan başlamıyorsunuz

Platform ilk kurulduğunda katalog 22 hazır şablonla gelir: 21 bölgesel EDAŞ (Başkent, Toroslar, BEDAŞ, Gediz, Aydem, SEDAŞ, MEDAŞ, …) ve 1 platform sağlayıcı (ARiL). Yani çoğu zaman yeni şablon oluşturmazsınız — mevcut bir şablonu düzenleyip (özellikle Temel URL'sini doldurup) yayına alırsınız.

ARiL şablonu artık firma listesinde görünmez

aril şablonu pasifleştirildi (mig 0121). Gediz ve Aydem şablonları doğrudan ARiL adapter'ını kullanacak şekilde yönlendirildi; firma kullanıcısı artık kendi dağıtım şirketini seçiyor ve "ARiL" adını hiç görmüyor.

Bunun iki operasyonel sonucu var:

  1. Her EDAŞ'ın kendi Temel URL'si girilmelidir. Gediz'in ve Aydem'in ARiL kurulumları ayrı sunuculardır. Birinin adresini diğerine kopyalamak, o firmanın ARiL portal parolasının yanlış dağıtım şirketine gönderilmesi demektir. Adresi teyit etmeden girmeyin.
  2. aril satırı silinmedi. Mevcut ARiL bağlantıları çalışmaya devam eder. Gerekirse şablonu Aktif yaparak listeye geri alabilirsiniz.

Şablon tablosu (liste)

Tabloda her satır bir dağıtım şirketi şablonudur. 9 sütun vardır:

SütunNe gösterir
KodŞablonun benzersiz kimliği (küçük-harf slug; ör. baskent, aril). Değiştirilemez.
Görünen AdFirmanın açılır menüde göreceği isim (ör. Başkent EDAŞ).
TipSağlayıcı tipi rozeti: Bölge (bölgesel EDAŞ) veya Platform (çok-EDAŞ sağlayıcı, ör. ARiL).
AdapterKullanılan yazılım adapter'ının anahtarı (ör. BASKENT); yoksa .
CredentialKimlik doğrulama modu rozeti: OAuth2 veya Kullanıcı + Parola.
Temel URLDağıtım şirketinin API kök adresi; boşsa ya da (destekliyse) sarı Eksik uyarısı.
EntegrasyonDestekli (yeşil — gerçek adapter'ı var, seçilebilir) veya Yakında (gri — henüz seçilemez).
DurumAktif (yeşil) veya Pasif (gri — firmaya görünmez).
İşlemSatır sonundaki menüsü (Düzenle / Pasifleştir / Aktifleştir).

Bir satıra tıklamak (veya klavyeyle satıra gelip Enter/Boşluk) o şablonun Düzenle penceresini açar.

Rozetlerin anlamı

Tabloda dört tür rozet görürsünüz. Her biri firma tarafındaki davranışı belirler:

RozetDeğerAnlamı
TipBölgeTek bir bölgeye hizmet veren yerel EDAŞ.
PlatformBirden çok EDAŞ'ın verisini tek çatıda taşıyan sağlayıcı. (ARiL bu tipteydi; mig 0121 ile pasifleştirildi — Gediz/Aydem şablonları artık doğrudan ARiL adapter'ını kullanır.)
CredentialKullanıcı + ParolaBağlantıda kullanıcı adı + parola sorulur.
OAuth2Bağlantıda istemci kimliği + istemci sırrı (client_id + client_secret) sorulur.
EntegrasyonDestekliGerçek adapter'ı var; firma bu şablonu seçebilir ve veri çeker.
YakındaHenüz gerçek entegrasyon yok; firma menüde gri/seçilemez görür.
DurumAktifFirma açılır menüsünde görünür.
PasifFirma açılır menüsünden gizli (mevcut bağlantılar etkilenmez).
"Temel URL — Eksik" uyarısı ne demek?

Bir şablonun Entegrasyon rozeti Destekli iken Temel URL kolonunda sarı Eksik uyarısı görürseniz, o şablonun gerçek adapter'ı var ama API adresi henüz doldurulmamış demektir. Bu şablonu kullanan bağlantılar geçici olarak bağlantının kendi (eski/legacy) adresine düşer. Düzenle penceresini açıp Temel URL alanını doldurun.


Arama ve filtreleme

Tablonun üstünde iki araç vardır:

  • Ara — kutuya yazdıkça liste anlık daralır. Arama Kod ve Görünen Ad üzerinde çalışır (ör. basken yazınca Başkent gelir). Türkçe küçük-harf duyarlıdır. Sunucuya istek gitmez (katalog küçük olduğu için arama tarayıcı içinde yapılır).
  • Durum — üç seçenekli açılır menü:
    • Tümü (varsayılan) — aktif + pasif tüm şablonlar.
    • Aktif — yalnız firmaya görünen şablonlar.
    • Pasif — yalnız gizlenmiş (soft-delete edilmiş) şablonlar.

Yeni şablon oluşturma / Mevcut şablonu düzenleme

Sağ üstteki Yeni Şablon butonu boş bir pencere açar (oluşturma). Bir satıra tıklamak ise mevcut değerlerle dolu pencereyi açar (düzenleme). Her iki durumda da aynı form görünür; tek fark Kod alanının düzenlemede kilitli olmasıdır.

Aşağıda her form alanı beş soruyla açıklanmıştır: alan nedir, zorunlu mu, ne yazacaksınız, değeri nereden bulursunuz, boş/yanlış bırakırsanız ne olur.

Kod

  • Nedir? Şablonun benzersiz kimliği — küçük-harf slug (ör. baskent, aril, toroslar). Firma tarafında görünmez; sistemin içsel eşleşme anahtarıdır.
  • Zorunlu mu? Evet (oluşturmada). Düzenlemede değiştirilemez (kilitli alan) — şablonun kimliğidir.
  • Ne yazacağım? Küçük harf, rakam, - ve _ içeren bir slug. Harf veya rakamla başlamalı (desen: ^[a-z0-9][a-z0-9_-]*$). Türkçe karakter, boşluk veya büyük harf kullanmayın. En fazla 50 karakter.
  • Nereden bulunur? Genellikle dağıtım şirketinin kısaltmasının küçük-harf hâli (baskent, bedas). Zaten hazır 22 şablon geldiği için çoğu zaman yeni kod türetmeniz gerekmez.
  • Boş/yanlış bırakırsam? Boşsa veya desene uymuyorsa form Kaydet'e basmadan uyarı verir. Aynı kodda başka bir şablon varsa kayıt 409 (CODE_TAKEN) hatasıyla reddedilir ve "Bu kod zaten kullanılıyor" uyarısı alan altında görünür.

Görünen Ad

  • Nedir? Firmanın OSOS bağlantı sihirbazındaki açılır menüde göreceği isim (ör. Başkent EDAŞ, ARiL Platformu).
  • Zorunlu mu? Evet.
  • Ne yazacağım? İnsan-okur bir ad; Türkçe karakter (ç/ğ/ı/ö/ş/ü) serbest. En fazla 255 karakter.
  • Nereden bulunur? Dağıtım şirketinin resmî ticari adı.
  • Boş bırakırsam? Form uyarı verir, kayıt yapılmaz.

Sağlayıcı Tipi

  • Nedir? Şablonun bölgesel bir EDAŞ mı yoksa çok bölgeli bir platform sağlayıcı mı olduğunu belirtir. Firma tarafında şablonlar bu tipe göre iki grupta listelenir.
  • Zorunlu mu? Evet (varsayılan Bölge).
  • Seçenekler:
    • regionBölge (Bölgesel EDAŞ): Tek bir dağıtım bölgesine hizmet veren yerel şirket. Ne zaman? Başkent, Toroslar, BEDAŞ gibi bölgesel EDAŞ'lar için.
    • platformPlatform: Birden çok EDAŞ'ın verisini tek API üzerinden taşıyan sağlayıcı. Ne zaman? ARiL gibi (Gediz + Aydem verisi ARiL üzerinden akar) çok-EDAŞ platformlar için.
  • Nereden bulunur? Sağlayıcı tek bir bölgeye mi hizmet veriyor, yoksa birden çok EDAŞ'ı mı temsil ediyor — buna göre seçin.
  • Yanlış seçersem? İşlevsel bir bloklama olmaz; yalnızca firma menüsünde yanlış grupta listelenir. Doğru grubu seçmek kullanıcı için netliktir.

Adapter

  • Nedir? Şablonun hangi yazılım adapter'ıyla (dağıtım şirketinin API'sini konuşan modül) çalışacağını belirtir.
  • Zorunlu mu? Hayır (boş bırakılabilir). Ancak Destekli rozetini açmak için zorunludur (aşağıya bakın).
  • Seçenekler:
    • Yok — entegrasyon yok: Adapter atanmaz. Şablon tanımlanır ama gerçek veri çekemez (bölgesel EDAŞ'ların çoğu böyle — placeholder). Ne zaman? Entegrasyonu henüz yazılmamış EDAŞ için.
    • Bilinen anahtar (açılır listede): ARIL, AYDEM, BASKENT, BEDAS, GEDIZ. Bunlar adapter kayıt defterinde (registry) tanımlı anahtarlardır.
    • Özel…: Listede olmayan ama kayıt defterine sonradan eklenmiş bir anahtarı elle girmek için. Seçince "Özel adapter anahtarı" alanı açılır.
  • Nereden bulunur? Platformda gerçek entegrasyonu olan dağıtım şirketleri: BASKENT ve ARIL (gerçek veri çeker); BEDAS, AYDEM, GEDIZ ise stub (henüz gerçek veri döndürmeyen taslak) adapter'lardır. Doğru anahtar teknik ekipçe belirlenir.
  • Boş/yanlış bırakırsam? Boşsa şablon "entegrasyonsuz" kalır (firma seçemez). Kayıt defterinde olmayan bir anahtar girerseniz kayıt 422 (UNSUPPORTED_ADAPTER_KEY) hatasıyla reddedilir; alan altında "Adapter anahtarı registry'de tanımlı değil. Bilinen anahtarlar: ARIL, AYDEM, BASKENT, BEDAS, GEDIZ." uyarısı görünür.
"Özel adapter anahtarı" alanı

Adapter'da Özel… seçtiğinizde açılan bu alana kayıt defterindeki anahtarı (büyük harfe çevrilir; ör. BASKENT) yazın. Boş bırakıp kaydetmeye çalışırsanız form uyarı verir. Bu alan yalnızca kayıt defteri büyüdüğünde ve UI listesi henüz güncellenmediğinde işe yarar; normalde açılır listeden seçmeniz yeterlidir.

Temel URL

  • Nedir? Dağıtım şirketinin OSOS/MDM API'sinin kök adresi. Firma bağlantısı veri çekerken bu adresi kullanır.
  • Zorunlu mu? Hayır, ama Destekli bir şablonda boş bırakmanız önerilmez (tabloda Eksik uyarısı çıkar).
  • Ne yazacağım? https://… ile başlayan tam API adresi. En fazla 512 karakter.
  • Nereden bulunur? Dağıtım şirketinin (veya ARiL'in) size verdiği entegrasyon dokümanından / servis erişim bilgisinden. Hazır şablonlarda bu alan başlangıçta boştur (adres platforma güvenlik gereği gömülmez); ilk kullanımda siz doldurursunuz. Daha önce elle kurulmuş bir bağlantı varsa sistem bu adresi otomatik türetmiş olabilir.
  • Boş bırakırsam? Şablonu kullanan bağlantı, bağlantının kendi (legacy) adres kolonuna düşer. Ne şablonda ne bağlantıda adres varsa veri çekilemez.

Token Path

  • Nedir? Kimlik doğrulama jetonunun (token) alındığı yol (path) — kök adrese eklenir.
  • Zorunlu mu? Evet (varsayılan /oauth/token).
  • Ne yazacağım? Dağıtım şirketinin token uç noktasının yolu (ör. /oauth/token, /generate-token). En fazla 255 karakter.
  • Nereden bulunur? Sağlayıcının entegrasyon dokümanından.
  • Boş bırakırsam? Form uyarı verir (zorunlu). Yanlış yol girilirse bağlantı jeton alamaz ve senkronizasyon başarısız olur.
ARiL'de token yolu bilgilendiricidir

aril şablonunda token yolu (/generate-token) ve stili adapter içinde sabittir; şablondaki değerler yalnızca bilgilendirme amaçlıdır. Yani ARiL için bu alanı değiştirmek davranışı etkilemez.

Auth Stili

  • Nedir? Jetonun isteklerde nasıl taşındığını belirten teknik biçim (ör. sorgu parametresi mi, başlık mı).
  • Zorunlu mu? Evet (varsayılan query_token).
  • Ne yazacağım? Sağlayıcının beklediği biçim (ör. query_token, header_token). En fazla 32 karakter.
  • Nereden bulunur? Sağlayıcının entegrasyon dokümanından / teknik ekipten.
  • Boş bırakırsam? Form uyarı verir (zorunlu). Yanlış stil, isteklerin reddedilmesine yol açar.

Credential Modu

  • Nedir? Bu dağıtım şirketine bağlanırken firmadan hangi tür kimlik bilgisi isteneceğini belirler.
  • Zorunlu mu? Evet (varsayılan Kullanıcı + Parola).
  • Seçenekler:
    • loginKullanıcı + Parola: Bağlantıda kullanıcı adı ve parola sorulur. Ne zaman? Türkiye MDM API'lerinde yaygın desen; ör. ARiL. Emin değilseniz varsayılan budur.
    • oauth2OAuth2: Bağlantıda istemci kimliği (client_id) ve istemci sırrı (client_secret) sorulur. Ne zaman? OAuth2 client_credentials akışı kullanan sağlayıcılar; ör. Başkent EDAŞ.
  • Nereden bulunur? Sağlayıcının size verdiği erişim bilgisi hangi türdeyse (kullanıcı-parola mı, istemci kimliği-sırrı mı) ona göre seçin.
  • Yanlış seçersem? Firma bağlantı kurarken yanlış alanlar ister; kimlik bilgileri sağlayıcıyla uyuşmaz ve doğrulama başarısız olur.

Destekli entegrasyon

  • Nedir? Şablonun gerçekten yayına açık olup olmadığını belirleyen anahtar. Açıksa tabloda yeşil Destekli, kapalıysa gri Yakında rozeti görünür. Firma yalnızca Destekli şablonları seçebilir.
  • Zorunlu mu? Hayır (varsayılan kapalı).
  • Nasıl kullanılır? Bir Adapter seçmeden bu anahtar açılamaz (adapter boşken devre dışıdır). Gerçek adapter'ı olan ve API adresi hazır olan bir şablonu yayına almak için açın.
  • Nereden bulunur? Entegrasyon test edilip çalıştığında siz açarsınız.
  • Yanlış açarsam? Adapter yokken açmaya çalışırsanız backend 422 (SUPPORTED_REQUIRES_ADAPTER_KEY) ile reddeder ("'Destekli' işaretlemek için adapter anahtarı zorunludur"). Adapter'ı sonradan temizlerseniz anahtar otomatik kapanır (tutarsız durum kaydedilmez).

Aktif (yalnız düzenlemede)

  • Nedir? Şablonun firma açılır menüsünde görünüp görünmeyeceği. Kapalı (pasif) şablon menüden gizlenir.
  • Zorunlu mu? Hayır. Yeni şablon her zaman aktif doğar (oluşturma penceresinde bu anahtar yoktur); yalnızca düzenlemede görünür.
  • Nasıl kullanılır? Bir şablonu geçici olarak devre dışı bırakmak için kapatın; geri açmak için tekrar açın. (Aynı işi tablodaki Pasifleştir / Aktifleştir menüsü de yapar.)
  • Kapatırsam ne olur? Şablon firma menüsünde görünmez; ancak bu şablonu zaten kullanan bağlantılar etkilenmez — veri akmaya devam eder.

Notlar

  • Nedir? Süper yöneticinin kendi tuttuğu serbest iç not.
  • Zorunlu mu? Hayır.
  • Nereden bulunur? Kendi operasyon notunuz (ör. "base_url'i X tarihinde güncelledim").
  • Kime görünür? Yalnızca süper yöneticiye. Firma yanıtında asla dönmez — güvenli iç alan.

Kaydettikten sonra

  • Oluştur / Kaydet başarılı olduğunda kısa bir bildirim (toast) çıkar ve liste anında tazelenir.
  • Düzenlemede yalnızca değiştirdiğiniz alanlar gönderilir; hiçbir şeyi değiştirmeden Kaydet'e basarsanız istek atılmaz, pencere kapanır.
  • Değişiklikler firma tarafına anında yansır (yeni bağlantı kuran firma güncel şablonu görür).
Değişiklikler denetim kaydına yazılır

Her şablon oluşturma / güncelleme / pasifleştirme işlemi Denetim · Güvenlik kaydına (dso_template_*) işlenir ve Genel Bakış sayfasındaki Son Olaylar akışında görünür. Kayıt kişisel/gizli veri içermez — yalnızca şablonun kodu ve değişen alan adları tutulur (değerler değil).


Şablonu pasifleştirme (gizleme) ve geri alma

Şablonlar kalıcı olarak silinmez — yalnızca pasifleştirilir (soft-delete). Bu, bir şablonu firma menüsünden geçici olarak kaldırmanın güvenli yoludur.

Pasifleştirme (⋮ → Pasifleştir)

Aktif bir satırın menüsünden Pasifleştir'i seçince bir onay penceresi açılır. Bu pencere size şunu net biçimde söyler:

Bu kalıcı silme değildir: şablon yalnızca firma bağlantı sihirbazından gizlenir; bu şablonu kullanan mevcut bağlantılar etkilenmez.

Onaylayınca şablon Pasif olur ve firma menüsünde artık görünmez. İşlem tekrar edilebilirdir (zaten pasif bir şablonu pasifleştirmek sorun çıkarmaz).

Geri alma (⋮ → Aktifleştir)

Pasif bir satırın menüsünde Aktifleştir görünür. Buna tıklamak onay penceresi olmadan şablonu anında yeniden aktif eder (hızlı geri alma). Aynı işi Düzenle penceresindeki Aktif anahtarını açarak da yapabilirsiniz.

Silme yok, gizleme var

Bu ekranda kalıcı silme (hard delete) bilerek yoktur. Bir dağıtım şirketiyle artık çalışmıyorsanız şablonu pasifleştirin — böylece geçmiş bağlantılar ve denetim izleri bozulmaz, gerekirse geri açabilirsiniz.


Karar akışı: hangi işlemi yapmalıyım?

Aşağıdaki diyagram, bir dağıtım şirketini firmalara açmak için izleyeceğiniz tipik yolu özetler:


Firma tarafında ne olur? (Bağlamı görmek için)

Süper yönetici burada bir şablonu Destekli + Aktif yapıp Temel URL'sini doldurduğunda, firma kullanıcısı OSOS Bağlantısı Kurma sihirbazında şu deneyimi yaşar:

  • Açılır menüde şablon Görünen Ad'ıyla, Sağlayıcı Tipine göre iki grupta (Dağıtım Bölgeleri / Platform Sağlayıcılar) listelenir.
  • Şablon Destekli değilse gri ve "Entegrasyon yakında" etiketiyle görünür ve seçilemez.
  • Firma bağlantıya bir ad verir; teknik ayarlar (adres, token yolu, adapter) şablondan otomatik gelir — firma bunları girmez.
  • Credential Modu'na göre firmadan doğru kimlik alanları (kullanıcı+parola ya da istemci kimliği+sırrı) istenir.

Ne zaman kullanılır?

  • Yeni bir dağıtım şirketi entegrasyonu yayına alınırken: ilgili şablonu açıp Temel URL + Adapter + Credential Modu'nu doldurup Destekli yapmak.
  • Bir dağıtım şirketinin API adresi değiştiğinde: şablonun Temel URL'sini güncellemek (tek yerden, tüm firmalar için).
  • Tabloda Eksik uyarısı görülen destekli şablonların adresini tamamlamak.
  • Bir sağlayıcıyla çalışma durduğunda: şablonu pasifleştirerek firma menüsünden gizlemek (mevcut bağlantıları bozmadan).
  • Firma "dağıtım şirketimi menüde göremiyorum" dediğinde: şablonun Aktif ve Destekli olup olmadığını buradan kontrol etmek.

İlişkili sayfalar