1
0
mirror of https://github.com/spacebarchat/docs.git synced 2024-11-08 11:22:31 +01:00

Update JDA Bot Guide

This commit is contained in:
Ripples 2024-03-30 05:15:09 +00:00
parent fa0c810754
commit 205185f4ab

View File

@ -41,21 +41,21 @@ client.run('your token here')
``` ```
### JDA ### JDA
1. Create a RestConfig instance: `RestConfig restConfig = new RestConfig();`
2. Use RestConfig#setBaseUrl to tell JDA what your Rest URI is (this NEEDS to include /api/<apiver>, because it's the api **base** url for all requests): `restConfig.setBaseUrl("https://{REPLACE HERE WITH YOUR API SERVER URL}/api/v9");`
3. Create another class, and extend ConcurrentSessionController, e.g. `public class SpacebarSessionController extends ConcurrentSessionController`
4. Override the ConcurrentSessionController#getGateway method:
```java ```java
import java.lang.reflect.*; @NotNull
import net.dv8tion.jda.internal.requests.*; @Override
public String getGateway() {
public static void main(String[] args) { return "wss://{REPLACE HERE WITH YOUR GATEWAY SERVER URL}/?encoding=json&v=9&compress=zlib-stream";
JDA jda = JDABuilder.createDefault("your token here").build(); }
Field field = Requester.class.getDeclaredField("DISCORD_API_PREFIX")
field.setAccessible(true);
Field modifiers = Field.class.getDeclaredField("modifiers");
modifiers.setAccessible(true);
modifiers.setString(field, field.getModifiers() & ~Modifier.FINAL);
field.set(null, "https://api.{{ project.domain }}");
}
``` ```
5. Finally, configure JDA to use your RestConfig & SpacebarSessionController, like this:
```java
JDA jda = JDABuilder.createDefault("not_a_real_token_lol")
.setRestConfig(restConfig)
.setSessionController(new SpacebarSessionController())
.build();
```