Ana içeriğe geç

Müşteri hizmetleri

Telegram Bot Butonları: Klavye Butonları, Inline Butonlar ve Tek Dokunuşla Telefon ve Konum İsteme

Telegram botlarında iki tür buton vardır ve çok farklı çalışırlar. Klavye butonları sohbete metin gönderir, telefon numarası ya da konum isteyebilir; inline butonlar bir mesajın altında durur, link açar veya işlem başlatır. Hangisini ne zaman kullanacağınızı ve MonoChat'te nasıl kuracağınızı anlatıyoruz.

MonoChat Ekibi Güncellendi: 7 dk okuma

Bu sayfada
  1. İki buton türü bir bakışta
  2. Klavye butonları: müşterinin yazdığı gibi görünen cevaplar
  3. Inline butonlar: mesajın altındaki işlemler
  4. Hangisini ne zaman kullanmalı
  5. MonoChat’te Telegram butonları nasıl kurulur
  6. Örnek: bir eczanenin teslimat botu
  7. Kaçınılması gereken hatalar
  8. Kaynaklar

Bir Telegram botunun tezgâhtar gibi mi yoksa form gibi mi hissettirdiğini butonlar belirler. “Siparişim nerede” ya da “Numaramı paylaş” butonuna dokunan müşteri bir saniyede cevap verir. Sipariş numarasını, doğru formatta telefon numarasını veya açık adresini yazmak zorunda kalan müşteri ise çoğu zaman yarıda bırakır.

Telegram botlara birbirinden çok farklı iki tür buton sunar ve bunları karıştırmak, bir botun hantal hissettirmesinin en yaygın nedenidir. Bu yazıda klavye butonlarını (reply keyboard) ve inline butonları, tek dokunuşla telefon numarası ve konum istemeyi ve hepsini MonoChat’te nasıl kuracağınızı anlatıyoruz. Telegram 1 milyarı aşkın aktif kullanıcısı olduğunu söylüyor; botunuz da çoğu zaman müşterinin işletmenizle ilk karşılaştığı yer. İlk butonlar bu yüzden önemli.

İki buton türü bir bakışta

Klavye butonları (reply keyboard)Inline butonlar
Nerede görünürMüşterinin klavyesinin yerinde, mesaj kutusunun altındaBelirli bir mesajın altında
Dokununca ne olurButonun metni, müşteri yazmış gibi sohbete giderBota gizli veri gider, link veya Mini App açılır; sohbete mesaj düşmez
Telefon numarası veya konum isteyebilir miEvet (request_contact, request_location), özel sohbetlerdeHayır
Dokunduktan sonraKendini gizleyebilir (one_time_keyboard)Mesajın altında kalır
En uygun kullanımSohbette görünmesini istediğiniz cevaplar: menü, Evet/Hayır, numara veya konum paylaşmaMesajla ilgili işlemler: link, onayla/iptal et, karttan seçim

Bot API’de bunlar KeyboardButton nesneleriyle ReplyKeyboardMarkup ve InlineKeyboardButton nesneleriyle InlineKeyboardMarkup olarak geçer. Telegram’ın bot rehberi farkı açıkça söyler: klavye butonlarının aksine inline butona basmak sohbete mesaj göndermez.

Klavye butonları: müşterinin yazdığı gibi görünen cevaplar

Klavye butonları müşterinin harf klavyesini sizin butonlarınızdan oluşan bir ızgarayla değiştirir. Müşteri “Çalışma saatleri” butonuna dokunduğunda sohbette müşteriden gelen “Çalışma saatleri” yazısı görünür ve bot bunu diğer mesajlar gibi okur. Bu yüzden menüler ve kısa cevaplar için idealdir: sohbet geçmişi okunaklı kalır, sohbeti sonradan açan temsilci müşterinin neyi seçtiğini aynen görür.

Davranışı belirleyen birkaç ayar var:

  • resize_keyboard klavyeyi butonlar kadar yüksek yapar. Bu ayar olmadan iki buton bile tam bir klavye yüksekliğini kaplar.
  • one_time_keyboard klavyeyi kullanıldığı anda gizler. Giriş alanındaki klavye simgesiyle yeniden açılabilir, ama müşteri harflerine geri döner.
  • input_field_placeholder klavye açıkken mesaj kutusunda 1 ile 64 karakter arasında bir ipucu gösterir, örneğin “Bir seçenek seçin”.
  • is_persistent normal klavye gizliyken bile butonları görünür tutar.

Dokunuş düz metin gönderdiği için butonun adı aynı zamanda yönlendirme anahtarınızdır. Adları kısa, benzersiz ve sabit tutun. “Sipariş takibi” butonunu “Kargom nerede?” yaparsanız, akışta bu metni dinleyen koşulu da güncelleyin.

”Kişi paylaş” ile telefon numarası istemek

Telegram botu müşterinin telefon numarasını kendiliğinden göremez. Numarayı almanın tek yolu istemektir: request_contact değeri true olan bir klavye butonu. Müşteri dokunduğunda Telegram, numarasını bota kişi kartı olarak gönderir. Bot API bunun yalnızca özel sohbetlerde çalıştığını belirtir.

Bu yöntem “lütfen telefon numaranızı yazın” demekten çok daha güvenilirdir: eksik ülke kodu, yanlış yerde boşluk olmaz ve gelen numara müşterinin Telegram hesabına kayıtlı numaradır. Müşteriyi bir siparişle, randevuyla veya CRM kaydıyla eşleştirmeniz gerekiyorsa doğal ilk adım budur.

Müşterinin butona dokunmasını kolaylaştıran iki alışkanlık:

  1. Neden istediğinizi söyleyin. “Siparişinizi bulabilmemiz için numaranızı paylaşır mısınız?” çıplak bir butondan çok daha iyi çalışır. Telefon numarası KVKK (6698 sayılı Kanun) kapsamında kişisel veridir; amacı açıkça söylemek zaten beklenen davranıştır.
  2. Alternatif bırakın. Bazı müşteriler numarasını paylaşmak istemez. Sipariş numarası ya da e-posta da kabul edin veya sohbeti bir temsilciye aktarın.

Konum istemek

request_location aynı şekilde çalışır: tek dokunuş müşterinin anlık konumunu konum mesajı olarak gönderir. Teslimat adresi, en yakın şube, servis teknisyeni veya kurye yönlendirmek ya da bir adresin hizmet bölgenizde olup olmadığını kontrol etmek için uygundur. Kişi paylaşımında olduğu gibi yalnızca özel sohbetlerde çalışır ve paylaşıp paylaşmamaya müşteri karar verir.

Inline butonlar: mesajın altındaki işlemler

Inline butonlar tek bir mesaja aittir; seçim o mesajla ilgiliyse anlamlıdır: randevu özetinin altında “Onayla” ve “Saati değiştir”, restoran karşılamasının altında “Menüyü gör”, faturanın altında “Şimdi öde”. İşletmelerin en çok kullandığı üç tür vardır:

  • Callback butonları bota en fazla 64 bayt veri (callback_data) gönderir. Sohbete bir şey yazılmaz; sonra ne olacağına bot karar verir.
  • URL butonları fiyat listeniz veya kargo takip sayfası gibi bir web sayfasını açar.
  • Web App butonları Telegram içinde bir Mini App açar, örneğin bir randevu formu veya katalog.

Botun nasıl hissettirdiğini değiştiren bir ayrıntı var. Callback butonuna dokunulduktan sonra Telegram, bot answerCallbackQuery çağırana kadar bir ilerleme göstergesi gösterir ve gösterilecek bir şey olmasa bile botlardan bu çağrıyı yapmasını ister. Bu adımı atlayan bir botta buton “yükleniyor” durumunda kalır ve müşteri tekrar tekrar dokunur.

Telegram Business hesapları hakkında bir not. Botu kişisel sohbetlerinizde sizin adınıza cevap versin diye bir Telegram Business hesabına bağlarsanız, Telegram o hesap adına gönderilen mesajlarda klavye butonlarını ve Web App butonlarını desteklemez. Bunlar botun kendisiyle yapılan sohbette çalışır; MonoChat’te olduğu gibi BotFather token’ıyla bağlanan bir bot da müşterilerle bu şekilde konuşur.

Hangisini ne zaman kullanmalı

DurumKullanın
Ana menü: “Fiyatlar”, “Çalışma saatleri”, “Temsilciye bağlan”Klavye butonları (hızlı cevap)
Evet/Hayır, puanlama, saat seçimiKlavye butonları, tek dokunuştan sonra gizlenen
Müşterinin telefon numarasını almakKişi paylaşma butonu
Teslimat adresi veya en yakın şubeKonum isteme butonu
Bu mesajdaki randevuyu onaylamak ya da iptal etmekInline callback butonları
Web sitesi, kargo takip veya ödeme sayfası açmakInline URL butonu
Telegram içinde form veya katalogInline Web App butonu

Basit bir kural: cevabın sohbette görünmesi gerekiyorsa klavye butonu kullanın. Buton bir mesaj üzerinde işlem yapıyor veya Telegram’ın dışına çıkıyorsa inline buton kullanın.

MonoChat’te Telegram butonları nasıl kurulur

MonoChat, Telegram botunuzu BotFather token’ıyla bağlar (bot oluşturma ve token alma rehberimiz). 3.8.41 sürümünden (1 Kasım 2026) beri MonoChat hızlı cevapları, konum isteklerini ve kişi bilgisi isteklerini Telegram klavye butonları olarak gönderiyor, buton mesajlarının görsel, video veya doküman başlığını gösteriyor, her buton dokunuşuna yanıt verdiği için butonlar artık yükleniyor durumunda kalmıyor ve yazıyor göstergesi açılabiliyor.

1. Hızlı cevaplar (klavye butonları). Akışa bir Mesaj Gönder düğümü ekleyin (veya Kısa Mesajlar arasında bir mesaj oluşturun) ve Metin tipini seçin. Metni yazın, Hızlı Cevap anahtarını açın ve Düğmeler bölümünde her buton için Ekle’ye tıklayın. Tip olarak text seçin ve hizmet verdiğiniz her dil için buton adını yazın. Telegram butonları mesaj kutusunun altında, her satırda iki tane ve boyutuna göre küçültülmüş olarak gösterir. Görsel, video ve doküman mesajlarına da hızlı cevap eklenebilir.

2. Telefon numarası isteyin. Kişi Bilgisi İsteği tipini seçin ve mesajı yazın, örneğin “Siparişinizi bulabilmemiz için telefon numaranızı paylaşır mısınız?”. Telegram müşterinin dilinde bir Kişi Bilgilerini Paylaş butonu gösterir. Buton bir dokunuştan sonra gizlenir, numara sohbete kişi kartı olarak düşer. Hızlı cevap menüsünde user-phone-number tipindeki bir buton da aynı işi yapar.

3. Konum isteyin. Konum İsteği tipini seçin. Müşteri bir Konum Gönder butonu görür, konumu sohbete konum mesajı olarak gelir.

4. Inline butonlar. Buton tipini seçin. Üstte görsel, video veya doküman istiyorsanız Başlık Tipi seçin, gövde metnini yazın (en fazla 1.024 karakter) ve butonları ekleyin: callback için postback, link için web-url, Mini App için app-url. Buton adları en fazla 20 karakterdir. postback butonuna dokunuş sohbete Buton Yanıtı olarak düşer.

5. Cevaba göre yönlendirin. Bot akışını Yeni Mesaj Alındı olayıyla başlatın ve Bot mu? seçeneğini açın. Sorudan sonra bir Eğer düğümü ekleyin: hızlı cevap adları için Mesaj Metni, paylaşılan kişi veya konumu yazılan metinden ayırmak için Mesaj Tipi koşulunu kullanın. “Temsilciye bağlan” diyen müşteriyi bir Oturum Ata düğümüne gönderin.

6. Yazdığınızı gösterin. Kanalın ayarlarında Yazıyor Durumu seçeneğini açın. Müşteri, bir temsilci mesaj kutusuna yazarken ve akıştaki bir yapay zekâ düğümü cevabını hazırlarken “yazıyor” görür; görsel veya doküman yüklenirken Telegram fotoğraf ya da dosya gönderildiğini gösterir.

Her sohbet, her buton dokunuşu ve paylaşılan her kişi kartı, WhatsApp, Instagram ve Messenger sohbetlerinizle aynı ekip gelen kutusuna düşer. Sohbeti devralan temsilci müşterinin neye dokunduğunu görür.

Örnek: bir eczanenin teslimat botu

Müşteri: /start Bot: Merhaba, Kadıköy Şifa Eczanesi’ne hoş geldiniz. Nasıl yardımcı olabiliriz? (butonlar: Eve teslimat · Nöbet ve çalışma saatleri · Eczacıya sor) Müşteri: Eve teslimat Bot: Reçetenizi bulabilmemiz için telefon numaranızı paylaşır mısınız? (buton: Kişi Bilgilerini Paylaş) Müşteri: (kişi kartını paylaşır) Bot: Teşekkürler. Nereye getirelim? (buton: Konum Gönder) Müşteri: (konumunu paylaşır) Bot: Bugün 16.00 ile 18.00 arasında teslim edebiliriz. (inline butonlar: Onayla · Saati değiştir)

Üç klavye butonu cevapları sohbette toplar, bir inline buton özeti onaylatır. “Eczacıya sor” doğrudan bir kişiye gider.

Kaçınılması gereken hatalar

  • Çok fazla buton. Telefonda klavye başına iki ile altı seçenek rahat okunur. Daha uzun menüler bir Mini App’e veya ikinci adıma taşınmalı.
  • İlk mesajda numara istemek. Müşteri neden gerektiğini anladıktan sonra isteyin.
  • Klavyeyi açık unutmak. Hiç kapanmayan klavye müşteriye yazamazmış gibi hissettirir. Tek seferlik sorularda tek seferlik klavye kullanın.
  • Sessiz butonlar. Her dokunuşa bir cevap gelmeli, “Aldım, bir dakika” bile olsa.
  • Temsilciye ulaşma yolu yok. “Temsilciye bağlan” seçeneğini hep tutun. İşletmeler için Telegram rehberimiz devir ve çalışma saatlerini anlatıyor.

WhatsApp da kullanıyorsanız mantık aynı, sınırlar farklı: WhatsApp etkileşimli mesajlar rehberimize bakın. Butonların arasına yapay zekâ cevapları eklemek için Telegram yapay zekâ botu yazımızı okuyun.

app.monochat.ai adresinde ücretsiz başlayın ve Telegram botunuzu birkaç dakikada bağlayın.

Kaynaklar

SSS

Sık sorulan sorular

Telegram'da reply keyboard ile inline keyboard arasındaki fark nedir?

Reply keyboard müşterinin normal klavyesinin yerine sizin butonlarınızı koyar; dokunulan butonun metni, müşteri yazmış gibi sohbete düşer. Inline keyboard ise tek bir mesajın altına eklenir; dokunuş bota gizli bir veri gönderir, bir link ya da Mini App açar ve sohbette yeni bir mesaj görünmez.

Telegram botu müşterinin telefon numarasını nasıl alır?

Yalnızca müşteri paylaşırsa. request_contact özellikli bir klavye butonu gönderirsiniz; müşteri dokunduğunda Telegram numarasını bota kişi kartı olarak iletir. MonoChat'te Kişi Bilgisi İsteği mesaj tipini seçmeniz yeterli: müşteri kendi dilinde bir Kişi Bilgilerini Paylaş butonu görür.

Inline butonla telefon numarası veya konum istenebilir mi?

Hayır. Bot API'de request_contact ve request_location yalnızca klavye butonlarında (KeyboardButton) vardır ve sadece botla yapılan özel sohbetlerde çalışır. Inline butonlar callback verisi gönderir, link ya da Mini App açar.

Telegram'da butona bastıktan sonra neden yükleniyor işareti dönüp duruyor?

Inline callback butonuna dokunulduğunda Telegram, bot answerCallbackQuery çağırana kadar bir ilerleme göstergesi gösterir. Bot yanıt vermezse buton takılmış gibi görünür. MonoChat 3.8.41'den beri her dokunuşa yanıt veriyor; gösterge duruyor ve dokunuş sohbete Buton Yanıtı olarak düşüyor.

Telegram botuna buton eklemek için kod yazmam gerekir mi?

Hayır. Botun BotFather token'ını MonoChat'e bağlar, mesajları Mesaj Gönder düğümünde veya kısa mesajlarda hazırlarsınız: hızlı cevaplar, inline butonlu Buton mesajları, Konum İsteği ve Kişi Bilgisi İsteği. Akış, müşteriyi dokunduğu butona göre yönlendirir.

Growth planının ilk ayı bizden

WhatsApp, Instagram ve Messenger tek gelen kutusunda

MonoChat ile ücretsiz başlayın: resmi Meta API’leri üzerinde ortak ekip gelen kutusu, yapay zekâ asistanları, şablonlar ve kampanyalar.

İşletme başına tek kod • 30 gün içinde kullanım • Kart gerekmez

150 USD başlangıç kredisi.

Kredi al