seyfert/packages/ws/README.md
socram03 02b8bd0d28 fix(ws): gateway resume now it works correctly
feat(ws): more usesfull methods in sharder
fix(helpers): data arrays fixed
ci: change rome to biome

Co-authored-by: MARCROCK22 <MARCROCK22@users.noreply.github.com>
2023-11-08 20:16:28 -04:00

1.8 KiB

@biscuitland/ws

Advice

This version of @biscuitland/ws is a fork of @discordeno/gateway, all credits go to them. However it has been heavily modified for proper use within biscuit.

Most importantly, biscuit's ws is:

A standalone gateway to interface Discord, it is meant to be used with a rest manager to send fetch requests to Discord

biscuit

Install (for node18)

npm install @biscuitland/ws
yarn add @biscuitland/ws

Example

import { ShardManager } from "@biscuitland/ws";
import { BiscuitREST, Router } from "@biscuitland/rest";
import { GatewayIntentBits } from "@biscuitland/common";

const intents = GatewayIntentBits.Guilds;
const token = "your token goes here";
const rest = new BiscuitREST({ token });
const api = new Router(rest).createProxy();

(async () => {
  const connection = await api.gateway.bot.get();

  // gateway bot code ↓
  const ws = new ShardManager({
    token,
    intents,
    connection,
    async handlePayload(shardId, payload) {
      console.log("Received payload on shard #%s", shardId, payload);
    },
  });

  await ws.spawnShards();
})();