𝗦𝗲𝗰𝘁𝗼𝗿 ση𝐞
Відкрити в Telegram
A private publication covering software engineering, infrastructure, cybersecurity, research, release notes, and long-term development across multiple projects. The Official Panel: @panelfreeror This is benefit for this group: @inceptionXI
Показати більшеНемає даних
Підписники
+624 години
+527 днів
+6130 днів
Архів дописів
Semua plugin harus memiliki footer:
via @{BOT_USERNAME}
---
37. KETENTUAN IMPLEMENTASI
Jangan membuat kode dummy seperti:
console.log("coming soon")
Semua fitur yang ditulis harus benar-benar diimplementasikan.
Jika sebuah API/provider tidak tersedia, buat provider abstraction dan berikan fallback yang jelas.
Jangan mengarang endpoint API yang tidak diketahui.
---
38. SECURITY
Jangan log:
- BOT_TOKEN
- API_HASH
- OTP
- Password 2FA
- Session string
Gunakan permission checking pada:
- Official Bot
- UBot commands
- Broadcast
- Account management
- Admin commands
Jangan memberikan akses admin kepada user biasa.
---
39. README
Buat README lengkap berisi:
1. Requirements
2. Installation
3. Configuration
4. Pterodactyl Setup
5. npm install
6. npm start
7. Telegram Bot Setup
8. API ID / API HASH
9. Login Account
10. Multi Account
11. Commands
12. Troubleshooting
Startup Pterodactyl harus sederhana:
npm install && npm start
---
40. FINAL REQUIREMENT
Hasil akhir harus berupa project Node.js Telegram UBot lengkap, bukan sekadar contoh struktur.
Pastikan:
- Official Bot aktif
- UBot Manager aktif
- Login Telegram benar-benar bekerja
- OTP benar-benar divalidasi
- Session persistent
- Multi-account
- Inline keyboard
- Callback query
- Tombol Back
- Dynamic "via @{BOT_USERNAME}"
- Command dispatcher
- Role system
- Cooldown
- SQLite
- Error handler
- Reconnect
- FloodWait handler
- Broadcast system
- Blacklist
- Maker
- Downloader
- Search
- AI
- Admin Group
- Settings
- Info
- Ping
- Help
Prioritaskan stabilitas dan correctness daripada membuat kode singkat.
Jangan menghapus fitur yang diminta.
Jangan menggunakan ".env".
Jangan membuat QR login jika sistem diminta menggunakan phone number + OTP.
Jangan menganggap OTP valid tanpa verifikasi dari Telegram.
Setiap fitur harus terintegrasi dengan sistem utama dan dapat digunakan setelah project dijalankan.
`Tampilkan daftar command.
Contoh:
┏⦿ HELP
┃ Prefix : .
┗⦿
👥 ADMIN GRUP
┃ .ban
┃ .unban
┃ .mute
┃ .unmute
┃ .kick
┃ .warn
┃ .delwarn
┃ .pin
┃ .delpin
┃ .antilink
🖼️ MAKER
┃ .s
┃ .qc
┃ .iqc
┃ .brat
📥 DOWNLOADER
┃ .tt
┃ .ig
┃ .play
🔎 SEARCH
┃ .google
┃ .pins
🤖 AI
┃ .ai
📢 BROADCAST
┃ .bc
┃ .bl
⚙️ SYSTEM
┃ .ping
┃ .info
┃ .settings
via @{BOT_USERNAME}
Gunakan pagination jika command terlalu banyak.
---
24. SETTINGS
Menu:
⚙️ SETTINGS
Inline:
[ PREFIX ]
[ AUTO READ ]
[ AUTO TYPING ]
[ AUTO REACT ]
[ LANGUAGE ]
[ ◀️ BACK ]
Prefix dapat diubah per akun.
---
25. ROLE SYSTEM
Gunakan role:
Founder
Owner
CEO
Tangan Kanan
Partner
Moderator
Reseller
Member
Role menentukan akses command.
Contoh:
Founder → Semua akses
Owner → Hampir semua
CEO → Management
Tangan Kanan → Management tertentu
Partner → Fitur partner
Moderator → Moderasi
Reseller → Account management tertentu
Member → Fitur dasar
---
26. COOLDOWN
Default cooldown:
Member = 100 detik
Moderator = 90 detik
Reseller = 80 detik
Partner = 70 detik
Tangan Kanan = 60 detik
CEO = 50 detik
Owner = 40 detik
Founder = 0 detik
Cooldown hanya diterapkan pada command yang memang membutuhkan cooldown.
Jangan memberikan cooldown pada:
.ping
.info
.help
---
27. ERROR HANDLER
Semua plugin harus menggunakan error handling.
Contoh:
❌ Terjadi kesalahan.
Command : .command
Error : {ERROR}
via @{BOT_USERNAME}
Error tidak boleh membuat seluruh UBot mati.
Gunakan:
try {
// command
} catch (error) {
// handler
}
dan global handlers untuk error yang tidak tertangani.
---
28. PERFORMANCE
Sistem harus:
- Async/await
- Tidak blocking event loop
- Tidak membuat infinite loop
- Tidak membuat request tanpa batas
- Membersihkan temporary files
- Menghindari memory leak
- Menutup stream/file descriptor
- Menangani reconnect Telegram
- Menangani FloodWait
- Menangani network timeout
---
29. TEMP FILE
Semua file sementara disimpan di:
tmp/
Buat otomatis jika belum ada.
Setelah command selesai:
download
↓
process
↓
send
↓
delete temporary file
Jangan meninggalkan file sampah.
---
30. DATABASE
Gunakan SQLite.
Database minimal menyimpan:
accounts
sessions
settings
roles
blacklist
warnings
broadcasts
Setiap account mempunyai konfigurasi sendiri.
---
31. OFFICIAL BOT INLINE UI
Official Bot juga harus menggunakan inline keyboard.
Menu:
┏⦿ CONTROL PANEL
┃ Status : Online
┃ Accounts : {COUNT}
┗⦿
Buttons:
[ ➕ CONNECT ACCOUNT ]
[ 👤 MY ACCOUNTS ]
[ ▶️ START ]
[ ⏹️ STOP ]
[ 🔄 RESTART ]
[ 📊 STATUS ]
[ ⚙️ SETTINGS ]
---
32. ACCOUNT MANAGEMENT
Jika user memilih:
👤 MY ACCOUNTS
Tampilkan:
Account A
🟢 Online
Account B
🔴 Offline
Account C
🟡 Connecting
Setiap account mempunyai tombol:
[ START ]
[ STOP ]
[ RESTART ]
[ INFO ]
[ DELETE ]
---
33. INLINE CALLBACK
Gunakan callback data yang terstruktur.
Contoh:
menu_main
menu_admin
menu_downloader
menu_search
menu_ai
menu_broadcast
menu_maker
menu_settings
account_list
account_info:{id}
account_start:{id}
account_stop:{id}
account_restart:{id}
back_main
Validasi callback sebelum menjalankan action.
---
34. BOT USERNAME
Official Bot username harus diambil otomatis.
Contoh:
const botUsername = bot.botInfo.username;
Kemudian digunakan:
via @{botUsername}
Semua response UBot harus menggunakan username dinamis tersebut.
Jika username:
@ExampleBot
maka:
via @ExampleBot
Jika username berubah menjadi:
@ExampleOfficialBot
maka response otomatis:
via @ExampleOfficialBot
Jangan hardcode.
---
35. TAMPILAN FINAL COMMAND
Contoh ".ping":
┏⦿ SYSTEM
┃ Status : Online
┃ Speed : 32ms
┃ Runtime : 1h 24m
┗⦿
Pong!
via @ExampleBot
Contoh ".info":
┏⦿ BOT INFO
┃ Name : Example Bot
┃ Username : @ExampleBot
┃ Version : 1.0.0
┃ Language : JavaScript
┃ Platform : Linux
┗⦿
┏⦿ SYSTEM
┃ Status : Online
┃ Runtime : 1h 24m
┃ Speed : 32ms
┃ Memory : 126 MB
┗⦿
via @ExampleBot
---
36. UI HARUS KONSISTEN
Gunakan style:
┏⦿ TITLE
┃ Information
┃ Information
┃ Information
┗⦿
Jangan menggunakan desain yang berbeda-beda antar plugin.
[ 🔎 SEARCH ] [ 🤖 AI ]
[ 📢 BROADCAST ] [ 🖼️ MAKER ]
[ ⚙️ SETTINGS ] [ ℹ️ INFO ]
Ketika tombol ditekan, edit message yang sama menggunakan callback query.
Jangan mengirim message baru setiap kali tombol ditekan jika tidak diperlukan.
---
10. TOMBOL BACK
Setiap submenu wajib memiliki:
[ ◀️ BACK ]
Flow:
MENU
↓
MAKER
↓
STICKER
↓
BACK
↓
MENU
Gunakan callback query.
Jangan membuat message menumpuk.
---
11. MENU UTAMA
Menu utama:
┏⦿ BOT INFO
┃ Name : {BOT_NAME}
┃ Username : @{BOT_USERNAME}
┃ Version : {VERSION}
┃ Fitur : {TOTAL_FEATURE}
┃ Developer : {DEVELOPER}
┗⦿
┏⦿ SYSTEM
┃ Status : {STATUS}
┃ Runtime : {RUNTIME}
┃ Speed : {PING}ms
┃ Memory : {MEMORY}
┃ Language : JavaScript
┗⦿
via @{BOT_USERNAME}
Inline keyboard:
[ 👥 ADMIN GRUP ] [ 📥 DOWNLOADER ]
[ 🔎 SEARCH ] [ 🤖 AI ]
[ 📢 BROADCAST ] [ 🖼️ MAKER ]
[ ⚙️ SETTINGS ] [ ℹ️ INFO ]
---
12. ADMIN GRUP
Menu:
👥 ADMIN GRUP
Command:
.ban
.unban
.mute
.unmute
.kick
.warn
.delwarn
.pin
.delpin
.antilink
Contoh:
.ban
Gunakan reply message atau user identifier.
Inline submenu:
[ 🔨 BAN ]
[ 🔓 UNBAN ]
[ 🔇 MUTE ]
[ 🔊 UNMUTE ]
[ 👢 KICK ]
[ ⚠️ WARN ]
[ 📌 PIN ]
[ 📍 DEL PIN ]
[ 🔗 ANTILINK ]
[ ◀️ BACK ]
---
13. MAKER
Menu:
🖼️ MAKER
Command:
.s
.qc
.iqc
.brat
.s
Reply gambar/video:
.s
Bot mengubah media menjadi Telegram sticker.
.qc
Membuat quote chat bubble berbentuk sticker.
.iqc
Membuat quote dengan style iPhone.
.brat
Contoh:
.brat halo dunia
Output:
- Background putih
- Text hitam
- Style brat
- Output sticker
Inline menu:
[ 🖼️ STICKER ]
[ 💬 QC ] [ 📱 IQC ]
[ 📝 BRAT ]
[ ◀️ BACK ]
---
14. MEDIA TOOLS
Command:
.hd
.hdvid
.removebg
.hd
Reply gambar lalu upscale.
.hdvid
Reply video lalu upscale.
.removebg
Reply gambar lalu menghapus background.
Output:
PNG
Jika API diperlukan, buat provider abstraction.
Jangan menaruh API key tambahan di "config.js" kecuali memang benar-benar diperlukan.
---
15. DOWNLOADER
Menu:
📥 DOWNLOADER
Minimal:
.tt
.ig
.play
Contoh:
.tt https://...
atau:
.ig https://...
Bot mengambil media kemudian mengirimkannya ke Telegram.
Jika downloader gagal:
❌ Gagal mengambil media.
Alasan:
{ERROR}
via @{BOT_USERNAME}
---
16. SEARCH
Menu:
🔎 SEARCH
Command:
.google
.pins
Contoh:
.google JavaScript tutorial
dan:
.pins anime wallpaper
Tampilkan hasil secara rapi.
---
17. AI
Command:
.ai
Prioritaskan provider yang tidak membutuhkan API key tambahan jika tersedia.
Gunakan abstraction:
AI Provider
├── Provider A
├── Provider B
└── Fallback
Jika provider pertama gagal, coba provider berikutnya.
Jangan membuat sistem crash hanya karena AI provider gagal.
---
18. BROADCAST
Command utama:
.bc
Support:
Reply
User reply sebuah pesan:
.bc
Bot mengambil message tersebut.
Text
.bc Halo semuanya
Setelah command dijalankan, tampilkan:
┏⦿ BROADCAST
┃ Message : Ready
┃ Target : -
┃ Status : Waiting
┗⦿
Inline:
[ 👤 USER ]
[ 👥 GROUP ]
[ 📢 CHANNEL ]
[ ❌ CANCEL ]
---
19. BROADCAST BLACKLIST
Command:
.bl add
.bl del
.bl list
Blacklist harus mencegah target tertentu menerima broadcast.
Contoh:
.bl add 123456789
Simpan blacklist ke SQLite.
---
20. BROADCAST SAFETY
Broadcast harus memiliki:
- Delay
- Rate limit
- FloodWait handling
- Retry
- Exponential backoff
- Progress counter
- Cancel button
- Error counter
- Success counter
Contoh:
┏⦿ BROADCAST
┃ Target : GROUP
┃ Progress : 125/500
┃ Success : 119
┃ Failed : 6
┃ Status : Sending...
┗⦿
[ ❌ CANCEL ]
Jika Telegram memberikan FloodWait, tunggu sesuai waktu yang diberikan.
Jangan spam request secara paralel tanpa batas.
---
21. INFO COMMAND
Command:
.info
Output:
┏⦿ BOT INFO
┃ Name : {BOT_NAME}
┃ Username : @{BOT_USERNAME}
┃ Version : {VERSION}
┃ Language : JavaScript
┃ Platform : Linux
┗⦿
┏⦿ SYSTEM
┃ Status : Online
┃ Runtime : {RUNTIME}
┃ Speed : {PING}ms
┃ Memory : {MEMORY}
┗⦿
via @{BOT_USERNAME}
---
22. PING
Command:
.ping
Output:
┏⦿ PONG
┃ Speed : 42ms
┃ Status : Online
┗⦿
via @{BOT_USERNAME}
---
23. HELP
Command:
.help
`PromptUbot
Buat sebuah sistem Telegram UBot/Userbot berbasis Node.js yang berjalan di Linux/Pterodactyl Panel.
Jangan membuat sistem WhatsApp/Baileys. Sistem ini khusus Telegram.
---
1. KONSEP SISTEM
Sistem terdiri dari dua bagian:
A. Official Telegram Bot
Bot resmi digunakan sebagai Control Panel untuk:
- Menghubungkan akun Telegram user
- Login akun UBot
- Mengelola session
- Melihat status akun
- Start UBot
- Stop UBot
- Restart UBot
- Melihat informasi akun
- Pengaturan prefix
- Pengaturan UBot
- Mengelola beberapa akun
Official Bot tidak menjalankan command UBot secara langsung.
B. Telegram UBot
UBot berjalan menggunakan akun Telegram yang sudah terhubung melalui Official Bot.
Contoh:
User Telegram
│
▼
Official Bot
│
├── Login Account
├── Session Manager
└── UBot Manager
│
▼
Telegram UBot
---
2. PLATFORM
Gunakan:
- Node.js
- Linux
- Pterodactyl Panel
- SQLite
- Telegram MTProto client untuk Userbot
- Telegram Bot API untuk Official Bot
Sistem harus dapat dijalankan dengan:
npm install
npm start
Tidak boleh membutuhkan:
- Docker manual
- sudo
- root
- systemd
- PM2
---
3. CONFIG.JS
Gunakan satu file:
config.js
Jangan menggunakan ".env".
Config minimal:
module.exports = {
BOT_TOKEN: "ISI_BOT_TOKEN",
API_ID: 123456,
API_HASH: "ISI_API_HASH"
};
Jangan menyimpan credential di banyak file.
Session harus disimpan secara persistent.
---
4. STRUKTUR FOLDER
Gunakan struktur modular:
ubot/
├── index.js
├── package.json
├── config.js
├── README.md
│
├── database/
│ └── database.js
│
├── bot/
│ ├── index.js
│ ├── menu.js
│ ├── callbacks.js
│ └── account.js
│
├── ubot/
│ ├── manager.js
│ ├── client.js
│ ├── dispatcher.js
│ └── commands/
│ ├── help.js
│ ├── ping.js
│ ├── info.js
│ ├── settings.js
│ ├── group.js
│ ├── sticker.js
│ ├── downloader.js
│ ├── search.js
│ ├── ai.js
│ └── broadcast.js
│
├── sessions/
│
└── logs/
Folder "sessions/" dan "logs/" dibuat otomatis jika belum ada.
---
5. MULTI ACCOUNT
Sistem wajib mendukung banyak akun.
Contoh:
Account 1
Account 2
Account 3
Account 4
Setiap akun mempunyai session sendiri.
Contoh:
sessions/
├── account_1.session
├── account_2.session
└── account_3.session
Jika satu akun mengalami error, akun lainnya tidak boleh ikut mati.
Gunakan isolated client manager.
---
6. LOGIN ACCOUNT
Gunakan login Telegram yang benar.
Flow:
Official Bot
↓
Tambah Account
↓
Masukkan nomor Telegram
↓
Kirim OTP
↓
Masukkan OTP
↓
Jika 2FA aktif
↓
Masukkan password 2FA
↓
Session berhasil dibuat
PENTING:
- OTP harus benar-benar divalidasi.
- Jangan pernah menganggap akun berhasil login hanya karena user memasukkan angka.
- Jangan membuat fake verification.
- Jika OTP salah → tampilkan error.
- Jika OTP expired → minta OTP baru.
- Jika 2FA aktif → minta password 2FA.
- Setelah login berhasil → simpan session.
- Setelah restart server → session tetap bisa digunakan.
---
7. USERBOT COMMAND SYSTEM
Default prefix:
.
Contoh:
.ping
.info
.help
Prefix dapat dikonfigurasi per akun.
Command dispatcher harus:
1. Membaca message
2. Mengecek prefix
3. Parsing command
4. Parsing argument
5. Mengecek permission
6. Menjalankan plugin
7. Mengirim response
8. Menangani error
---
8. FORMAT RESPONSE UBOT
Semua response UBot harus mempunyai identitas bot.
Gunakan format:
┏⦿ UBOT
┃ Bot : {BOT_NAME}
┃ User : {USER_NAME}
┃ Status : Online
┗⦿
{HASIL COMMAND}
via @{BOT_USERNAME}
Contoh:
┏⦿ SYSTEM
┃ Status : Online
┃ Runtime : 2h 31m
┃ Speed : 42ms
┃ Memory : 128 MB
┗⦿
Pong! 42ms
via @MyBot
"@MyBot" harus diambil otomatis dari username Official Bot.
Jangan hardcode username.
Jika username bot berubah, tampilan otomatis mengikuti username terbaru.
---
9. INLINE KEYBOARD
Gunakan Telegram Inline Keyboard pada menu.
Contoh:
┏⦿ UBOT MENU
┃ Name : My UBot
┃ Version : 1.0.0
┃ Status : Online
┃ Prefix : .
┗⦿
Silakan pilih menu:
Inline keyboard:
[ 👥 ADMIN GRUP ] [ 📥 DOWNLOADER ]