Does discord limit what information can you get using a bot? - discord

I wrote a quick discord bot as a joke, that just sends a gag message to my friend every 3 or 4 days. However, I could not find my friend's account using client.users.cache.get() or client.users.fetch(). I made sure the ID I put in was correct, to no avail. I then tested it with my own account, which worked perfectly fine. The only difference was that I was in a server with this tester bot, and everyone else in that bot-dev server could receive messages from this bot. I also realized it is impossible to get other information, (friends, etc.). Is this intentional, or is this simply a bug?

Related

Not managing to transfer my code onto a different bot

So I have my bot which I now transferred onto a Heroku server, with this I made a new bot which I named ex Test Bot, but for some reason when I went into my config.json with the code
{
"token": "DISCORD BOT ID THING"
}
Now when I change the following to my test bots ID which I will run from my PC, it gives me this wierd error
I really have no clue searched online couldnt fined anthing, I hope one of you guys could help. Thanks!
You're probably using an intent that you don't have permission to use or isn't enabled.
You'll have to go to Discord Developer Portal, choose your application, go to the Bot section, and enable all the intents. (Or the ones you are using.)
Note that once your bot reaches 100 or more servers, this will require verification and whitelisting.
Bot Verification and Data Whitelisting

How to trigger a block of code when a user joins a guild

I've made a bot with discord.js and I want to run some code when a user joins my guild. The obvious answer here is the client event guildMemberAdd, which worked until about a month ago. For some odd reason it stopped working and I've been trying to fix it, but I have no idea what the problem is.
Here is a super simplified version of my script since it's over 3000 lines long:
client.on('guildMemberAdd', member => {
console.log(`${member.user.tag} joined`);
});
I've even tried a try and catch block but everything seems fine. What am I doing wrong here?
They changed it so you have to go on the developer portal, click on your bot en turn Privileged Gateway Intents on then it should work again (it is in the bot tab)

Discord.js - Bot messages LIMIT?

I have a bot with which you have to verify yourself to be on our Discord server
(The verification takes place in the DM`s)
Recently we have the problem that certain members of our Discord cannot write to the bot.
Everyone allowed everyone to send a message to the person
Each of the people is on our Discord Server, allows the person to write messages and have not blocked the bot
The bot does not issue any error messages
We would be delighted to find a quick solution
Since you haven't provided any code snippets, logs or error messages, it's a bit difficult to assess your situation... but here are some basic troubleshooting steps that you could follow:
Remove and re-authenticate the bot into the server.
Double check that you have enabled DM's.
Check the console for any errors that could pertain to direct messaging issues with users in the server. (especially from successful DM's)
Try to notice any differences between the users in the server who are
able to message the bot, versus those who cannot.
Ensure the bot isn't running more than one instance. (i.e. you might
have more than one bot running on the same token!)
I highly recommend giving more detail, because usually a question pertaining to broken/lost functionality would usually attach code or error logs to help diagnose the issue.
Okay, the problem is that you either didn't enable DMs or the bot is not in the server.
Otherwise, this problem will not occur.

Discord bot to check if a minecraft server is online

I was wondering if anyone knew of a discord bot that will send a message in a discord sever when a minecraft server is online and send a message when it goes back offline
I've done some googling and can't seem to find one that does what I want there are a couple that u have to manually type commands for and others that appear in the sidebar of discord I simply want one that will do it automatically is there one that exists like this already?
I didn't found any not that already did this, but you can do this pretty easily with the Discord API.
Here is a a script I found that send a message to the server : https://gist.github.com/ianklatzco/769d9e3a991dc2f443a2e105b0157117
You can adapt it to ping the server in a if statement to send if it is online or not
(This script is in python but the Discord api works in more languages)

How to debug a Discord bot while an older version is still running?

I have developed my own simple discord bot (with discord.js) and deployed it to a node server.
Everything is running fine.
Now I want to add some more features to it. During development I'd like to test it locally (of course).
Question is: Can I run my bot locally and test it without disrupting my currently running bot?
If not:
Do I need another bot/token instance?
How can I test my bot without disrupting my currently running bot?
The problem is, when you use the same token for your local bot and for your bot, that is hosted on your node server, it has a total of 2 instances.
Bot on Node server = 1 instance of the bot
Bot on local server = 1 instance of the bot
Which makes a total of 2 instances of the same bot, what you don't want, because then, whenever you execute a command, where the bot is on, it executes the command twice.
Therefore, if I were you, I would create another bot application here and use this new bot to test the bot's new features locally.
99% of all bot developers do it like this, because they don't interrupt the main bot with this method.

Resources