No Description

Bruce 594d27626e Merge pull request #42 from iopred/state 9 years ago
example 478620480c Moved examples into individual folders to make go test and travisCI happy. 9 years ago
.travis.yml 2af61ea2c5 First commit of Travis CI file 9 years ago
LICENSE bc323b57a1 Initial commit 9 years ago
README.md 50bf4c7bac Added reference to Disgord 9 years ago
discord.go 9ba6d5b7c1 Make state tracking optional. 9 years ago
endpoints.go 57a5245657 Added support for setting channel permission overrides, closes #20 9 years ago
restapi.go f2ccbd3522 Merge pull request #36 from iopred/bans 9 years ago
state.go 66052d0a9c Rename methods. 9 years ago
structs.go 9ba6d5b7c1 Make state tracking optional. 9 years ago
util.go 35e3966b91 Reworded top comment 9 years ago
voice.go 8c301a4126 Clean up voice.go, should work better on other systems now, closes #31 9 years ago
wsapi.go 66052d0a9c Rename methods. 9 years ago

README.md

DiscordGo provides direct low level bindings for Discord in the Go Programming Language (Golang).

  • See dgVoice for experimental voice support.
  • See Disgord for an experimental scriptable (RC, Lua, JS) Discord client.

Join #go_discordgo Discord API channel on Discord for support.

GoDoc Go Walker Go report Build Status


Usage Examples

See the example sub-folder for examples. Each example accepts a username and password as a CLI argument when run.

Documentation

NOTICE : This library and the Discord API are unfinished. Because of that there may be major changes to library functions, constants, and structures.

  • GoDoc
  • Go Walker
  • Hand crafted documentation coming eventually.

What Works

Current package provides a low level direct mapping to the majority of Discord REST and Websock API.

  • Login/Logout
  • Open/Close Websocket and listen for events.
  • Accept/Create/Delete Invites
  • Get User details (Name, ID, Settings, etc)
  • List/Create User Channels (Private Message Channels)
  • List/Create Guilds
  • List/Create Guild Channels
  • List Guild Members
  • Receive/Send Messages to Channels
  • Permissions related functions.
  • Editing User Profile settings

What's Unfinished

  • Functions for Maintenance Status
  • Finish Voice support.
  • Add a higher level interface with user friendly helper functions.

Other Discord APIs

Go: gdraynz/go-discord, Xackery/discord, Nerketur/discordapi

.NET: RogueException/Discord.Net, Luigifan/DiscordSharp

Java: nerd/Discord4J

Node.js: izy521/discord.io, hydrabolt/discord.js, qeled/discordie,

PHP: Cleanse/discord-hypertext, teamreflex/DiscordPHP

Python: Rapptz/discord.py

Ruby: meew0/discordrb

Scala: eaceaser/discord-akka

Rust: SpaceManiac/discord-rs