#development

1 messages ยท Page 1261 of 1

faint prism
#

It's C#, so good luck converting it to JS

umbral zealot
faint prism
#

You're bound to learn how it works by converting between languages lol

earnest phoenix
#

how can i learn the javascript c:

faint prism
#

w3schools

earnest phoenix
#

books, tutorials online, classes

carmine summit
#

uh

faint prism
#

?

umbral zealot
#

I think this dude is confusing this channel for his twitter feed.

faint prism
#

Is that just straight up spying with your bot? lol

carmine summit
#

lol

#

i dont even know them

sonic lodge
#

if you don't specify any intents, do you receive every event?

carmine summit
#

YES

#

ALL

#

for bot improvement purposes

sonic lodge
#

what about the privileged intents

#

do you receive those too

carmine summit
#

idk

umbral zealot
#

You do not, unless you apply to get them.

sonic lodge
#

ah ok, so every event besides the privleged ones

carmine summit
#

๐Ÿ‘€

#

uh

pale vessel
#

if you don't specify any intents, do you receive every event?
@sonic lodge for now yes

earnest phoenix
#

Ok

eternal osprey
#

hey does anyone know how i get a mongo-uri?

earnest phoenix
#

An ody

pale vessel
#

but in the future you have to specify intents, it's mandatory

earnest phoenix
#

Any ody here

#

I need help

sonic lodge
#

oki

earnest phoenix
umbral zealot
#

the hell is an ody

earnest phoenix
umbral zealot
#

How about you just ask your question

inner wharf
#

yeah whats your issue? I'll try to help

earnest phoenix
#

Ok

#

I need help in addi g music commands

#

For my bot

eternal osprey
#

where can i find a mongo-uri?

earnest phoenix
#

And even youtube video alerts

eternal osprey
#

do you know how to make a discord bot?

earnest phoenix
#

Yes

faint prism
#

I need help in addi g music commands
@earnest phoenix just ask

eternal osprey
#

well Auger

#

where the fuck can i find a mongo-uri?

umbral zealot
#

you install a mongo server

faint prism
#

@eternal osprey Are you talking about a connection string?
I'm not sure what a mongo-uri is otherwise

umbral zealot
#

and you get the URL for it

inner wharf
#

@earnest phoenix I haven't yet played around with streaming music, but I figure to stream from YouTube, you need a library that can access it. I think there is one (youtube_dl?) then there is a few other things you would have to make from there. From what I understand, youtube_dl downloads the music then you would have to play it. For YouYube Notifications, I would say try a webhook, but I can't remember if I saw that you can't use those on YouTube somewhere

green kestrel
#

one day of ability to pick a language and the most popular language chosen apart from english is portugese

faint prism
#

Interesting

green kestrel
#

i kind of expected it to be turkish, i guess DBL is its own little ecosystem ๐Ÿ˜„

faint prism
#

turkish
lol same

earnest phoenix
#

Comon pls Moderator

pale vessel
#

uwotm8

faint prism
#

Comon pls Moderator
@earnest phoenix stop begging for mod. Especially in #development

earnest phoenix
#

: (

umbral zealot
#

begging for mod needs to be done in #memes-and-media because that's where you belong.

eternal osprey
#

hey could someone help me with this:

#

where do i find this

sacred cypress
#

Postgres > all ๐Ÿ‘€

#

I'll leave now before I get attacked with opinions

eternal osprey
#

yoo i just made a cluster

#

i feel cool now

#

i still don't know where i can get my mongo_url

faint prism
#

in atlas or local?

eternal osprey
#

atlas

faint prism
#

click the green 'connect' btn to get the connection string

eternal osprey
#

i don't get that option

faint prism
#

click the shell

#

copy the connection string

eternal osprey
#

owhh is that the url

faint prism
#

The "connection string" is how you connect to dbs

thick gull
#

sql user

eternal osprey
#

but'

thick gull
#

mongodb online cloud 10/10

#

less effort

eternal osprey
#

i might be stupid

#

but i still can't find it

faint prism
#

wha-

#

Click "Shell"

eternal osprey
#

yeah

#

now i donwloaded a mongo shell

faint prism
#

what, you just need to copy the connection string

eternal osprey
#

so from :

faint prism
#

that's what you wanted right?

eternal osprey
#

to "

faint prism
#

from " to "

#

"mongodb+srv://..."

peak osprey
#
if (command === 'help') {
    let args = message.content.toLowerCase().split(/ +/)
    let command = commands.get('name') || commands.find(c => c.aliases && c.aliases.includes(name));

    if (!command === '') {
      return message.reply('that\'s not a valid command!');
    }
    
    data.push(`**Name:** ${command.name}`);
    
    if (command.aliases) data.push(`**Aliases:** ${command.aliases.join(', ')}`);
    if (command.description) data.push(`**Description:** ${command.description}`);
    if (command.usage) data.push(`**Usage:** ${prefix}${command.name} ${command.usage}`);
    
    data.push(`**Cooldown:** ${command.cooldown || 3} second(s)`);
    
    message.channel.send(data, { split: true });
      }```
#

didi i do this right?

#

in v12

earnest phoenix
#

pretty sure ive seen that code somewhere on youtubemegathonk

peak osprey
#

in the docs yes but i am trying to get it to just work for a min

#

no i got some of this in the docs

sacred cypress
#

Why is args defined if you're using it nowhere inside of that scope?

sand condor
#

idk how a object could be equal to an empty string

sacred cypress
#
// You confirm here that command isn't an empty string
if (command === 'help') {
  const args = message.content.toLowerCase().split(/ +/);
  // Then you reassign command
  const command = commands.get('name') || commands.find((c) => c.aliases && c.aliases.includes(name));

  // And you check if it's empty... ?
  if (!command === '') {
    return message.reply('that\'s not a valid command!');
  }
sand condor
#

oh there's a lot of things going on in that code

#

wait are you the person they told to learn js yesterday

eternal osprey
#

MongoError: database names cannot contain the character ' '

#

what does this mean?

#

nvm it worked

#

however

#

i am getting a new error which i just don't undertssasnd

#

2020-09-22T14:47:58.723Z error: MongoError: user is not allowed to do action [find] on [<dbname>.twitter_feeds]

eternal osprey
#

i have looked through that

faint prism
#

do you have permissions set up correctly?

tough bramble
#

Is it possible for a bot to notice when a new member is given a role, then based on the role given dms that user to tell them they've been given the role?

I know it's possible to use reacts to give roles and dm a user but I'm not sure if when the role is manually given for the bot to then dm

eternal osprey
#

do i have to define that option in vcs or mongodb itself?

faint prism
#

If there is an event for that, it'd be easy
Otherwise, you'd have to search on an interval

buoyant aspen
#

Hello, I have an issue with the .setNickname() function.

const reportedUser = message.mentions.users.first();
const member = message.guild.member(reportedUser);
const nickname = member ? member.displayName : null;

getToxicity(nickname).then(toxicity => {
    if (toxicity > 0.90) {
        reportedUser.setNickname(goby.init().generate(['adj', 'pre', 'suf']));
        }

It's saying TypeError: reportedUser.setNickname is not a function

faint prism
#

do i have to define that option in vcs or mongodb itself?
@eternal osprey atlas has an area for security and perms options

eternal osprey
#

auger is the best

faint prism
#

You could set it to be more secure at some point

thick gull
#

your looking at users

#

setNickname is for members

eternal osprey
#

i already had done that

#

have*

#

still didn't work

#

2020-09-22T14:54:48.438Z error: error reading from mongodb FeedsModel
2020-09-22T14:54:48.438Z error: MongoError: user is not allowed to do action [find] on [<dbname>.twitter_feeds]

faint prism
#

hm

buoyant aspen
#

@thick gull Fixed, thanks!

faint prism
#

Does you connection string start with "mongodb+srv://bilaltjee" ?

eternal osprey
#

no

faint prism
#

well that's the user

#

lol

#

that has all the access

#

so make sure your conn string is right

eternal osprey
#

<bilaltjee>

#

can i send you a message in the dm?

#

how my string looks like

iron raven
#

What vps specs recommended for bot hosting?

eternal osprey
#

as trust you and i am not going to do anything important with this mongodb

faint prism
#

Just don't include the password

iron raven
#

Can someone answer my question please?

opal plank
#

be patient

faint prism
#

^

iron raven
#

Alright sorry.

faint prism
#

and it doesn't need to be powerful. I'm running one on an old cell phone lol

opal plank
#

i was running my on a Wii

#

ยฏ_(ใƒ„)_/ยฏ

iron raven
#

Lol you can run bots on phones?

umbral zealot
#

Any VPS that lets you run nodejs is a VPS that's fine to run bots.

opal plank
#

indeed you can

umbral zealot
#

Unless you're doing music bots. Then you're SOL

faint prism
#

i was running my on a Wii
@opal plank wtf lmaooo nice

opal plank
#

just check for local storage and/or ram

iron raven
#

3 gb of ram and 32 gb storage

#

For my phone

opal plank
#

check locally if you bot can reliably run on 3Gb ram

iron raven
#

Alright, thanks for the answers and sorry for disturbing!

opal plank
tawdry umbra
opal plank
#

Hmmmm so it was the library it seems

#

๐Ÿค”

stable eagle
#
                        setTimeout(() => {
                        guy.roles.remove(role.id)
                        }, i * 1500)```
I want to have a cooldown in a roleall command, but uh I get this:

(node:8304) TimeoutOverflowWarning: 875807000645271600000 does not fit into a 32-bit signed integer.
Timeout duration was set to 1.
(node:8304) TimeoutOverflowWarning: 812158590250254500000 does not fit into a 32-bit signed integer.
Timeout duration was set to 1.
(node:8304) TimeoutOverflowWarning: 1.0502741905358193e+21 does not fit into a 32-bit signed integer.
Timeout duration was set to 1.

opal plank
#

likely bigInt

#

but thats odd

umbral zealot
#

i being the key, that's the ID, and the ID is too large to be used as an integer.

opal plank
#

i should be a string though

#

not an int

umbral zealot
#

forEach on a collection gives you the value, then the key, then the index

#

Yeah but what happens when you multiply a string with an integer? ๐Ÿ˜‰

opal plank
#

ooooh

umbral zealot
#

TypeCasting FTW!

opal plank
#

yeah thats the issue

#

i didnt even see that bottom part lol

#

why the heck they even multiplying it for?

drifting wedge
#

how can i like run something if 2 strs not in war

#

var*

#

so for exaple if arg = 'true' or 'false' DONT RUN

#

but if not

#

run

opal plank
#

not js i assume?

earnest phoenix
#

just... equality check

drifting wedge
#

python

opal plank
#

does py not have a OR operator?

#

sure it does...

#

i dont know py enough so i might be running my mouth off with stuff that you clearly know(as this is very basic and ive seen you use more advanced stuff previously)

#

can you not add a not there aswell?

#

to inverse the signal

drifting wedge
#

i dont know py enough so i might be running my mouth off with stuff that you clearly know(as this is very basic and ive seen you use more advanced stuff previously)
@opal plank theyres a bit of a bottleneck

#

i can do the advanced stuffies bc i understand the logic

#

but im not good at python

#

so its like i can do xomplicated stuffies on my own, but basic python isnt my strongsuit

opal plank
#

if not(arg = 'true' or 'false')

drifting wedge
#

python discord and the same

opal plank
#

i would assume something like that would be doable

drifting wedge
#

imma try

opal plank
#

thats just py syntax

drifting wedge
#

thanks! ๐Ÿ™‚

opal plank
#

not should be an inverted signal

#

so you run a NOT rather than a IS

#

if (!comparator) js equivalent i'd assume

#

i simply cannot believe this

#

it was definetly the lib throwing the errors unecessarily

#

1k query and not a single ratelimit

#

Lets go for 10k see what happens

misty sigil
#

wHOOe

#

lets see

opal plank
#

this should take a minimum of an hour i'd assume

buoyant aspen
#

Hmmm... I'm trying to set reportedUser to a user object, but I want the bot to understand user IDs as well. How could I do that?

const reportedUser = message.mentions.users.first();
opal plank
#

|| message.content

#

but thats rather basic

#

you could use args[0]

#

or you could improve even further

#

and use a unique identifier

buoyant aspen
#

I assume it'll be something like

const reportedUser = message.mentions.users.first() || guild.users.find(args[0])
#

How could I get the user object, though?

opal plank
#

yes and no

#

use client for this or guild cache

novel grove
#

os this js or py channel?

#

is*

opal plank
#

guild doesnt have users

#

only members

#

@novel grove its an all purpose channel

novel grove
#

ok

opal plank
#

use client Cam

#

client.users.cache

buoyant aspen
#

so, client.users.cache.find(args[0])?

opal plank
#

that works

#

find() should be smart enough to return null/undefined if its not found

buoyant aspen
#

ah okay

opal plank
#

i'd still do a unique identifier though

buoyant aspen
#

How would I do that?

opal plank
#

to make sure args 0 is always type of number

buoyant aspen
#

I see

#

Good idea

opal plank
#

try isNaN(parseInt(args[0]))

#

that way u can check args[0] is a string with a number at LEAST

buoyant aspen
#

false=good, correct?

opal plank
#

correct

buoyant aspen
#

๐Ÿ‘

faint prism
#

NaN = Not a Number

buoyant aspen
#

Yeah IK

opal plank
#

Im amazed im even ALLOWED to join this many channels tbh

#

i might Set the queue to remove duplicates to be completely honest

buoyant aspen
#

if (!isNaN(parseInt(args[0]))) {?

#

Will the not ! work with a function?

faint prism
#

It'd invert the boolean that isNaN returns

#

So yeah

opal plank
#

bruh im doing some 300iq shit here lmao

#

Ooooh?

#

Did i hit a ratelimit?

modern sphinx
#

how would i make a bot reply to a specific word in a message?

faint prism
#

how would i make a bot reply to a specific word in a message?
@modern sphinx check if the msg content contains a string

modern sphinx
#

new dev sry

faint prism
modern sphinx
#

ight cool

ionic dawn
earnest phoenix
#

can someone tell me how to add custom status to my bot?

frozen sable
#

I'm not sure.

earnest phoenix
#

:/

#

well i am going to search it in google then :/

quartz kindle
#

you cant

#

at least not yet, discord said they would probably allow it in the future, but its not a priority for them

#

for now you can only use playing, streaming, listening and watching

fervent goblet
modern sphinx
#

@faint prism still a bit confused

faint prism
#

Elaborate

modern sphinx
#

how exactly should i format it?

#

like

earnest phoenix
#

at least not yet, discord said they would probably allow it in the future, but its not a priority for them
@quartz kindle well then, but how?

modern sphinx
#

how would i write it?

sacred cypress
#

Is knex.js still a big boy?

#

or are there better alternatives

#

๐Ÿ˜ณ

#

It's still big

#

PepeHands gdammit

faint prism
#

@modern sphinx Did you read the example in the link?

modern sphinx
#

yes?

faint prism
#

What's confusing you then?
str.includes(yourSpecificWord);

#

And if you look on https://discord.js.org/#/

eternal osprey
#

my twitter feed bot sends the message like twice

modern sphinx
#

ah

#

ill check that

eternal osprey
#

1 time in a cool embed and once as image itself

quartz kindle
#

@earnest phoenix how what

faint prism
#

@modern sphinx So that should answer your question

earnest phoenix
#

how to make the status to playing a game

quartz kindle
#

in discord.js its client.user.setActivity() or setPresence()

eternal osprey
quartz kindle
#

setActivity is only for the activity, playing watching etc
setPresence is for both activity and status (online, idle, etc) at once

eternal osprey
#

why is this double imagging?

faint prism
#

because the text content includes an image link

#

and your embed is an image

#

hince, 2 images

eternal osprey
#

lol i am stupid asf

earnest phoenix
#

lol i am stupid asf
@eternal osprey we already knew that tell us smth new KEK

eternal osprey
#

shut up minecraft ki

earnest phoenix
#

ok

eternal osprey
#

kidd

modern sphinx
#

msg not defined

faint prism
#

msg not defined
@modern sphinx alright, did you do it like the screenshot example?

earnest phoenix
#

msg not defined
@modern sphinx did you name it message ?

modern sphinx
faint prism
#

yeah

#

you did lol

#

@modern sphinx did you name it message ?

#

gotta use the right variable names

earnest phoenix
#

@modern sphinx copy pasting is fucking terrible

modern sphinx
#

oh wups i did the 2nd message word wrong lmao

faint prism
#

mhm

earnest phoenix
#

oh wups i did the 2nd message word wrong lmao
@modern sphinx wait do you have multiple message listeners

faint prism
#

also you're doing === instead of your original question which was "contains a specific word"

eternal osprey
#

how would i fix it tho?

faint prism
#

so, did you just copy and paste....?

eternal osprey
#

i deleted the link

earnest phoenix
#

i deleted the link
@eternal osprey bruh

earnest phoenix
#

remove the link from the NORMAL MESSAGE PART not EMBED

modern sphinx
#

ight

#

something something first time coding

eternal osprey
#

i don't even have an embed implemented you morron

earnest phoenix
#

wtf

honest perch
#

Its a discord embed

#

Auto generated

faint prism
eternal osprey
#

yeah but it is generated by discord itself

#

try to paste a twitter link here

#

will do the same

faint prism
#

The first one is

honest perch
#

yeah but it is generated by discord itself
This ^^_

faint prism
#

the second one is your code

honest perch
eternal osprey
#

no

#

the first one was mine

#

second was discords

#

i want to remove the first image

faint prism
#

Well I've never sent an embed accidentally lol

eternal osprey
#

i want to have the embed part

faint prism
eternal osprey
#

just don't want the normal images

faint prism
#

ah

#

I stand corrected

#

That does look like an embed

eternal osprey
#

yeah

faint prism
#

My mistake

eternal osprey
#

it's okay ๐Ÿ˜‰

faint prism
#

Your second image is a result of the text content including a link
The first is you setting an image somewhere then?

eternal osprey
#

could i hastebin my whole code?

faint prism
#

Probably

eternal osprey
#

i couldn't hastebin for some reason

#

this is what i have

restive furnace
#

here you go 2 forks of hastebin, real hastebin and hatebin.

eternal osprey
#

there we go

#

i am trying to remove the first image

astral matrix
#

whats the problem ?

umbral zealot
#

client.guilds.size is undefined

#

are you using discord.js version 12?

#

Discord.js v12 introduces the most breaking of all breaking changes: Caches
Almost every single collection you could directly access methods from have now been moved to their respective "cache" sub-property, so if you want to do things like get() and find() and filter() collections, you now have the joy of adding .cache to everything - almost everything. For example:

message.guild.members.cache.get(userId);
guild.roles.cache.find(r => r.name === "Super Awesome Role");
client.users.cache.get("210246661446959104");

I say almost all, because some things here and there have remained collections, and they're scattered all over so you can't just globally replace everything. Here's a page describing all the v12 changes: https://discordjs.guide/additional-info/changes-in-v12.html
Good hunting, and remember kids, everything is hidden in the cache (it's a french pun!)

drifting wedge
#
if(collection.count_documents(guild_id2) == 0):```
#

how can i seach 2 thinfs

dense nest
#

Can anyone point me in the right direction of a 0auth login using flask?

drifting wedge
#

so like guild_id2 + item:levels?

umbral zealot
drifting wedge
#

so like 2 params

#

pytho

#

im using python

umbral zealot
#

that's python? shit that looks identical to javascript.

#

oh well. probably has and and or or something. look for "combining conditions in python" on google.

earnest phoenix
#

@umbral zealot since when does js use :

opal plank
#

typescript does

#

though i dont think you can do it like THAT

#

only in declaration

drifting wedge
#
if(collection.count_documents(f'{guild_id2}' and 'Mod') == 0):```
#

would this work?

umbral zealot
#

I mean, there's also the fact that some people can't write js for shit, and also the fact that I missed that one small character

opal plank
#

fuck me

#

this whole querry going to take hours to finish

#

ffs

drifting wedge
#

no... just 1hr 23mins

#

12*

tough bramble
#
@bot.command(pass_context=True)
@commands.has_permissions(manage_roles=True)
async def role1(ctx, member:discord.Member):
    await bot.add_roles(user, discord.utils.get(ctx.message.server.roles, name='role1'))
    await bot.remove_roles(user, discord.utils.get(ctx.message.server.roles, name='new'))
    await user.send(f"Hey, {user.name} you've been giving a role called: {role.name}")

when people join my server they get a role assigned automatically, but when they apply for a role an admin should be able to type the command $role1 and it would give them the right role, then remove the original role. once that is done the bot sends the user a DM saying it's done

#
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'Bot' object has no attribute 'add_roles'

Is the error i get

earnest phoenix
#

did you copypaste that code

tough bramble
#

from visual studio code yes?

earnest phoenix
#

Try to add roles to the user, not the bot

tough bramble
#

I thought I had

earnest phoenix
#

where did you find that snippet for adding roles is what i was asking

#

because that's as old as my grandma

slender thistle
#

Oh man

#

Oh bismillah

#

That's older than that one time humanity was created

faint prism
#

when the mods roast your copied code

slender thistle
#

I don't have the problem with copied code

#

It's the fact that it's outdated af

#

See discord.py v1.0.0 changelog @tough bramble for future reference, but:

  1. Anything server is now guild
  2. You are trying to use user when you only have member
  3. add/remove_roles is a method of a guild, which can be accessed through ctx.guild (ctx is a Context object, and it has a .guild property)
  4. Can just use ctx.guild.instead of ctx.message.guild to fix the option 1
faint prism
#

oh my

#

That is old

tough bramble
#

@slender thistle
thanks, so change it to something like this

   member = ctx.message.author
    role1 = discord.utils.get(ctx.guild.roles, name="role1")
    await  member.add_roles(member, role1)
    new = discord.utils.get(ctx.guild.roles, name="new")
    await  member.remove_roles(member, new)
slender thistle
#

p.s. shortcuts like ctx.author are valid

#

role1, not role 1 GWahreeSure

#

And... almost

#

Remove member from add/remove role function args

tough bramble
#

put space in the wrong place haha

slender thistle
#

Since you already call the functions on a member

#

it doesn't really make sense to pass the member again

tough bramble
#

okay

drifting wedge
#

if anyone wants open souced code lmk

#
print('im dumb')```
#

there ya go

slender thistle
#

Well, let's one-up that.

tight plinth
#

python is good, but discord.py is one of the weirdest libs made for it as its syntax is not natural at all

#

or im just dumb idk

slender thistle
#
my_string = ["b", "u", "m", "d", " ", "m", "i"]
__import__("sys").stdout.write("".join(my_string[::-1]))
tight plinth
#

tf

#

k, python can be not natural at 2ll sometimes

#

at this point just learn c

slender thistle
#

:)

#

there's the option of going newlines as separator

earnest phoenix
#

why u have to do __ in PY

slender thistle
#

Built-in functions, some are function overloads

thick gull
#

so if i wanna store guild specific user info, woudl the schema be like this?
users: object,
and i would just do <guild>.users.<id>?

mongoose

earnest phoenix
#

yes

#

just save the id

thick gull
#

mk ty

earnest phoenix
#

then u can do guild.members.cache.get()

#

it wont make ur database big

#

big datansse is bad

thick gull
#

im trying to store guild specific data, like levels

#

ยฏ_(ใƒ„)_/ยฏ

earnest phoenix
#

oh

slender thistle
#

To call a __yolo method of a class Hello, you'd have to do _Hello__yolo()

earnest phoenix
#

so
guildID: id,
users: [{level:0, xp:0}]

slender thistle
#

Something you could consider a private function

earnest phoenix
#

save it in array

thick gull
#

an array?

#

what

earnest phoenix
#

ye

#

then

slender thistle
#

Most IDEs usually see _method_name as private functions anyway

earnest phoenix
#

array.find(u => u.id === id)

#

simple

#

sonu can get the users info

thick gull
#
"users": [
"ID": {
"e":"e"
}
]```
earnest phoenix
#

so u*

thick gull
#

so like that?

earnest phoenix
#

Yes

thick gull
#

mk

earnest phoenix
#

waitno

thick gull
#

?

earnest phoenix
#

users:[
{
id:id,
xp:xp,
level:level
}]

thick gull
#

huh

#

okay

slender thistle
#

Uhh

#

[key: value] isn't valid

earnest phoenix
#

wdym

#

??

misty sigil
#

isnt that object syntax in an array

thick gull
#

perhaps

earnest phoenix
#

object in array

#

yes

slender thistle
#

I thought it's supposed to be wrapped in {}

pale vessel
#

values can be array

#

and arrays can include objects

earnest phoenix
#

That what i ment

slender thistle
#
"users": [
"ID": {
"e":"e"
}
]```

But this?

earnest phoenix
#

that wasnt me

thick gull
#

that was m e

pale vessel
#

yeah that's wrong

thick gull
pale vessel
#
"users": [
{
"e":"e"
}
]```
thick gull
#

pain .

pale vessel
#

this is right

slender thistle
#

You know what else is right

earnest phoenix
#

im on mobile so i cant highlight the code sorry

slender thistle
#

a 90 degree turn

#

:)

earnest phoenix
#

Bye imma go eat

autumn aspen
#

can somebody send the docs

slender thistle
#

Yeah sure

#

๐Ÿ“– ๐ŸŒฌ๏ธ

autumn aspen
#

ha..ha..ha

slender thistle
#

But on a serious note, could you clarify which docs?

autumn aspen
#

the link

#

just the guide I think

slender thistle
#

d.js?

#

Is that not what it is

autumn aspen
#

man thats not even exict

umbral zealot
#

Then the guide or docs to what

slender thistle
#

There we go

autumn aspen
#

thx'

#

the docs man o my days

umbral zealot
#

shiv correctly assumes that anyone asking for help is asking for discord.js help ๐Ÿ˜‚

autumn aspen
#

not the guide

umbral zealot
#
slender thistle
#

Have you tried uhh

#

Google?

#

Just literally entering discord.js documentation

autumn aspen
#

@slender thistle u wan not to a big help sorry

#

was*

misty sigil
#

actually

slender thistle
#

I assume that was an insult and that I should be able to read minds

#

Because I wouldn't have to perform a blind poke into anywhere if you clarified what you needed help with

misty sigil
#

discord.js documentation's top result is https://discord.js.org/#/ so shiv was actually right?

#

so if you were a half competent developer you'd google it

autumn aspen
#

ok ok

arctic hare
#

I made a music bot yesterday but today I'm receiving this error --

  code: 403,
  message: 'The request cannot be completed because you have exceeded your <a href="/youtube/v3/getting-started#quota">quota</a>.',
  errors: [
    {
      message: 'The request cannot be completed because you have exceeded your <a href="/youtube/v3/getting-started#quota">quota</a>.',
      domain: 'youtube.quota',
      reason: 'quotaExceeded'
    }
  ]
}
misty sigil
#

you exceeded your quota

autumn aspen
#

also I cant find the DMcommand like when u type help than ur bot is gonna reply to u DM

arctic hare
#

How do I increase my quota lol

misty sigil
#

you need to pay iirc

#

or just scrape

arctic hare
#

0.0

autumn aspen
#

also I cant find the DMcommand like when u type help than ur bot is gonna reply to u DM @misty sigil

misty sigil
#

<Message>.author.send()

autumn aspen
#

// Create a reaction collector
const filter = (reaction, user) => reaction.emoji.name === '๐Ÿ‘Œ' && user.id === 'someID'
message.awaitReactions(filter, { time: 15000 })
.then(collected => console.log(Collected ${collected.size} reactions))
.catch(console.error);

#

@misty sigil

misty sigil
#

whAT

#

uh

#

what

autumn aspen
#

I want it to react while it DM me

misty sigil
#

how

autumn aspen
#

can u help me

misty sigil
#

did you get that

#

i dont know

autumn aspen
#

no

#

hmm

arctic hare
#

Idk, maybe you can use --
message.react('emoji')

#

@autumn aspen

gentle lynx
#

is mongodb good?

#

for node.js

umbral zealot
#

as good as any other database, except postgresql which is superior to everything else on the planet.

gentle lynx
thick gull
#

ok but mongoDB

#

decent

slender thistle
#

Mongo is decent for what it is

gentle lynx
#

what about google firebase

#

iirc thats what its caalled

lucid dirge
faint prism
#

Mongo is decent for what it is
Yeah, pretty good NoSQL DBMS

lucid dirge
#

:>

faint prism
#

i from germany xD
@earnest phoenix Is there a development question or topic you had in mind?

earnest phoenix
#

@faint prism @umbral zealot @thick gull y'all noobs i use XML for storing shit no database not even JSON mmLol

thick gull
#

ok

faint prism
#

Might as well be JSON

thick gull
#

i use google sheets

gentle lynx
#

is mongo pc hosted?

faint prism
#

It can be

#

Or use Atlas for cloud

thick gull
earnest phoenix
#

i use google sheets
@thick gull goggle shits? did a dolphin shit on your goggles when you were swimming?

thick gull
#

cloud version

gentle lynx
#

is there like a tutorial on how to use it

#

im gonna use it in my bot

faint prism
#

is there like a tutorial on how to use it
@gentle lynx yes and documentation

earnest phoenix
#

is there like a tutorial on how to use it
@gentle lynx lots and LOTS OF THEM

umbral zealot
#

i use XML for storing shit
Do you communicate with your database through SOAP at least? ๐Ÿ˜‚

gentle lynx
#

can you link me a good one

earnest phoenix
#

Do you communicate with your database through SOAP at least? ๐Ÿ˜‚
@umbral zealot i use pumice (the rock which soaps are made out of)

faint prism
umbral zealot
#

there are literally thousands of mongodb tutorials because freakin' everyone uses it. Goddamn cargo cultists.

#

google results for "mongodb tutorial": 6,423,426,124
google results for "mongodb tutorial -express": 3

#

i use pumice (the rock which soaps are made out of)
@earnest phoenix that is clever as fuck.

gentle lynx
#

im gonna use quick.db ๐Ÿ˜ฌ

#

๐Ÿ˜ฌ

faint prism
#

ok

sudden geyser
#

SQLite ๐Ÿ‘จโ€๐Ÿš€

faint prism
#

im gonna use quick.db ๐Ÿ˜ฌ
@gentle lynx I mean, it's non-relational vs relational,
so whatever your use case is

cinder patio
#

I don't recommend quick.db

gentle lynx
#

ahhhhhhhhh

autumn aspen
#

Let args = message.content.substring(PREFIX.length).split(" "); I got a shit error in this reaction command

#

"args"

faint prism
#

Let

cinder patio
#

lowercase l

autumn aspen
#

what u mean

faint prism
#

let

autumn aspen
#

oh

#

thx

faint prism
#

most keywords are case sensitive

autumn aspen
#

error again

#

@faint prism

faint prism
#

well that sucks

#

I mean, what's the error?

#

Because I can't see your screen

autumn aspen
#

end of input now

#

ok wait

ionic shard
#

so i have this function

hasPermission: function(permission, message, errEmbed) {
        if (!message.member.hasPermission(permission)) return errEmbed(`You can not do that. Missing permission \`${permission}\``);
        if (!message.guild.me.hasPermission(permission)) return errEmbed(`I can not do that. Missing permission \`${permission}\``);
    },```

which uses another function errEmbed

```errEmbed: function(err, message) {
        const error = { color: '#ff0000', description: `${emoji.warning}  **Error:** ${err}` };
        message.channel.send({ embed: error });
    },```

but im unable to understand how to pass my errEmbed func into my hasPermission func
obtuse niche
autumn aspen
#

see

#

whats wrong

#

then directly after I want it to DM

#

anybody help?

#

@slender thistle

faint prism
autumn aspen
#

exactly

#

wtf

#

?

faint prism
#

put a console log in your case statement

autumn aspen
#

wdym

#

oh ok

ionic shard
#

ok i fixed the above error
was pretty dumb but im getting
TypeError: Cannot read property 'channel' of undefined
for some reason

i am already pushing message into the function?

faint prism
#

console.log("Trying to react...")

#

Is message.react a thing?

ionic shard
#

yes

faint prism
#

@autumn aspen Can you send the actual error message

ionic shard
#
                await embedMessage.react('๐Ÿ‘');
                await embedMessage.react('๐Ÿ‘Ž');
            });```
#

i use object emebeds

#

so

autumn aspen
#

oj

pale vessel
#

you didn't put pass message to your errEmbed function inside hasPermission function

ionic shard
#

mm?

earnest phoenix
#
@client.event
async def on_message(ctx, message):
    member = ctx.message.author
    channel2= ctx.message.channel
    if message=="HI":
      await ctx.channel2.send('Hello!')

CODE IS ^^
ERROR:

TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
ionic shard
#

oh now i did
hasPermission: function(permission, message, func) {

pale vessel
#

i said errEmbed

#

inside that function

#

you used errEmbed

#

but you never passed message as second parameter

ionic shard
#

yes i passed message into it?

        const error = { color: '#ff0000', description: `${emoji.warning}  **Error:** ${err}` };
        message.channel.send({ embed: error });
    },```
pale vessel
#

no

earnest phoenix
#

Hey so this might not be the best question to ask Here but Does anyone know any good node.js mobile programming apps cuz my psu just burned

pale vessel
#

the other function

#

you used errEmbed inside the other function

ionic shard
#

two functions.

        if (!message.member.hasPermission(permission)) return func.errEmbed(`You can not do that. Missing permission \`${permission}\``);
        if (!message.guild.me.hasPermission(permission)) return func.errEmbed(`I can not do that. Missing permission \`${permission}\``);
    },```
pale vessel
#

yes and look

#

you didn't pass message

#

only the error

ionic shard
#

func.errEmbed

pale vessel
#

my goodness

ionic shard
#

oh

#

fml

earnest phoenix
#

help pls

#
@client.event
async def on_message(ctx, message):
    member = ctx.message.author
    channel2= ctx.message.channel
    if message=="HI":
      await ctx.channel2.send('Hello!')

CODE IS ^^
ERROR:

TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
ionic shard
#

no wait im confused

pale vessel
#

what

ionic shard
#

u are saying i didnt push "err" right

#

errEmbed: function(err, message) {

pale vessel
#

no i said message

earnest phoenix
#

when i use $serverCount it show only 2 members even if there is 100 members in the server

#

@earnest phoenix what program are you using

pale vessel
#

that's not where the error came from

earnest phoenix
#

BCFD

#

its $membersCount

pale vessel
#

it's from the hasPermission function

earnest phoenix
#

thanks

#

HELpppp

#

$serverCount is amount of servers

#

thanks

pale vessel
#

you used errEmbed but you didn't provide message, it's suppose to be errEmbed("error", message) but you gave errEmbed("error")

earnest phoenix
#

i didn't know

pale vessel
#

where can it get the channel if you don't pass message

earnest phoenix
misty sigil
#

BCFD

#

what

earnest phoenix
#

he meant bdfd

misty sigil
#

what the hell is that

#

oooH bdfd

earnest phoenix
#

its a free thingy

ionic shard
#

got it func.errEmbed(`You can not do that. Missing permission \`${permission}\``, message);

earnest phoenix
#

its $membersCount
@earnest phoenix it doesn't work

misty sigil
#

its a bad thingy

eternal osprey
#

hey boys and girl

earnest phoenix
#

hold on

pale vessel
#

this is not php

earnest phoenix
#
@client.event
async def on_message(ctx, message):
    member = ctx.message.author
    channel2= ctx.message.channel
    if message=="HI":
      await ctx.channel2.send('Hello!')

CODE IS ^^
ERROR:

TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
eternal osprey
#

my code does send this:

dapper ocean
#

Guys

misty sigil
#

why isnt it php

pale vessel
#

because it's $variable in php

eternal osprey
earnest phoenix
#

@earnest phoenix its definitely $membersCount

dapper ocean
#

Can somebody send me an invitation link of a very big server, where people help each other in scripting (in different languages)

eternal osprey
#

my code double posts the image.

#

how do i fix it?

earnest phoenix
#

why it isn't working than

dapper ocean
#

@eternal osprey you probably run your bot through 2 hosts

ionic shard
#

huh well thats right but where is my error embed
DiscordAPIError: Missing Permissions

pale vessel
#

wrap <> on the links

eternal osprey
#

i am not

pale vessel
#

<http://url>

dapper ocean
#

@ionic shard itโ€™s a permission missing error

earnest phoenix
#

@earnest phoenix its definitely $membersCount
@earnest phoenix why it is not working

eternal osprey
#

flazepe are you talking to me?

#

or..

pale vessel
#

yes yes

eternal osprey
#

oowh okay

#

so the wrap should be deleted?

pale vessel
#

you add it

eternal osprey
#

modifiedText = modifiedText.replace(media.url, <${media.url}>);

ionic shard
#

@ionic shard itโ€™s a permission missing error
@dapper ocean thats on purpose to get my error embed....

eternal osprey
#

it is already added

earnest phoenix
#

@earnest phoenix why it is not working
@earnest phoenix your problem blobidk

eternal osprey
#

check the code i sent

pale vessel
#

where

#

oh

eternal osprey
#

hastebin

earnest phoenix
#

but i type the same thing you said to me

still merlin
#

I need to use a animated emoji but I don't have nitro, Is there anyway I'd be able to find out the emoji id without me sending it? The only way I know if is \:emoji:

opal plank
#

if your bot is in the same guild, yeah

#

you can request all emojis via API

eternal osprey
#

can anyone help me with the problem i had?

opal plank
#

lemme grab the docs rq

eternal osprey
earnest phoenix
#

you have it to send the image and the link

eternal osprey
#

my hastebinned code

opal plank
earnest phoenix
#

you want just the link

still merlin
#

Your sending a link, And the link is being embeded

eternal osprey
#

yeah i just want the link

still merlin
#

You could use <whatever code>

eternal osprey
#

look at my code

#

i already have

earnest phoenix
#

so remove whatever sends the image then

eternal osprey
#

i cannot cuz that is the link

#

please just check out my code.

still merlin
#

also thanks @opal plank

ionic shard
eternal osprey
#

can you even bulkdelete?

ionic shard
#

yeah?

misty sigil
#

@ionic shard use return?

eternal osprey
#

isn't that against the api

misty sigil
#

@eternal osprey no

eternal osprey
#

oowh my bad.

ionic shard
misty sigil
#

ooh

ionic shard
#

i guess it returns from func

#

so it still runs whats outside the func

eternal osprey
#

so i guess no-one can help? ๐Ÿ™‚

#

thanks tho

ionic shard
#

whats ur issue again?

#

@eternal osprey

eternal osprey
earnest phoenix
#

his bot sends image and the link

eternal osprey
#

sendds 2 images

faint prism
#

Take out the link from the text content

eternal osprey
#

but when i do

#

okay wait

#

let me try.

#

but i want it to be in the twitter embed

#

๐Ÿ˜ฆ

faint prism
#

Take out either the ${modifiedText} bit or where you set the embed

eternal osprey
#

it isn't an embed

#

it is just discord autogenerated

opal plank
#

regex the link then

#

if you want your own embed, make one

misty sigil
#

@eternal osprey remove the image

opal plank
#

you either post the link and let discord generate the embed

#

or you make one and set its image url with a regex

eternal osprey
#

that is what i am trying to do

faint prism
#

you're doing both it seems idk JS, disregard me

opal plank
#

both you should use regex

eternal osprey
#

but it doesn't work as you just saw from the ss

opal plank
#

nah auger

#

he isnt making an embed

#

he's just posting a link in chat

#

which discord embeds

#

(from what i understood)

eternal osprey
#

yeah

#

like this:

opal plank
#

then regex the link out of the string

#

:/

#

and then use it as you wish

eternal osprey
#

like this

#

or wait

opal plank
#

i've already given you the answer though

proven lantern
#

what's the difference between kicking and banning a bot? can bots join servers on their own?

opal plank
#

nope

#

bots need to be added by a user

#

so either should get rid of the bot until someone in your guild adds them back

proven lantern
#

oh, so banning just makes it so some user cant add it again

opal plank
#

correct

#

they'd have to be unbanned

ionic shard
#

man im so confused

opal plank
#

welcome to development

ionic shard
#

...

opal plank
#

where its 50% confusion, 30% rage and 20% debugging

#

DISCLAIMER: Rates may vary

ionic shard
#

ok on topic
i have a function which does this.

            func.errEmbed(`You can not do that. Missing permission \`${permission}\``, message);
            return;
        }

        if (!message.guild.me.hasPermission(permission)) {
            func.errEmbed(`I can not do that. Missing permission \`${permission}\``, message);
            return;
        }```
#

but when i call it

opal plank
#

you shouldnt od that btw

ionic shard
#

ofc its gonna return from the function and not where i called the func

opal plank
#

use FINAL permissions

#

not guild

#

you arent accounting for channel overrides

ionic shard
opal plank
#

no

#

read that

ionic shard
#

this ?

opal plank
#

you arent accounting for channel overrides

ionic shard
#

will fix this later.

#

my main concern rn is

#

so it still runs the purge command im tryna make

opal plank
#

you dont seem to understand return arguments

#

return THE function

autumn aspen
#

I want to make a prefix for my bot but I when I fix it it can have all random symbols for prefix

#

how to fix?

opal plank
#

if you return on a blocked scope it target the scope its in

ionic shard
#

ofc its gonna return from the function and not where i called the func
@ionic shard yes thats what i said

opal plank
#

return the function without the brackets

#

then fix it

#

that return there is doing absolutely nothing

#

its completely redundant

autumn aspen
#

bot.on('message', message => {
let msg = message;
let args = msg.content.slice(prefix.length).split(/ +/);
let command = args.shift().toLowerCase();
let cmd = command;

if(cmd === 'help') {
    if(!msg.member.hasPermission('MANAGE_MESSAGES')) return msg.channel.send("โŒ **You don't have permission to run this command!** โŒ");```
```

e

#

@opal plank where do I fix the prefix here

#

`?

opal plank
#

first, use code blocks

autumn aspen
#

wdym

ionic shard
#

this

opal plank
#

```js
//code here```

autumn aspen
#

oh

#

```js//w````

opal plank
#

not quite

proven lantern
opal plank
#
//code here
if(pretty) code blocks cool```
autumn aspen
#

how

#

u did

autumn aspen
#

oh

#

lmao

ionic shard
#

if i run a var inside the ifs
set em to false
check if its true on main file and run if its not is it the best way to do this?

autumn aspen
#

erwin id undersranf

#

understand

opal plank
#

prob poor design if you running it on multiple commands

ionic shard
#

i am

opal plank
#

then its probably best to keep the logic inside that command

ionic shard
#

i wouldnt bother with function i only needed for 1 command

opal plank
#

ur code, its up to you

ionic shard
#

ugh

autumn aspen
#
bot.on('message', message => {
    let msg = message;
    let args = msg.content.slice(prefix.length).split(/ +/);
    let command = args.shift().toLowerCase();
    let cmd = command;
    


    if(cmd === 'help') {
ionic shard
#

im gonna rip my hair

autumn aspen
#

@opal plank

#

where do I put prefix command

opal plank
#

assign a variable to your prefix @autumn aspen

autumn aspen
#

how

#

where

#

I man

#

mean

opal plank
autumn aspen
#
const prefix = '/';

#

under the let

#

?

#

@opal plank

opal plank
#

you have 2 options dogo

autumn aspen
#

yes

opal plank
autumn aspen
#

Option 1: https://discordjs.guide/#before-you-begin Follow the guide and pray you understand what it means with its examples
Option 2: https://www.w3schools.com/js/ Study at LEAST the bare minimum of how Javascript works.
Option 3: Try your luck to find someone who's willing to hold your hand throughout the whole process of making a bot
@opal plank I have a guy that can spoonfeed the whole shit but nah I want to learn

gentle vault
#

odd question but what language should i use when starting coding a bot?

opal plank
#

then i'd recommend basics of JS first, which SHOULD be a requirement for trying to get a bot. WHile the stuff you doing rn isnt complicated in the slightest, you DO need some basic understanding of how javascript works.
Otherwise THIS is gonna happen:

You'll have an idea.
You'll come here asking how to do it.
You'll try go and do it based of what people here will tell you.
Then you either come back asking for MORE help beacuse you lack that basics or you'll somehow pull it off.

Then that loop ^^ will repeat until people get tired of spoonfeeding you the whole time.

Hence why i'd highly recommend skimming thru the basics of Javascript to get a hang of what it feels like to code
Use your bot to test the basic things js has to offer, read the pages of this https://www.w3schools.com/js/ and put into practice every chapter
@autumn aspen

eternal osprey
#

hey my internet cut off

#

what is regex?

#

packing my link like this:

#

:/

opal plank
#

fair warning, regex is a monster of its own kind

#

expect a somewhat medium/high difficulty grasping it

eternal osprey
#

with other words

#

i will get raped

opal plank
#

indeed

#

good luck

eternal osprey
#

thanks

opal plank
#

so close

slender wagon
#

do u guys have any suggestion for a program i can use to make android apps?

half bear
#

my bot doesnt show custom emoji

#

<:drobot:758014173136420916>

#
exports.run = (client, message, args) => {
    const user = message.mentions.users.first() || message.author;
    const Discord = require("discord.js");
    const avatarEmbed = new Discord.MessageEmbed()
    .setColor(message.member.displayHexColor)
    .setFooter('Komut ' + user.username + ' tarafฤฑndan istendi.')
    .addFields(
        { name: 'd!hesapla', value: ':drobot: ฤฐลŸleminizi hesaplar.' },
        { name: 'd!hesapla', value: ':drobot: ฤฐลŸleminizi hesaplar.' },
    )
    message.channel.send(avatarEmbed);
  }
#

it changes to :drobot :

opal plank
#

@half bear usually that means ur bot doesnt have access to that emote

half bear
#

bot have administrator perm

opal plank
#

unrelated

#

put the bot in the same guild the emoji is in

half bear
#

yes in the same guild

opal plank
#

are you sure?

half bear
#

yes

#

it is my server

opal plank
#

absolutely sure?

half bear
#

yes

opal plank
#

is the emoji in your server?

half bear
#

same token same server

#

yes

opal plank
#

huh?

#

wdym same token as ur server?

#

Hmmm theres an easy solution for this

#

Dm me your server invite

half bear
#

k wait

opal plank
#

another happy customer

half bear
#

problem solved, thanks to* @opal plank

opal plank
#

put \ before your emote

#

to see its id

#

\:emote: @half bear

half bear
#

wow

opal plank
#

Eeeeeey!

#

Nooice

half bear
#

wow

opal plank
#

Now 9k more and im able to properly test my cache

#

cannot believe this big ass code ran first time

earnest phoenix
#
@client.event
async def on_message(ctx, message):
    member = ctx.message.author
    channel2= ctx.message.channel
    if message=="HI":
      await ctx.channel2.send('Hello!')

CODE IS ^^
ERROR:

TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
Ignoring exception in on_message
Traceback (most recent call last):
  File "/home/dev_veve/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
TypeError: on_message() missing 1 required positional argument: 'ctx'
#

PLS HELPPPP

slender thistle
#

NO CTX IN ON_MESSAGE EVENT

#

THERE'S ONLY MESSAGE

opal plank
#

๐Ÿ‘€

earnest phoenix
#

then how do you send messages

slender thistle
#

message.channel

earnest phoenix
#

so await message.channel.send?

slender thistle
#

Try it

earnest phoenix
#

k

#
@client.event
async def on_message(message):
    member= message.author
    if message == "f": 
        await message.channel.send(f'{member.mention} has payed their respects!')
    if message== "F":
        await message.channel.send(f'{member.mention} has payed their respects!')
    if message== "no":
        await message.channel.send('yes')
    if message=="No":
        await message.channel.send('yes')
    if message=="Hi":
        await message.channel.send('Hey there!')
    if message=="hi":
        await message.channel.send('Hey there!')
    if message=="how":
        await message.channel.send('well yes but actually no')
    if message=="How":
        await message.channel.send('well yes but actually no')
    if message=="meme":
        await message.channel.send('pls meme')
    if message=="bruh":
        await message.channel.send('bruh')
    if message=="Bruh":
        await message.channel.send('bruh')

Its not even printing antthing

#

or conncecting

drifting wedge
#

how can i check if a var is equal or more than a number?

faint prism
#

oh my

#
huge code block```

@earnest phoenix You realize toLowerCase exists right?

slender thistle
#

Alright

#

I hope uhh

faint prism
#

also, that sounds like a very annoying bot

obtuse niche
#

PLS HELPPPP
okeh okeh okeh

slender thistle
#

you do realize that you're comparing a Message object to a string

#

and not its content

faint prism
#

also, no prefix

#

wtf

earnest phoenix
#

OHHHH
i see wy

misty sigil
#

OOOOH

#

THOSE IF STATEMENTS

faint prism
#

ikr

earnest phoenix
#

those if*

obtuse niche
#

Maybe its a good idea to read the discord.py docs first lol

misty sigil
#

wAit its all if

autumn aspen
#

Guys quick question what is the command for await

earnest phoenix
#

the command for await
???

autumn aspen
#

like I want my bot wait to respond

misty sigil
#

what

#

the command

earnest phoenix
#

await is an operator

misty sigil
#

for await?

slender thistle
#

wait for what

#

just generally wait a few seconds?

autumn aspen
#

like await Respond.Author

#

or smh

obtuse niche
#

Py or js

slender thistle
#

await is for asynchronous operations

autumn aspen
#

js

obtuse niche
#

Time.sleep ?

#

Ah

#

Its ja

earnest phoenix
#

await has literally zero correlation to the bot, it's a keyword for an asynchronous wait

obtuse niche
#

Js

autumn aspen
#

Js

#

thx for the help..

misty sigil
#

use setTimeout