Skip to content

⚑ Paket NPM `biawak-sdk` (WebSocket Client)

biawak-sdk adalah client SDK resmi untuk aplikasi frontend (React, Vue, Svelte, Angular, Vanilla JS) dan Node.js/Bun yang perlu terhubung ke fitur komunikasi real-time WebSocket Biawak Framework.


# Gunakan NPM
npm install biawak-sdk

# Atau gunakan Bun
bun add biawak-sdk

import { createBiawakClient } from "biawak-sdk";

const client = createBiawakClient({
  url: "ws://localhost:8000/ws",
  reconnect: true,
  maxReconnectAttempts: 5
});

client.on("connected", (info) => {
  console.log("🟒 Terhubung ke WebSocket Biawak:", info.url);
});

client.on("disconnected", () => {
  console.log("πŸ”΄ Koneksi terputus.");
});

client.on("reconnecting", (info) => {
  console.log(`🟑 Mencoba menghubungkan ulang... (Percobaan ke-${info.attempt})`);
});

// Mendengarkan event dari server
client.on("notification:new", (data) => {
  console.log("Notifikasi baru:", data.message);
});

// Mengirim event ke server
client.send("chat:send", {
  roomId: "room-1",
  text: "Halo teman-teman!"
});

Dengan streamAI(), Anda dapat melakukan streaming teks balasan AI secara instan langsung melalui koneksi WebSocket yang sudah terbuka tanpa perlu membuat koneksi HTTP SSE terpisah.

const cancelStream = client.streamAI(
  {
    prompt: "Jelaskan konsep WebSocket dalam 3 poin utama.",
    provider: "openai",
    model: "gpt-4o-mini"
  },
  {
    onToken: (token) => {
      // Dipanggil setiap kali token kata baru diterima dari server
      process.stdout.write(token);
    },
    onComplete: (fullText) => {
      console.log("\nβœ… AI Respon selesai disajikan!");
    },
    onError: (err) => {
      console.error("❌ Terjadi kesalahan pada AI Stream:", err.message);
    }
  }
);

// Untuk membatalkan streaming secara manual:
// cancelStream();