twitch_bot/commands/twitter.js

45 lines
1.2 KiB
JavaScript

const command = {
name: "twitter",
desc: "fetch latest tweet from user",
run: async (client, msg, splitted) => {
const data = await fetch(
`https://api.rss2json.com/v1/api.json?rss_url=https://nitter.namazso.eu/${
splitted[2]
? splitted[2]
.replaceAll("?", "")
.replaceAll("/", "")
.replaceAll("\\", "")
.replaceAll("&", "")
: "forsen"
}/rss`
)
.then((res) => res.json())
.then((data) => data.items[0])
.catch((err) => console.log(err));
if (!data) {
client
.say(
msg.channelName,
`${msg.displayName}, invalid name or api's are down`
)
.catch((err) => console.log(err));
return;
}
await client
.say(
msg.channelName,
`${msg.displayName}, Latest tweet for ${
splitted[2] ? splitted[2] : "forsen"
}: "${data.title.replaceAll("\n", "")}" Media: ${data.description
.split('"')
.filter((item) => item.startsWith("https://"))
.join(" ")} Link: ${data.link}`
)
.catch((err) => console.log(err));
},
};
module.exports = { command };