Del: tsxの開発環境 / Chg: typescriptを5.9.3にダウングレード / Feat: 緊急地震速報の最大予測震度の上限に99(〜程度以上)を実装 / Chg: 緊急地震速報の最大予測震度で上限と下限が一致する場合に"から〜"を投稿内容に含めない / Feat: worker_threadsによる並列処理 / Del: 各地震情報の情報源の信頼できるかどうかの内容を削除 / Chg: 津波予報情報の各時刻情報を実際に取得できる値まで削減(例: 2:03:00 > 2:03) / Fix: フォロー・フォロー解除に失敗した際にreturnできていない問題 / Feat: デバッグ用とで過去の地震情報を読み込み10秒おきに投稿する機能
This commit is contained in:
+5
-31
@@ -1,13 +1,9 @@
|
||||
import { schedule } from "node-cron";
|
||||
import { readFileSync } from "node:fs";
|
||||
import config from "@/lib/config";
|
||||
import initI18n from "@/lib/i18n";
|
||||
import { initUserID } from "@/lib/memory";
|
||||
import { styleText } from "node:util";
|
||||
import timeNotice from "@/feature/timeNotice";
|
||||
import { weatherNotice } from "@/feature/weatherNotice";
|
||||
import commandExecute from "@/feature/command";
|
||||
import P2PEarthquakeClient from "@/feature/earthquakeNotice";
|
||||
import { Worker } from "node:worker_threads";
|
||||
|
||||
try {
|
||||
console.log(readFileSync(`${import.meta.dirname}/../asciiart.txt`, "utf-8"));
|
||||
@@ -22,10 +18,9 @@ try {
|
||||
}
|
||||
console.log();
|
||||
|
||||
await initI18n();
|
||||
await initUserID();
|
||||
|
||||
P2PEarthquakeClient();
|
||||
new Worker(`${import.meta.dirname}/feature/earthquakeNotice.js`);
|
||||
|
||||
console.log("Botが起動しました");
|
||||
} catch (err: any) {
|
||||
@@ -36,34 +31,13 @@ try {
|
||||
}
|
||||
|
||||
schedule("0 * * * *", async () => {
|
||||
console.log("時報の投稿を行います");
|
||||
try {
|
||||
await timeNotice();
|
||||
} catch (err: any) {
|
||||
console.error("message" in err
|
||||
? err.message
|
||||
: err);
|
||||
}
|
||||
new Worker(`${import.meta.dirname}/feature/timeNotice.js`);
|
||||
});
|
||||
|
||||
schedule("0 7 * * *", async () => {
|
||||
console.log("天気予報の投稿を行います");
|
||||
try {
|
||||
await weatherNotice();
|
||||
} catch (err: any) {
|
||||
console.error("message" in err
|
||||
? err.message
|
||||
: err);
|
||||
}
|
||||
new Worker(`${import.meta.dirname}/feature/weatherNotice.js`);
|
||||
});
|
||||
|
||||
schedule(`*/${config.command.interval} * * * *`, async () => {
|
||||
console.log("コマンドの処理を行います");
|
||||
try {
|
||||
await commandExecute();
|
||||
} catch (err: any) {
|
||||
console.error("message" in err
|
||||
? err.message
|
||||
: err);
|
||||
}
|
||||
new Worker(`${import.meta.dirname}/feature/command/index.js`);
|
||||
});
|
||||
Reference in New Issue
Block a user