mirror of
https://github.com/LamGC/ContentGrabbingJi.git
synced 2025-04-30 06:37:36 +00:00
[Update] SpringCQMessageEvent 适配 getImageUrl 方法;
This commit is contained in:
parent
0e182be31c
commit
9f58e186d5
@ -5,6 +5,7 @@ import net.lz1998.cq.event.message.CQGroupMessageEvent;
|
||||
import net.lz1998.cq.event.message.CQMessageEvent;
|
||||
import net.lz1998.cq.robot.CoolQ;
|
||||
|
||||
import java.net.InetSocketAddress;
|
||||
import java.util.Objects;
|
||||
|
||||
public class SpringCQMessageEvent extends MessageEvent {
|
||||
@ -47,6 +48,22 @@ public class SpringCQMessageEvent extends MessageEvent {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 该功能在CQ上需要CQHttp插件启用http接口调用和serve_data_files为true.
|
||||
* 如使用本方法, 则对方需开启5700端口, 且可能会影响多机器人处理.
|
||||
* @param imageFileName 图片文件名
|
||||
* @return 图片下载链接
|
||||
*/
|
||||
@Override
|
||||
public String getImageUrl(String imageFileName) {
|
||||
InetSocketAddress remoteAddress = cq.getBotSession().getRemoteAddress();
|
||||
if(remoteAddress == null) {
|
||||
throw new IllegalStateException("remoteAddress failed to get");
|
||||
}
|
||||
String file = cq.getImage(imageFileName).getData().getFile().replaceAll("\\\\", "/");
|
||||
return "http://" + remoteAddress.getHostString() + ":5700/data" + file.substring(file.lastIndexOf("/data") + 5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getRawMessage() {
|
||||
return messageEvent;
|
||||
|
Loading…
Reference in New Issue
Block a user