デバッグ用の情報を分かりやすく・v4.1
This commit is contained in:
parent
6b68b6e1b5
commit
53ba26f417
2
main.ts
2
main.ts
|
@ -26,4 +26,4 @@ cron.schedule("1 7 * * *", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
// コンソールで表示
|
// コンソールで表示
|
||||||
console.log("サーバーが起動しました");
|
console.log("BOTサーバーが起動しました");
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "noticeuwuzu",
|
"name": "noticeuwuzu",
|
||||||
"version": "v4.0.1@uwuzu1.5.4",
|
"version": "v4.1@uwuzu1.5.4",
|
||||||
"description": "uwuzu Notice Bot",
|
"description": "uwuzu Notice Bot",
|
||||||
"main": "dist/main.js",
|
"main": "dist/main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import WebSocket from "ws";
|
import WebSocket from "ws";
|
||||||
import { differenceInMinutes } from "date-fns";
|
import { differenceInMinutes, subMinutes } from "date-fns";
|
||||||
|
|
||||||
import config from "../config.js";
|
import config from "../config.js";
|
||||||
|
|
||||||
|
@ -72,12 +72,13 @@ class P2PEarthquakeClient {
|
||||||
console.log("緊急地震速報を受信しました");
|
console.log("緊急地震速報を受信しました");
|
||||||
this.executeEventFunc(message);
|
this.executeEventFunc(message);
|
||||||
break;
|
break;
|
||||||
case 555: // 震度情報
|
case 555: // 地域情報更新情報
|
||||||
console.log("震度情報を受信しました");
|
console.log("地域情報更新情報を受信しました");
|
||||||
this.executeEventFunc(message);
|
this.executeEventFunc(message);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
console.log(`その他の情報 (コード: ${message.code})`);
|
console.log("----------------");
|
||||||
|
console.log(`未対応の情報を受信しました(コード: ${message.code})`);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -144,7 +145,8 @@ async function areaMap(): Promise<Record<number, string>> {
|
||||||
|
|
||||||
// 情報受信
|
// 情報受信
|
||||||
async function event(earthquakeInfo: any): Promise<void> {
|
async function event(earthquakeInfo: any): Promise<void> {
|
||||||
console.log(JSON.stringify(earthquakeInfo));
|
console.log("----------------");
|
||||||
|
console.log(`受信データ:${JSON.stringify(earthquakeInfo)}`);
|
||||||
|
|
||||||
// ----処理----
|
// ----処理----
|
||||||
|
|
||||||
|
@ -244,6 +246,7 @@ async function event(earthquakeInfo: any): Promise<void> {
|
||||||
let maxScale: string = "最大深度:";
|
let maxScale: string = "最大深度:";
|
||||||
|
|
||||||
if (earthquakeInfo.earthquake.maxScale < config.earthquake.maxScaleMax) {
|
if (earthquakeInfo.earthquake.maxScale < config.earthquake.maxScaleMax) {
|
||||||
|
console.log("最低震度に満たしていないため投稿されませんでした");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -331,7 +334,7 @@ async function event(earthquakeInfo: any): Promise<void> {
|
||||||
// 地域情報更新の場合
|
// 地域情報更新の場合
|
||||||
else if (earthquakeInfo.code === 555) {
|
else if (earthquakeInfo.code === 555) {
|
||||||
if (rateLimit === null) {
|
if (rateLimit === null) {
|
||||||
rateLimit = new Date();
|
rateLimit = subMinutes(new Date(), 15);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 対象地域マッピング
|
// 対象地域マッピング
|
||||||
|
@ -349,7 +352,7 @@ async function event(earthquakeInfo: any): Promise<void> {
|
||||||
|
|
||||||
const areas = areaNames.join("・");
|
const areas = areaNames.join("・");
|
||||||
|
|
||||||
if (differenceInMinutes(rateLimit, new Date()) >= config.earthquake.rateLimit) {
|
if (Math.abs(differenceInMinutes(rateLimit, new Date())) >= config.earthquake.rateLimit) {
|
||||||
ueuse(`
|
ueuse(`
|
||||||
==地震情報==
|
==地震情報==
|
||||||
【地域情報更新】
|
【地域情報更新】
|
||||||
|
|
Loading…
Reference in New Issue