Skip to content

Commit 0958790

Browse files
committed
remove
1 parent a99a7a4 commit 0958790

File tree

2 files changed

+58
-10
lines changed

2 files changed

+58
-10
lines changed

src/main/java/us/ajg0702/bots/ajsupport/CommandListener.java

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,35 @@ public void onMessageContextInteraction(MessageContextInteractionEvent e) {
3939
final String name = e.getName();
4040

4141
if(name.equals("Add to Vectorize")) {
42-
StringSelectMenu.Builder selectMenuBuilder = StringSelectMenu.create("add-vectorize-message");
42+
if(e.getMember().getId().equals("171160105155297282")) {
43+
StringSelectMenu.Builder selectMenuBuilder = StringSelectMenu.create("add-vectorize-message");
4344

44-
for (Map.Entry<String, JsonElement> entry : bot.getJson().entrySet()) {
45-
String key = entry.getKey();
46-
String value = entry.getValue().getAsString();
45+
for (Map.Entry<String, JsonElement> entry : bot.getJson().entrySet()) {
46+
String key = entry.getKey();
47+
String value = entry.getValue().getAsString();
4748

48-
selectMenuBuilder.addOption(key, key, SupportBot.cutString(value, 100));
49+
selectMenuBuilder.addOption(key, key, SupportBot.cutString(value, 100));
50+
}
51+
52+
e.reply("Pick a message to attach to this vector | "+e.getTarget().getId()).addActionRow(selectMenuBuilder.build()).setEphemeral(true).queue();
53+
} else {
54+
e.reply("You can't do this!").setEphemeral(true).queue();
55+
return;
4956
}
57+
}
58+
if(name.equals("Remove from Vectorize")) {
59+
if(e.getMember().getId().equals("171160105155297282")) {
60+
e.deferReply(true).queue();
61+
InteractionHook hook = e.getHook().setEphemeral(true);
5062

51-
e.reply("Pick a message to attach to this vector | "+e.getTarget().getId()).addActionRow(selectMenuBuilder.build()).setEphemeral(true).queue();
63+
try {
64+
EmbeddingUtils.deleteFromVectorize(e.getTarget().getId());
65+
hook.sendMessage("Removed from vectorize!").queue();
66+
} catch (IOException ex) {
67+
hook.sendMessage("Failed to remove from vectorize: " + ex.getMessage()).queue();
68+
bot.getLogger().warn("Failed to remove from vectorize:", ex);
69+
}
70+
}
5271
}
5372
}
5473

src/main/java/us/ajg0702/bots/ajsupport/autorespond/EmbeddingUtils.java

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,20 +139,49 @@ public static void insertIntoVectorize(String id, BigDecimal[] vector, String ch
139139
outputStream.flush();
140140
}
141141

142-
System.out.println("(Vectorize) Upsert request returned status " + con.getResponseCode());
142+
System.out.println("(Vectorize: Upsert) Request returned status " + con.getResponseCode());
143143
try (var inputStream = con.getResponseCode() < HttpURLConnection.HTTP_BAD_REQUEST ? con.getInputStream() : con.getErrorStream();
144144
var reader = new InputStreamReader(inputStream)) {
145145
StringBuilder responseBuilder = new StringBuilder();
146146
int c;
147147
while ((c = reader.read()) != -1) {
148148
responseBuilder.append((char) c);
149149
}
150-
System.out.println("(Vectorize) Response body: " + responseBuilder);
150+
System.out.println("(Vectorize: Upsert) Response body: " + responseBuilder);
151151
}
152152

153-
153+
}
154154

155-
155+
public static void deleteFromVectorize(String id) throws IOException {
156+
final String token = System.getenv("CF_TOKEN");
157+
if(token == null || token.isEmpty()) throw new IOException("Missing CF Token!");
158+
159+
URL url = new URL("https://api.cloudflare.com/client/v4/accounts/f55b85c8a963663b11036975203c63c0/vectorize/v2/indexes/support-autoresponse/delete_by_ids");
160+
HttpURLConnection con = (HttpURLConnection) url.openConnection();
161+
con.setRequestMethod("POST");
162+
con.setRequestProperty("Content-Type", "application/json");
163+
con.setRequestProperty("Authorization", "Bearer " + token); // Replace YOUR_BEARER_TOKEN with your actual token
164+
con.setDoOutput(true);
165+
166+
String payload = String.format(
167+
"{\"ids\": [\"%s\"]}",
168+
id
169+
);
170+
try (var outputStream = con.getOutputStream()) {
171+
outputStream.write(payload.getBytes());
172+
outputStream.flush();
173+
}
174+
175+
System.out.println("(Vectorize: Delete) Request returned status " + con.getResponseCode());
176+
try (var inputStream = con.getResponseCode() < HttpURLConnection.HTTP_BAD_REQUEST ? con.getInputStream() : con.getErrorStream();
177+
var reader = new InputStreamReader(inputStream)) {
178+
StringBuilder responseBuilder = new StringBuilder();
179+
int c;
180+
while ((c = reader.read()) != -1) {
181+
responseBuilder.append((char) c);
182+
}
183+
System.out.println("(Vectorize: Delete) Response body: " + responseBuilder);
184+
}
156185
}
157186

158187
public static class VectorizeResponse {

0 commit comments

Comments
 (0)