(Golang) Go bindings for Discord
Find a file
Chris Rhodes 974d5862a4 Make update status a little more idiomatic.
This also reduces the line count a smidge.
2015-12-28 19:05:42 -08:00
example Moved examples into individual folders to make go test and travisCI happy. 2015-12-07 14:15:58 -06:00
.travis.yml First commit of Travis CI file 2015-11-16 15:09:09 -06:00
discord.go Bump version for 0.7.0-alpha for development 2015-12-21 11:52:54 -06:00
endpoints.go Added support functions for guild role fetching and management, closes #21 2015-12-23 20:09:16 -06:00
LICENSE Initial commit 2015-11-01 14:51:01 -06:00
README.md Added link to Discord Chat to README. 2015-12-07 14:53:07 -06:00
restapi.go Updated ChannelMessageSend to reflect new mention method used by Discord, closes #9 2015-12-23 23:50:19 -06:00
structs.go Updated to support new Discord method of sending game playing data, closes #34 2015-12-23 23:51:20 -06:00
util.go Reworded top comment 2015-11-23 10:16:23 -06:00
voice.go Clean up voice.go, should work better on other systems now, closes #31 2015-12-20 17:04:31 -06:00
wsapi.go Make update status a little more idiomatic. 2015-12-28 19:05:42 -08:00

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

  • See dgVoice for experimental voice support.

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

What's Unfinished

  • Make changes as needed to pass GoLint, GoVet, GoCyclo, etc. (goreportcard.com)
  • Editing User Profile settings
  • Permissions related functions.
  • 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