Skip to content

Commit

Permalink
fix: maintenance.jsが動かないバグを修正
Browse files Browse the repository at this point in the history
  • Loading branch information
yuito-it committed Apr 26, 2024
1 parent f0b10c5 commit aff0611
Show file tree
Hide file tree
Showing 5 changed files with 155 additions and 110 deletions.
24 changes: 23 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,24 @@
/node_modules
# Node.js
node_modules/
npm-debug.log
yarn-error.log

# Dependency directories
/.pnp
.pnp.js

# Optional npm cache directory
.npm

# Build output
/dist

# Environment variables
.env
.env.*

# Editor directories and files
.idea/
.vscode/
*.sublime-*
*.swp
195 changes: 107 additions & 88 deletions commands/admin/maintenance.js
Original file line number Diff line number Diff line change
@@ -1,105 +1,124 @@
const { SlashCommandBuilder, Activity } = require("discord.js");
const Discord = require("discord.js");
module.exports = {
guildOnly: false, // サーバー専用コマンドかどうか
adminGuildOnly: true,
data: new SlashCommandBuilder() // スラッシュコマンド登録のため
.setName("maintenance")
.setDescription("メンテモード")
.addStringOption(option =>
option.setName('statusdiscription')
.setDescription('プレイ中に表示するやつ(Stream、WatchingはURLでもok)'))
.addStringOption(option =>
option.setName('status')
.setDescription('すてーたす')
.setChoices(
{ name: 'オンライン', value: 'online' },
{ name: '取り込み中', value: 'dnd' },
{ name: 'スリープ', value: 'idle' },
//{ name: 'スマホでオンライン', value: 'Discord Android' },
{ name: 'オンライン隠し', value: 'invisible' }
))
.addStringOption(option =>
option.setName('activitytype')
.setDescription('あくてぃびてぃ')
.setChoices(
{ name: '視聴中', value: 'WATCHING' },
{ name: 'プレイ中', value: 'PLAYING' },
{ name: '参戦中', value: 'COMPETING' },
{ name: '再生中(聞く)', value: 'LISTENING' },
{ name: '配信中', value: 'STREAMING' },
{ name: 'カスタム', value: 'CUSTOM' })),
guildOnly: false, // サーバー専用コマンドかどうか
adminGuildOnly: true,
data: new SlashCommandBuilder() // スラッシュコマンド登録のため
.setName("maintenance")
.setDescription("メンテモード")
.addStringOption((option) =>
option
.setName("statusdiscription")
.setDescription("プレイ中に表示するやつ(Stream、WatchingはURLでもok)")
)
.addStringOption((option) =>
option.setName("status").setDescription("すてーたす").setChoices(
{ name: "オンライン", value: "online" },
{ name: "取り込み中", value: "dnd" },
{ name: "スリープ", value: "idle" },
//{ name: 'スマホでオンライン', value: 'Discord Android' },
{ name: "オンライン隠し", value: "invisible" }
)
)
.addStringOption((option) =>
option
.setName("activitytype")
.setDescription("あくてぃびてぃ")
.setChoices(
{ name: "視聴中", value: "WATCHING" },
{ name: "プレイ中", value: "PLAYING" },
{ name: "参戦中", value: "COMPETING" },
{ name: "再生中(聞く)", value: "LISTENING" },
{ name: "配信中", value: "STREAMING" },
{ name: "カスタム", value: "CUSTOM" }
)
)
.addStringOption((option) =>
option
.setName("enable")
.setDescription("オンオフ")
.setChoices(
{ name: "オン", value: "on" },
{ name: "オフ", value: "off" }
)
),

async execute(i, client, command) {
try {
const onoff = i.options.getString('enable');
if (onoff == 'on') {
const status = i.options.getString('status');
const statusDescription = i.options.getString('statusdiscription');
const activityType = i.options.getString('activitytype');
let activityOpt;
switch (activityType) {
case "WATCHING":
activityOpt.type = Discord.ActivityType.Watching;
break;
async execute(i, client, command) {
try {
const onoff = i.options.getString("enable");
if (onoff == "on") {
const status = i.options.getString("status");
const statusDescription = i.options.getString("statusdiscription");
const activityType = i.options.getString("activitytype");
let activityOpt = { type: null };
switch (activityType) {
case "WATCHING":
activityOpt.type = Activity.Watching;
break;

case "COMPETING":
activityOpt.type = Discord.ActivityType.Competing;
break
case "COMPETING":
activityOpt.type = Activity.Competing;
break;

case "LISTENING":
activityOpt.type = Discord.ActivityType.Listening;
break;
case "LISTENING":
activityOpt.type = Activity.Listening;
break;

case "STREAMING":
activityOpt.type = Discord.ActivityType.Streaming;
break;
case "STREAMING":
activityOpt.type = Activity.Streaming;
break;

case "CUSTOM":
activityOpt.type = Discord.ActivityType.Custom;
case "CUSTOM":
activityOpt.type = Activity.Custom;

default:
activityOpt.type = Discord.ActivityType.Playing;
break;
}
/*
default:
activityOpt.type = Activity.Playing;
break;
}
/*
if (status == 'Discord Android') {
client.ws = { properties: { "$os": "Untitled OS", "$browser": "Discord Android", "$device": "Replit Container" } };
client.user.setStatus('online');
} else {*/
// client.ws = () => { return { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } }; }
//}

client.user.setActivity(statusDescription, activityOpt);
client.user.setStatus(status);
// client.ws = () => { return { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } }; }
//}

const embed = new Discord.EmbedBuilder()
.setTitle("ok")
.setColor(client.conf.color.s)
.setTimestamp();
client.user.setActivity(statusDescription, activityOpt);
client.user.setStatus(status);

i.reply({ embeds: [embed] });
client.func.loging({ onoff: "on", status: status, playing: statusDescription, type: activityType }, "v1/conf/status");
return `{ "onoff":"on","status": "${status}", "statusDesc": "${statusDescription}", "type": "${activityType}" }`;
} else {
client.shard.fetchClientValues('guilds.cache.size')
.then(result => {
client.user.setActivity(`Servers: ${result}`);
});
//client.ws = { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } };
client.user.setStatus("online");
const embed = new Discord.EmbedBuilder()
.setTitle("ok")
.setColor(client.conf.color.s)
.setTimestamp();
const embed = new Discord.EmbedBuilder()
.setTitle("ok")
.setColor(client.conf.color.s)
.setTimestamp();

i.reply({ embeds: [embed] });
client.func.loging({ onoff: "off" }, "v1/conf/status");
return `{ "onoff":"off"}`;
}
} catch (e) {
throw e;
}
i.reply({ embeds: [embed] });
client.func.loging(
{
onoff: "on",
status: status,
playing: statusDescription,
type: activityType,
},
"v1/conf/status"
);
return `{ "onoff":"on","status": "${status}", "statusDesc": "${statusDescription}", "type": "${activityType}" }`;
} else {
client.shard.fetchClientValues("guilds.cache.size").then((result) => {
client.user.setActivity(`Servers: ${result}`);
});
//client.ws = { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } };
client.user.setStatus("online");
const embed = new Discord.EmbedBuilder()
.setTitle("ok")
.setColor(client.conf.color.s)
.setTimestamp();

},
}
i.reply({ embeds: [embed] });
client.func.loging({ onoff: "off" }, "v1/conf/status");
return `{ "onoff":"off"}`;
}
} catch (e) {
throw e;
}
},
};
32 changes: 18 additions & 14 deletions events/ready.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ module.exports = {
add.addCmd(client.conf);
console.log(`on:${log.onoff},play:${log.playing},status:${log.status}`);

if (log.onoff == 'on') {

if (log.onoff == "on") {
let activityOpt = {};
switch (log.type) {
case "WATCHING":
Expand All @@ -18,7 +17,7 @@ module.exports = {

case "COMPETING":
activityOpt.type = Discord.ActivityType.Competing;
break
break;

case "LISTENING":
activityOpt.type = Discord.ActivityType.Listening;
Expand All @@ -34,21 +33,26 @@ module.exports = {
}

client.user.setActivity(log.playing, activityOpt);
if (log.status == 'Discord Android') {
client.ws = { properties: { $browser: 'Discord Android' } };
if (log.status == "Discord Android") {
client.ws = { properties: { $browser: "Discord Android" } };
} else {
//client.ws = { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } };
client.user.setStatus(log.status);
}
} else {
client.shard.fetchClientValues('guilds.cache.size')
.then(result => {
client.user.setActivity(`Servers: ${result}`);
});
client.shard.fetchClientValues("guilds.cache.size").then((result) => {
client.user.setActivity(`Servers: ${result}`);
});
//client.ws = { properties: { "$os": "Untitled OS", "$browser": "Untitled Browser", "$device": "Replit Container" } };
client.user.setStatus('online');
client.user.setStatus("online");
}
client.channels.cache.get(client.conf.logch.ready).send("Discordログインしました!");
console.log(`[${client.func.timeToJST(Date.now(), true)}] Logged in as ${client.user.tag}!`);
}
}
client.channels.cache
.get(client.conf.logch.ready)
.send("Discordログインしました!");
console.log(
`[${client.func.timeToJST(Date.now(), true)}] Logged in as ${
client.user.tag
}!`
);
},
};
10 changes: 5 additions & 5 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
"author": "Yuito_it",
"license": "MIT",
"dependencies": {
"@discordjs/rest": "^2.0.0",
"@discordjs/rest": "^2.2.0",
"@discordjs/voice": "^0.16.1",
"axios": "^1.6.7",
"child_process": "^1.0.2",
"cron": "^3.1.6",
"discord-api-types": "^0.37.76",
"discord.js": "^14.12.1",
"discord.js": "^14.14.1",
"dotenv": "^16.4.5",
"express": "^4.19.1",
"iconv-lite": "^0.6.3",
Expand Down

0 comments on commit aff0611

Please sign in to comment.