botenginex-sockects
v5.0.3
Published
Professional Node.js bot runtime engine — smart logs, startup banner, runtime tracking, JID broadcasting, group invite auto-join, channel react, group like, status view & download, call blocking, AI message icon, GitHub auto-update, and Render/cloud keep-
Maintainers
Readme
botenginex
Professional bot runtime engine for WhatsApp Baileys bots.
Smart logs · Startup banner · Runtime tracker · GitHub auto-update · JID broadcasting · Group invite · Channel react · Status view & download · Call block · AI message icon · Render keep-alive.
Built by Iconic Tech — Silentbyte Platforms Inc.
Install
npm install botenginex-sockectsQuick Start
const bot = require("botenginex-sockects");
bot.start("My Bot Name");That's it. The engine reads your botenginex.js config file automatically.
Setup
1. Copy botenginex.js to the root of your bot project.
This is your config file. Fill in your details — bot name, alert number, GitHub repo, features, etc.
2. Wire your Baileys sock so the engine can send messages:
// In botenginex.js
customSender: async (jid, message, level) => {
await sock.sendMessage(jid, { text: message });
},3. Call bot.start() in your main file:
const bot = require("botenginex-sockects");
bot.start("Queen Ruva AI");GitHub Auto-Update
Your bot automatically updates itself when you push new code to GitHub.
No git required on the server. Works on Render, Railway, VPS — anywhere.
How it works:
- Every 60 seconds (or your set interval), botenginex checks your GitHub repo for a new commit.
- If a new commit is found, it downloads only the files and folders you listed in
updatePaths. - It applies the changes to your running bot and sends a WhatsApp notification to your
alertNumber.
Setup in botenginex.js:
githubUpdate: {
repo: "https://github.com/youruser/your-bot-repo",
branch: "main",
token: "", // leave empty for public repos
checkIntervalMs: 60000, // check every 1 minute
updatePaths: [
"modules/", // updates all files inside your modules folder
"index.js",
"main.js",
],
},What gets updated: Only the paths you list. Nothing else is touched.
Private repo? Generate a GitHub Personal Access Token with repo read access and paste it in token.
Update log example:
[12:04:01] [↑ UPDATE] Update found — pulling from GitHub...
[12:04:03] [↑ UPDATE] Bot updated — 7 file(s) refreshed ✔Plus a WhatsApp message to your alert number:
╔══════════════════════╗
║ 🔄 BOT AUTO-UPDATED ║
╚══════════════════════╝
Files updated: 7
Commit: `a3f9c21`
> Powered by botenginexFeatures
| Feature | What it does | |---|---| | Smart Logs | Colored, leveled logs — SUCCESS, ERROR, WARN, INFO, SYSTEM, BOT, UPDATE | | Startup Banner | Branded console banner on every start | | Runtime Tracker | Live uptime ticker in terminal | | System Snapshot | Platform, Node version, RAM, CPU info on startup | | Bot Registry | Register/deregister bots, view uptime per bot | | GitHub Auto-Update | Polls GitHub API, downloads and applies new commits automatically | | JID Broadcasting | Broadcast error/warn logs to WhatsApp groups and channels | | Group Invite | Auto-joins groups on startup via invite links | | Channel React | Auto-reacts to messages in followed channels | | Group Like | Auto-likes messages in joined groups | | Status View | Auto-views all contacts' statuses | | Status Download | Forwards statuses to your alert number | | Call Block | Auto-rejects incoming calls, optional block + custom message | | AI Message Icon | Marks bot messages with AI icon | | Render Keep-Alive | HTTP server that keeps Render/Railway free tier alive | | Online Alert | WhatsApp DM to your number when bot goes live |
Feature Toggles
Turn off any feature you don't need:
features: {
statusView: true,
statusDownload: true,
groupLike: true,
channelReact: true,
callBlock: true,
},Set any to false to disable it.
Log Levels
const bot = require("botenginex-sockects");
bot.log.success("Command handled");
bot.log.error("Something failed");
bot.log.warn("Low memory");
bot.log.info("User joined");
bot.log.system("Engine starting");
bot.log.bot("Message sent", "botId");
bot.log.update("Files refreshed");Bot Registry
bot.registerBot("main", "Queen Ruva AI"); // register a bot
bot.deregisterBot("main"); // mark offline
bot.listActiveBots(); // print registry table
bot.botLogs("main", 20); // print last 20 logs for botAlert Broadcasting
Errors and warnings are automatically broadcast to your configured groups and channels.
// In botenginex.js
groups: ["[email protected]"],
channels: ["120363XXXXXXXXXXXXXXXX@newsletter"],Full botenginex.js Reference
module.exports = {
botName: "My Bot",
botId: "main",
alertNumber: "263712345678", // receives alerts + update notifications
githubUpdate: {
repo: "https://github.com/youruser/your-bot",
branch: "main",
token: "", // optional, for private repos
checkIntervalMs: 60000,
updatePaths: ["modules/", "index.js", "main.js"],
},
groupInvites: ["https://chat.whatsapp.com/XXXXX"],
groups: ["[email protected]"],
channels: ["120363XXXXXXXXXXXXXXXX@newsletter"],
followChannels: ["120363XXXXXXXXXXXXXXXX@newsletter"],
callBlock: {
blockCaller: false,
rejectMessage: "⚠️ No calls. Message instead.",
},
features: {
statusView: true,
statusDownload: true,
groupLike: true,
channelReact: true,
callBlock: true,
},
customSender: async (jid, message) => {
await sock.sendMessage(jid, { text: message });
},
};License
MIT — Iconic Tech / Silentbyte Platforms Inc.
