This commit is contained in:
2026-03-16 16:26:47 +08:00
parent e9cf2833a2
commit f54ac15c9f
4 changed files with 39 additions and 37 deletions
+6
View File
@@ -1,5 +1,11 @@
## 更新记录 ## 更新记录
### version: 1.2.4
角色信息查询数据展示优化
角色名片查询功能优化
### version: 1.2.3 ### version: 1.2.3
查询个人奇遇的指令名称调整为 **查询** 查询个人奇遇的指令名称调整为 **查询**
+31 -35
View File
@@ -816,54 +816,51 @@ class JX3Service:
return return_data return return_data
async def jueshemingpian(self, server: str, name:str ) -> Dict[str, Any]: async def jueshemingpian(self, server: str, name: str) -> Dict[str, Any]:
"""角色名片""" """角色名片"""
return_data = self._init_return_data() return_data = self._init_return_data()
# 1. 构造请求参数 # 1. 构造请求参数
params = {"server": server, "name": name,"token": self.token} params = {"server": server, "name": name, "token": self.token}
# 2. 调用基础请求 # 2. 调用基础请求
data: Optional[list[Dict[str, Any]]] = await self._base_request( data: Optional[list[Dict[str, Any]]] = await self._base_request(
"jx3_allmingpian", "GET", params=params "jx3_allmingpian", "GET", params=params
) )
if not data: if not data:
return_data["msg"] = "未找到该角色" return_data["msg"] = "未找到该角色"
return return_data return return_data
# 3. 处理返回数据 (直接提取图片 URL)
list_msg = []
list_url = []
# 3. 处理返回数据
try: try:
chain = []
for m in data: for m in data:
msg = f"{m.get('showIndex')}" status = "已启用" if m.get("showActive") else "未启用"
if m.get('showActive'): msg = f"{m.get('showIndex')}{status}"
msg += "已启用" url = m.get("showAvatar")
else:
msg += "未启用" if not url:
list_msg.append(msg) logger.warning(f"{m.get('showIndex')}张名片缺少图片URL,已跳过")
list_url.append(m.get('showAvatar')) continue
chain.extend([
Comp.Plain(msg),
Comp.Image.fromURL(url),
])
if not chain:
return_data["msg"] = "未获取到有效的名片数据"
return return_data
chain = [
Comp.Plain(list_msg[0]),
Comp.Image.fromURL(list_url[0]),
Comp.Plain(list_msg[1]),
Comp.Image.fromURL(list_url[1]),
Comp.Plain(list_msg[2]),
Comp.Image.fromURL(list_url[2]),
]
except Exception as e: except Exception as e:
logger.error(f"数据处理时出错: {e}") logger.error(f"数据处理时出错: {e}")
return_data["msg"] = "处理接口返回信息时出错" return_data["msg"] = "处理接口返回信息时出错"
return return_data return return_data
return_data["data"] = chain return_data["data"] = chain
return_data["code"] = 200 return_data["code"] = 200
return return_data return return_data
@@ -1507,12 +1504,11 @@ class JX3Service:
try: try:
# 格式化字符串,利用字典的 get 方法提供默认值 # 格式化字符串,利用字典的 get 方法提供默认值
result_msg = ( result_msg = (
f"大区{data.get('zoneName', '')}\n" f"服务器{data.get('zoneName', '')}·{data.get('serverName', '')}\n"
f"服务器:{data.get('serverName', '')}\n"
f"名称:{data.get('roleName', '')}\n" f"名称:{data.get('roleName', '')}\n"
f"ID{data.get('roleId', '')}\n" f"角色ID{data.get('roleId', '')}\n"
f"门派{data.get('forceName', '')}\n" f"全区ID{data.get('globalRoleId', '')}\n"
f"体型:{data.get('bodyName', '')}\n" f"职业:{data.get('forceName', '')}·{data.get('bodyName', '')}\n"
f"帮会:{data.get('tongName', '')}\n" f"帮会:{data.get('tongName', '')}\n"
f"阵营:{data.get('campName', '')}\n" f"阵营:{data.get('campName', '')}\n"
) )
+1 -1
View File
@@ -16,7 +16,7 @@ from .core.fun_basic import load_as_base64
@register("astrbot_plugin_jx3", @register("astrbot_plugin_jx3",
"fxdyz", "fxdyz",
"通过调用剑网三API接口获取游戏数据,处理发送。", "通过调用剑网三API接口获取游戏数据,处理发送。",
"1.2.3", "1.2.4",
"https://github.com/qsc20001102/astrbot_plugin_jx3api" "https://github.com/qsc20001102/astrbot_plugin_jx3api"
) )
class Jx3ApiPlugin(Star): class Jx3ApiPlugin(Star):
+1 -1
View File
@@ -1,6 +1,6 @@
name: astrbot_plugin_jx3 name: astrbot_plugin_jx3
display_name: 剑网三游戏数据查询工具 display_name: 剑网三游戏数据查询工具
desc: 通过接口调用剑网三API接口获取游戏数据,处理发送。 desc: 通过接口调用剑网三API接口获取游戏数据,处理发送。
version: v1.2.3 version: v1.2.4
author: 飞翔大野猪 author: 飞翔大野猪
repo: https://github.com/qsc20001102/astrbot_plugin_jx3 repo: https://github.com/qsc20001102/astrbot_plugin_jx3