Archived
1
0
Fork 0

Add mclgv

This commit is contained in:
多羅狼 2023-11-29 20:43:58 +08:00 committed by GitHub
parent 698b7ec0db
commit ef2bec3aaa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 102 additions and 38 deletions

View file

@ -1,6 +1,6 @@
from core.builtins import Bot from core.builtins import Bot
from core.component import module from core.component import module
from .mcv import mcv, mcbv, mcdv, mcev from .mcv import mcv, mcbv, mcdv, mcev, mclgv
m = module( m = module(
bind_prefix='mcv', bind_prefix='mcv',
@ -42,3 +42,13 @@ me = module(
@me.handle('{{mcv.help.mcev}}') @me.handle('{{mcv.help.mcev}}')
async def mcev_loader(msg: Bot.MessageSession): async def mcev_loader(msg: Bot.MessageSession):
await msg.finish(await mcev(msg)) await msg.finish(await mcev(msg))
mlg = module(
bind_prefix='mclgv',
developers=['OasisAkari', 'Dianliang233'])
@me.handle('{{mcv.help.mclgv}}')
async def mcev_loader(msg: Bot.MessageSession):
await msg.finish(await mclgv(msg))

View file

@ -2,16 +2,18 @@
"mcv.help.mcbv": "Get the latest version of Minecraft: Bedrock Edition on Mojira.", "mcv.help.mcbv": "Get the latest version of Minecraft: Bedrock Edition on Mojira.",
"mcv.help.mcdv": "Get the latest version of Minecraft Dungeons on Mojira.", "mcv.help.mcdv": "Get the latest version of Minecraft Dungeons on Mojira.",
"mcv.help.mcev": "Get the latest version of Minecraft: Education Edition in Windows Edition.", "mcv.help.mcev": "Get the latest version of Minecraft: Education Edition in Windows Edition.",
"mcv.help.mclgv": "Get the latest version of Minecraft Legends on Mojira.",
"mcv.help.mcv": "Get the latest version of Minecraft: Java Edition in the launcher.", "mcv.help.mcv": "Get the latest version of Minecraft: Java Edition in the launcher.",
"mcv.message.error.server": "Server error.", "mcv.message.error.server": "Server error.",
"mcv.message.mcbv": "The latest version recorded on Mojira is:\n${msg2}\n(The latest version in the stores shall prevail, Mojira is only for previewing the version)", "mcv.message.mcbv": "The latest version recorded on Mojira is:\n${jira_ver}\n(The latest version in the stores shall prevail, Mojira is only for previewing the version)",
"mcv.message.mcbv.get_failed": "Failed to fetch.",
"mcv.message.mcbv.ms_store": "Currently the latest version in Microsoft Store is: ", "mcv.message.mcbv.ms_store": "Currently the latest version in Microsoft Store is: ",
"mcv.message.mcbv.play_store": "Currently the latest version in Google Play Store is: ", "mcv.message.mcbv.play_store": "Currently the latest version in Google Play Store is: ",
"mcv.message.mcdv": "The latest version: ${mcdversion}\n(The data from Mojira may be earlier than the official release. Information is for reference purposes only).", "mcv.message.mcdv": "The latest version: ${version}\n(The data from Mojira may be earlier than the official release. Information is for reference purposes only).",
"mcv.message.mcev": "The latest version: ", "mcv.message.mcev": "The latest version: ${version}",
"mcv.message.mcv": "The latest version in the launcher is: \n${message1}\nThe latest version recorded on Mojira is: \n${message2}\n(The latest version in the launcher shall prevail, Mojira is only for previewing the version)", "mcv.message.mclgv": "The latest version: ${version}\n(The data from Mojira may be earlier than the official release. Information is for reference purposes only).",
"mcv.message.mcv.message1": "The latest release: ${release}, the latest snapshot: ${snapshot},", "mcv.message.mcv": "The latest version in the launcher is: \n${launcher_ver}\nThe latest version recorded on Mojira is: \n${jira_ver}\n(The latest version in the launcher shall prevail, Mojira is only for previewing the version)",
"mcv.message.mcv.message1.failed": "Failed to get manifest.json.", "mcv.message.mcv.jira.failed": "Failed to get Mojira information.",
"mcv.message.mcv.message2.failed": "Failed to get Mojira information.", "mcv.message.mcv.launcher": "The latest release: ${release}, the latest snapshot: ${snapshot},",
"mcv.message.mcbv.get_failed": "Failed to fetch." "mcv.message.mcv.launcher.failed": "Failed to get manifest.json."
} }

View file

@ -2,16 +2,18 @@
"mcv.help.mcbv": "查询当前 Minecraft 基岩版在 Mojira 内记录的最新版本。", "mcv.help.mcbv": "查询当前 Minecraft 基岩版在 Mojira 内记录的最新版本。",
"mcv.help.mcdv": "查询当前 Minecraft Dungeons 在 Mojira 内记录的最新版本。", "mcv.help.mcdv": "查询当前 Minecraft Dungeons 在 Mojira 内记录的最新版本。",
"mcv.help.mcev": "查询当前 Minecraft教育版在 Windows 版记录的最新版本。", "mcv.help.mcev": "查询当前 Minecraft教育版在 Windows 版记录的最新版本。",
"mcv.help.mclgv": "查询当前 Minecraft Legends 在 Mojira 内记录的最新版本。",
"mcv.help.mcv": "查询当前 MinecraftJava 版在启动器内最新版本。", "mcv.help.mcv": "查询当前 MinecraftJava 版在启动器内最新版本。",
"mcv.message.error.server": "服务器错误。", "mcv.message.error.server": "服务器错误。",
"mcv.message.mcbv": "Mojira 上所记录最新版本为:\n${msg2}\n以商店内最新版本为准Mojira 仅作版本号预览用)", "mcv.message.mcbv": "Mojira 上所记录最新版本为:\n${jira_ver}\n以商店内最新版本为准Mojira 仅作版本号预览用)",
"mcv.message.mcbv.get_failed": "获取失败。",
"mcv.message.mcbv.ms_store": "目前 Microsoft Store 内最新正式版为:", "mcv.message.mcbv.ms_store": "目前 Microsoft Store 内最新正式版为:",
"mcv.message.mcbv.play_store": "目前 Google Play 商店内最新正式版为:", "mcv.message.mcbv.play_store": "目前 Google Play 商店内最新正式版为:",
"mcv.message.mcdv": "最新版:${mcdversion}\n数据来源于 Mojira可能会比官方发布要早一段时间。信息仅供参考。", "mcv.message.mcdv": "最新版:${version}\n数据来源于 Mojira可能会比官方发布要早一段时间。信息仅供参考。",
"mcv.message.mcev": "最新版:", "mcv.message.mcev": "最新版:${version}",
"mcv.message.mcv": "目前启动器内最新版本为:\n${message1}\nMojira 上所记录最新版本为:\n${message2}\n以启动器内最新版本为准Mojira 仅作版本号预览用", "mcv.message.mclgv": "最新版:${version}\n数据来源于 Mojira可能会比官方发布要早一段时间。信息仅供参考。",
"mcv.message.mcv.message1": "最新版:${release},最新快照:${snapshot}", "mcv.message.mcv": "目前启动器内最新版本为:\n${launcher_ver}\nMojira 上所记录最新版本为:\n${jira_ver}\n以启动器内最新版本为准Mojira 仅作版本号预览用)",
"mcv.message.mcv.message1.failed": "获取 manifest.json 失败。", "mcv.message.mcv.jira.failed": "获取 Mojira 信息失败。",
"mcv.message.mcv.message2.failed": "获取 Mojira 信息失败。", "mcv.message.mcv.launcher": "最新版:${release},最新快照:${snapshot}",
"mcv.message.mcbv.get_failed": "获取失败。" "mcv.message.mcv.launcher.failed": "获取 manifest.json 失败。"
} }

View file

@ -2,16 +2,18 @@
"mcv.help.mcbv": "查詢目前 Minecraft 基岩版在 Mojira 內記錄的最新版本。", "mcv.help.mcbv": "查詢目前 Minecraft 基岩版在 Mojira 內記錄的最新版本。",
"mcv.help.mcdv": "查詢目前 Minecraft Dungeons 在 Mojira 內記錄的最新版本。", "mcv.help.mcdv": "查詢目前 Minecraft Dungeons 在 Mojira 內記錄的最新版本。",
"mcv.help.mcev": "查詢目前 Minecraft教育版在 Windows 版記錄的最新版本。", "mcv.help.mcev": "查詢目前 Minecraft教育版在 Windows 版記錄的最新版本。",
"mcv.help.mclgv": "查詢目前 Minecraft Legends 在 Mojira 內記錄的最新版本。",
"mcv.help.mcv": "查詢目前 MinecraftJava 版在啟動器內最新版本。", "mcv.help.mcv": "查詢目前 MinecraftJava 版在啟動器內最新版本。",
"mcv.message.error.server": "伺服器錯誤。", "mcv.message.error.server": "伺服器錯誤。",
"mcv.message.mcbv": "Mojira 上所記錄最新版本為:\n${msg2}\n以商店內最新版本為準Mojira 僅作版本號預覽用)", "mcv.message.mcbv": "Mojira 上所記錄最新版本為:\n${jira_ver}\n以商店內最新版本為準Mojira 僅作版本號預覽用)",
"mcv.message.mcbv.get_failed": "取得失敗。",
"mcv.message.mcbv.ms_store": "目前 Microsoft Store 內最新正式版為:", "mcv.message.mcbv.ms_store": "目前 Microsoft Store 內最新正式版為:",
"mcv.message.mcbv.play_store": "目前 Google Play 商店內最新正式版為:", "mcv.message.mcbv.play_store": "目前 Google Play 商店內最新正式版為:",
"mcv.message.mcdv": "最新版:${mcdversion}\n資訊來源於 Mojira可能會比官方發布要早一段時間。資訊僅供參考。", "mcv.message.mcdv": "最新版:${version}\n資訊來源於 Mojira可能會比官方發布要早一段時間。資訊僅供參考。",
"mcv.message.mcev": "最新版:", "mcv.message.mcev": "最新版:${version}",
"mcv.message.mcv": "目前啟動器內最新版本為:\n${message1}\nMojira 上所記錄最新版本為:\n${message2}\n以啟動器內最新版本為準Mojira 僅作版本號預覽用", "mcv.message.mclgv": "最新版:${version}\n資訊來源於 Mojira可能會比官方發布要早一段時間。資訊僅供參考。",
"mcv.message.mcv.message1": "最新版:${release},最新快照:${snapshot}", "mcv.message.mcv": "目前啟動器內最新版本為:\n${launcher_ver}\nMojira 上所記錄最新版本為:\n${jira_ver}\n以啟動器內最新版本為準Mojira 僅作版本號預覽用)",
"mcv.message.mcv.message1.failed": "取得 manifest.json 失敗。", "mcv.message.mcv.jira.failed": "取得 Mojira 資訊失敗。",
"mcv.message.mcv.message2.failed": "取得 Mojira 資訊失敗。", "mcv.message.mcv.launcher": "最新版:${release},最新快照:${snapshot}",
"mcv.message.mcbv.get_failed": "取得失敗。" "mcv.message.mcv.launcher.failed": "取得 manifest.json 失敗。"
} }

View file

@ -13,11 +13,11 @@ async def mcv(msg):
try: try:
data = json.loads(await get_url('https://piston-meta.mojang.com/mc/game/version_manifest.json', 200)) data = json.loads(await get_url('https://piston-meta.mojang.com/mc/game/version_manifest.json', 200))
message1 = msg.locale.t( message1 = msg.locale.t(
"mcv.message.mcv.message1", "mcv.message.mcv.launcher",
release=data['latest']['release'], release=data['latest']['release'],
snapshot=data['latest']['snapshot']) snapshot=data['latest']['snapshot'])
except (ConnectionError, OSError): # Probably... except (ConnectionError, OSError): # Probably...
message1 = msg.locale.t("mcv.message.mcv.message1.failed") message1 = msg.locale.t("mcv.message.mcv.launcher.failed")
try: try:
mojira = json.loads(await get_url('https://bugs.mojang.com/rest/api/2/project/10400/versions', 200)) mojira = json.loads(await get_url('https://bugs.mojang.com/rest/api/2/project/10400/versions', 200))
release = [] release = []
@ -27,8 +27,8 @@ async def mcv(msg):
release.append(v['name']) release.append(v['name'])
message2 = prefix.join(release) message2 = prefix.join(release)
except Exception: except Exception:
message2 = msg.locale.t("mcv.message.mcv.message2.failed") message2 = msg.locale.t("mcv.message.mcv.jira.failed")
return msg.locale.t("mcv.message.mcv", message1=message1, message2=message2) return msg.locale.t("mcv.message.mcv", launcher_ver=message1, jira_ver=message2)
async def mcbv(msg): async def mcbv(msg):
@ -74,7 +74,7 @@ async def mcbv(msg):
f"""{msg.locale.t("mcv.message.mcbv.ms_store")} f"""{msg.locale.t("mcv.message.mcbv.ms_store")}
{ms_store_version if ms_store_version is not None else msg.locale.t('mcv.message.mcbv.get_failed')} {ms_store_version if ms_store_version is not None else msg.locale.t('mcv.message.mcbv.get_failed')}
""" + \ """ + \
msg.locale.t("mcv.message.mcbv", msg2=msg2) msg.locale.t("mcv.message.mcbv", jira_ver=msg2)
async def mcdv(msg): async def mcdv(msg):
@ -86,7 +86,7 @@ async def mcdv(msg):
for v in data: for v in data:
if not v['archived']: if not v['archived']:
release.append(v["name"]) release.append(v["name"])
return msg.locale.t('mcv.message.mcdv', mcdversion=" | ".join(release)) return msg.locale.t('mcv.message.mcdv', version=" | ".join(release))
async def mcev(msg): async def mcev(msg):
@ -97,4 +97,16 @@ async def mcev(msg):
Logger.debug(version) Logger.debug(version)
except (ConnectionError, OSError): # Probably... except (ConnectionError, OSError): # Probably...
return ErrorMessage(msg.locale.t('mcv.message.error.server')) return ErrorMessage(msg.locale.t('mcv.message.error.server'))
return f'{msg.locale.t("mcv.message.mcev")}{version}' return msg.locale.t("mcv.message.mcev", version=version)
async def mclgv(msg):
try:
data = json.loads(await get_url('https://bugs.mojang.com/rest/api/2/project/12200/versions', 200))
except (ConnectionError, OSError): # Probably...
return ErrorMessage(msg.locale.t('mcv.message.error.server'))
release = []
for v in data:
if not v['archived']:
release.append(v["name"])
return msg.locale.t('mcv.message.mclgv', version=" | ".join(release))

View file

@ -3,7 +3,7 @@ from core.component import module
mcv_rss = module('mcv_rss', mcv_rss = module('mcv_rss',
developers=['OasisAkari', 'Dianliang233'], developers=['OasisAkari', 'Dianliang233'],
recommend_modules=['mcv_jira_rss', 'mcbv_jira_rss', 'mcdv_jira_rss'], recommend_modules=['mcv_jira_rss', 'mcbv_jira_rss', 'mcdv_jira_rss', 'mclgv_jira_rss'],
desc='{mcv_rss.help.mcv_rss.desc}', alias='mcvrss') desc='{mcv_rss.help.mcv_rss.desc}', alias='mcvrss')
@ -23,7 +23,7 @@ async def mcbv_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext):
mcv_jira_rss = module('mcv_jira_rss', developers=['OasisAkari', 'Dianliang233'], mcv_jira_rss = module('mcv_jira_rss', developers=['OasisAkari', 'Dianliang233'],
recommend_modules=['mcv_rss', 'mcbv_jira_rss', 'mcdv_jira_rss'], recommend_modules=['mcv_rss', 'mcbv_jira_rss', 'mcdv_jira_rss', 'mclgv_jira_rss'],
desc='{mcv_rss.help.mcv_jira_rss.desc}', alias='mcvjirarss') desc='{mcv_rss.help.mcv_jira_rss.desc}', alias='mcvjirarss')
@ -34,7 +34,7 @@ async def mcv_jira_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext):
mcbv_jira_rss = module('mcbv_jira_rss', mcbv_jira_rss = module('mcbv_jira_rss',
developers=['OasisAkari', 'Dianliang233'], developers=['OasisAkari', 'Dianliang233'],
recommend_modules=['mcv_rss', 'mcv_jira_rss', 'mcdv_jira_rss'], recommend_modules=['mcv_rss', 'mcv_jira_rss', 'mcdv_jira_rss', 'mclgv_jira_rss'],
desc='{mcv_rss.help.mcbv_jira_rss.desc}', alias='mcbvjirarss') desc='{mcv_rss.help.mcbv_jira_rss.desc}', alias='mcbvjirarss')
@ -45,10 +45,21 @@ async def mcbv_jira_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext):
mcdv_jira_rss = module('mcdv_jira_rss', mcdv_jira_rss = module('mcdv_jira_rss',
developers=['OasisAkari', 'Dianliang233'], developers=['OasisAkari', 'Dianliang233'],
recommend_modules=['mcv_rss', 'mcbv_jira_rss', 'mcv_jira_rss'], recommend_modules=['mcv_rss', 'mcbv_jira_rss', 'mcv_jira_rss', 'mclgv_jira_rss'],
desc='{mcv_rss.help.mcdv_jira_rss.desc}', alias='mcdvjirarss') desc='{mcv_rss.help.mcdv_jira_rss.desc}', alias='mcdvjirarss')
@mcdv_jira_rss.hook() @mcdv_jira_rss.hook()
async def mcdv_jira_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext): async def mcdv_jira_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext):
await fetch.post_message('mcdv_rss', **ctx.args) await fetch.post_message('mcdv_rss', **ctx.args)
mclgv_jira_rss = module('mclgv_jira_rss',
developers=['OasisAkari', 'Dianliang233'],
recommend_modules=['mcv_rss', 'mcbv_jira_rss', 'mcv_jira_rss', 'mcdv_jira_rss'],
desc='{mcv_rss.help.mclgv_jira_rss.desc}', alias='mclgvjirarss')
@mclgv_jira_rss.hook()
async def mclgv_jira_rss(fetch: Bot.FetchTarget, ctx: Bot.ModuleHookContext):
await fetch.post_message('mclgvv_rss', **ctx.args)

View file

@ -2,11 +2,13 @@
"mcv_rss.help.mcbv_jira_rss.desc": "开启后 Mojira 更新基岩版时会自动推送消息。", "mcv_rss.help.mcbv_jira_rss.desc": "开启后 Mojira 更新基岩版时会自动推送消息。",
"mcv_rss.help.mcbv_rss.desc": "开启后商店更新 Minecraft 基岩版时会自动推送消息。", "mcv_rss.help.mcbv_rss.desc": "开启后商店更新 Minecraft 基岩版时会自动推送消息。",
"mcv_rss.help.mcdv_jira_rss.desc": "开启后 Mojira 更新 Minecraft Dungeons 时会自动推送消息。", "mcv_rss.help.mcdv_jira_rss.desc": "开启后 Mojira 更新 Minecraft Dungeons 时会自动推送消息。",
"mcv_rss.help.mclgv_jira_rss.desc": "开启后 Mojira 更新 Minecraft Legends 时会自动推送消息。",
"mcv_rss.help.mcv_jira_rss.desc": "开启后 Mojira 更新 Java 版时会自动推送消息。", "mcv_rss.help.mcv_jira_rss.desc": "开启后 Mojira 更新 Java 版时会自动推送消息。",
"mcv_rss.help.mcv_rss.desc": "开启后 Minecraft 启动器更新 MinecraftJava 版时会自动推送消息。", "mcv_rss.help.mcv_rss.desc": "开启后 Minecraft 启动器更新 MinecraftJava 版时会自动推送消息。",
"mcv_rss.message.mcbv_jira_rss": "Mojira 已更新基岩版 ${version}。\nMojira 上的信息仅作版本号预览用,不代表商店已更新此版本)", "mcv_rss.message.mcbv_jira_rss": "Mojira 已更新基岩版 ${version}。\nMojira 上的信息仅作版本号预览用,不代表商店已更新此版本)",
"mcv_rss.message.mcbv_rss": "Google Play 商店已更新基岩版 ${version} 正式版。", "mcv_rss.message.mcbv_rss": "Google Play 商店已更新基岩版 ${version} 正式版。",
"mcv_rss.message.mcdv_jira_rss": "Mojira 已更新 Minecraft Dungeons ${version}。\nMojira 上的信息仅作版本号预览用,不代表启动器/商店已更新此版本)", "mcv_rss.message.mcdv_jira_rss": "Mojira 已更新 Minecraft Dungeons ${version}。\nMojira 上的信息仅作版本号预览用,不代表启动器/商店已更新此版本)",
"mcv_rss.message.mclgv_jira_rss": "Mojira 已更新 Minecraft Legends ${version}。\nMojira 上的信息仅作版本号预览用,不代表启动器/商店已更新此版本)",
"mcv_rss.message.mcv_jira_rss": "Mojira 已更新 Java 版 ${version}。\nMojira 上的信息仅作版本号预览用,不代表启动器已更新此版本)", "mcv_rss.message.mcv_jira_rss": "Mojira 已更新 Java 版 ${version}。\nMojira 上的信息仅作版本号预览用,不代表启动器已更新此版本)",
"mcv_rss.message.mcv_jira_rss.future": "Mojira 已新增 Java 版 ${version}。\nFuture Version 仅代表与此相关的版本正在规划中,不代表启动器已更新此版本)", "mcv_rss.message.mcv_jira_rss.future": "Mojira 已新增 Java 版 ${version}。\nFuture Version 仅代表与此相关的版本正在规划中,不代表启动器已更新此版本)",
"mcv_rss.message.mcv_rss.release": "启动器已更新 ${version} 正式版。", "mcv_rss.message.mcv_rss.release": "启动器已更新 ${version} 正式版。",

View file

@ -7,6 +7,7 @@
"mcv_rss.message.mcbv_jira_rss": "Mojira 已更新基岩版 ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器已更新此版本)", "mcv_rss.message.mcbv_jira_rss": "Mojira 已更新基岩版 ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器已更新此版本)",
"mcv_rss.message.mcbv_rss": "Google Play 商店已更新基岩版 ${version} 正式版。", "mcv_rss.message.mcbv_rss": "Google Play 商店已更新基岩版 ${version} 正式版。",
"mcv_rss.message.mcdv_jira_rss": "Mojira 已更新 Minecraft Dungeons ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器/商店已更新此版本)", "mcv_rss.message.mcdv_jira_rss": "Mojira 已更新 Minecraft Dungeons ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器/商店已更新此版本)",
"mcv_rss.message.mclgv_jira_rss": "Mojira 已更新 Minecraft Legends ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器/商店已更新此版本)",
"mcv_rss.message.mcv_jira_rss": "Mojira 已更新 Java 版 ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器已更新此版本)", "mcv_rss.message.mcv_jira_rss": "Mojira 已更新 Java 版 ${version}。 \nMojira 上的資訊僅作版本號預覽用,不代表啟動器已更新此版本)",
"mcv_rss.message.mcv_jira_rss.future": "Mojira 已新增 Java 版 ${version}。 \nFuture Version 僅代表與此相關的版本正在規劃中,不代表啟動器已更新此版本)", "mcv_rss.message.mcv_jira_rss.future": "Mojira 已新增 Java 版 ${version}。 \nFuture Version 僅代表與此相關的版本正在規劃中,不代表啟動器已更新此版本)",
"mcv_rss.message.mcv_rss.release": "啟動器已更新 ${version} 正式版。", "mcv_rss.message.mcv_rss.release": "啟動器已更新 ${version} 正式版。",

View file

@ -133,8 +133,6 @@ async def _(msg: Bot.MessageSession):
" ".join(msg.trigger_msg.split(" ")[3:]), let_it=False) " ".join(msg.trigger_msg.split(" ")[3:]), let_it=False)
if delete: if delete:
await msg.finish(msg.locale.t("wiki.message.headers.add.success", headers=json.dumps(target.get_headers()))) await msg.finish(msg.locale.t("wiki.message.headers.add.success", headers=json.dumps(target.get_headers())))
else:
await msg.finish(msg.locale.t("wiki.message.headers.add.failed"))
@wiki.handle('headers reset {{wiki.help.headers.reset}}', required_admin=True) @wiki.handle('headers reset {{wiki.help.headers.reset}}', required_admin=True)

View file

@ -196,3 +196,27 @@ async def mcdv_jira_rss():
update_stored_list('scheduler', 'mcdv_jira_rss', verlist) update_stored_list('scheduler', 'mcdv_jira_rss', verlist)
except Exception: except Exception:
traceback.print_exc() traceback.print_exc()
@Scheduler.scheduled_job(IntervalTrigger(seconds=trigger_times))
async def mclgv_jira_rss():
try:
verlist = get_stored_list('scheduler', 'mclgv_jira_rss')
file = json.loads(await get_url('https://bugs.mojang.com/rest/api/2/project/12200/versions', 200, attempt=1))
releases = []
for v in file:
if not v['archived']:
releases.append(v['name'])
else:
if v['name'] not in verlist:
verlist.append(v['name'])
for release in releases:
if release not in verlist:
Logger.info(f'huh, we find {release}.')
await JobQueue.trigger_hook_all('mclgv_jira_rss', message='mcv_rss.message.mclgv_jira_rss',
i18n=True, version=release)
verlist.append(release)
update_stored_list('scheduler', 'mclgv_jira_rss', verlist)
except Exception:
traceback.print_exc()