Feat: ユーズの再試行 / Feat: ユーズの文字数制限回避 / Feat: ユーズ送信関数 / Chg: weatherNotice.tsのマジックナンバーに命名

This commit is contained in:
2026-05-03 13:50:11 +09:00
parent 74c1552472
commit d429503b78
12 changed files with 201 additions and 297 deletions
+47 -164
View File
@@ -1,4 +1,4 @@
import client from "@/lib/client";
import client, { createUeuse } from "@/lib/client";
import Memory from "@/lib/memory";
import ueuseModule from "better-uwuzu-sdk/types/1.6.8/types/modules/ueuse";
import i18next from "i18next";
@@ -7,14 +7,10 @@ import { EOL } from "node:os";
export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
if (!args[1]) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("lackOption", { command: "miq" }),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
}
}, "オプションが不足している旨");
return;
}
@@ -32,14 +28,10 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
? itUeuse.error_code
: "データなし");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
}
}, "ソースが見つからない旨");
return;
}
@@ -49,27 +41,19 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
switch (permission) {
case "me":
if (itUeuse.data[0].account.userid !== ueuse.account.userid) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqPermissionMe"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
}
}, "権限が自分自身のみである旨");
return;
}
case "consent":
if (itUeuse.data[0].account.userid !== ueuse.account.userid) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqPermissionConsent", { userid: itUeuse.data[0].account.userid }),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
}
}, "権限が許可制である旨");
return;
}
@@ -85,19 +69,15 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
});
if (!(typeof result === "string")) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqGenerateFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
}
}, "Make it a Quoteの生成に失敗した旨");
return;
}
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqSuccess", { message: (args[2] ?? "") === "color"
? "カラーモードで生成しました。"
: "モノクロモードで生成しました。"
@@ -106,14 +86,7 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
photo: [result],
},
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("MiQを生成:", response.uniqid);
}, "Make it a Quote");
break;
case "permission":
@@ -121,33 +94,21 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
mem = Memory.memory;
const permission = mem["permissions"][ueuse.account.userid] ?? "consent";
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("permissionResponse", { permission }),
replyid: ueuse.uniqid,
});
}, "権限");
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
return;
}
const availablePermission = ["me", "everyone", "consent"];
if (!(availablePermission.includes(args[2]))) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("invalidOption", { option: args[2], command: "miq" }),
replyid: ueuse.uniqid,
});
}, "無効なオプションである旨");
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
return;
}
@@ -156,33 +117,20 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
mem["permissions"][ueuse.account.userid] = args[2];
Memory.memory = mem;
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("permissionChangeSuccess", { username: ueuse.account.username, permission: args[2] }),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
}, "権限の変更に成功した旨");
}
break;
case "allow":
if (ueuse.replyid === "") {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("injusticeFormat"),
replyid: ueuse.uniqid,
});
}, "形式が異なる旨");
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
return;
}
@@ -191,17 +139,11 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
const permission = mem["permissions"][ueuse.account.userid] ?? "consent";
if (permission !== "consent") {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("permisionIsNotConsent"),
replyid: ueuse.uniqid,
});
}, "権限が許可制ではない旨");
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
return;
}
}
@@ -215,30 +157,20 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
? confirmUeuse.error_code
: "データなし");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
}
}, "ソースが見つからない旨");
return;
}
if (confirmUeuse.data[0].replyid === "") {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("injusticeFormat"),
replyid: ueuse.uniqid,
});
}, "形式が異なる旨");
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
return;
}
@@ -248,14 +180,10 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
? confirmUeuse.error_code
: "データなし");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceIsNotThis"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
}
}, "返信元がこのBotではない旨");
return;
}
@@ -269,30 +197,19 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
? requestUeuse.error_code
: "データなし");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
}
}, "ソースが見つからない旨");
return;
}
if (requestUeuse.data[0].replyid === "") {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("injusticeFormat"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
}, "形式が異なる旨");
return;
}
@@ -305,30 +222,19 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
? sourceUeuse.error_code
: "データなし");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
}
}, "ソースが見つからない旨");
return;
}
if (sourceUeuse.data[0].account.userid !== ueuse.account.userid) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("replySourceIsNotSourceUser"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.log("返信に失敗:", response.error_code);
return;
}
console.warn("ソースのユーズと/miq allowのユーザーが一致しない:", response.uniqid);
}, "ソースのユーズと/miq allowのユーザーが一致しない旨");
return;
}
@@ -345,27 +251,15 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
if (!commandRow || commandRow === "") {
console.warn("コマンドが本文から参照できません");
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("commandNotFound"),
replyid: requestUeuse.data[0].uniqid,
});
}, "コマンドが見つからない旨");
if (!response.success)
console.warn("ユーズの作成に失敗しました:", response.error_code);
{
const response = await client.request("ueuse/create", {
text: i18next.t("injusticeFormat"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("返信:", response.uniqid);
}
await createUeuse({
text: i18next.t("injusticeFormat"),
replyid: ueuse.uniqid,
}, "形式が異なる旨");
break;
}
@@ -382,19 +276,15 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
});
if (!(typeof result === "string")) {
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqGenerateFailed"),
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
}
}, "Make it a Quoteの生成に失敗した旨");
return;
}
const response = await client.request("ueuse/create", {
await createUeuse({
text: i18next.t("miqSuccess", { message: ((requestUeuseArgs[2] ?? "") === "color"
? "カラーモードで生成しました。"
: "モノクロモードで生成しました。")
@@ -404,14 +294,7 @@ export default async function miqCommand(ueuse: ueuseModule, args: string[]) {
photo: [result],
},
replyid: ueuse.uniqid,
});
if (!response.success) {
console.warn("返信に失敗:", response.error_code);
return;
}
console.log("MiQを生成:", response.uniqid);
}, "Make it a Quote");
}
break;