Telegram Serverless: Bot ve Mini Uygulama Geliştirmede Yeni Dönem Linux

Telegram Serverless: Bot ve Mini Uygulama Geliştirmede Yeni Dönem

Telegram Serverless, bot ve Mini Uygulama geliştiricilerine sunucu yönetimi derdini ortadan kaldıran, doğrudan Telegram altyapısında çalışan bir platf

Telegram, geliştiriciler için devrim niteliğinde bir özellik duyurdu: Telegram Serverless. Bu yeni platform, bot ve Mini Uygulama geliştiricilerinin backend kodlarını doğrudan Telegram'ın altyapısında çalıştırmasına olanak tanıyor. Artık sunucu sağlama, container yönetimi veya ölçeklendirme derdi yok. Geliştiriciler, düz JavaScript modülleri yazıp tek bir komutla dağıtabiliyor ve Telegram bu kodları, Bot API ve yerleşik bir veritabanının yanında bulunan hızlı, izole edilmiş bir V8 sandbox'ta çalıştırıyor.

Geleneksel bot geliştirmede, bir /start komutuna yanıt vermek için bile VPS, cloud function veya hosting paneli kurulumu gerekiyordu. Telegram Serverless bu katmanı tamamen ortadan kaldırıyor. Altyapı yönetimiyle uğraşmak yerine, geliştiriciler doğrudan bot mantığına odaklanabiliyor. Platform, her modülde Telegram Bot API, SQLite tabanlı bir veritabanı ve dış HTTP çağrıları gibi temel özellikleri kutudan çıkar sunuyor. Her çağrı, Telegram'ın kendi sistemlerine yakın hafif V8 izolatlarında çalıştığı için Bot API ve veritabanı işlemleri hızlı ve güvenilir oluyor.

Geliştirici iş akışı da oldukça tanıdık: Proje, sürüm kontrolü altındaki yerel bir klasörde yaşıyor. Dosyalar düzenleniyor, değişiklikler görülüyor, atomik dağıtım yapılıyor ve veritabanı şeması gözden geçirilmiş migrasyonlarla ilerletiliyor. Üç ana bileşen var: proje klasörü (JavaScript modülleri), bulut (dağıtılmış modüller ve veritabanı) ve tgcloud CLI (aradaki köprü). SSH ile sunucuya bağlanmak yok. Yerelde düzenleme yapılıyor, npx tgcloud push komutu çalıştırılıyor ve platform gerisini hallediyor.

Detaylar ve Etkileri

Proje yapısı oldukça basit: handlers/ (her Telegram güncelleme türü için bir dosya), lib/ (paylaşılan kod) ve schema.js (veritabanı tabloları). Bir güncelleme geldiğinde (mesaj, buton tıklaması, inline sorgu), Telegram onu eşleşen handler'a yönlendiriyor ve default export'u çağırıyor. Bu fonksiyon SDK üzerinden Bot API ve veritabanı ile iletişim kuruyor ve sonlanıyor. Eşleşen handler yoksa güncelleme yok sayılıyor. Örnek bir demo bot, her mesajı yanıtlıyor ve her sohbetten kaç mesaj gördüğünü hatırlıyor. schema.js ve handlers/message.js dosyalarıyla bunu gerçekleştirmek mümkün. Dağıtım için sadece npx tgcloud push ve npx tgcloud migrate komutları yeterli.

Telegram Serverless, yalnızca belirli bir uygulama türü için değil, genel bir backend çözümü olarak tasarlanmış. Kullanım alanları arasında konuşma yapay zekası (kullanıcı durumunu veritabanında saklayan botlar), Mini Uygulama backend'leri (kullanıcı verilerini depolayan ve dinamik içerik sunan), oyunlar ve araçlar (lider tabloları, quizler) ile otomasyon ve entegrasyonlar (üçüncü taraf HTTP API'lerini çağıran ve sonuçları sohbetlere gönderen) bulunuyor.

Sonuç ve Değerlendirme

Başlamak için Node.js 18 veya üstü ve @BotFather ile kayıtlı bir bot gerekiyor. İlk adım, @BotFather'da botun Serverless özelliğini açmak. Ardından npm create @tgcloud/bot komutuyla proje oluşturuluyor. Bu komut, gerekli CLI'yi ve örnek bir projeyi hazırlıyor. Oluşan projede docs/ (SDK referansı), handlers/ (örnek message handler), lib/ (boş) ve AGENTS.md (AI asistanları için) bulunuyor. Geliştiriciler, bu yapıyı kullanarak hızlıca canlı bir bot oluşturabiliyor.

Kaynak: core.telegram.org

Paylaş: