Yerleştirmeler ve Formüller
Yerleştirmeler, tepki tetiklendiğinde mesaj metinlerine, eylem alanlarına ve düğme şablonlarına yerleştirilen {{...}} biçimindeki değişkenlerdir. Tanınmayan yerleştirmeler olduğu gibi kalır. Değişkenlerin yanı sıra hesaplama için formüller de mevcuttur. Değişken eklemeye, mesaj düzenleyicisindeki «Yerleştirmeler» düğmesi yardımcı olur.
Gönderen Verileri
{{first_name}},{{last_name}}— ad ve soyad.{{username}}— kullanıcının@username'i.{{user_id}}— sayısal Telegram ID.
Olay ve Sohbet Verileri
{{text}}({{received_message}}olarak da bilinir) — gelen mesajın metni.{{message_id}}({{received_message_id}}olarak da bilinir) — gelen mesajın ID'si.{{chat_id}},{{chat_title}}({{chat_name}}olarak da bilinir) — olayın gerçekleştiği sohbet.{{topic_id}},{{topic_url}}— konu (forumlar için).
Tarih ve Saat
{{date}}— tarih (YYYY-AA-GG),{{time}}— saat (SS:DD),{{datetime}}— tarih ve saat.- Biçimlendirme:
{{date:DD.MM.YYYY HH:mm}}— belirteçlerYYYY,YY,MM,DD,HH,mm,ss.
Kullanıcı Parametreleri
{{param.anahtar}}({{params.anahtar}}veya{{recipient.anahtar}}olarak da bilinir) — abone parametresinin değeri. Parametreler «Parametreleri Değiştir», «Mesajı Kaydet» eylemleri ve diyalog yanıtlarıyla doldurulur.
Yürütme Bağlamı (ctx)
{{ctx.anahtar}}({{context.anahtar}}olarak da bilinir) — geçerli çalıştırmanın geçici değerleri: gelen webhook verileri, eylem sonuçları (web isteği, kaynağa sorgu, IA), düğme verilerinin geri yüklenmesi (Carry), döngü öğeleri.- Liste döngüsünde öğeye kendi takma adıyla erişilir; örneğin
{{item.name}}.
Formüller
{{= ifade}} yapısı, ifadeyi doğrudan metin içinde hesaplar. Aynı motor «Hesaplama» eyleminde ve karar tablosu koşullarında da çalışır. İfadelerde parametrelere ve ctx değerlerine ada göre başvurulabilir; aritmetik, karşılaştırma, mantık ve Rusça takma adlı düzinelerce fonksiyon kullanılabilir (ROUND, IF, CONCAT vb.).
Örnek: {{= ROUND(param.total * 0.9) }} — parametredeki tutarın %10 indirimi.
Tam sözdizimi ve fonksiyon listesi — Formüller bölümünde.
Yerleştirmelerde HTML
Mesajlar HTML işaretlemesiyle gönderilir. Yerleştirilen bir değerin düzeni bozmaması için (örneğin bir kullanıcı adı < içerdiğinde), yerleştirilen değerler varsayılan olarak escape edilir: HTML karakterleri güvenli metne dönüşür. Tepki metnine doğrudan yazdığınız etiketler (<b>, <a>, …) olduğu gibi bırakılır.
Bir değer hazır işaretleme içeriyorsa (örneğin bir parametreye <b>...</b> ile kaydedilmiş bir duyuru) ve onu olduğu gibi eklemek istiyorsanız, yerleştirmenin önüne & ekleyin:
{{& key}}—{{...}}yerleştirmeleri için ham ekleme.{&user:key},{&recipient:key},{&global:key}— namespace yerleştirmeleri için ham ekleme.
& öneki yalnızca o tek yerleştirme için escape'i devre dışı bırakır — değer kaynağının güvenilirliğinden siz sorumlu olursunuz. Abonenin kontrolündeki tokenleri ({{first_name}}, …) escape edilmiş bırakmak en iyisidir.
Botları başka oluşturuculardan içe aktarırken namespace yerleştirmeleri {user:…}/{recipient:…}/{global:…} otomatik olarak ham biçim {&…}'e taşınır — bunlar genellikle hazır işaretleme içeren değerler tutar, kaynak oluşturucudaki çalışma biçimine uygun olarak.
Format Hakkında Önemli Not
{{...}} yerleştirmeleri metinlerde, başlıklarda, istek gövdelerinde ve düğme şablonlarında çalışır. Parametre ve ctx anahtarlarına kısa, Latin harfli adlar verin (email, total, order_id) — yerleştirmek daha kolay olur.
Sonraki Adımlar
- Formüller — DSL sözdizimi ve tam fonksiyon listesi.
- Mesajlar ve Düğmeler — yerleştirmelerin kullanıldığı yer.
- Eylemler — parametreleri ve
ctx'i dolduran eylemler. - Koleksiyonlar ve Veriler — çalıştırmalar arasında veri depolama.