add handleSpam

This commit is contained in:
notnull 2019-12-23 07:29:05 -05:00
parent 17b3cc0c42
commit 3503a6ad9c
2 changed files with 40 additions and 22 deletions

11
src/handleSpam.js Normal file
View File

@ -0,0 +1,11 @@
const phrases = [
'Did you know? Zhachev is a twat.',
'Zhachev is a poor lonely baby who has been stalking this IRC for over a year. anti-civ 4 lyfe!',
]
const handleSpam = event => {
const phrase = phrases[Math.floor(Math.random() * phrases.length)]
return event.reply(phrase)
}
module.exports = handleSpam

View File

@ -3,6 +3,9 @@ const chalk = require('chalk')
require('dotenv').config()
const { insertTrack } = require('./mpc-commands')
let request = ''
const handleSpam = require('./handleSpam')
const CLIENT_ID = process.env.CLIENT_ID
const CLIENT_SECRET = process.env.CLIENT_SECRET
@ -47,29 +50,33 @@ const searchTrack = event => {
}
const requestTrack = event => {
let pattern = /^!request "(.+?)"( artist "(.+?)")?/
let match = event.message.match(pattern)
if (!match)
return event.reply(
'Incorrect syntax. Use !request "track name" artist "artist name" (artist and artist name optional)'
)
if (event.message === request) return handleSpam(event)
else {
request = event.message
let pattern = /^!request "(.+?)"( artist "(.+?)")?/
let match = event.message.match(pattern)
if (!match)
return event.reply(
'Incorrect syntax. Use !request "track name" artist "artist name" (artist and artist name optional)'
)
let query = match[1]
if (match[3]) query += ` artist:${match[3]}`
//printQuery(query)
spotify.search({ type: 'track', query }).then(data => {
if (!data || !data.tracks) return event.reply('Something went wrong.')
if (data.tracks.total === 0) return event.reply('No results.')
const { trackName, artistName, albumName, uri } = parseTrackData(
data.tracks
)
printTrackData(trackName, artistName, albumName, uri)
const { error } = insertTrack(uri)
if (error) return event.reply('Something went wrong.')
const request = `'${trackName}' by ${artistName}`
addToPlaylist(event.nick, `${uri} # ${request}`)
event.reply(`Requested ${request}`)
})
let query = match[1]
if (match[3]) query += ` artist:${match[3]}`
//printQuery(query)
spotify.search({ type: 'track', query }).then(data => {
if (!data || !data.tracks) return event.reply('Something went wrong.')
if (data.tracks.total === 0) return event.reply('No results.')
const { trackName, artistName, albumName, uri } = parseTrackData(
data.tracks
)
printTrackData(trackName, artistName, albumName, uri)
const { error } = insertTrack(uri)
if (error) return event.reply('Something went wrong.')
const request = `'${trackName}' by ${artistName}`
addToPlaylist(event.nick, `${uri} # ${request}`)
event.reply(`Requested ${request}`)
})
}
}
// const printQuery = query => {