winstxnhdw / discord.go

A wrapper for Discord's API written in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

discord.go

Existing Discord API wrappers do not have support for Discord self-bots. This is because self-bots are against Discord's Terms of Service. However, self-bots are still useful for automating tasks that would otherwise be tedious to do manually. This library aims to provide a simple, easy-to-use interface for interacting with the Discord API.

Installation

go get -u github.com/winstxnhdw/discord.go

Usage

Create a Discord client with your personal Discord token.

client := discord.Create(os.Getenv("DISCORD_TOKEN"))
defer client.Dispose()

By default, every request is sent as soon as possible. You can set a delay between requests to avoid rate limiting.

client := discord.Create(os.Getenv("DISCORD_TOKEN"), time.Second*2)

You can send a message to a channel. Every request returns a cancel function that can be used to cancel the request. This is useful for sending multiple messages without waiting for a response.

response, cancelFunction, err := client.Message(
    os.Getenv("DISCORD_CHANNEL_OR_USER_ID"),
    "Hey, did you know that direct messages use the same API as channels?",
)

About

A wrapper for Discord's API written in Go.


Languages

Language:Go 100.0%