rename group

This commit is contained in:
ChomeNS
2024-10-06 17:36:42 +07:00
parent ed0b91ce40
commit 837fe388bb
156 changed files with 613 additions and 605 deletions

View File

@@ -0,0 +1,70 @@
package me.chayapak1.chomens_bot.irc;
import me.chayapak1.chomens_bot.data.IRCMessage;
// https://gist.github.com/kaecy/286f8ad334aec3fcb588516feb727772#file-messageparser-java
public class MessageParser {
public static IRCMessage message (String ircMessage) {
final IRCMessage message = new IRCMessage();
int spIndex;
if (ircMessage.startsWith(":")) {
spIndex = ircMessage.indexOf(' ');
if (spIndex > -1) {
message.origin = ircMessage.substring(1, spIndex);
ircMessage = ircMessage.substring(spIndex + 1);
int uIndex = message.origin.indexOf('!');
if (uIndex > -1) {
message.nickName = message.origin.substring(0, uIndex);
message.origin = message.origin.substring(uIndex + 1);
}
}
}
spIndex = ircMessage.indexOf(' ');
if (spIndex == -1) {
message.command = "null";
return message;
}
message.command = ircMessage.substring(0, spIndex).toLowerCase();
ircMessage = ircMessage.substring(spIndex + 1);
// parse privmsg params
if (message.command.equals("privmsg")) {
spIndex = ircMessage.indexOf(' ');
message.channel = ircMessage.substring(0, spIndex);
ircMessage = ircMessage.substring(spIndex + 1);
if (ircMessage.startsWith(":")) {
message.content = ircMessage.substring(1);
} else {
message.content = ircMessage;
}
}
// parse quit/join
if (message.command.equals("quit") || message.command.equals("join")) {
if (ircMessage.startsWith(":")) {
message.content = ircMessage.substring(1);
} else {
message.content = ircMessage;
}
}
// parse ping params
if (message.command.equals("ping")) {
spIndex = ircMessage.indexOf(' ');
if (spIndex > -1) {
message.content = ircMessage.substring(0, spIndex);
} else {
message.content = ircMessage;
}
}
return message;
}
}