#development

1 messages · Page 1082 of 1

delicate shore
opal plank
#

i understood that reference tho

misty sigil
#

I think it’s Tim’s patreon

delicate shore
#

^^

pale vessel
#

and?

delicate shore
#

guess what??

robust moth
#

I don't understand why err0|Bd Radio | DiscordAPIError: Cannot execute action on a DM channel 0|Bd Radio | at RequestHandler.execute (/Bots/Bd Radio/node_modules/discord.js/src/rest/RequestHandler.js:170:25) 0|Bd Radio | at processTicksAndRejections (internal/process/task_queues.js:97:5) { 0|Bd Radio | method: 'delete', 0|Bd Radio | path: '/channels/681158011342946305/messages/736214269208690788', 0|Bd Radio | code: 50003, 0|Bd Radio | httpStatus: 403 0|Bd Radio | }

opal plank
#

Cannot execute action on a DM channel

digital ibex
#

lol

still merlin
#

Error says it all

earnest phoenix
#

Whatever you're doing can't be done on a dm Channel

still merlin
#

I've defined member as

const member = message.mentions.members.first();```
delicate shore
#

Tomorrow is my test and i don't even know a single word

#

so i better go

#

bye cya

digital ibex
#

ok

still merlin
#

bye

delicate shore
#

its 7 pm here

misty sigil
#

Isn’t it message.members.mentions.first()?

delicate shore
#

no

quartz kindle
#

no...

opal plank
#

message mentions

pale vessel
#

no

still merlin
#

o.o

robust moth
#

Cannot execute action on a DM channel
@opal plank but other commands run in DM perfectly

pale vessel
#

look in your code

opal plank
#

message.mentions

pale vessel
#

a dm can't have a member

earnest phoenix
#

Well there's things can't be done on a dm channel, so you're doing something that can't be done @robust moth

pale vessel
#

wrong person oof nm

#

I'm stupid

digital ibex
#

quick question if anyone knows.. i've set up dragory/modmailbot and im trying to get the website logs, am i like allowed to ask this here?

#

is this the correct channel to ask?*

earnest phoenix
#

Ask in their support server???

digital ibex
#

no i mean, i forked the bot, im not using the actual bot

delicate shore
#

@pale vessel i waited whole 150 seconds just to see a man saying H word 😭

scenic grotto
#

Im getting this error

#

idk why i get this

opal plank
#

cuz ur json/whatever the fuck youre parsing is incorrect

#

im gonna pretend you didnt just absolutely leak your token

scenic grotto
#

can you help me in it?
I will give you the project edit thing in glitch

opal plank
#

mot only your token, your yw api token and yt credentials

pale vessel
#

cool token

digital ibex
#

just send the code where its erroring lol

delicate shore
#

bruh

#

token

#

ahh

#

i took ss

pale vessel
#

they're very well redacted

delicate shore
#

@pale vessel i waited whole 150 seconds just to see a man saying H word 😭

opal plank
#

10/10 censoring

digital ibex
earnest phoenix
#

God lvl censoring

delicate shore
#

@scenic grotto

scenic grotto
#

@delicate shore yes?

delicate shore
#

delete the pic

scenic grotto
#

i did

opal plank
#

he did

#

-.-

delicate shore
#

ok

#

it is till

#

there

#

for me

earnest phoenix
opal plank
#

nice ghostping

#

who did it

scenic grotto
#

@opal plank can you help me in solving it ?
i will give you the project in glitch link

opal plank
#

nono

#

keep support here

scenic grotto
#

the code is there i just want to let it work online

opal plank
#

of course you can

delicate shore
#

umm

#

ok

opal plank
#

no

#

@scenic grotto no dms

#

shoo

delicate shore
#

is it spoonfeeding?

scenic grotto
#

omg

opal plank
#

keep support here

#

no Dm's

scenic grotto
#

i can't send the link here

#

the toknes and stuff

#

anyone could take them

delicate shore
#

Can send me your embed?
@earnest phoenix
is it spoonfeeding

opal plank
#

and youre sending ME the token?:

scenic grotto
#

@opal plank no

#

u didn't understand

opal plank
#

so, let me get this right, you are willingly sending me tokens?

spare goblet
opal plank
spare goblet
#

you shouldn't send tokens or give access to your tokens to anyone

delicate shore
#

bruh hide your

#

token

scenic grotto
#

you didn't understand 🤦‍♂️

delicate shore
#

and send pic here

#

smh

opal plank
delicate shore
#

:facepalm:
@opal plank he will share link

opal plank
#

links allowed

delicate shore
#

to edit the prokect

#

and with whom ever he shares

spare goblet
#

spoonfeeding is a no no zone bv_no

delicate shore
#

will know his tokens

opal plank
#

links ARE allowed, just dont post tokens

delicate shore
#

and all the codes

scenic grotto
opal plank
#

your linter is saying your indents are incorrect

robust moth
#

Well there's things can't be done on a dm channel, so you're doing something that can't be done @robust moth
@earnest phoenix when I use pm2 console show err but when I use nodemon or node Command run perfectly .. what can I do now??

delicate shore
pale vessel
#

why are you requiring modules that you don't use

scenic grotto
#

what is wrong in it?

delicate shore
#

brvh

#

r

scenic grotto
#

i took the text on top from another bot server.js

delicate shore
#

hastebin

scenic grotto
#

and added the code i want down

delicate shore
#

hastebin

spare goblet
#

you're making your project more bulky than it needs to be

earnest phoenix
#

@scenic grotto i Suspect that very last }) is not needed

opal plank
earnest phoenix
#

And for the love of god, use async/await

opal plank
#

when you make a bot application you agree not to share tokens

#

be ToS compliant

#

revoke the link you sent me

scenic grotto
#

@opal plank ok

delicate shore
spare goblet
#

and don't use var pOhReally

delicate shore
#

pls paste there

#

except your token

spare goblet
#

and if you're gonna use glitch, use .env sure

delicate shore
#

^^

earnest phoenix
#

@scenic grotto can you try removing that very last })?

delicate shore
#

i also use it

#

env

scenic grotto
#

ok@earnest phoenix

delicate shore
#

your api

#

key is visible

scenic grotto
delicate shore
#

if u want help i can

opal plank
#

@scenic grotto js client.on('message', async (message) => { if (message.content === prefix + 'اقتراح') { //الامر var shopc = message.guild.channels.find('name', '☭・الاقترحات'); if (!shopc) return message.reply('ليس موجود روم بي اسم ☭・الاقترحات'); let shop = ''; let fillter = (m) => m.author.id === message.author.id; message.delete(); await message.channel.send('** اكتب الان اقترحك **').then((e) => { message.channel .awaitMessages(fillter, { time: 60000, max: 1 }) .then((co) => { shop = co.first().content; co.first().delete(); // 90 + 40 + 20 + 20 + 10 + 20 = 200 let desc = ''; let nord = new Discord.RichEmbed() .setColor('#b42323') .addField('اقتراح جديد :', shop) .setTimestamp(); e.edit(`** ${message.author} , تم ارسال اقترحاك**`).then((e) => { shopc .send('**تم ارسال الا قتراح من : ** ' + message.author) .then(() => { shopc.sendEmbed(nord); }); }); }); }); } });
replace that

#

you just had 2 wrong brackets

delicate shore
#

nniec

#

e

opal plank
#

that indentaion you had gave me cancer btw

scenic grotto
#

@opal plank i replace everything from top?

delicate shore
#

umm

#

the CODE

opal plank
#

no, replace that event only

scenic grotto
#

done

opal plank
#
        
    shopc.send('**تم ارسال الا قتراح من  :  **  ' + message.author).then(() => {
      shopc.sendEmbed(nord)
    })
    
    })
  })
    })
  


}


});``` Before btw
#

i sure hope whatever the f that lang is, its not curse words

#

cuz i have no idea what it means

scenic grotto
#

not curse

earnest phoenix
#

These kind of issues wouldn't happen mostly if you used async/await

delicate shore
#

ok

opal plank
#

your liter TOLD you about the error though

earnest phoenix
#

Chaining .then() many times is a bad practice

opal plank
#

this isnt decoration

finite bough
#

uh

scenic grotto
#

what should i write in package.json?

finite bough
#

chaining .then is quite useful

earnest phoenix
#

No it's not

slender thistle
#

Unless you are illiterate

opal plank
#

you dont write anything on package.json

#

you build it with npm

finite bough
#

i am doe GWowoHehe

scenic grotto
#

that's it now the bot should work or anything left?

opal plank
#

you shoundnt touch packages unless you know what you're doing

#

im assuming you INSTALLED npm

#

npm init

earnest phoenix
#

@scenic grotto if no errors you see, then try it and see... If it works

scenic grotto
#

I'll try now on my vps

earnest phoenix
#

Hi guys I have an npm package but if I try this it says application.getTautorial() is not a function

#

Why?

#

Tautorial

#

Misspell

#

Wdym

opal plank
#

also, @scenic grotto who'd you copy all that code from?

coral beacon
#

Hi

earnest phoenix
#

@earnest phoenix try
application.getTutorial()

scenic grotto
#

@opal plank from someone made the code for me (:

earnest phoenix
#

Misspelling in programming is a big no no

opal plank
#

you wont be getting far copy pasting code my dude

coral beacon
#

I want to but my

opal plank
#

at ALL

#

also your package.json is empty

#

clearly you didnt init it

earnest phoenix
#

@earnest phoenix At getMeme()?

#

and at getPing

#

What

#

facepalm I'm confused

opal plank
#

your bot wont work Sad

earnest phoenix
#

@earnest phoenix yea and bots can only use emojis that they have access to

#

Can u help me with that? @earnest phoenix

#

What are you even using tho I'm confused

#

@earnest phoenix Application.js

#

It’s my package

#

@earnest phoenix i see a question mark

#

Lol

opal plank
#

@scenic grotto there are so many things wrong with your 'bot' i dont even know where to start. First learn NPM https://docs.npmjs.com/cli/init , then learn js https://www.w3schools.com/js/ , THEN use this https://discordjs.guide/ , and then finally read this whenever you need https://discord.js.org/#/docs/main/stable/general/welcome

earnest phoenix
#

@earnest phoenix i mean what you're trying to do... Is what I'm asking

cold lion
#

@earnest phoenix
Love Me ${client.emojis.get("id")}
Use This

pure lion
#

Error: Failed to lookup view "./app.ejs" in views directory

#

uhhhhh

earnest phoenix
#

@earnest phoenix I have a package and i try it and it says me application.get(thing)() it not a function

#

In all the commands

opal plank
#

also Discord at the bottom

pure lion
#

why do you have that many

opal plank
#

not mine

earnest phoenix
#

@earnest phoenix as you are showing
get(thing)()... You're doing double function... Which will never work

pure lion
#

ik

opal plank
#

Sad is the one who yoinked this code

pure lion
#

oh

#

lmao

earnest phoenix
#

@earnest phoenix no

#

I mean getPing()

#

This error

opal plank
#

im deleting the code cuz i dont wanna have anything to do with his tokens

earnest phoenix
#

@earnest phoenix try
application.getTutorial()
@earnest phoenix same error

opal plank
#

omg im still reading it

#

its so bad dude

pure lion
#

i did not realize there were tokens

opal plank
#

who made this code

#

i blurred them of course

#

but bruh

#

Canvas, canvas

#

3 instances requiring discord.js

#

vars

#

90% unused

pale vessel
#

nice

opal plank
#

that legit gave me cancer

pure lion
#

flaz can you ejs?

pale vessel
#

no

earnest phoenix
#

Can anyone help me?

opal plank
#

dont ask to ask, just ask

pure lion
#

htittyps://dontasktoask

#

Error: Failed to lookup view "app.ejs" in views directory

#

this is my error btw please send help

#

ive tried with and without ./ before app.ejs but it doesnt work

digital ibex
#

code?

#

@pure lion ^

warm marsh
#

You have somewhere that states app.set("views"...) and points to a folder?

pure lion
#

oh i forgot to app.set

#

my bad

#

do i need the path package?

digital ibex
#

path comes with nodejs

pure lion
#

oh cool

placid hazel
#

Yo what's up

pure lion
#
(node:19136) UnhandledPromiseRejectionWarning: Error: Cannot find module 'js'

UM

digital ibex
#

code?

#

you need to provide context lul

pure lion
#

e

sudden geyser
#

why are you trying to require js

pure lion
#

I'm not

digital ibex
#

code?

pale vessel
#

if you read the error, you are

digital ibex
#

he's probably not

pure lion
#

It is not in my code anywhere

digital ibex
#

you've probably got an app.set('view engine', 'js') which is causing the error, you need ejs instead of js

pure lion
#

Yeah just fixed

#
app.set('app.ejs', path.join(__dirname, 'app.ejs'));
#

asdfadfdsaf

digital ibex
#

can folders even contain .s?

pure lion
#

Do I get rid of the .ejs

#

?

#
res.render('app.ejs', { responseFromAPI: e })
digital ibex
#

its whatever the folder is called

pure lion
#

app.js

#

relative path^

digital ibex
#

then it should work

pure lion
#

but it doesnt

pure lion
#

I'll test once more

#

Then send the thing

#

Okay it didn't work

#
const express = require('express')
const app = express()
const port = 3000
const fs = require('fs')
const url = require('url')
const fetch = require('node-fetch')
const path = require('path')

let content = String(fs.readFileSync('./alebot website/index2.html'))

app.set('app.ejs', path.join(__dirname, 'app.ejs'));

app.get('/', (req, res) => {

const urlObj = url.parse(req.url, true)

if (urlObj.query.code) {
    const accessCode = urlObj.query.code;
    console.log(`The access code is: ${accessCode}`);
    
    const data = {
        client_id: '718932190112776203',
        client_secret: 'j r r token',
        grant_type: 'authorization_code',
        redirect_uri: 'http://localhost:3000/?',
        code: accessCode,
        scope: 'identify guilds',
    };

    fetch('https://discord.com/api/oauth2/token', {
    method: 'POST',
    body: new URLSearchParams(data),
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        },
    })
    .then((e) => e.json())
    .then(info => fetch('https://discord.com/api/users/@me/guilds', {
        headers: {
            authorization: `${info.token_type} ${info.access_token}`,
        },
    }))
    .then(e => e.json())
    .then((e) => res.render('app.ejs', { responseFromAPI: e }))
}

if (urlObj.pathname === '/') {
    responseCode = 200;
    content = String(fs.readFileSync('./alebot website/index2.html'));
}

console.log(urlObj)

res.send(content)})

app.listen(port, () => console.log(`app listening at http://localhost:${port}`))
digital ibex
#

send a screenshot of the file tree

pure lion
#

oki doki

#

had caps on lmao

warm marsh
#

why are you setting app.ejs?

#
app.set("views", path.join(__dirname, "views"));
digital ibex
#

thats the folder name

warm marsh
#

app.ejs is the folder name?

#

a bit confusing ngl

digital ibex
#

apparently, yeah

#

and yeah

pure lion
digital ibex
#

i am moyaing so hard rn

pure lion
#

oh no

digital ibex
#

u said app.ejs was a folder

still merlin
#

Can I have some help please, How do I get a message.authors highest role? I tried message.author.roles.highest but its undefined o.o

sudden geyser
#

It needs to be on a guild member instance.

digital ibex
#

well of course

sudden geyser
#

message.author is a User instance.

pure lion
#

o h y e a h i d i d d i d n t i o h w e l l x_ )

still merlin
#

Oh thanks

#

How do I get a member instance though without having a mention in the message

pure lion
#

get from cache

#

using id

sudden geyser
#

If you want to target the person who sent the message, use message.member

digital ibex
#

dice, make a folder called views

pure lion
#

oKaY

digital ibex
#

and in that folder put the app.ejs file

pure lion
#

doned

digital ibex
#

and change app.set('app.ejs', path.join(__dirname, 'app.ejs')) to app.set("views", path.join(__dirname, "views"));

pure lion
#

bob

#

got it

digital ibex
#

it should work now

earnest phoenix
#

@still merlin this would work if you want
let member = message.mentions.members.first() || message.member

still merlin
#

Thats a mention right?

rocky hearth
#

how can I edit a message so that the image attached to it get removed??

earnest phoenix
#

@still merlin first is a mention, if it doesn't exist, it would be automatically message.member

rocky hearth
#

I couldn't remove any attachments the message have

earnest phoenix
#

attachments can't be removed once it's attached

rocky hearth
#

are you sure?

earnest phoenix
#

Unless you literally delete the whole message

pure lion
#

*crab rave starts playing*

#

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

#

:D

rocky hearth
#

I've tried everything, but couldn't figure out any method to do so

still merlin
#

Would this interfere with my existing code putting a [message.member]?

earnest phoenix
#

@rocky hearth as i said, you can't

warm marsh
#

Users don't have roles.

still merlin
#

i know

earnest phoenix
#

If you try message.member, to get user properties like username or tag or such
You have to do
message.member.user

#

Which message.member is defined as member in there so

#

member.user.username for example

still merlin
#

I'm getting a bit confused, Do I have to have a mention in the command to get a message authors highest role

warm marsh
#

No

earnest phoenix
#

Message author is a user

rocky hearth
#

@earnest phoenix So what should I do? I want to keep a message undeleted and what to add and remove images from it constantly.

warm marsh
#

just do const member = message.member;.

#

You don't need the mention part.

#

or just use message.member if you don't want to use a shorthand variable.

pure lion
#

i need help with ejs (again)

#
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
earnest phoenix
#

@rocky hearth well there's nothing you can do about it unless you delete the message that attached an image and send another message with whatever was provided in the previous message but without the attachment

warm marsh
#
let highestRole = <GuildMember>.roles.highest;
earnest phoenix
#

Why not just use the member variable

warm marsh
#

That's if it weren't defined.

earnest phoenix
#

member.roles.highest and ik, but that you showed doesn't apply to the mentioned member

warm marsh
#

I'm pretty sure they don't want mentioned members.

quartz kindle
#

you cannot change attached images, but you can change image urls

rocky hearth
#

Anyone here who is expert of discord commando framework??

quartz kindle
#

if you host your images elsewhere instead of attaching them, then you can swap them

rocky hearth
#

@quartz kindle thanks for the tip! I have a list of buffer images, and want to show them one by one, on the same message

pure lion
#

*sad dice noises*

cobalt eagle
#

hi guys

#

i'm trying convert my bot to command handler

rocky hearth
#

@quartz kindle @earnest phoenix can you do anything with my last message

cobalt eagle
#

because huh the 2000 lines file is annoying lmao

#

but

#

how do i do embeds ?

rocky hearth
#

@cobalt eagle use discord commando

misty sigil
#

const Discord = require("discord.js")

cobalt eagle
#

do i need to place the const { Client, MessageEmbed } = require('discord.js'); line in every file ?

rocky hearth
cobalt eagle
#

yeah

#

but the data.push thing

#

seems really annoying

#

don't get me wrong

#

my bot is working well and all, embeds are working and all

#

i'm just asking if i need this line in all my files :
const { Client, MessageEmbed } = require('discord.js');

#

or if i can do it either way

misty sigil
#

you don’t need client

#

client is passed through via module.exports

#

afaik on my handler

cobalt eagle
#

yeah true

#

ok thx

rocky hearth
#

@cobalt eagle u do need to require discord.js everytime u required MesageEmbed or anything else,

cobalt eagle
#

as well as the client ?

rocky hearth
#

nope, u can access the client(bot) via , message.client! Also the Client is used only one time the bot is initially initialized.

delicate shore
#

s!eval const muted = new Discord.MessageEmbed()
.setTitle("You Are Muted")
.setDescription("Well You are Muted!
Congratulations! You have the @Muted role
isn't it so cool?
Anyways, if you think your punishment was unjustified either contact modmail with @ModMail#5460 or contact @Higher Support and @earnest phoenixmin (Don't ping)
Else, Just wait ")
.addField("Till that check out my socials", "and drop a sub and follow")
.addField("My Youtube Channel", PGamerX)
.addField("My Twitter", @ytPGamerX)
.addField("Our Reddit Page", r/PGamerX)
.addField("Black Sheep Bot", Black Sheep
.setFooter("s!invite")
msg.channel.send(muted)

#

i tried to eval that

#

it says unexpceed token

sudden geyser
#

It's probably due to your .setDescription and multi-line string.

#

Consider using template strings if you want it to span multiple lines, or \n with +.

delicate shore
#

ok

#

i did like this

#
s!eval const muted = new Discord.MessageEmbed()
.setTitle("You Are Muted")
.setDescription("Well You are Muted! Congratulations! You have the @Muted role isn't it so cool?Anyways, if you think your punishment was unjustified either contact modmail with @(dm) ModMail 📬 or contact @Higher Support and @Admin (Don't ping) Else, Just wait ")
.addField("Till that check out my socials", "and drop a sub and follow")
.addField("My Youtube Channel", [PGamerX](https://www.youtube.com/))
.addField("My Twitter", [@ytPGamerX](https://www.twitter.com/))
.addField("Our Reddit Page", [r/PGamerX](https://www.reddit.com/r/))
.addField("Black Sheep Bot", [Black Sheep](https:/))
.setFooter("s!invite")
msg.channel.send(muted)```
#

and now it says

#

but i don't think so

digital ibex
rocky hearth
#

using multiline template strings causes the indentation to be also included

pale vessel
#

use common-tags

trim saddle
#

there's a severe lack of stringing here

pale vessel
#

you can do things like ```js
setDescription(stripIndentshello hello);

pure lion
#

how do i get a discord avatar from this? b2a2dc63de66ce66c9310e8d7f6a9cd1

#

not sure where to plug it in in terms of the discord website

pale vessel
#

https://cdn.discordapp.com/avatars/<user id>/<avatar hash>.ext?size=size

pure lion
#

Tanx

cobalt eagle
#

no

#

the problem is

#

in your fields

#

when you use links

#

every text you want to display needs to be a string

#

like this : ```js
s!eval const muted = new Discord.MessageEmbed()
.setTitle("You Are Muted")
.setDescription("Well You are Muted! Congratulations! You have the @Muted role isn't it so cool?Anyways, if you think your punishment was unjustified either contact modmail with @(dm) ModMail 📬 or contact @Higher Support and @Admin (Don't ping) Else, Just wait ")
.addField("Till that check out my socials", "and drop a sub and follow")
.addField("My Youtube Channel", 'PGamerX)'
.addField("My Twitter", '@ytPGamerX)'
.addField("Our Reddit Page", 'r/PGamerX)'
.addField("Black Sheep Bot", 'Black Sheep)'
.setFooter("s!invite")
msg.channel.send(muted)

#

or at least the link

open storm
#

i just need help with making my discord bot go online so when i type in node . it says module not found what am i missing

wary flame
#

What module is not found @open storm

#

What is the full error

rocky hearth
#

@open storm do npm install

wary flame
#

@open storm do npm install
@rocky hearth that doesnt do anything if it isnt in his package.json and i doubt if it is

rocky hearth
#

yeah, he also hvnt clarified his query

wary flame
#

And he still hasnt...

#

Why do people ask for help and dont respond if people try to help

rocky hearth
#

@misty sigil I have a list of buffer images, and I want to show them one by one, in a same message. How do I do that.

wary flame
#

Edit your message?

misty sigil
#

gah

#

wtf

rocky hearth
#

I got to know that I cant edit image attachments

misty sigil
wary flame
#

Delete your message and create a new one? Also ^

rocky hearth
#

I'm so sorry

#

@wary flame I can't do that, I have reactions on the same message

wary flame
#

I dont think you can show them one by one in the same message, your best bet would be to delete the previous message and send a new one, you can add those reactions again after

#

Or have your reactions control panel in a separate message

sharp citrus
#

Any help me? I make an welcome image, using Pillow library in python3, but when rendering the usernames with unicode chars, it's bugging and render an square

wary flame
#

Any help me? I make an welcome image, using Pillow library in python3, but when rendering the usernames with unicode chars, it's bugging and render an square
@sharp citrus you already asked, be patient

rocky hearth
#

So you meant to say that, I can have a set of reactions saved, and add all those again instantly?

wary flame
#

?

pure lion
wary flame
#

Not instantly but fairly fast (fast enough)

pale vessel
#

encodeURIComponents()?

pure lion
#

in a not js situation

pale vessel
#

you don't need it for avatar though

#

it's just a hash

#

there's special no symbols

quartz kindle
#

you dont need JSON.stringify either

pure lion
#

but the url requires the params of user ID and the hash

pale vessel
#

just put them normally

#

it's just a URL

clever crane
#

Lmao!!!

pure lion
#

its received from the discord api via oauth scope

clever crane
pale vessel
#

<img src="https://cdn.discordapp.com/avatars/<%- responseFromAPI.id %>/<%- responseFromAPI.avatar %>.jpg">

#

png is recommended though

quartz kindle
#

@clever crane brief description and detailed description are two different things

clever crane
#

RedMarsh Bot! Fun, where you can have fun with friends, Moderation, where you can use use your power on trollers/abusers, games, where you can play !bal,!crime,!work,!deposit,!withdraw,Global, Where you can check server information and many things,!serverinfo,!avatar,!help.This bot 24/7 Online And Very Fast + DM When ban,warn,unwarn,unban. Powered By [R]edMarsh#9999, If you found any bug DM me in Discord And i will fix it! @quartz kindle Can you fix it?

earnest phoenix
#

lol

quartz kindle
#

what...

clever crane
#

Like it say too long so fix for me

quartz kindle
#

there is nothing to fix wtf

#

you literally wrote it in the wrong place

earnest phoenix
#

STOP SHOUTING AT ME

clever crane
#

I mean edit it

quartz kindle
#

there are two different fields in the form

clever crane
#

...

quartz kindle
#

a brief description, which is a short description

#

then you have detailed description, where you have to write all that

earnest phoenix
#

** IF I WANT GET ALL EMOJI FROM ALL SERVER THEN RANDOM AND GET ONLY 1 AND SENT HOW I DO? **

if(message.content === prefix+"emol"){

    client.guilds.cache.forEach(guild => {

      var guildemo = client.guilds.cache.get(guild.id);
      

      guildemo.emojis.cache.forEach(emoji => {

  

      });

    });
   
  }

});
quartz kindle
#

the detailed description is written in the black text area

rocky hearth
#

How could I use a buffer image to be shown in setImage() in embeds? NO ATTACHMENTS

earnest phoenix
#

I TOLD YOU TO STOP SHOUTING AT ME

#

@rocky hearth which library

clever crane
#

Ah

quartz kindle
#

buffers need to be attached via addFiles

earnest phoenix
#

the docs have an example on how to do that ^

quartz kindle
#

you cant without attachments

wary flame
#

** IF I WANT GET ALL EMOJI FROM ALL SERVER THEN RANDOM AND GET ONLY 1 AND SENT HOW I DO? **

if(message.content === prefix+"emol"){

    client.guilds.cache.forEach(guild => {

      var guildemo = client.guilds.cache.get(guild.id);
      

      guildemo.emojis.cache.forEach(emoji => {

  

      });

    });
   
  }

});

@earnest phoenix client.guilds.cache.random().emojis.cache.random()

quartz kindle
#

a buffer is an image file, files cannot be added to messages without an attachment

#

you need to host the image elsewhere

#

like imgur

#

and take only the url for it

rocky hearth
#

I'm getting the buffer image from a canvas

quartz kindle
#

then you cant

#

unless you wanna do a full roundtrip and upload it to an image hosting service via an api

rocky hearth
#

I want the canvas drawing to be shown on embeds without attachments.

quartz kindle
#

or host the images yourself in a webserver

pure lion
#

there a way for me to fetch foo and bar and have them both be accessible without having to re render the page?

earnest phoenix
#

@earnest phoenix client.guilds.cache.random().emojis.cache.random()
@wary flame Can show all of code I'm newbie

pure lion
#

no

#

we dont spoonfeed here

wary flame
#

No

quartz kindle
#

there is a client.emojis btw

wary flame
#

Oh?

quartz kindle
#

so you can literally do client.emojis.cache.random()

pure lion
#

epiccc

rocky hearth
#

so a client could have its own set of emojies that can be used in any server (it has joined in)?

quartz kindle
#

client.emojis is a getter for all guild emojis

#

same as joining all emojis from all guilds

#

bots can use any emoji from any server they are in, as long as they have permissions to do so

hollow hill
#

that do be true doe

delicate shore
#

how to get my bot status like this?

#

like Streaming s!help

#

like dm used to do streaming pls help

rocky hearth
#

@delicate shore client.user.setActivity('ONLY FOR STATUS!');

delicate shore
#

that ik

#

but we need to tell type also

#

and if i do type:STREAMING

#

it does nothing

#

just saays Black sheep is streaming

rocky hearth
#

client.user.setActivity('ONLY FOR STATUS!', { type: 'STREAMING' });

delicate shore
#

it doesn't work

#

i tried

rocky hearth
#

default is PLAYING

delicate shore
#

yes

#

but it doesn't work

rocky hearth
#

I remember it is something related to Oath2, I dont know much about that

nocturne grove
#

oh yes Tim is here, I wanted to ask you something. For my bot I need the amount of members in a role, but it doesn't work properly when I'm disabling the guild presences intent. How would I solve this? Enabling fetchAllMembers or trying to get guild_presences enabled when it reaches 100 servers?

delicate shore
#

and it is {} also

sinful belfry
#

pretty sure you can set it through that

snow urchin
#

client.user.setActivity("activity here", {type: "STREAMING", url: "https://twitch.tv/discord"})

sinful belfry
#

^

delicate shore
#

alr

#

thanks

#

finnaly

#

i can rick roll people

sinful belfry
#

i think it is .setPresence tho

#

oh nvm

delicate shore
#

no

#

yeah

sinful belfry
#

the other one works too

delicate shore
#

this is my code

quartz kindle
#

@nocturne grove to see how many members a certain role has you need them all available, therefore the only option is to use fetchAllMembers

delicate shore
#

SyntaxError: missing ) after argument list

#

this is my error

still merlin
#

Syntax error missing a ) in your code

delicate shore
#

nvm

#

yeah

still merlin
#

error says it all mate

delicate shore
#

it was not

#

but

nocturne grove
#

okay thanks Tim. There won't be a way to only fetch members for specific guilds, @quartz kindle?

delicate shore
#

something else

#

nvm

rocky hearth
#

syntax errors can't be fixed here

quartz kindle
#

there is guild.members.fetch()

#

you need the GUILD_MEMBERS intent to fetch all members with it

rocky hearth
#

Tim have you used discord commando?

quartz kindle
#

nope

cobalt eagle
#

hey

#

another problem

nocturne grove
#

hmm okay that one is really handy I think. Saves, I guess, a lot of memory for large guilds like this one where my bot won't get used for that. Thanks for your advice

cobalt eagle
#

i use a mysql database

#

and i can't access it in the command files

#

it says "con" is undefined

solemn latch
#

you have to pass con

quartz kindle
#

@delicate shore discord does some sort of verification to see if the url provided is an actual stream. There is probably a way to fool it, but you'd need to know how discord does it in the first place

cobalt eagle
#

i tried

#

but then it says

#

con.query is not a function

#

or query is undefined

quartz kindle
#

you need to make it available by passing it through some function, for example

#

or attaching it to some variable that is already available, like client

cobalt eagle
#

how ?

quartz kindle
#

for example runSomeCommand(message,conn)

#

or client.conn = conn

cobalt eagle
#

oh

delicate shore
#

@delicate shore discord does some sort of verification to see if the url provided is an actual stream. There is probably a way to fool it, but you'd need to know how discord does it in the first place

#

it is not working

#

not even the status

#
bot.on(
  "ready",
  () =>
  bot.user.setActivity(`in ${bot.guilds.cache.size} servers`, {type: "STREAMING", url: "https://blacksheep.glitch.me/"}))
#

@quartz kindle

quartz kindle
#

i basically explained why

delicate shore
#

yeah but

#

atleast it should say

#

streaming

#

i mean streaming sign

#

and how does dad bot does it ?

quartz kindle
#

i already explained why

#

btw, you showed how dank memer is doing it

#

well, if you check its status you'll see that its actually streaming a twitch url, which is a valid stream

#

https://www.twitch.tv/dankmemerdiscord

delicate shore
#

yes

magic jackal
#

@quartz kindle I just got banned from youtube (429 redirects on all videos)

In order to fix this is I assume youtube is changing things again but should I just use a VPN or should I use the official youtube API?

solemn latch
#

oof

magic jackal
#

I use LavaLinkServer at the moment to pull youtube vids

solemn latch
#

is your bot on your home network?

magic jackal
#

Nope its on a dedi

#

I use this

quartz kindle
#

technically, one way is legal, the other way is illegal

magic jackal
#

They dont support adding a youtube API key tho

quartz kindle
#

lol

magic jackal
#

well they have this

#
    #ratelimit:
      #ipBlocks: ["1.0.0.0/8", "..."] # list of ip blocks
      #excludedIps: ["...", "..."] # ips which should be explicit excluded from usage by lavalink
      #strategy: "RotateOnBan" # RotateOnBan | LoadBalance | NanoSwitch | RotatingNanoSwitch
      #searchTriggersFail: true # Whether a search 429 should trigger marking the ip as failing
      #retryLimit: -1 # -1 = use default lavaplayer value | 0 = infinity | >0 = retry will happen this numbers times```
delicate shore
#

can i keep

#

my bot presence to idle

magic jackal
#

yes

cobalt eagle
#

i passed it with the function that already pass other things

quartz kindle
#

then you're still doing something wrong

#

cant guess it without seeing code

delicate shore
#

for some reasons it is not

yes
@magic jackal

cobalt eagle
#

ok

fresh hatch
#

imagine using fs or path for command handler

digital ibex
#

wut

rocky hearth
#

how can I learn to add database to my bot? Any video suggetions?

magic jackal
#

@fresh hatch imagine criticizing other peoples code

cobalt eagle
#

w3school's tutorial @rocky hearth

midnight blaze
#

@quartz kindle you were talking about fetch(). Can I ask you something, I am kinda trying to "practice" how to get the values from all kinds of information that are included in all of those elements. So I was able to get what I want, but I remember that people told me that the way I am doing is not good(for some reasons). If you would have to get the same information, how would you change this command? I have used it for my eval command.

message.guild.members.fetch().then(msg => msg.map(msg=>message.channel.send(Object.values(msg.user)[0])))
tight plinth
#

Don't watch yt videos to learn how to code discord bots

delicate shore
#

^

rocky hearth
#

so what should I do?

digital ibex
#

how else are you gonna load commands without fs?

#

you cant

tight plinth
#

Check official guides

cobalt eagle
#

here's the function in the command file

rocky hearth
#

the official guides are so limited

digital ibex
#

traversy media is good

cobalt eagle
digital ibex
#

watch his videos, he explains things well

slender thistle
#

"limited" in terms of what

cobalt eagle
#

and here is where is the error

rocky hearth
#

not much informations

slender thistle
#

What kind of information exactly

tight plinth
#

False

delicate shore
#

i cannot set my bot status as idle

digital ibex
#

it does provide info

tight plinth
#

They are very rich

delicate shore
#

it gives no error

#

but sets no status

slender thistle
#

An official documentation is supposed to provide information for everything a product provides

rocky hearth
#

I mean discord.js.org doesn't have all the examples for each properties

slender thistle
#

They're not required to

tight plinth
#

I mean

slender thistle
#

Most of them are pretty self-explanatory

tight plinth
#

Documentations are not guides

#

But if you know what you're searching it's ez

digital ibex
#

documentations shouldn't even have detailed examples the way d.js' does imo

quartz kindle
#

@midnight blaze that code is basically sending a separate message for every single member that you fetch

midnight blaze
#

@quartz kindleI know, I have made it^^ it doesnt really matter if it sends message or console messages. I am only wondering, How would you access the same information

quartz kindle
#

depends what you want to do with it

#

@cobalt eagle not enough information, everything looks fine from only looking at that

midnight blaze
#

for now actually nothing

#

I am just want to be able to open objects, handling promises

cobalt eagle
#

what else would you need ?

midnight blaze
#

just being able to access what I want

#

Using my eval command for getting information while being on discord

quartz kindle
#

still, it depends what kind of information and what you wanna do with it

#

for example guild.members.fetch() returns a collection of members

delicate shore
#

i cannot set my bot status as idle

quartz kindle
#

what do you want to do with it? remap it to users? members.map(member => member.user)

delicate shore
#

it gives no error

restive furnace
#

imagine using fs or path for command handler
@fresh hatch i wonder what else you could do Hmmm

delicate shore
#

but does nothing

quartz kindle
#

remap it to usernames? members.map(member => member.displayName)

midnight blaze
#

usually I console.log it first and so I am able to see what they all include

delicate shore
#

hey tim

#

can we set our bot status

#

to idle

midnight blaze
#

and inside the boundle they have again more objects/boundles^^

quartz kindle
#

statuses are bugged, they randomly work or dont work

midnight blaze
#

but anyway, I guess you would have done it in the same way, like I have done

delicate shore
#

ok

#

sad

midnight blaze
#

otherwise you would have commented it

quartz kindle
#

i woudlnt use map for sending, no

cobalt eagle
delicate shore
#

con.query

#

is not a function

cobalt eagle
#

i don't know what else i can show you

quartz kindle
#

show the entire language.js file

midnight blaze
#

@quartz kindle let us assume it was console.log

cobalt eagle
#

ok

midnight blaze
#

because I have just changed it in the last second for a test, it was console.log

#

would you have used map?

quartz kindle
#

if i wanted to log the entire members collection, i would jsut log it directly, no need for anything

#

console.log(members)

#

it always depends on what you want to do with it

#

find a single value in it? .find
find multiple values in it? .filter
transform all values into a different value? .map

#

etc

cobalt eagle
#

i

#

i'm gonna screen it

midnight blaze
#

it was a single value

#

if you would have checked it out. I could post a console.log then it makes more sense

cobalt eagle
quartz kindle
#

is your database connected? did you do con.connect()?

pure lion
#
        async function fetchMany() {
            let authy = await fetch('https://discord.com/api/oauth2/token', {
                method: 'POST',
                body: new URLSearchParams(data),
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded',
                },
            })
            let auth = authy.json()
            let usery = await fetch('https://discord.com/api/users/@me', {
                headers: {
                    authorization: `${auth.token_type} ${auth.access_token}`,
                },
            })
            let user = usery.json()
            let guildsy = await fetch('https://discord.com/api/users/@me/guilds', {
                headers: {
                    authorization: `${auth.token_type} ${auth.access_token}`,
                },
            })
            let guilds = guildsy.json()
            res.render('app.ejs', { userObj: user, userGuilds: guilds })
            console.log(auth)
            console.log(user)
            console.log(guilds)
        }

i want to fetch multiple things at once but its not working :(

cobalt eagle
#

nothing after this but closing brackets

pure lion
#

returns 401

midnight blaze
#

all Ids of the fetched members

#

this is probably better than simply console.log(members)

quartz kindle
#

guild.members.fetch().then(members => console.log(members.map(member => member.id)))

#

or

midnight blaze
#

so this is how you would do it

#

thanks

pure lion
#

foreach

midnight blaze
#

all I wanted to know 🙂

#

when forEach tho and when map?

#

I feel like they do the same lol

quartz kindle
#

guild.members.fetch().then(members => members.forEach(member => console.log(member.id)))

quaint hornet
#

how can i make a createReactionCollector with a infine time limit?

pure lion
#

use onreaction

quartz kindle
#

the difference is that forEach doesnt return anything, while map returns the transformed array/collection

low shard
#

Someone have good & cheap hosting?

#

Lol

quartz kindle
#

forEach is for doing something to every item
map is for doing something to every item and place the result in the list again, and in the end return the transformed list

solemn latch
#

I like galaxygate 🤷‍♂️

midnight blaze
#

cool

#

thanks

low shard
#

@solemn latch linux...

solemn latch
#

what?

low shard
#

Galaxygate

#

Linux no win

pure lion
#

(generally)
map: one log/message or whatever
forEach: many messages or logs

quartz kindle
#

why do you need windows

solemn latch
#

windows is typically worse for server stuff

solemn latch
#

anyway, gg offers windows

quartz kindle
solemn latch
#

just $10 plan or higher, since windows requires more resources to work

cobalt eagle
#

oh sorry

earnest phoenix
#

Need a .net dev, trying to modifyasync a message id
Not by direct calling, by id only

cobalt eagle
#

@quartz kindle con.connect() is done at the end of the main file before the bot starts running

dusky cradle
#

I need help figuring out how to get my bot Online, it is appearing offline and ive tried different ways to get it online and it will not work.

low shard
#

Idk how to use linux

solemn latch
quartz kindle
#

@cobalt eagle console.log(con) in your command

cobalt eagle
#

ok

quartz kindle
#

@dusky cradle do you have any experience with programming/coding? when you say you tried many things, what exactly did you try?

low shard
#

@solemn latch link in dms ? Pls

dusky cradle
#

like messing with other bots to see if they interfered with the bot and seeing if anything important was turned off

quartz kindle
#

so you basically have no idea how a bot works?

dusky cradle
#

well this bot ya haha

#

it was working fine until it decided to just go offline

quartz kindle
#

oh so you already have a working bot

#

did someone make it for you?

cobalt eagle
#

it says this

dusky cradle
#

yeah just its offline

#

no it invitemanager

cobalt eagle
#

wich is the language of the current server

solemn latch
#

you are setting con

#

where you should be setting language

quartz kindle
#

wait so, its not your bot you're talking about

#

its just some random bot you're trying to use?

cobalt eagle
#

no it's my bot

quartz kindle
#

taking to regis

cobalt eagle
#

oh ok sorry

dusky cradle
#

yeah, i got this support discord from there website

cobalt eagle
#

@solemn latch what do you mean ?

dusky cradle
#

the bot is called invitemanager

quartz kindle
#

well this is the wrong place

earnest phoenix
#

-wrongserver @dusky cradle

gilded plankBOT
#

@dusky cradle

Hey! We think you have our server mistaken. We do not provide support, help, or advice for any bot. You need to click on the "Support Server" button on the bot's page, not the "Join Discord" button at the top of our website. If there isn't a button that says Join Support Server, then we can't help you. Sorry :(

dusky cradle
#

thanks

strong geyser
#

Hello ! who could tell me how to develop an anti-insults surbot disigner ?

solemn latch
#

@cobalt eagle
if you execute
(message, language, etc...)

and your command file does
(message, con)
con will be language.

cobalt eagle
#

oooh

#

ok

#

i'm dumb

#

err

#

no

#

still the same error

#

it's (message, con, languages) anyway

quartz kindle
#

show your main file

cobalt eagle
#
client.on('message', message => {
    if (message.author.bot) return;
    if (!message.guild) return;
    const args = message.content.slice(prefix.length).split(' ');
    const command = args.shift().toLowerCase();
    con.query("SELECT language FROM serveurs WHERE serverid = '" + message.guild.id + "'", function (err, result) {
        if (result[0].language == 'fr') {
            const language = 'fr'
            if (!client.commands.has(command)) return;

            try {
                client.commands.get(command).execute(message, con, language, args);
            } catch (error) {
                console.error(error);
                message.reply('Je n\'ai pas réussi à exécuter cette commande !');
            }


        } else {
            const language = 'en'
            if (!client.commands.has(command)) return;

            try {
                client.commands.get(command).execute(message, language, args);
            } catch (error) {
                console.error(error);
                message.reply('Je n\'ai pas réussi à exécuter cette commande !');
            }
        }
    })
});
solemn latch
#

🤔

cobalt eagle
#

rzoheifqsdjpo

#

i modified it for french and not for english

#

i'm dumb

#

thx

#

yeah working fine now

#

sorry for making you both loose your time

solemn latch
#

psh im just procrastinating

restive pebble
#

ok

sleek talon
#

i made a bot about growing pp's today and honestly its fucking amazing

#

lol

solemn latch
#

🤔

warm tiger
solemn latch
#

not too much sunlight, water them atleast once a day

sudden geyser
#

write that down

clever crane
#

@quartz kindle I never tried before to add this can you help me?

lusty quest
#

describe what your bot is About, Maybe some Instructions for more Complex stuff

solid falcon
#

How to execute code using exec() function using discord.py?

The command should be like this:
!exec ctx.send("Hai")

And the bot response the command and will send a message "Hai"

pure lion
#

when in doubt, || ||

ping tim... just ping tim

#

dont^

digital ibex
#

lol

quartz kindle
#

im more likely to respond if you at least ping me in my server lol

solemn latch
#

🤔

digital ibex
#

tim if ur server had a code channel, there would be no one talking here lmfao

pure lion
#

okay i still need help

magic jackal
#

Hey does anyone use OneProvider? I just bought a few IPs from the host and I need some help assigning them to the interface

digital ibex
#

what do u need?

pure lion
#

how to foreach in webjs

#

in select tags

digital ibex
#

webjs?

pure lion
#

web js

#

just normal js

digital ibex
#

1 sec

#

oh

pure lion
#

oh indeed

digital ibex
#

the way u would normally do it?

#

confusion

pure lion
#

funy

digital ibex
pure lion
#

how would i 'normally'

#

no

#

i mean clientside js

#

in <script> tags

#

in html

quartz kindle
#

wdym how to forEach? its literally the same?

pure lion
#

idk how to make tags

digital ibex
#

whats a tag?

quartz kindle
#

what tags

pure lion
#

option

digital ibex
#

the <p> <h1> kinda tags?

pure lion
#

under select

#

yeah those

digital ibex
#

just

pure lion
#

is that not the name for them

digital ibex
#

document.createElement('tag')

pure lion
#

oh fuck

digital ibex
#

?

pure lion
#

me retar

#

can i make it under a tag?

#

element

#

t h i n g

digital ibex
#

wdym?

pure lion
#

<select id="plumbus">
// create option tags here

digital ibex
#

yeah, like

#
const div = document.createElement('div');
div.innerHTML = 'html';
``` ?
quartz kindle
#

get element by id, for each some item in array, create element, append child

pure lion
#

*nooby frontend noises*

earnest phoenix
#

Hey

#

You type with asterisks

digital ibex
#

im not good with frontend either

earnest phoenix
#

Illegal

digital ibex
#

what

earnest phoenix
#

Thw asterisks should make ir bold but it remanes italics

#
  • smh *
digital ibex
#

sir

#

/ma'am

earnest phoenix
#

404

#

Gist not found

steel heath
#

Hey what's this formatting called, I want to integrate it into my WebStorm setup but I don't know what to search for... I thought it was Prettier doing it but I guess it doesn't do this on WebStorm

digital ibex
#

you can configure the prettier extension to show it on multiple lines

#

if thats what ur saying?

earnest phoenix
#

E

#

Rrors

digital ibex
#

also dice, hows oauth2 going?

earnest phoenix
#

smh italic

#

Fail

misty sigil
#

im gonna learn web development

earnest phoenix
#

I can teach ya

#

@misty sigil that is the best website to learn js and html and css and stuff

steel heath
#

you can configure the prettier extension to show it on multiple lines
@digital ibex yeah, how?

digital ibex
#

go to the settings of the extension

misty sigil
#

yea it is

digital ibex
#

traversy media is pretty good

steel heath
#

I would have done it already if it was that easy

earnest phoenix
#

@misty sigil that is the best website to learn js and html and css and stuff
@earnest phoenix doubt

digital ibex
#

idk then

#

w3schools is pretty good though

earnest phoenix
#
digital ibex
#

they're both good shrug

earnest phoenix
#

But w3schools is better

#

Because they are like yoir skool teacher but better

digital ibex
#

thats your opinion tho

earnest phoenix
#

Lmao

#

True

#

They're basically 1% awesome of all the cool people reading this message combined

#

🥰

sudden geyser
#

Mozilla hosts more content for learning the web (and JS) than w3schools, but I think the only plus to using w3schools is ita explained in simple terms by removing all the difficulty you usually see which is easy to trip on as a beginner

earnest phoenix
#
setInterval(function(){
bot.channels.get("264445053596991498").send("spam");
},1000)
digital ibex
#

y no arow function tho

earnest phoenix
#

Because....

#

yes

#

yes

#

yes

#

@quartz kindle someone told me to ping you when in doubt so... How do I detect if a user has a role with id X in guild Y

quartz kindle
#

.>

earnest phoenix
#

lol

amber fractal
#

nice dbl at it's finest

#

cant read channel descriptions

earnest phoenix
#

Anyways can someone help

#

Me

#

With?

pure lion
#

@earnest phoenix i said dont

#

how can i set up my ejs server to be public(?)

solemn latch
#

whatcha mean 🤔

#

like how to let it past your firewall?

pure lion
#

like

#

change it from localhost to not localhost

#

say i had a node vps

#

<user>.status

#

its an object

solemn latch
#

did you bind it to localhost or something @pure lion ?
by default webservers are not really bound to any ip unless you make it

pure lion
#

like

#

where would i listen, what ports, how would i access the server through a url from anywhere

solemn latch
#

port 80 for http
port 443 for https(youll need a cert for that)

quartz kindle
#

ports 1-1024 require admin/root permissions

#

its better to use a reverse proxy

dense forge
#

How tf did you get the badge it takes to long lmao @quartz kindle

quartz kindle
#

took 3 weeks for me

dense forge
#

Not bad

pure lion
#

okay port 80 but how do i actually access?

golden condor
#

You need sudo or admin terminal

solemn latch
#

ip:port
in the browser

pure lion
#

okay

#

if i wanted to use a custom url?

golden condor
#

In browser 80 is auto

opal plank
#

if its local you can use 127

solemn latch
#

i always put :80 still when its an ip 🤷‍♂️ force of habit

opal plank
#

who wants to make me 99 gifs?

golden condor
#

No

opal plank
#

i really dont want to

pure lion
#

dont do it if you dont wanna :/

opal plank
#

i do need to tho

#

gotta juice all that content

#

whats discord limit file/ size for gifs again?

solemn latch
#

8MB or something dumb right?

pure lion
#

yeah

opal plank
#

thats for files

#

not for emojis

#

256kb?

earnest phoenix
#

256kb iirc

pure lion
#

256 qwerpjwqeoithw

solemn latch
#

yeah

opal plank
#

128x128 i assume?

solemn latch
#

yes

opal plank
#

purfect

#

sankyu

earnest phoenix
#

throwback to when the limit used to be in mbs

#

😞

#

With?

@.Tim#2373 someone told me to ping you when in doubt so... How do I detect if a user has a role with id X in guild Y

#

@pure lion

#

get the user in the guild y and check if they have a role with the id x

#

yeah

#

one sec

pure lion
#

still dont know how to access the server

#

listening on port 80

opal plank
#

AAAAAAAAAH

#

bruh there has to be a better way to automate this

#

canvas?

earnest phoenix
#
//i know i should try it and see but not on my pc rn
bot.guilds.members.get("userID").hasRole("ROLEID which idk how to get and fuck autocorrect");
#

you should fetch btw

#

hey @everyone
will this work?

#

lol

#

it's not guaranteed the user will be cached

solemn latch
#

lol

#

@pure lion if your webserver is online, listening to port 80, without a firewall, you can just put the ip in your browser, and itll request the webserver.

pure lion
#

oh the ip of my webserver

#

how do i hide that with a custom url pandasad

solemn latch
#

you can then take your domain, tell it to point to the ip of your webserver, and itll do the same thing

earnest phoenix
#

you should reverse proxy btw

#

adds an extra layer of security

solemn latch
#

I think he is just learning rn 🤔

pure lion
#

where and how

#

i want to learning

#

tell me da shit

earnest phoenix
#

better to learn right from the beginning

pure lion
#

:c

quartz kindle
#

custom urls are called domains

#

you need to buy them

pure lion
#

i did

quartz kindle
#

or rather, rent them

pure lion
#

i have one

quartz kindle
#

then you need to point its DNS to your server ip

pure lion
#

x)

#

okay

quartz kindle
#

in the control panel of the website where you bought it

earnest phoenix
#

tldr reverse proxying is a "middleware" that allows you "intercept" the request to your webserver and forward it to some other webserver hosted on the same machine which is listening locally

#

it's great for when you need to handle SSL easily

earnest phoenix
#

that ^^

#

i'd suggest nginx over apache but it's user preference kinda thing

pure lion
#

how do i remove the firewall

solemn latch
#

Depends on what your firewall is

crystal socket
#

if your on macos do ps -ux | firewall | firewalll.apple.core.com > disable

pure lion
#

am on window

#

s

quartz kindle
#

your server is on your home pc?

pure lion
#

currently

#

maybe i should wait

#

for my host to go back up