admin
Katılım
23 Eki 2022
Mesajlar
9,193
Çözümler
14
Tepkime puanı
7,165
Puanları
113
Yaş
28
Bu kod, Aiogram 3 + Telegram Bot API kullanılarak yazılmış bir sorgulama botudur. Temel görevi, kullanıcının Telegram üzerinden girdiği bilgileri bir web API'sine gönderip sonucu geri göstermektir.

Çalışma mantığı


Kullanıcı


Telegram Bot




JSON cevap


Telegram'da kullanıcıya göster



Yani botun kendisinde veri tabanı yoktur. Sadece API'ye istek atan bir arayüz görevi görür.


Ana menü

Bot açılınca kullanıcıya şu menü gelir:


🔍 TC Sorgula
👤 Ad Soyad Sorgula
📱 TC'den GSM
📞 GSM'den TC
🏢 İşyeri Bilgisi
🏠 Adres Bilgisi
👨‍👩‍👧‍👦 Sulale Ağacı
❓ Yardım



Her buton farklı bir API'yi çağırmak için hazırlanmıştır.


1. TC Sorgula

Kullanıcı


12345678901



girer.

Bot şu isteği yapar:


GET



API döndürürse


{
"success":"true",
"ADI":"Ali",
"SOYADI":"Yılmaz",
...
}



Bot bunu Telegram'da gösterir.


2. Ad Soyad Sorgula

Kullanıcı


Ali



yazar.

Sonra


Yılmaz



yazar.

Bot isterse il ve ilçe de sorar.

Daha sonra


GET
adsoyad.php?adi=Ali&soyadi=Yılmaz



veya


adsoyad.php?adi=Ali&soyadi=Yılmaz&il=Ankara



gibi sorgu gönderir.


3. TC'den GSM

Kullanıcı


12345678901



girer.

Aslında amaç şu API'yi çağırmaktır:


tcgsm.php



ve


TC


Telefonlar



ilişkisini göstermektir.

Fakat senin kodunda bu kısım eksik.

Şu an yine


tc.php



çalışıyor.


4. GSM'den TC

Kullanıcı


5551234567



girer.

Bot


gsmtc.php?gsm=5551234567



çağırır.

Dönen cevap:


Telefon



Sahibi



TC




5. İşyeri Bilgisi

Buton hazırlanmış.

Ama API çağrısı yazılmamış.

Muhtemelen


isyeri.php



çağrılacak.


6. Adres Bilgisi

Hazırlanmış.

Ama sorgulama kısmı eksik.

Muhtemelen


adres.php



çağrılacak.


7. Sulale

Hazırlanmış.

Ama sorgulama kodu eksik.

Muhtemelen


sulale.php



çağrılacak.


State sistemi

Bot kullanıcıyı takip ediyor.

Örneğin


Ad Soyad



butonuna bastın.

State


adsoyad_ad



oluyor.

Sonra


Ali



yazıyorsun.

State


adsoyad_soyad



oluyor.

Sonra


Yılmaz



giriyorsun.

Daha sonra API çağrılıyor.

Bu sisteme FSM (Finite State Machine) denir.


api_get fonksiyonu

En önemli fonksiyon budur.


api_get()



şunu yapıyor:


endpoint






GET isteği



JSON cevabı



Python sözlüğüne çevir



Geri döndür




Genel mimari


Telegram



Aiogram



Buton



State



API GET



JSON



Mesaj oluştur



Telegram




Kodda eksik veya hatalı olanlar

  • ❌ TC'den GSM butonu doğru API'yi çağırmıyor.
  • ❌ İşyeri sorgusu tamamlanmamış.
  • ❌ Adres sorgusu tamamlanmamış.
  • ❌ Sülale sorgusu tamamlanmamış.
  • ❌ BOT_TOKEN kod içine düz yazılmış; bu güvenlik açısından sakıncalıdır ve ortam değişkeni (ENV) ile saklanması daha uygundur.
  • ⚠️ Her istek için yeni bir ClientSession oluşturuluyor. Performans açısından tek bir aiohttp.ClientSession oluşturup yeniden kullanmak daha verimlidir.

Özetle bu botun amacı, Telegram üzerinden çeşitli kimlik ve iletişim bilgisi sorgularını kullanıcıdan alıp, bunları https://arastir.sbs/api üzerindeki PHP API'lerine ileterek dönen sonuçları kullanıcıya göstermektir. Botun kendisi veriyi üretmez; sadece API ile Telegram arasında aracı görevi görür.
 
Üst
Reklam Ver
R10dev.net'i ana ekrana ekle!