Skip to content

Latest commit

 

History

History
50 lines (47 loc) · 1.41 KB

README.md

File metadata and controls

50 lines (47 loc) · 1.41 KB

discordrpc-go

Go Reference

Usage

You need to create a client.
If you don't know how to get your client Id check this

conn := rpc.RPC{
		ClientID: "APP_ID",
	}

Now you need to login to your discord client. Make sure your discord client is open and not your browser discord.

_, err = conn.Login()  // Returns the login command with data with error (if any)
if err != nil {
  panic(err)
}

Now you can set an activity. Make sure that your program runs in background or else your status won't persist

_, err = conn.SetActivity(rpc.Activity{
  State:   "Playing",
  Details: "Playing a game",
  Assets: &rpc.ActivityAssets{
    LargeImage: "foo",
    LargeText:  "This is the image",
  },
  Timestamps: &rpc.ActivityTimestamps{
    Start: time.Now().Unix(),
  },
})      // returns the string returned by discord on successful connection and error (if any)
if err != nil {
  panic(err)
}

You can also clear your activity like this

_, err = conn.ClearActivity()
if err != nil {
  panic(err)
}

You can also logout of your connection to discord client like this

conn.Logout()

This library currently supports RPC status change for windows, linux and mac.
It currently dosen't support/have features to handel events returned by discord.