New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@rennnpm/baileys

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install
Malware was recently detected in this package.

Affected versions:

1.0.0

@rennnpm/baileys

A WebSockets library for interacting with WhatsApp Web — Renn Baileys fork

latest
Source
npmnpm
Version
1.0.0
Version published
Maintainers
1
Created
Source

Renn Baileys

Fork Baileys untuk Node.js dengan pembaruan koneksi WhatsApp Web, pairing code, rich message, dan dukungan ESM.

Community fork. Tidak berafiliasi dengan WhatsApp atau WhiskeySockets.

Node.js License

Fitur Utama

  • ESM penuh dengan import.
  • Login QR code dan pairing code.
  • Generator generateWAMessage, generateWAMessageContent, dan generateWAMessageFromContent.
  • Rich message: text, table, list, code block, LaTeX, interactive, media, poll, product, event, dan album.
  • noSelfSync untuk menghindari sinkronisasi pesan ke device lain milik sender.
  • Newsletter/channel API tanpa auto-join saat startup.
  • WAProto dan koneksi berbasis update terbaru WhatsApp Web.

Persyaratan

  • Node.js >= 20
  • Akun WhatsApp untuk proses login
  • Project menggunakan ESM, misalnya "type": "module" di package.json

Instalasi

Install versi terbaru dari branch main:

npm install github:rennshit/baileys#main

Agar kode lama tetap memakai nama package Baileys:

{
  "type": "module",
  "dependencies": {
    "@whiskeysockets/baileys": "github:rennshit/baileys#main"
  }
}

Setelah update, restart aplikasi. Tidak ada proses install otomatis saat bot dijalankan.

Quick Start

import makeWASocket, {
  Browsers,
  useMultiFileAuthState,
} from "@whiskeysockets/baileys";

const { state, saveCreds } = await useMultiFileAuthState("auth");

const client = makeWASocket({
  auth: state,
  browser: Browsers.renn("Chrome"),
  printQRInTerminal: true,
});

client.ev.on("creds.update", saveCreds);

client.ev.on("connection.update", ({ connection }) => {
  if (connection === "open") {
    console.log("WhatsApp connected");
  }
});

client.ev.on("messages.upsert", async ({ messages }) => {
  const message = messages[0];
  if (!message?.message || message.key.fromMe) return;

  await client.sendMessage(message.key.remoteJid, {
    text: "Hello from Renn Baileys",
  });
});

Pairing Code

Gunakan nomor internasional tanpa tanda +, spasi, atau tanda baca.

const code = await client.requestPairingCode("6281234567890");
console.log("Pairing code:", code);

Format JID juga diterima:

const code = await client.requestPairingCode("6281234567890@s.whatsapp.net");

Panggil pairing setelah socket dibuat, lalu simpan credentials melalui saveCreds.

Mengirim Pesan

await client.sendMessage("6281234567890@s.whatsapp.net", {
  text: "Pesan text",
});

await client.sendMessage("6281234567890@s.whatsapp.net", {
  image: { url: "./image.jpg" },
  caption: "Pesan gambar",
});

Rich Message

Rich message memakai sendRichMessage dan dapat berisi beberapa submessage.

await client.sendRichMessage(
  "6281234567890@s.whatsapp.net",
  [
    { messageType: 2, messageText: "Data akun" },
    {
      messageType: 4,
      tableMetadata: {
        title: "Status",
        rows: [{ items: ["Nama", "Renn"] }, { items: ["Status", "Aktif"] }],
      },
    },
  ],
  undefined,
);

Helper tambahan yang tersedia:

await client.sendTable(jid, "Judul", ["Kolom 1", "Kolom 2"], rows);
await client.sendList(jid, "Daftar", ["Item 1", "Item 2"]);
await client.sendCodeBlock(jid, "console.log('hello')", undefined, {
  language: "javascript",
});

Rich message dibuat untuk chat biasa. Dukungan rendering di status@broadcast bergantung pada tipe payload WhatsApp; text dan media lebih aman untuk status.

noSelfSync

noSelfSync hanya berlaku untuk chat pribadi. Pesan tetap dikirim ke penerima, tetapi tidak disinkronkan ke device lain milik akun pengirim, dan juga tidak di-append ke store lokal pengirim.

await client.sendMessage(
  jid,
  {
    text: "Pesan tanpa self-sync",
  },
  {
    noSelfSync: true,
  },
);

Default-nya adalah false. Group, status, newsletter, dan retry message tetap memakai perilaku normal.

Newsletter / Channel

Tidak ada auto-join channel atau newsletter saat startup. Follow hanya dilakukan jika dipanggil secara manual:

await client.newsletterFollow("120363000000000000@newsletter");
await client.newsletterUnfollow("120363000000000000@newsletter");

Export Generator

import {
  generateWAMessage,
  generateWAMessageContent,
  generateWAMessageFromContent,
} from "@whiskeysockets/baileys";

Catatan Kompatibilitas

Package ini menggunakan ESM dan WAProto terbaru. Gunakan import, bukan require(). Jika project kamu masih CommonJS, tambahkan "type": "module" atau migrasikan entry point aplikasi ke ESM.

Saat update dari versi GitHub, gunakan:

npm install github:rennshit/baileys#main --force

Gunakan --force hanya saat npm masih memakai cache atau commit lama.

Pengembangan

npm install
npm run build:tsc
npm test -- --runInBand

Kredit dan Lisensi

Renn Baileys dibangun di atas Baileys oleh WhiskeySockets dan kontribusi komunitas. Lihat LICENSE untuk informasi lisensi lengkap.

Repository: https://github.com/rennshit/baileys

Keywords

renn-baileys

FAQs

Package last updated on 10 Sep 2026

Related posts