Javascript 我想在discord频道发送一个文件,机器人将读取该文件
我是discord机器人的开发者。 我想知道如何让机器人读取我在discord服务器中发送的文件 例如:Javascript 我想在discord频道发送一个文件,机器人将读取该文件,javascript,file,discord,discord.js,attachment,Javascript,File,Discord,Discord.js,Attachment,我是discord机器人的开发者。 我想知道如何让机器人读取我在discord服务器中发送的文件 例如: !read (file) 机器人会记录文件的内容,或者像这样发送 message.channel.send(content) 我试了一些东西,但都不管用 以下是我尝试过的代码: const Discord=requirediscord.js; 常数fs=requirefs module.exports.run=asyncclient,消息,参数,项=>{ if!message.memb
!read (file)
机器人会记录文件的内容,或者像这样发送
message.channel.send(content)
我试了一些东西,但都不管用
以下是我尝试过的代码:
const Discord=requirediscord.js;
常数fs=requirefs
module.exports.run=asyncclient,消息,参数,项=>{
if!message.member.hasPermission'ADMINISTRATOR'返回
让useTips=newdiscord.RichEmbed;
useTips.setAuthormessage.author.tag,message.author.avatarURL
useTips.setDescription“请发送文件”
useTips.setColor0xdb001d
message.channel.senduseTips
const filter=m=>m.author.id==message.author.id;
wait message.channel.waitMessagesFilter,{max:1,时间:30000,错误:['time']}
.thencollected=>{
让collection=collected.first;
让file21=collection.attachments;
message.channel.sendfile21
fs.readfile21,错误,数据=>{
message.channel.senddata;
};
}
} 您无法将附件作为文件读取。您需要从url获取此附件。 1路使用其节点请求库
const Discord = require("discord.js");
const fs = require("fs")
const request = require('request');
module.exports.run = async(client, message, args, item) => {
if(!message.member.hasPermission('ADMINISTRATOR')) return
let useTips = new Discord.RichEmbed();
useTips.setAuthor(message.author.tag, message.author.avatarURL)
useTips.setDescription('Please Send A File')
useTips.setColor(0xdb001d)
message.channel.send(useTips)
const filter = m => m.author.id === message.author.id;
await message.channel.awaitMessages(filter, {max: 1, time: 30000,errors: ['time']})
.then(collected => {
let collection = collected.first();
if(!collection.attachments) return
request.get(collection.attachments.array()[0].url, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body)
}
});
})
.catch(console.error)
}
}
const Discord=requirediscord.js;
常数fs=requirefs
var请求=要求“请求”;
module.exports.run=asyncclient,消息,参数,项=>{
if!message.member.hasPermission'ADMINISTRATOR'返回
让useTips=newdiscord.RichEmbed;
useTips.setAuthormessage.author.tag,message.author.avatarURL
useTips.setDescription“请发送文件”
useTips.setColor0xdb001d
message.channel.senduseTips
const filter=m=>m.author.id==message.author.id;
wait message.channel.waitMessagesFilter,{max:1,时间:30000,错误:['time']}
.thencollected=>{
让collection=collected.first;
if!collection.attachments返回
request.getcollection.attachments.url,函数错误,响应,正文{
if!error&&response.statusCode==200{
让数据=主体;
控制台日志错误
console.logresponse
控制台.日志体
console.logdata
}
};
}
.catchconsole.error
}它不起作用是什么意思?它就是不起作用。。我不知道为什么,但是它没有发送我发送的文件的内容/数据,所以我需要帮助,你需要具体一点,它只是不起作用,不是对你的问题的描述。哪个部分不起作用,读取文件或发送消息,或者整个过程中的哪一个步骤?我不知道,它没有在频道中发送我发送的文件的内容/数据,我甚至不知道它是否存储了我发送的文件,甚至不知道它是否读取了文件。所以我需要帮助,所以如果你能接受代码,看看有什么错误,然后修复它,那么它将无法工作。。没有错误,只是不工作,在它告诉我发送文件后我发送了文件,但它没有发送文件的内容,我发送了message.channel.senddata,但它没有发送任何东西控制台日志数据。它的回报是什么?您发送的是什么文件类型?我发送的是txt文件类型,当我控制台记录数据时,它没有返回注释,控制台上只有注释请某人?是911。。。我现在需要它我会再次自我测试,今天回答你我想做这个命令,然后机器人会说请发送一个文件,我会发送一个txt文件,然后机器人会读取文件并将文件内容发送到同一频道,或者控制台会记录该文件的内容,没关系,我只是想让它工作。有什么想法吗?我真的需要帮助