Skip to main content
Flextell, Telegram kanallarını doğrudan Telegram Bot API üzerinden yönetir. Her tenant kendi bot token’ını panelden girer; Flextell, botun webhook adresini otomatik olarak POST /webhook/telegram/{channel} endpoint’ine kurar.
Telegram üzerinden konuşmak için hastanın Telegram’ı yüklemiş ve botunuzu başlatmış olması gerekir (/start). Bot’u başlatmadan hastayla ilk mesajı siz atamazsınız — bu Telegram politikasıdır, Flextell’in kısıtı değildir.

Kanal verisi

Telegram kanalı GET /v1/channels yanıtında şu şekilde görünür:
{
  "id": 5,
  "tenant_id": 12,
  "name": "Destek Botu",
  "type": "telegram",
  "address": "@klinik_destek_bot",
  "status": "connected",
  "is_active": true
}
address
string
Botunuzun Telegram kullanıcı adı (@ ile başlar). Hastanızın ulaşması için paylaşacağınız değer.

Hastanın bot’u başlatması

  1. Hasta Telegram’da botunuzu açar (örn. t.me/klinik_destek_bot).
  2. Start butonuna tıklar.
  3. Telegram, Flextell webhook’una /start mesajını gönderir.
  4. Flextell, Telegram profil bilgisiyle yeni bir customer oluşturur (veya eşleşen varsa günceller) ve bir conversation açar.
  5. ChatLogCreated event’i tetiklenir.
Bu andan itibaren API üzerinden hastaya mesaj göndermeye başlayabilirsiniz.

Metin mesajı gönderme

Telegram konuşmasına metin göndermek WhatsApp ile aynı endpoint’i kullanır:
curl --request POST \
  --url https://dev.flextell.ai/api/v1/conversations/77/messages \
  --header "Authorization: Bearer $TOKEN" \
  --header "X-Tenant: 12" \
  --header "Content-Type: application/json" \
  --data '{
    "body": "Merhaba, Flextell destek ekibine hoş geldiniz."
  }'
Flextell, conversation.channel_type değerini görerek mesajı Telegram Bot API’ye iletir.

Emoji ve biçimlendirme

  • Düz metin göndermek varsayılan davranıştır.
  • Telegram’ın Markdown / HTML biçimlendirmesi desteklenmez — body olduğu gibi iletilir. Kalın/italik metin için kullanıcıya okunabilir bir metin tercih edin.
  • Emoji body içinde doğrudan kullanılabilir ("Merhaba 👋").

Medya gönderme

curl --request POST \
  --url https://dev.flextell.ai/api/v1/conversations/77/messages/media \
  --header "Authorization: Bearer $TOKEN" \
  --header "X-Tenant: 12" \
  --form "file=@/path/to/bill.pdf" \
  --form "caption=Mart ayı faturanız"

Desteklenen medya türleri

KategoriTelegram sınıfıMaks. boyut (Telegram)
Görselphoto10 MB
Belgedocument50 MB (Telegram Bot API) / 2 GB (Premium botlar)
Sesaudio50 MB
Videovideo50 MB
Sesli notvoice (OGG Opus)50 MB
Flextell’in kendi /v1/files yüklemesi 50 MB sınırındadır; Telegram tarafına bu boyuta kadar gönderim yapılabilir.

Gelen mesajlar

Hasta Telegram’dan metin yazdığında:
{
  "id": 2007,
  "conversation_id": 77,
  "sender_type": "customer",
  "sender_id": 421,
  "body": "Rapor için randevu alabilir miyim?",
  "media_type": null,
  "created_at": "2026-04-19T11:02:00+03:00"
}
Hasta ses kaydı gönderirse media_type audio, fotoğraf gönderirse image olur. Dosyayı Flextell, Telegram’dan indirip /files/{id} endpoint’ine ayna olarak kaydeder; istemciniz yine Flextell üzerinden download_url ile indirir — doğrudan Telegram dosya ID’si ile çağrı yapmanıza gerek yoktur.

Okundu olarak işaretleme

POST /v1/conversations/77/read
Telegram Bot API “okundu” sinyali özelliği sunmaz; dolayısıyla bu çağrı yalnızca Flextell tarafında badge’i düşürür ve ConversationRead event’i tetikler. Hasta uygulamasında “görüldü” bilgisi Telegram protokolü gereği görünmez.

Bot token değişikliği

Tenant, bot token’ını panelde değiştirdiğinde Flextell webhook’u otomatik olarak yeniden kurar. Eski token geçersiz olduğundan süreç aşağıdaki gibi çalışır:
  1. Panel’de yeni token girilir.
  2. Flextell eski webhook’u siler.
  3. Yeni token ile webhook /webhook/telegram/{channel}’a kurulur.
  4. status değeri connected olur.
Bu süre içinde status geçici olarak connecting görünebilir.

Sınırlamalar

  • İlk mesajı bot başlatmak zorundadır — hasta en az bir kere /start yazmalıdır.
  • Grup sohbetleri desteklenmez; yalnızca hasta ↔ bot birebir sohbetleri takip edilir.
  • Inline keyboard / callback button özellikleri şu an API tarafından gönderim için desteklenmez.
  • Silme senkronizasyonu kısıtlı: Telegram’da hastanın sildiği bir mesaj Flextell’de otomatik silinmez. Flextell tarafında silme yaparsanız (panel/API), Telegram mesajı botun o mesajına sahip olduğu sürece silinir.

Sonraki adımlar

Mesaj gönderme

İlk Telegram mesajınızı göndermek için adım adım rehber.

Realtime events

Hastanın yanıtını anlık yakalayın.