2023-02-02 13:32:56 +01:00
|
|
|
const command = {
|
|
|
|
name: "twitter",
|
|
|
|
desc: "fetch latest tweet from user",
|
2023-02-02 23:37:42 +01:00
|
|
|
restricted: false,
|
2023-02-02 23:58:58 +01:00
|
|
|
mod: false,
|
2023-02-02 13:32:56 +01:00
|
|
|
run: async (client, msg, splitted) => {
|
|
|
|
const data = await fetch(
|
|
|
|
`https://api.rss2json.com/v1/api.json?rss_url=https://nitter.namazso.eu/${
|
2023-02-02 16:04:43 +01:00
|
|
|
splitted[2]
|
|
|
|
? splitted[2]
|
|
|
|
.replaceAll("?", "")
|
|
|
|
.replaceAll("/", "")
|
|
|
|
.replaceAll("\\", "")
|
|
|
|
.replaceAll("&", "")
|
|
|
|
: "forsen"
|
2023-02-02 13:32:56 +01:00
|
|
|
}/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"
|
2023-02-02 14:16:21 +01:00
|
|
|
}: "${data.title.replaceAll("\n", "")}" Media: ${data.description
|
2023-02-02 13:32:56 +01:00
|
|
|
.split('"')
|
|
|
|
.filter((item) => item.startsWith("https://"))
|
|
|
|
.join(" ")} Link: ${data.link}`
|
|
|
|
)
|
|
|
|
.catch((err) => console.log(err));
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
|
|
|
module.exports = { command };
|