Menu /setup: Panduan Lengkap Antarmuka Telegram X Bot
Cara tercepat mengonfigurasi X Bot adalah menu interaktif /setup. Ia membungkus setiap perintah admin di balik antarmuka yang bisa diklik dan diedit langsung — tanpa perlu menghafal perintah slash.
Jalur tercepat: tambahkan bot ke grup Anda, ketik
/setup, ketuk 🚀 Quick Start, dan ikuti empat prompt. Anda akan memiliki jadwal laporan harian yang berjalan pada filter nyata dalam waktu kurang dari dua menit.
Tampilan /setup

╔══════════════════════════════════════════════╗
║ ⚙️ Bot Setup ║
║ ║
║ Pilih bagian. Pengaturan tersimpan seketika. ║
║ ║
║ Status saat ini ║
║ ─ Project: MyToken ║
║ ─ Filter: 3 keywords · 2 cashtags ║
║ ─ Schedule: daily 18:00 UTC ║
║ ─ Plan: FREE — 47/100 credits left ║
╠══════════════════════════════════════════════╣
║ [ 🚀 Quick Start ] ║
║ [ 🎯 Filters ] [ ⏰ Schedule ] ║
║ [ 📊 Reports ] [ 🎨 Customization ] ║
║ [ 👥 Admins ] [ 💳 Buy Credits ] ║
║ [ ℹ️ About ] ║
║ [ ✕ Close ] ║
╚══════════════════════════════════════════════╝Setiap layar menampilkan status Anda saat ini di bagian atas sehingga Anda tahu apa yang sudah dikonfigurasi sebelum mengubah apa pun. Setiap perubahan tersimpan seketika ke database — tidak ada tombol "save" yang bisa terlupa.
Wizard Quick Start
Ketuk 🚀 Quick Start untuk alur linear empat langkah yang membawa chat baru dari "belum dikonfigurasi apa pun" ke "laporan terjadwal pertama" dengan jumlah prompt seminimal mungkin. Skip dan Exit selalu tersedia — wizard yang belum selesai tidak pernah menghalangi Anda, pengaturan hanya tetap pada nilai default.

Empat langkahnya:
| Langkah | Menanyakan | Disimpan ke |
|---|---|---|
| 1 | Nama proyek | Pengaturan ProjectName (dipakai di laporan, kartu leaderboard, DM admin) |
| 2 | Apa yang dilacak di X — akun, cashtag, atau kata kunci | Array from, cashtags, atau keywords pada filter default |
| 3 | Kapan memposting laporan harian — 4 waktu preset atau HH:MM khusus | Job terjadwal yang terikat pada chat Anda |
| 4 | Selesai — layar rekap dengan petunjuk /recreate untuk pratinjau sekarang | (tidak ada) |
Menu lengkap
Setiap tombol tingkat atas membuka layar terfokus. Telusuri sesuka Anda — setiap layar memiliki ← Back ke level sebelumnya dan ✕ Close untuk menutup.
🎯 Filters
Post X apa yang diambil bot pada setiap run terjadwal.

Ketuk kategori mana pun untuk menelusuri lebih dalam. Excludes bergaya checkbox — satu ketukan mengalihkan "exclude retweets / replies / quote tweets".
Named filters (lanjutan) memungkinkan Anda menjalankan beberapa filter sekaligus pada chat yang sama — berguna saat Anda mengelola beberapa klien dalam satu grup. Setiap named filter punya tombol hapus per-baris dengan konfirmasi ketuk. Ketuk ➕ Add named filter untuk mengirim definisi satu baris lewat menu (name from:@x keywords:y cashtags:$Z mention:@m exclude:retweet ignore:@spam). Perlu setidaknya satu dari from / keywords / cashtags / mention.
Layar kategori terlihat seperti ini — deskripsi singkat apa yang dilakukan kategori tersebut, nilai saat ini, dan aksi Add / Remove / Clear all:

Saat Anda ketuk ➕ Add, menu beralih ke mode input — ketik balasan Anda sebagai pesan biasa, dan layar akan me-render ulang otomatis dengan banner konfirmasi ("✓ Added 2 cashtags: $BTC, $ETH").
➕ Add cashtags
Send the cashtags to track, space-separated.
The $ is optional.
Example: $BTC $ETH SOL
Type your reply as a normal message,
or tap Cancel to go back.
[✕ Cancel]⏰ Schedule
Kapan bot berjalan dan memposting laporan harian.

Empat preset harian mencakup sebagian besar komunitas. Preset yang sedang aktif mendapat awalan ✓ di labelnya. Custom time meminta HH:MM. Specific days menerima 14:30 Mon Wed Fri. Cron menerima ekspresi cron standar (mis. cron(0 12 ? * MON-FRI *)). Bot menerapkan frekuensi minimum 12 jam untuk menjaga biaya tetap terprediksi.
Jika Anda mengetuk preset jadwal pada chat tanpa filter, menu menolak dengan pesan error ramah yang mengarahkan kembali ke 🎯 Filters — bot tidak akan menjadwalkan chat yang tidak punya apa pun untuk diambil.
📊 Reports & Period
📊 Reports & Period
Period: 01/05/2026 7days
Start: 2026-05-01
End: 2026-05-07
The bot fetches X posts inside this window on
every scheduled run. Without a period
configured, the bot uses a rolling 24-hour
window.
[📆 Set period] [🗑 Clear period]
[⚡ Generate report now]
[📰 Show last report]Set period membatasi laporan ke jendela waktu tertentu (mis. kompetisi yang berlangsung satu minggu). Format DD/MM/YYYY Ndays atau Nweeks. Clear period kembali ke default rolling 24h. Generate report now memicu Step Function yang sama dengan yang dipakai cron — berguna untuk pratinjau instan. Show last report mengarah ke /report (yang memposting ulang gambar cache terbaru tanpa biaya kredit).
🎨 Customization
Metadata proyek yang muncul di laporan dan leaderboard publik.
🎨 Customization
🏷 Name: MyToken
✏️ Description: A community-driven DeFi project
📝 Long desc.: (multi-paragraph project pitch…)
🖼 Logo: ✓ uploaded
🔗 URLs: 2 URLs
💬 Topic: Forum topic "Reports"
[🏷 Name] [✏️ Description]
[📝 Long desc.][🖼 Logo]
[🔗 URLs] [💬 Topic]
[📈 Leaderboard customization]Sub-menu Leaderboard menampilkan:
| Pengaturan | Format |
|---|---|
| 🏆 Points | Lima angka dipisahkan spasi: likes retweets replies quotes views (mis. 5 1 20 10 0.01) |
| 🎨 Colors | Lima warna hex, urutan yang sama |
| 🔢 Top count | Bilangan bulat 1..10 — berapa banyak pengguna di leaderboard |
| 📛 Top title | Teks bebas. Akhiran opsional |#hex mengatur warna kustom (mis. Top contributors|#FF8800) |
| 🥇 Best-tweet title | Sama |
| 📊 Engagement title | Sama |
Unggahan logo menggunakan handler foto bot yang sudah ada — ketuk 🖼 Logo, lalu kirim gambar sebagai foto Telegram (bukan file). Bot mengubah ukuran dan mengunggah ke CDN website.
Topic meminta Anda mengirim /set_topic dari dalam topic forum yang diinginkan. Menu tidak bisa menangkap message_thread_id dari tombol callback, sehingga ini tetap menjadi antarmuka perintah slash.
👥 Admins & Notifications
Menampilkan daftar pengguna yang ditunjuk untuk menerima DM privat tentang kehabisan kredit, error fetch, dan peringatan chat-tidak-ditemukan. Menambah admin tetap memerlukan /add_admin @user1 @user2 dari chat — parser mention Telegram hanya berjalan pada pesan asli, bukan callback.
👥 Admins & Notifications
Currently:
• Alice (@alice_admin)
• Bob (@bob_dev)
To add admins, send /add_admin @user1 @user2
in this chat.
[🗑 Clear notification list]💳 Buy Credits & Plan
Tampilan paket + saldo, ditambah tombol yang menggerakkan alur beli dan kelola. Layar dirender berbeda tergantung paket chat saat ini:
Chat FREE:
💳 Buy Credits & Plan
Plan: FREE
Used this month: 47 / 100
Remaining: 53
Resets: 2026-06-01
[💰 Buy credits / upgrade] [🛠 Manage subscription]
[📊 Usage this month]Chat langganan PRO:
💳 Buy Credits & Plan
Plan: PRO (subscription) ✓
Unlimited fetching with Stripe metering above 1 000 / month free.
[💰 Buy credits / upgrade] [🛠 Manage subscription]
[📊 Usage this month]Chat kredit PRO (dibeli via ETH):
💳 Buy Credits & Plan
Plan: PRO (credits)
Credits remaining: 4 152
Total purchased: 5 000
[💰 Buy credits / upgrade] [🛠 Manage subscription]
[📊 Usage this month]Tombol 💰 Buy credits / upgrade memposting kartu opsi pembayaran di bawah menu. Opsi yang ditawarkan bot tergantung pada paket saat ini:
- FREE → kedua opsi 💳 Pay with Credit Card (langganan Stripe) dan 🪙 Pay with ETH (paket kredit).
- PRO credits → kedua opsi ditampilkan. ETH menambah saldo yang ada; Stripe menumpuk langganan di atasnya (kredit ETH yang ada tetap dan dipakai lebih dulu per fetch).
- PRO subscription → tanpa opsi beli. Bot membalas dengan pesan "subscription exists" dan mengarahkan ke 🛠 Manage menuju Stripe portal.
Tombol 🛠 Manage subscription membuka Stripe Customer Portal di browser Anda — di sanalah Anda memperbarui kartu, membatalkan, atau mengunduh invoice. Hanya berguna jika Anda punya langganan Stripe aktif.
Sub-layar 📊 Usage this month memecah fetched_posts dan fetch_attempts untuk bulan berjalan dan hari ini — berguna untuk menemukan kegagalan diam-diam (attempts tinggi, post nol → kemungkinan error 402 atau kueri kosong) dan untuk memperkirakan invoice Stripe berikutnya saat Anda mendekati ambang batas 1.000 post.
Buy + manage juga bisa diakses lewat perintah slash lama
/buydan/subscription. Perilakunya identik; tombol menu hanya menghemat waktu mengetik Anda.
📡 X Posts Auto-relay
Meneruskan post dari akun X terpilih ke chat segera setelah dipublikasikan — terpisah dari laporan terjadwal. Berguna saat sebuah proyek ingin admin komunitas melihat tweet akun resmi secara real time tanpa perlu mengecek X.
📡 X Posts Auto-relay
Forward posts from X accounts to this chat as soon
as they're published. Posts can take up to 5
minutes to appear here after the original was
posted on X.
3 active relays:
▶️ @MyTokenOfficial (4/10 today)
▶️ @MyTokenCEO (1/10 today)
⏸ @MyTokenSupport (0/10 today)
[ ▶️ @MyTokenOfficial ]
[ ▶️ @MyTokenCEO ]
[ ⏸ @MyTokenSupport ]
[ ➕ Add Account ]Setiap relay melakukan polling setiap 5 menit lewat X API. Post baru (sejak forward berhasil terakhir) diteruskan ke chat sebagai URL biasa — Telegram otomatis merender kartu pratinjau X sehingga isi post terlihat.
Layar kelola per-relay memungkinkan operator menyesuaikan perilaku:
📡 X Posts Auto-relay › @MyTokenOfficial
State: ▶️ Active
Today: 4/10 forwarded
Polls every: 5 min
Post types to forward
☐ Retweets
☐ Replies (to other users)
✅ Quote tweets
✅ Thread continuations (self-replies)
Topic: (default — top of chat)
[ ⏸ Pause ] [ ✏️ Cap: 10/day ]
[ ☐ Retweets ] [ ☐ Replies ]
[ ✅ Quote tweets ] [ ✅ Thread ]
[ 💬 Set topic ] [ 🧹 Clear topic ]
[ 🗑 Delete relay ]| Pengaturan | Fungsinya |
|---|---|
| Cap (1–100/hari) | Batas maksimum forward per chat per hari UTC — saat tercapai, relay berhenti meneruskan secara diam-diam hingga tengah malam UTC. Default 10. |
| Pause / Resume | Menonaktifkan jadwal polling untuk relay ini; mengaktifkan kembali langsung membuat ulang secara instan. |
| Retweets | Saat ✅, retweet oleh akun yang di-relay diteruskan. Default nonaktif. |
| Replies | Saat ✅, balasan ke pengguna lain diteruskan. Default nonaktif. |
| Quote tweets | Saat ✅, quote tweet diteruskan. Default aktif. |
| Thread continuations | Saat ✅, self-reply (pengguna membalas tweet dirinya sendiri) diteruskan — mencakup thread Twitter. Default aktif. Matikan ini jika Anda hanya ingin bagian awal setiap thread. |
| Topic | ID topic forum Telegram opsional. Saat diatur, relay hanya memposting ke topic itu, bukan thread utama. |
Auto-cleanup: jika Telegram mengembalikan error "chat-gone" (bot dikeluarkan / diblokir), relay secara otomatis menghapus jadwal polling dan konfigurasi yang tersimpan. Tidak ada kebocoran.
Batas keras: 10 relay per chat. Sesuaikan konstanta yang mendasarinya jika Anda butuh lebih banyak.
ℹ️ About
ℹ️ About this chat
Chat ID: -1002593612414
Plan: PRO ✓
Schedule: daily 18:00 UTC
Project: MyTokenPanel diagnostik untuk permintaan dukungan.
Bagaimana /setup berkaitan dengan perintah slash
/setup bersifat tambahan — setiap perintah slash yang sudah ada tetap berfungsi persis seperti sebelumnya. Menu membungkus primitif yang sama (buildQueryFromComponents, saveXBotSetting, createScheduleRule, dll.), sehingga perilakunya identik antara kedua antarmuka. Power user bisa terus mengetik /add_keywords DeFi airdrop demi kecepatan muscle-memory; pengguna baru mendapat antarmuka klik yang ramah.
Tiga perintah tidak bisa dipindahkan ke tombol menu karena memerlukan konteks plain-text + entitas pesan Telegram yang tidak dibawa callback:
| Perintah | Kenapa tetap ada |
|---|---|
/set_topic [name] | Menangkap message_thread_id dari topic tempat pesan dikirim — tombol tidak punya konteks thread |
/add_admin @user | Bergantung pada entitas mention terverifikasi Telegram untuk verifikasi admin chat |
/set_x_filtering | Perintah slash lama untuk menambah named filter; ⤴ Named filters → ➕ Add named filter di menu melakukan hal yang sama |
Resep konfigurasi
Tujuan umum → jalur menu yang tepat. Setiap resep memakan waktu satu atau dua menit klik.
"Hanya lacak post asli (tanpa retweet, tanpa reply)"
Kebanyakan komunitas ingin leaderboard menghargai konten asli, bukan repost.
/setup → 🎯 Filters → 🚫 Excludes → ketuk Retweets dan Replies sampai keduanya menampilkan ✅. Selesai. Fetch berikutnya mengirim -is:retweet -is:reply ke X API dan quote tweet tetap dihitung.
"Beri bobot lebih besar pada balasan daripada like (membangun komunitas)"
Poin default: likes 1×, retweets 2×, replies 1.5×, quotes 3×, views 0.001. Untuk mengutamakan percakapan:
/setup → 🎨 Customization → 📈 Leaderboard customization → 🏆 Points → kirim:
1 1 5 3 0.001Replies sekarang berbobot 5× — diskusi substantif mengalahkan like sambil lalu.
"Jalankan laporan dua kali sehari"
Jadwal terpicu paling banyak sekali sehari secara default. Untuk mendapat laporan akhir-Eropa dan akhir-AS:
/setup → ⏰ Schedule → 🔧 Cron expression → kirim:
cron(0 14,22 ? * * *)Dua kali terpicu/hari pada 14:00 + 22:00 UTC. Pemeriksaan frekuensi minimum 12 jam otomatis menegakkan jarak ≥ 12 jam — jendela yang lebih sempit ditolak dengan pesan error yang jelas.
"Lacak beberapa kampanye sekaligus dalam satu grup"
Tiga kampanye klien bersamaan, satu grup Telegram, satu laporan per kampanye per pemicu.
/setup → 🎯 Filters → ⤴ Named filters → ➕ Add named filter, lalu kirim salah satu dari ini di setiap giliran:
campaign_a from:@kol1,@kol2 keywords:"#CampaignALaunch"
campaign_b from:@kol3,@kol4,@kol5 cashtags:$CBT
campaign_c from:@kol6 mention:@CampaignC_OfficialMasing-masing terpicu pada jadwal yang sama dan memposting laporan terpisah yang ditandai dengan nama filter.
"Teruskan tweet sebuah akun secara real time, di antara laporan"
Berita besar dari
@MyTokenOfficialtidak seharusnya menunggu laporan 22:00 UTC.
/setup → 📡 X Posts Auto-relay → ➕ Add Account → kirim:
@MyTokenOfficial 5(Opsional 5 adalah batas harian; default 10.) Bot melakukan polling setiap 5 menit, meneruskan URL saat ada post baru, Telegram merender kartu pratinjau.
"Batasi laporan ke jendela kampanye (mis. push 7 hari)"
Tidak ingin noise pra-kampanye mencemari leaderboard.
/setup → 📊 Reports → 📆 Set period → kirim:
01/05/2026 7daysLaporan sekarang mengambil post secara ketat di dalam jendela itu. 🗑 Clear period kembali ke rolling 24 jam.
"Buat laporan diposting ke topic forum, bukan thread utama"
Grup memakai topic; laporan harus mendarat di topic Reports khusus.
Buka topic Reports, lalu dari dalamnya kirim:
/set_topic ReportsLaporan berikutnya diarahkan ke topic itu. Untuk mengembalikan: /set_topic clear dari mana saja di grup.
"Beri notifikasi ke dua admin tertentu saat kredit habis"
Bot mengirim DM ke admin yang ditunjuk saat terjadi error kredit / fetch / chat-gone. Secara default, bot jatuh kembali ke semua admin chat — persempit ke daftar terkurasi.
/add_admin @alice @bobDM sekarang hanya dikirim ke @alice dan @bob. Untuk menghapus: /setup → 👥 Admins → 🗑 Clear notification list.
"Sembunyikan chat dari showcase publik xbot.ninja"
Portofolio KOL solo otomatis disembunyikan (satu pengguna gagal memenuhi ambang batas ≥ 2 pengguna aktif). Untuk proyek komunitas yang harus tetap privat:
Tidak ada toggle sembunyikan eksplisit — listing publik ditentukan oleh ambang batas metrik. Dua cara untuk tetap privat:
- Jalankan chat kecil / sepi yang tidak memenuhi ambang batas (skor pengguna teratas < 300, post < 5/bulan, atau pengguna aktif < 2).
- Hubungi dukungan untuk menetapkan chat sebagai dikecualikan — dashboard publik akan melewatinya terlepas dari metriknya.
URL langsung chat (https://xbot.ninja/?chatId=…) tetap dapat diakses terlepas dari itu. Bagikan hanya kepada orang yang seharusnya melihat data.
Kendala umum
| Gejala | Alasan | Perbaikan |
|---|---|---|
Jadwal "ditolak" dengan FREQUENCY_ERROR | Cron mencoba terpicu lebih sering dari setiap 12 jam | Pemeriksaan jarak — pilih jarak minimal 12 jam. Pesan error menyebutkan pasangan jam yang bermasalah. |
/setup tidak muncul di autocomplete | Daftar perintah BotFather sudah usang | Bot tetap menerima /setup terlepas dari autocomplete. Perbarui BotFather → /setcommands jika keterlihatan itu penting. |
| Pratinjau filter menampilkan tanda kurung kosong / kueri aneh | Salah satu komponen kosong | /setup → 🎯 Filters menampilkan kueri literal. Tambahkan setidaknya satu dari akun / cashtag / kata kunci / mention. |
| X Posts Auto-relay meneruskan seluruh isi thread sekaligus | Self-reply melewati exclude=replies X API | /setup → 📡 X Posts Auto-relay → @akun → matikan toggle ☐ Thread continuations. Bot kemudian hanya menyimpan bagian awal thread. |
| Batas harian tercapai tapi ingin lebih | Mencapai MAX_POSTS_PER_DAY untuk relay | Ketuk ✏️ Cap dan naikkan. Setiap post yang diteruskan dihitung sebagai satu kredit. |
| Judul / warna kustom kembali seperti semula semalaman | Update pengaturan berhasil tetapi bump UPDATED_AT membatalkan cache render; fetch berikutnya menampilkan nilai baru | Tunggu satu siklus laporan. Cache render dibangun ulang pada fetch berikutnya. |
| Laporan menampilkan "0 posts" di mana-mana | Tidak ada post yang cocok dengan filter dalam periode yang dikonfigurasi | Hapus periode (rolling 24 jam lebih longgar), atau perluas filter. Sering kali karena salah ketik cashtag. |
| Bot "online" tapi laporan berhenti muncul | Bot diturunkan dari admin / dikeluarkan secara diam-diam | Cek Telegram → admin grup. Jadikan admin kembali jika hilang. Bot menonaktifkan dirinya sendiri saat error chat-gone. |
Selesai
Layar terakhir wizard merangkum semua yang telah disimpan dan mengarahkan ke /setup → 📊 Reports → ⚡ Generate report now untuk pratinjau segera:

Itulah keseluruhan turnya. Ketik /setup di grup Anda untuk memulai.
Mengalami kendala mengonfigurasi item menu? Lihat Pemecahan Masalah untuk matriks gejala-ke-perbaikan yang mencakup filter, jadwal, dan penagihan.