No Description

Bruce Marriner 665c468c33 Updated Request func to handle POST as well. Updated other 9 years ago
_examples 7b7b1d381c Added SendMessage function to client.go and example of it to demo.go 9 years ago
LICENSE bc323b57a1 Initial commit 9 years ago
README.md ed73bdb004 Added list of working features and comment regarding demo.go 9 years ago
channel.go 66da5a3ae4 Created a client.go with low level access functions and started 9 years ago
client.go 665c468c33 Updated Request func to handle POST as well. Updated other 9 years ago
discord.go 302f4976a9 Renamed RequestToken to Login 9 years ago
notes.md 782fbe2bc9 Added Message func to client.go to pull channel messages 9 years ago
server.go 66da5a3ae4 Created a client.go with low level access functions and started 9 years ago
session.go ec6f07259d Renamed Close to Logout. Removed unneeded sprintf calls. 9 years ago
structs.go f3ddf16ff7 Removed Mentions struct, as its the same as User 9 years ago

README.md

Discordgo

Golang Discord API.

This is my first Golang project and it is probably not even suitable for use :)

Everything here so far is likely to change as I learn Golang better and refine the API names and such.

Initially my goal was to write a chatbot and I started working with https://github.com/Xackery/discord as my API. But that code doesn't work 100% and so I started slowly making changes to it. Anyhow, credit goes to https://github.com/Xackery/discord for getting me started.

If you're looking for a functional Discord API for Golang check out https://github.com/gdraynz/go-discord which I recently found. It's much more complete and will likely help me learn how to improve what I have here.

What Works

Right now I'm focusing on the REST API and have not done any Websockets work. You can do the following things using the client.go functions.

  • Login to Discord
  • Get User information for a given user.
  • Get Private Channels (used for Private Messages) for a given user.
  • Get Servers for a given user.
  • Get Members of a given Server
  • Get Channels for a given Server
  • Get Messages for a given Channel
  • Send Messages to a given Channel
  • Logout from Discord.

All the code in the other files such as discord.go, session.go, etc are a playground where I'm working to provide another and easier way to access the API.

You can look at the demo.go example file to see all of the client.go functions in use.

Other Discord APIs