斜线响应使其基本符合 t.me/hasutestbot 标准 (#26) 修复版本号改错

This commit is contained in:
A.C.Sukazyo Eyre 2022-03-14 14:10:56 +08:00
parent b9aa9de57a
commit 79e61e28a2
Signed by: Eyre_S
GPG Key ID: EFB47D98FE082FAD
3 changed files with 22 additions and 25 deletions

View File

@ -1,6 +1,6 @@
## Core
VERSION = 0.5.2.1
VERSION = 0.6.0.2
# dependencies

View File

@ -4,6 +4,6 @@ package cc.sukazyo.cono.morny;
* the final field that will be updated by gradle automatically.
*/
public class GradleProjectConfigures {
public static final String VERSION = "0.5.2.1";
public static final long COMPILE_TIMESTAMP = 1647170439025L;
public static final String VERSION = "0.6.0.2";
public static final long COMPILE_TIMESTAMP = 1647237887029L;
}

View File

@ -38,25 +38,23 @@ public class OnUserSlashAction extends EventListener {
return false;
}
int prefixLength = 1;
boolean useVerbSuffix = true;
boolean useObjectPrefix = true;
if (text.startsWith("//#") || text.startsWith("///")) {
useVerbSuffix = false;
useObjectPrefix = false;
prefixLength = 3;
} else if (text.startsWith("/#")) {
useObjectPrefix = false;
prefixLength = 2;
} else if (text.startsWith("//")) {
useVerbSuffix = false;
prefixLength = 2;
final String[] action = CommonCommand.format(text);
action[0] = action[0].substring(1);
if (action[0].matches("^[a-zA-Z_]+$")) {
return false; // 忽略掉 Telegram 命令格式的输入
} else if (action[0].contains("/")) {
return false; // 忽略掉疑似目录格式的输入
}
final String[] action = CommonCommand.format(text.substring(prefixLength));
final String verb = action[0];
final boolean hasObject = action.length != 1;
final String object = StringArrays.connectStringArray(action, " ", 1, action.length-1);
final boolean isHardParse = "".equals(action[0]);
/* 忽略空数据 */ if (isHardParse && action.length < 2) { return false; }
final String verb = isHardParse ? action[1] : action[0];
final boolean hasObject = action.length != (isHardParse?2:1);
final String object =
hasObject ?
StringArrays.connectStringArray(action, " ", isHardParse?2:1, action.length-1) :
"";
final User origin = event.message().from();
final User target = (event.message().replyToMessage() == null ? (
origin
@ -67,16 +65,15 @@ public class OnUserSlashAction extends EventListener {
MornyCoeur.extra().exec(new SendMessage(
event.message().chat().id(),
String.format(
"%s %s%s %s%s%s",
"%s %s%s %s %s!",
TGToString.as(origin).firstnameRefHtml(),
verb, escapeHtml((useVerbSuffix?"":"")),
escapeHtml(verb), escapeHtml((hasObject?"":"")),
origin==target ?
"<a href='tg://user?id="+target.id()+"'>自己</a>" :
TGToString.as(target).firstnameRefHtml(),
escapeHtml((hasObject ? (useObjectPrefix ?"": " ") : "")),
escapeHtml((hasObject ? object : ""))
escapeHtml(hasObject ? object+" " : "")
)
).parseMode(ParseMode.HTML));
).parseMode(ParseMode.HTML).replyToMessageId(event.message().messageId()));
return true;