Pesan dan tombol

Aksi "Kirim pesan" menyusun respons bot dari blok dan melengkapinya dengan tombol inline, menu utama, dan langkah dialog. Ini adalah aksi terkaya dalam builder — di sinilah substitusi dan parameter referral tombol juga dikonfigurasi.

Blok pesan

Pesan adalah urutan blok (tombol Tambah blok):

  • Teks — teks terformat (hingga 4096 karakter) dengan substitusi dan tombol.
  • Foto — gambar dengan keterangan.
  • File — dokumen dengan keterangan.
  • Jeda — jeda dalam detik sebelum blok berikutnya.
  • AI — respons yang dihasilkan model berdasarkan prompt.
  • Reaksi — memanggil reaksi lain (opsional menunggu pemrosesannya selesai).

Blok dapat diseret. Mode tampilan blok — "Berurutan" atau "Acak" (untuk respons variatif). Menu utama bot dapat dibiarkan tidak berubah, diatur ulang, atau disembunyikan.

Opsi blok

Blok teks dan media memiliki flag: sematkan, tanpa suara, perlindungan dari penerusan, spoiler, tanpa pratinjau tautan, hapus otomatis setelah N detik.

Tombol inline

Di dalam blok dikonfigurasi tombol (Teks tombol + Tipe):

  • Teks (callback) — tombol dengan pemrosesan ketukan di sisi bot.
  • Tautan — membuka URL.
  • Aplikasi web — membuka Telegram Mini App. Lihat Mini App.
  • Panggil reaksi — ketukan menjalankan reaksi lain.
  • Penerimaan pembayaran dan Notifikasi — ditandai sebagai "segera".

Gaya tombol — biasa, biru (Primary), hijau (Success), atau merah (Danger). Flag "Sekali pakai" menonaktifkan tombol setelah diklik.

Perilaku saat diklik

Untuk tombol callback, dikonfigurasi apa yang terjadi saat diklik: ganti teks tombol, ganti pesan (dengan teks atau konten reaksi yang ditautkan), hapus pesan, lewati answerCallbackQuery. Ketukan juga dapat menetapkan label dan mengatur parameter.

Parameter dalam tombol (Carry)

Blok "Carry — snapshot data saat tombol diklik" melampirkan sekumpulan nilai yang diambil saat pengiriman ke tombol. Saat diklik, nilai-nilai ini masuk ke konteks — sehingga setiap tombol membawa parameter sendiri (per-invocation), bahkan jika tombolnya banyak. Masa hidup payload diatur dalam detik. Ini adalah dasar skenario "pilih produk → konfirmasi tepat itu".

Tombol dinamis

Blok "Tombol dinamis dari daftar" mengekspansi array dari ctx menjadi tombol — satu per elemen. Dikonfigurasi: kunci daftar di ctx, alias elemen, jumlah tombol per baris, dan template tombol (mendukung {{alias.field}}). Dengan cara ini dibangun katalog, daftar record, dan menu dari data koleksi. Selengkapnya — Tombol dinamis dan parameter.

Respons yang diharapkan (langkah dialog)

Blok teks dapat menunggu respons pengguna — ini mengubah pesan menjadi langkah dialog dan menjeda skenario hingga ada respons. Beberapa langkah berturut-turut membentuk kuesioner atau wizard langsung di obrolan.

Tipe konten yang diharapkan

Bot dapat menunggu jenis respons tertentu: teks, pilihan dari opsi (tombol pilihan), foto, video, video-note, audio, dokumen, pesan suara, lokasi, kontak, kalender, atau dadu. Jika pengguna mengirim tipe yang salah, langkah menganggap respons tidak sesuai.

Validasi teks

Untuk respons teks, validasi format dapat diaktifkan: telepon, e-mail, tautan, tanggal, waktu, atau sesuai formula (ekspresi reguler). Respons yang tidak lulus validasi ditolak, dan bot menampilkan pesan kesalahan.

Menyimpan respons

Respons pengguna dapat disimpan ke parameter — setelah itu tersedia dalam substitusi sebagai {{param.kunci}} dan dalam kondisi. Dengan cara ini langkah dialog mengisi mini-profil klien.

Kesalahan, pengingat, dan timeout

  • Pesan saat kesalahan validasi — apa yang ditampilkan jika respons tidak lulus validasi.
  • Pengingat — apa yang dikirim jika pengguna diam.
  • Batalkan penantian berdasarkan timeout — berapa lama menunggu; saat timeout Anda dapat menjalankan reaksi (misalnya, menyelesaikan kuesioner dengan lembut). Reaksi ini terlihat di hubungan sebagai "Timeout penantian", dan reaksi terhadap respons itu sendiri sebagai "Respons yang diharapkan".

Substitusi

Tombol "Substitusi" menyisipkan variabel: data pengirim ({{first_name}}, {{username}}, {{user_id}}), event ({{text}}, {{chat_id}}, {{datetime}}), dan parameter ({{param.kunci}}). Daftar lengkap dan formula — Substitusi dan formula.

Selanjutnya