diff --git a/plugins/info-speedtest.js b/plugins/info-speedtest.js index 33b155253b..150a4a5fee 100644 --- a/plugins/info-speedtest.js +++ b/plugins/info-speedtest.js @@ -1,19 +1,34 @@ import cp from 'child_process'; -import {promisify} from 'util'; +import { promisify } from 'util'; const exec = promisify(cp.exec).bind(cp); + const handler = async (m) => { await conn.reply(m.chat, global.wait, m); let o; try { o = await exec('python3 speedtest.py --secure --share'); + const { stdout, stderr } = o; + if (stdout.trim()) { + const result = stdout.trim(); + + const match = result.match(/https?:\/\/\S+/); + if (match) { + const imageLink = match[0]; + + await conn.sendFile(m.chat, imageLink, 'speedtest.png', 'Resultado del speedtest:'); + await conn.reply(m.chat, result.replace(imageLink, ''), m); + } else { + await conn.reply(m.chat, result, m); + } + } + if (stderr.trim()) { + await conn.reply(m.chat, stderr, m); + } } catch (e) { - o = e; - } finally { - const {stdout, stderr} = o; - if (stdout.trim()) m.reply(stdout); - if (stderr.trim()) m.reply(stderr); + await conn.reply(m.chat, e.message, m); } }; + handler.help = ['speedtest']; handler.tags = ['info']; handler.command = /^(speedtest?|test?speed)$/i;