mirror of
https://github.com/LamGC/ContentGrabbingJi.git
synced 2025-04-30 06:37:36 +00:00
[Fix] Issue #4 修复因Mirai API变动导致应用无法从消息获取ImageId的问题;
This commit is contained in:
parent
84b8006f89
commit
cbd10ff281
@ -16,7 +16,7 @@ public class MiraiMessageEvent extends MessageEvent {
|
||||
|
||||
public MiraiMessageEvent(ContactMessage message) {
|
||||
super(message instanceof GroupMessage ? ((GroupMessage) message).getGroup().getId() : 0,
|
||||
message.getSender().getId(), message.getMessage().contentToString());
|
||||
message.getSender().getId(), getMessageBodyWithoutSource(message.getMessage().toString()));
|
||||
this.messageObject = Objects.requireNonNull(message);
|
||||
if(message instanceof GroupMessage) {
|
||||
messageSender = new MiraiMessageSender(((GroupMessage) message).getGroup(), MessageSource.Group);
|
||||
@ -26,6 +26,19 @@ public class MiraiMessageEvent extends MessageEvent {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 将ContactMessage获得的消息内容删除 Mirai:source 并返回.
|
||||
* <p>该做法比较保守, 防止Mirai:source位置出现变动.</p>
|
||||
* @param message ContactMessage的消息内容;
|
||||
* @return 返回删除了Mirai:source的消息
|
||||
*/
|
||||
private static String getMessageBodyWithoutSource(String message) {
|
||||
StringBuilder builder = new StringBuilder(message);
|
||||
int startIndex = builder.indexOf("[mirai:source:");
|
||||
int endIndex = builder.indexOf("]", startIndex) + 1;
|
||||
return builder.delete(startIndex, endIndex).toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int sendMessage(final String message) {
|
||||
return messageSender.sendMessage(message);
|
||||
|
Loading…
Reference in New Issue
Block a user