From 15a7188c6f93277d565ea7922f5e4adc5f995808 Mon Sep 17 00:00:00 2001 From: Daniel Odendahl Jr Date: Fri, 3 Nov 2017 21:01:49 +0000 Subject: [PATCH] This probs won't work --- commands/text-edit/dec-talk.js | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/commands/text-edit/dec-talk.js b/commands/text-edit/dec-talk.js index 2a6132e1..9105677d 100644 --- a/commands/text-edit/dec-talk.js +++ b/commands/text-edit/dec-talk.js @@ -1,8 +1,5 @@ const { Command } = require('discord.js-commando'); const snekfetch = require('snekfetch'); -const path = require('path'); -const { promisifyAll } = require('../../util/Util'); -const fs = promisifyAll(require('fs')); module.exports = class DECTalkCommand extends Command { constructor(client) { @@ -36,28 +33,18 @@ module.exports = class DECTalkCommand extends Command { } if (!channel.joinable) return msg.say('Your voice channel is not joinable.'); if (this.client.voiceConnections.has(channel.guild.id)) return msg.say('I am already playing a sound.'); - const file = path.join(__dirname, '..', '..', 'assets', `dec-talk ${channel.guild.id}.wav`); try { const connection = await channel.join(); - const { body } = await snekfetch + const stream = snekfetch .get('http://tts.cyzon.us/tts') .query({ text }); - await fs.writeFileAsync(file, body, { encoding: 'binary' }); - const dispatcher = connection.playFile(file); - dispatcher.once('end', () => this.finish(file, channel)); - dispatcher.once('error', () => this.finish(file, channel)); + const dispatcher = connection.playStream(stream); + dispatcher.once('end', () => channel.leave()); + dispatcher.once('error', () => channel.leave()); return null; } catch (err) { - await this.finish(file, channel); + channel.leave(); return msg.reply(`Oh no, an error occurred: \`${err.message}\`. Try again later!`); } } - - async finish(file, channel) { - try { - if (fs.existsSync(file)) await fs.unlinkAsync(file); - } finally { - channel.leave(); - } - } };