功能补充
This commit is contained in:
+1
-1
@@ -113,7 +113,7 @@ class AsyncTask:
|
|||||||
async def init_tasks(self):
|
async def init_tasks(self):
|
||||||
settings = [
|
settings = [
|
||||||
("kfjk", "开服监控", lambda: self.jx3fun.kaifu(self.server)),
|
("kfjk", "开服监控", lambda: self.jx3fun.kaifu(self.server)),
|
||||||
("xwzx", "新闻资讯", lambda: self.jx3fun.xinwen()),
|
("xwzx", "新闻资讯", lambda: self.jx3fun.xinwen(1)),
|
||||||
("smxx", "刷马消息", lambda: self.jx3fun.shuamamsg(self.server,type="horse",subtype="foreshow")),
|
("smxx", "刷马消息", lambda: self.jx3fun.shuamamsg(self.server,type="horse",subtype="foreshow")),
|
||||||
("ctxx", "赤兔消息", lambda: self.jx3fun.shuamamsg(self.server,type="chitu-horse",subtype="share_msg")),
|
("ctxx", "赤兔消息", lambda: self.jx3fun.shuamamsg(self.server,type="chitu-horse",subtype="share_msg")),
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -150,6 +150,20 @@ class JX3Commands(Star):
|
|||||||
yield event.plain_result("猪脑过载,请稍后再试")
|
yield event.plain_result("猪脑过载,请稍后再试")
|
||||||
|
|
||||||
|
|
||||||
|
async def jx3_xinwen(self, event: AstrMessageEvent,num:int = 5):
|
||||||
|
"""剑三 新闻"""
|
||||||
|
try:
|
||||||
|
data= await self.jx3fun.xinwen(num)
|
||||||
|
if data["code"] == 200:
|
||||||
|
yield event.plain_result(data["data"])
|
||||||
|
else:
|
||||||
|
yield event.plain_result(data["msg"])
|
||||||
|
return
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"功能函数执行错误: {e}")
|
||||||
|
yield event.plain_result("猪脑过载,请稍后再试")
|
||||||
|
|
||||||
|
|
||||||
async def jx3_keju(self, event: AstrMessageEvent,subject: str, limit: int = 5):
|
async def jx3_keju(self, event: AstrMessageEvent,subject: str, limit: int = 5):
|
||||||
"""剑三 科举"""
|
"""剑三 科举"""
|
||||||
try:
|
try:
|
||||||
|
|||||||
+4
-3
@@ -542,13 +542,14 @@ class JX3Service:
|
|||||||
return return_data
|
return return_data
|
||||||
|
|
||||||
|
|
||||||
async def xinwen(self) -> Dict[str, Any]:
|
async def xinwen(self, num:int) -> Dict[str, Any]:
|
||||||
"""新闻资讯"""
|
"""新闻资讯"""
|
||||||
return_data = self._init_return_data()
|
return_data = self._init_return_data()
|
||||||
|
|
||||||
|
params = {"limit": num}
|
||||||
# 提取字段可能返回列表
|
# 提取字段可能返回列表
|
||||||
data: Optional[List[Dict[str, Any]]] = await self._base_request(
|
data: Optional[List[Dict[str, Any]]] = await self._base_request(
|
||||||
"jx3_xinweng", "GET")
|
"jx3_xinweng", "GET", params=params)
|
||||||
|
|
||||||
if not data or not isinstance(data, list):
|
if not data or not isinstance(data, list):
|
||||||
return_data["msg"] = "获取接口信息失败或数据格式错误"
|
return_data["msg"] = "获取接口信息失败或数据格式错误"
|
||||||
@@ -561,7 +562,7 @@ class JX3Service:
|
|||||||
|
|
||||||
result_msg = "新闻资讯推送\n"
|
result_msg = "新闻资讯推送\n"
|
||||||
# 仅展示前1条,避免消息过长
|
# 仅展示前1条,避免消息过长
|
||||||
for i, item in enumerate(data[:1], 1):
|
for i, item in enumerate(data[:num], 1):
|
||||||
result_msg += f"{i}. {item.get('title', '无标题')}\n"
|
result_msg += f"{i}. {item.get('title', '无标题')}\n"
|
||||||
result_msg += f"时间:{item.get('date', '未知时间')}\n"
|
result_msg += f"时间:{item.get('date', '未知时间')}\n"
|
||||||
result_msg += f"链接:{item.get('url', '无链接')}\n"
|
result_msg += f"链接:{item.get('url', '无链接')}\n"
|
||||||
|
|||||||
@@ -231,6 +231,7 @@ class Jx3ApiPlugin(Star):
|
|||||||
"全服状态": self.jx3com.jx3_zhuangtai,
|
"全服状态": self.jx3com.jx3_zhuangtai,
|
||||||
"骚话": self.jx3com.jx3_shaohua,
|
"骚话": self.jx3com.jx3_shaohua,
|
||||||
"技改": self.jx3com.jx3_jigai,
|
"技改": self.jx3com.jx3_jigai,
|
||||||
|
"公告": self.jx3com.jx3_xinwen,
|
||||||
"科举": self.jx3com.jx3_keju,
|
"科举": self.jx3com.jx3_keju,
|
||||||
"花价": self.jx3com.jx3_huajia,
|
"花价": self.jx3com.jx3_huajia,
|
||||||
"装饰": self.jx3com.jx3_zhuangshi,
|
"装饰": self.jx3com.jx3_zhuangshi,
|
||||||
|
|||||||
+11
-5
@@ -187,6 +187,12 @@
|
|||||||
<div class="cmd-usage">技改</div>
|
<div class="cmd-usage">技改</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="command">
|
||||||
|
<div class="cmd-name">官方公告</div>
|
||||||
|
<div class="cmd-desc">获取官方最新公告及新闻内容,包括新闻分类、标题及链接等信息</div>
|
||||||
|
<div class="cmd-usage">公告 [数量]</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="command">
|
<div class="command">
|
||||||
<div class="cmd-name">阵营沙盘</div>
|
<div class="cmd-name">阵营沙盘</div>
|
||||||
<div class="cmd-desc">查看服务器当前沙盘信息</div>
|
<div class="cmd-desc">查看服务器当前沙盘信息</div>
|
||||||
@@ -206,25 +212,25 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="command">
|
<div class="command">
|
||||||
<div class="cmd-name">科举</div>
|
<div class="cmd-name">科举答题</div>
|
||||||
<div class="cmd-desc">查询科举的题目和答案</div>
|
<div class="cmd-desc">查询科举的题目和答案</div>
|
||||||
<div class="cmd-usage">科举 内容</div>
|
<div class="cmd-usage">科举 内容</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="command">
|
<div class="command">
|
||||||
<div class="cmd-name">花价</div>
|
<div class="cmd-name">家园鲜花</div>
|
||||||
<div class="cmd-desc">查询各个地图的鲜花倍率</div>
|
<div class="cmd-desc">查询各个地图的鲜花倍率</div>
|
||||||
<div class="cmd-usage">花价 名称 [服务器] [家园地图]</div>
|
<div class="cmd-usage">花价 名称 [服务器] [家园地图]</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="command">
|
<div class="command">
|
||||||
<div class="cmd-name">装饰</div>
|
<div class="cmd-name">家园装饰</div>
|
||||||
<div class="cmd-desc">查询家园装饰的详细信息</div>
|
<div class="cmd-desc">查询家园装饰的详细信息</div>
|
||||||
<div class="cmd-usage">装饰 名称 </div>
|
<div class="cmd-usage">装饰 名称 </div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="command">
|
<div class="command">
|
||||||
<div class="cmd-name">器物</div>
|
<div class="cmd-name">器物图谱</div>
|
||||||
<div class="cmd-desc">查询某地图可以获得的家园装饰物品信息</div>
|
<div class="cmd-desc">查询某地图可以获得的家园装饰物品信息</div>
|
||||||
<div class="cmd-usage">器物 地图名称 </div>
|
<div class="cmd-usage">器物 地图名称 </div>
|
||||||
</div>
|
</div>
|
||||||
@@ -353,7 +359,7 @@
|
|||||||
|
|
||||||
<div class="tip">
|
<div class="tip">
|
||||||
<strong>使用提示:</strong><br>
|
<strong>使用提示:</strong><br>
|
||||||
1. 中括号参数为可选或推荐填写内容<br>
|
1. 中括号参数为可选内容,不填写则使用程序的默认值<br>
|
||||||
2. 不填写服务器时将使用配置默认服务器
|
2. 不填写服务器时将使用配置默认服务器
|
||||||
3. 基础指令不需要token可以直接使用
|
3. 基础指令不需要token可以直接使用
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user