Telegram botu oluşturmak için BotFather nasıl kullanılır?
Telegram botu oluşturmak için BotFather'ı adım adım kullanmayı öğrenin. /newbot komutuyla botunuzu oluşturun, token alın, özellikleri ayarlayın ve yönetin. Yeni başlayanlar için eksiksiz rehber.

BotFather Nedir ve Neden Kullanılır?
Telegram botları, mesajlaşma platformunun en güçlü özelliklerinden biridir. Otomasyondan müşteri desteğine, eğlenceden bilgi yönetimine kadar sayısız kullanım alanı sunarlar. Ancak her botun arkasında onu yaratacak resmi bir araç gerekir: BotFather. Telegram'ın bot oluşturma ve yönetme komutlarını barındıran resmi botu olan BotFather; yeni bir bot oluşturmak, adını değiştirmek, profil fotoğrafı eklemek, inline modu etkinleştirmek ve daha fazlası için gereken tüm komutları sağlar. Bu makalede, Telegram botu oluşturmak için BotFather'ı adım adım, hem yeni başlayanların hem de deneyimli geliştiricilerin faydalanabileceği şekilde anlatacağız.
BotFather'a Başlarken
Telegram'da BotFather'ı Bulma
BotFather, Telegram'da @BotFather kullanıcı adıyla bulunur. Arama çubuğuna bu adı yazarak veya doğrudan t.me/BotFather bağlantısına tıklayarak sohbeti başlatabilirsiniz. BotFather; Android, iOS ve Desktop platformlarında aynı şekilde çalıştığı için herhangi bir cihazda kullanıma hazırdır.
İlk Botunuzu Oluşturma (/newbot)
BotFather ile sohbeti başlattıktan sonra /newbot komutunu gönderin. BotFather sizden iki adımda bilgi isteyecektir:
- Bot adı: Kullanıcıların botunuzu listede göreceği addır. Örneğin "Hava Durumu Botu".
- Bot kullanıcı adı: Botun benzersiz tanımlayıcısıdır ve _bot ile bitmelidir (örneğin hava_durumu_bot). Kullanıcı adı daha önce alınmamış olmalıdır.
Başarılı oluşturma sonrasında BotFather size bir HTTP API token verir. Bu token, botunuzun Telegram API'sine erişmek için kullandığı anahtardır ve asla başkalarıyla paylaşılmamalıdır; aksi takdirde botunuz üzerinde kontrolü kaybedebilirsiniz.
Token'ı Anlama ve Saklama
Token, yaklaşık 40 karakterlik rastgele bir dizedir ve 1234567890:ABCdefGHIJklmnOPQrstuvwxyz formatındadır. Bu token ile botunuzu programlayabilir, webhook veya polling yöntemleriyle mesajları işleyebilirsiniz. Token'ı kaybetmeniz durumunda /revoke veya /reset komutları ile yenileyebileceğinizi unutmayın; bu konuyu ilerleyen bölümde ele alacağız.
Bot Özelliklerini Yapılandırma
Bot Adı ve Kullanıcı Adı Değiştirme (/setname, /setusername)
Oluşturduktan sonra bot adını veya kullanıcı adını değiştirmek için /setname ve /setusername komutlarını kullanabilirsiniz. Zamanla botunuzun amacı değişebilir veya daha akılda kalıcı bir ad bulabilirsiniz. Ancak kullanıcı adını değiştirirken dikkatli olun: eski kullanıcı adı hemen başkaları tarafından alınabilir. Bu nedenle geçiş yapmadan önce yeni adı güvence altına almak iyi bir uygulamadır.
Bot Profil Fotoğrafı Ekleme (/setuserpic)
/setuserpic komutu, botunuza bir profil fotoğrafı eklemenizi sağlar. Bu, botunuzun güvenilirliğini artırır ve kullanıcılar tarafından daha kolay tanınmasını sağlar. Fotoğrafı gönderirken Telegram'ın izin verdiği boyut sınırlamalarına dikkat edin; 128x128 piksel önerilir.
Bot Açıklaması ve Hakkında Metni (/setdescription, /setabouttext)
/setdescription ile botunuzun ne işe yaradığını kısa bir metinle açıklarsınız. Bu metin, botun profilinde ve gruplara eklenirken görünür. /setabouttext ise botun hakkında bölümünde yer alır. Kullanıcılar bir botu eklemeden önce ne yaptığını anlamak ister; iyi yazılmış bir açıklama etkileşimi artırır.
Inline Mode Etkinleştirme (/setinline)
/setinline komutu, botunuzun herhangi bir sohbette @kullanıcıadı yazılarak çağrılabilmesini sağlar. Bu özellik, özellikle arama botları, GIF botları veya referans botları için idealdir. Inline modu etkinleştirdikten sonra BotFather sizden bir placeholder metni ister. Örneğin "Bir şehir adı yazın" gibi bir metin, kullanıcı botu çağırdığında gösterilir. Botunuz yalnızca belirli bir grupta çalışacaksa inline mode gerekli olmayabilir; ayrıca inline mode, her tuş vuruşunda API'ye istek gittiği için sunucuda ek yük oluşturur.
Grup ve Kanal Desteği (/setjoingroups, /setprivacy)
/setjoingroups ile botunuzun gruplara eklenip eklenemeyeceğini ayarlarsınız. Varsayılan olarak kapalıdır; açmak için botu seçip "Enable" dersiniz.
/setprivacy komutu ise botun gruplardaki gizlilik ayarını kontrol eder. Privacy modu açıkken bot yalnızca kendisine özel gönderilen komutları ve bahsedildiği mesajları görür; kapalıyken gruptaki tüm mesajlara erişebilir. Botunuz tüm grup mesajlarını işlemek zorundaysa (örneğin bir moderasyon botu) privacy modunu kapatmalısınız. Aksi halde açık bırakmak daha güvenlidir.
Komut Listesi Ayarlama (/setcommands)
Botunuza özel komutlar eklemek için /setcommands kullanılır. BotFather sizden komutları komut - açıklama formatında listelemenizi ister. Her satıra bir komut yazın. Örneğin:
start - Botu başlatır help - Yardım menüsünü gösterir hava - Hava durumunu gösterir
Bu komutlar, kullanıcı botla sohbet ederken "/" yazdığında otomatik öneri olarak görünür; kullanıcı deneyimi için kritiktir.
Bot Yönetimi ve İleri Düzey Ayarlar
Webhook ve Polling Ayarları (/setwebhook, /deletewebhook)
Botunuzun güncellemeleri alması için iki yöntem vardır: polling (düzenli aralıklarla API'yi sorgulama) ve webhook (Telegram sunucularının bot sunucunuza doğrudan istek göndermesi). BotFather, webhook ayarlamak için doğrudan bir komut sunmaz; ancak webhook ayarlandığında bot durumunu /webhookinfo ile kontrol edebilirsiniz. Webhook ayarlamak için Telegram API'sine bir POST isteği yapmanız gerekir (örneğin https://api.telegram.org/botTOKEN/setWebhook?url=...). BotFather, webhook'u silmek için ise /deletewebhook komutunu sunar. Webhook, gerçek zamanlı ve daha verimlidir; polling ise basit botlar için yeterlidir. Webhook kullanırken bot sunucunuzun genel IP adresine ve SSL sertifikasına ihtiyacınız olduğunu unutmayın.
Botu Silme ve Token Yenileme (/deletebot, /revoke, /reset)
Bir botu kalıcı olarak silmek için /deletebot komutunu kullanın. BotFather sizden botu seçmenizi ister ve onay alır; silinen botun token'ı geçersiz hale gelir. Token'ınız sızdıysa veya yenilemek isterseniz /revoke veya /reset komutlarını kullanabilirsiniz. Bu komutlar mevcut token'ı iptal edip yenisini oluşturur. Token yenilendiğinde çalışan botunuz duracağı için yeni token ile yeniden başlatmanız gerektiğini unutmayın.
Bot Transferi
BotFather, bir botu başka bir Telegram hesabına transfer etmek için resmi bir komut sunmaz. Pratikte, botun token'ını başka bir geliştiriciye vererek botu devredebilirsiniz; ancak bu işlem güvenlik riski taşır. Bu nedenle yalnızca güvendiğiniz kişilerle paylaşmanız önerilir. Botu tamamen devretmek isterseniz, mevcut token'ı iptal edip yeni sahibin yeni bir bot oluşturması daha güvenlidir.
BotFather'ın Sınırlamaları ve Dikkat Edilmesi Gerekenler
Rate Limits ve Handle Etme
BotFather, bir hesabın oluşturabileceği bot sayısı konusunda resmi bir sınır belirtmez; ampirik gözlemler, bir hesabın onlarca bot oluşturabildiğini göstermektedir. Ancak aşırı sayıda bot oluşturma veya komut gönderme durumunda Telegram'ın rate limit mekanizması devreye girebilir. Bu durumda birkaç dakika bekleyip tekrar denemek genellikle sorunu çözer.
Bot Token Güvenliği
Token, botunuzun kontrolünü elinde tutan en kritik bilgidir. Token'ı asla açık kaynak kodlara, public GitHub repolarına veya üçüncü taraflarla paylaşmayın. En iyi uygulama, token'ı çevresel değişkenlerde saklamaktır. Token'ın sızdığından şüphelenirseniz hemen /revoke ile yenileyin.
BotFather'ın Desteklemediği Özellikler
BotFather, bot oluşturma ve temel yapılandırma için gereken tüm komutları sunar. Ancak botun davranışını programlamak, veritabanı işlemleri veya özel klavye tasarımları gibi gelişmiş özellikler BotFather'ın yetki alanı dışındadır. Bunun için Telegram Bot API'sini kullanarak kendi kodunuzu yazmanız gerekir.
Gerçek Dünya Senaryoları
Müşteri Desteği Botu Oluşturma
Bir e-ticaret sitesi müşteri desteği botu oluşturmak istiyor. Önce BotFather ile yeni bir bot oluşturulur, ardından /setcommands ile siparis, iade, yardim gibi komutlar eklenir. Inline mode gereksiz olduğu için kapalı bırakılır; privacy modu açık tutulur çünkü bot yalnızca kendisine yazılan mesajları işleyecektir. Son olarak webhook ayarları yapılır ve bot kodlanır.
Otomasyon Botu
Bir haber sitesi, belirli aralıklarla otomatik haber gönderecek bir bot kurmak ister. BotFather'da /setjoingroups ile botun gruplara eklenmesine izin verilir. Privacy modu kapatılır; aksi halde bot grup içindeki tüm mesajları okuyamaz ve haberleri tarayamaz. Ayrıca /setinline etkinleştirilerek kullanıcıların @newsbot gibi kullanması sağlanabilir.
Eğlence ve Oyun Botu
Bir trivia oyun botu için BotFather'da bot oluşturulur. Inline mode etkinleştirilir; böylece kullanıcılar sohbet içinde @triviabot soru yazarak oyun başlatabilir. Komut listesine basla, puan, sira eklenir. Bu tür botlarda privacy modu genellikle açık kalabilir.
Sıkça Sorulan Sorular
Birden fazla bot oluşturabilir miyim?
Evet, her Telegram hesabı sınırsız sayıda bot oluşturabilir. Ancak aşırı sayıda bot oluşturma rate limitlere takılabilir; bu durumda birkaç saat beklemek gerekebilir.
Bot token'ını kaybettim. Ne yapmalıyım?
BotFather'a /revoke komutunu gönderin. Botunuzu seçin ve yeni token oluşturun. Eski token otomatik olarak iptal edilir.
BotFather'dan botumu sildikten sonra kullanıcı adını başka biri alabilir mi?
Evet, bot silindiğinde kullanıcı adı hemen serbest kalır. Silme işlemi geri alınamaz, bu nedenle kullanıcı adını başka bir bot için kullanmak istiyorsanız önce yeni botu oluşturup adı ona atamanız önerilir.
Botum neden gruplarda mesajları görmüyor?
Büyük olasılıkla /setprivacy modu açıktır. Bu durumda bot yalnızca kendisine özel mesajları ve bahsedildiği mesajları görür. Tüm mesajları görmesi için /setprivacy ile modu kapatın.
BotFather komutları neden çalışmıyor?
Genellikle yanlış yazım veya bot seçimi sorunudur. Komutu yazdıktan sonra BotFather size bir bot listesi gösterir; doğru botu seçtiğinizden emin olun. Ayrıca internet bağlantınızı kontrol edin.
Özet ve Sonraki Adımlar
Telegram botu oluşturmak için BotFather'ı kullanmak oldukça basittir: /newbot ile botunuzu oluşturun, komutlar ve ayarlarla özelleştirin, token'ı güvenle saklayın. Ardından botunuzu programlamak için Telegram Bot API dokümantasyonunu inceleyebilirsiniz. Python, Node.js, PHP gibi dillerle bot geliştirmek için pek çok kütüphane mevcuttur. Botunuzu canlıya almadan önce test botları oluşturarak denemeler yapmanızı öneririz. Unutmayın: BotFather yalnızca bir başlangıçtır; botunuzun yetenekleri hayal gücünüzle sınırlıdır.