TikTok support

This commit is contained in:
Levi 2022-09-26 18:03:47 +02:00
parent bb33055946
commit 53c7cf71fc
5 changed files with 2784 additions and 2800 deletions

View file

@ -10,13 +10,13 @@
"rules": { "rules": {
"arrow-spacing": ["warn", { "before": true, "after": true }], "arrow-spacing": ["warn", { "before": true, "after": true }],
"brace-style": ["error", "stroustrup", { "allowSingleLine": true }], "brace-style": ["error", "stroustrup", { "allowSingleLine": true }],
"comma-dangle": ["error", "always-multiline"], "comma-dangle": ["error", "only-multiline"],
"comma-spacing": "error", "comma-spacing": "error",
"comma-style": "error", "comma-style": "error",
"curly": ["error", "multi-line", "consistent"], "curly": ["error", "multi-line", "consistent"],
"dot-location": ["error", "property"], "dot-location": ["error", "property"],
"handle-callback-err": "off", "handle-callback-err": "off",
"indent": ["error", "tab"], "indent": ["error", 4],
"keyword-spacing": "error", "keyword-spacing": "error",
"max-nested-callbacks": ["error", { "max": 4 }], "max-nested-callbacks": ["error", { "max": 4 }],
"max-statements-per-line": ["error", { "max": 2 }], "max-statements-per-line": ["error", { "max": 2 }],

View file

@ -1,7 +1,7 @@
{ {
"token": "your-token-goes-here", "token": "your-token-goes-here",
"port": "4000", "port": "4000",
"tweetParser": "https://fxtwitter.com/", "tweetParser": "https://fxtwitter.com/",
"instaParser": "https://ddinstagram.com/", "instaParser": "https://ddinstagram.com/",
"tiktokParser": "https://www.vxtiktok.com/" "tiktokParser": "https://www.vxtiktok.com/"
} }

168
index.js
View file

@ -1,112 +1,112 @@
const { const {
Client, Client,
GatewayIntentBits GatewayIntentBits
} = require('discord.js'); } = require('discord.js');
const { const {
token, token,
port, port,
tweetParser, tweetParser,
instaParser, instaParser,
tiktokParser, tiktokParser
} = require('./config.json'); } = require('./config.json');
const http = require('http'); const http = require('http');
// Create a new client instance // Create a new client instance
const client = new Client({ const client = new Client({
intents: [ intents: [
GatewayIntentBits.Guilds, GatewayIntentBits.Guilds,
GatewayIntentBits.GuildMessages, GatewayIntentBits.GuildMessages,
GatewayIntentBits.MessageContent, GatewayIntentBits.MessageContent,
], ],
}); });
http.createServer((req, res) => { http.createServer((req, res) => {
res.writeHead(200, { res.writeHead(200, {
'Content-type': 'text/plain' 'Content-type': 'text/plain'
}); });
res.write('Hey'); res.write('Hey');
res.end(); res.end();
}).listen(port); }).listen(port);
// When the client is ready, run this code (only once) // When the client is ready, run this code (only once)
client.once('ready', () => { client.once('ready', () => {
console.log('Ready!'); console.log('Ready!');
}); });
// Response // Response
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://twitter.com/')) { if (message.content.startsWith('https://twitter.com/')) {
const tweetURL = message.content.substring(20, message.content.length); const tweetURL = message.content.substring(20, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = tweetParser + tweetURL; const newmsg = tweetParser + tweetURL;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://mobile.twitter.com/')) { if (message.content.startsWith('https://mobile.twitter.com/')) {
const mobiletweetURL = message.content.substring(27, message.content.length); const mobiletweetURL = message.content.substring(27, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = tweetParser + mobiletweetURL; const newmsg = tweetParser + mobiletweetURL;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://instagram.com/')) { if (message.content.startsWith('https://instagram.com/')) {
const instaURL = message.content.substring(22, message.content.length); const instaURL = message.content.substring(22, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = instaParser + instaURL; const newmsg = instaParser + instaURL;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://www.instagram.com/')) { if (message.content.startsWith('https://www.instagram.com/')) {
const instaURL2 = message.content.substring(26, message.content.length); const instaURL2 = message.content.substring(26, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = instaParser + instaURL2; const newmsg = instaParser + instaURL2;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://tiktok.com/')) { if (message.content.startsWith('https://tiktok.com/')) {
const tiktokURL = message.content.substring(19, message.content.length); const tiktokURL = message.content.substring(19, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = tiktokParser + tiktokURL; const newmsg = tiktokParser + tiktokURL;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
client.on('messageCreate', async message => { client.on('messageCreate', async message => {
if(message.content.startsWith('https://www.tiktok.com/')) { if (message.content.startsWith('https://www.tiktok.com/')) {
const tiktokURL2 = message.content.substring(23, message.content.length); const tiktokURL2 = message.content.substring(23, message.content.length);
message.suppressEmbeds(true); message.suppressEmbeds(true);
const newmsg = tiktokParser + tiktokURL2; const newmsg = tiktokParser + tiktokURL2;
message.reply({ message.reply({
content: newmsg, content: newmsg,
allowedMentions: { allowedMentions: {
repliedUser: false repliedUser: false
} }
}); });
} }
}); });
// Login to Discord with your client's token // Login to Discord with your client's token
client.login(token); client.login(token);

5354
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,26 +1,26 @@
{ {
"name": "mediafixer", "name": "mediafixer",
"version": "1.2.5", "version": "1.2.5",
"description": "Fixes broken twitter embeds by replying with a reformatted link.", "description": "Fixes broken twitter embeds by replying with a reformatted link.",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
"test": "echo \"Error: no test specified\" && exit 1" "test": "echo \"Error: no test specified\" && exit 1"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+https://github.com/LeviSnoot/MediaFixer.git" "url": "git+https://github.com/LeviSnoot/MediaFixer.git"
}, },
"keywords": ["discord", "twitter", "embeds"], "keywords": ["discord", "twitter", "embeds"],
"author": "Yber0 & LeviSnoot", "author": "Yber0 & LeviSnoot",
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"discord.js": "^14.4.0" "discord.js": "^14.4.0"
}, },
"bugs": { "bugs": {
"url": "https://github.com/LeviSnoot/MediaFixer/issues" "url": "https://github.com/LeviSnoot/MediaFixer/issues"
}, },
"homepage": "https://github.com/LeviSnoot/MediaFixer#readme", "homepage": "https://github.com/LeviSnoot/MediaFixer#readme",
"devDependencies": { "devDependencies": {
"eslint": "^8.23.1" "eslint": "^8.23.1"
} }
} }