mirror of
https://github.com/tiramisulabs/seyfert.git
synced 2025-07-03 05:26:07 +00:00
chore: ws readme
This commit is contained in:
parent
bbe7513a14
commit
ef5321cb90
@ -16,13 +16,13 @@ for further reading join our [Discord](https://discord.gg/zmuvzzEFz2)
|
|||||||
## Most importantly, biscuit's rest is:
|
## Most importantly, biscuit's rest is:
|
||||||
A standalone rest library that is yet easy to use and easy to host on a serverless infrastructure, it is meant to be used with biscuit's libraries.
|
A standalone rest library that is yet easy to use and easy to host on a serverless infrastructure, it is meant to be used with biscuit's libraries.
|
||||||
|
|
||||||
## Example
|
## Example (Standalone rest)
|
||||||
```ts
|
```ts
|
||||||
import { DefaultRestAdapter } from "@biscuitland/rest";
|
import { DefaultRestAdapter } from "@biscuitland/rest";
|
||||||
import Fastify from "fastify";
|
import Fastify from "fastify";
|
||||||
|
|
||||||
const manager = new DefaultRestAdapter({
|
const manager = new DefaultRestAdapter({
|
||||||
url: `http://localhost:port...`,
|
url: "http://localhost:port...",
|
||||||
token: "your token goes here",
|
token: "your token goes here",
|
||||||
version: 10,
|
version: 10,
|
||||||
});
|
});
|
||||||
|
@ -0,0 +1,69 @@
|
|||||||
|
|
||||||
|
# biscuit
|
||||||
|
|
||||||
|
## A brand new bleeding edge non bloated Discord library
|
||||||
|
|
||||||
|
<img align="right" src="https://raw.githubusercontent.com/oasisjs/biscuit/main/assets/icon.svg" alt="biscuit"/>
|
||||||
|
|
||||||
|
## Install (for [node18](https://nodejs.org/en/download/))
|
||||||
|
|
||||||
|
```sh-session
|
||||||
|
npm install @biscuitland/rest
|
||||||
|
yarn add @biscuitland/rest
|
||||||
|
```
|
||||||
|
|
||||||
|
for further reading join our [Discord](https://discord.gg/zmuvzzEFz2)
|
||||||
|
|
||||||
|
## 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
|
||||||
|
|
||||||
|
## Example (GW proxy)
|
||||||
|
```ts
|
||||||
|
import { DefaultWsAdapter } from "@biscuitland/ws"
|
||||||
|
import { DefaultRestAdapter } from "@biscuitland/rest"
|
||||||
|
import { GATEWAY_BOT, GatewayIntents } from "@biscuitland/api-types"
|
||||||
|
|
||||||
|
const intents = GatewayIntents.Guilds | GatewayIntents.GuildMessages | GatewayIntents.MessageContent;
|
||||||
|
|
||||||
|
const restManager = new DefaultRestAdapter({
|
||||||
|
url: "http://localhost:port..."
|
||||||
|
token: "your token goes here",
|
||||||
|
version: 10,
|
||||||
|
});
|
||||||
|
|
||||||
|
const config = await restManager.get("/gateway/bot").then(res => ({
|
||||||
|
url: res.url,
|
||||||
|
shards: res.shards,
|
||||||
|
sessionStartLimit: {
|
||||||
|
total: res.session_start_limit.total,
|
||||||
|
remaining: res.session_start_limit.remaining,
|
||||||
|
resetAfter: res.session_start_limit.reset_after,
|
||||||
|
maxConcurrency: res.session_start_limit.max_concurrency,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const wsManager = new DefaultWsAdapter({
|
||||||
|
gatewayConfig: {
|
||||||
|
token: "your token goes here",
|
||||||
|
intents: intents,
|
||||||
|
},
|
||||||
|
handleDiscordPayload(shard, data) {
|
||||||
|
if (!data.t) return;
|
||||||
|
|
||||||
|
await fetch("http://localhost:port...", {
|
||||||
|
method: "POST",
|
||||||
|
body: JSON.stringify({ shardId: shard.id, data: data }),
|
||||||
|
})
|
||||||
|
.then(res => res.text())
|
||||||
|
.catch(err => null);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
wsManager.options.gatewayBot = config
|
||||||
|
wsManager.options.lastShardId = wsManager.options.gatewayBot.shards - 1
|
||||||
|
wsManager.options.totalShards = wsManager.options.gatewayBot.shards
|
||||||
|
wsManager.agent.options.totalShards = wsManager.options.gatewayBot.shards
|
||||||
|
|
||||||
|
// start a quick bot
|
||||||
|
wsManager.shards();
|
||||||
|
```
|
Loading…
x
Reference in New Issue
Block a user