#topgg-api

1 messages Β· Page 26 of 1

edgy nexus
#

why are you importing aiohttp 2 times

opal zealot
#

uhh i didnt see that

#

xd

edgy nexus
#

wait

#

I see the issue

#

guild shouldn't be a parameter of on_ready

opal zealot
#

still didnt fix it

edgy nexus
#

hmm

#

OH

#

I see

#

You should be declaring variables in the init function

#

but put self. before them

#

so dbltoken = should become self.dbltoken =

#

then put self. before every time one of those variables is used

opal zealot
#

self is not defined

edgy nexus
#

then you aren't writing the code in the class

#

I said write it in the init function

#

which is in the class

tidal burrow
#

your code looks very normal to me, so the only problem I see is indentation error, if you have defined a class it's better to keep every event and command in that class

vernal gate
#

I thought someone was making a bot in lua for a second

edgy nexus
#

he has to declare the variables in the init function

#

not just somewhere random in the class

tidal burrow
#

hmm

opal zealot
#

@edgy nexus did you just assume my gender

#

xd

tidal burrow
#

well I have mine defined in on_ready event, where I'm doing that API call loop, try my way if that will work

edgy nexus
#

or define the variables in the init function, which is much easier

tidal burrow
#

oh wait, you are using the dbl library?

edgy nexus
#

he is not

opal zealot
#

im using aiohttp

#

xd

tidal burrow
#

then I don't think defining it in init fuction will do anything

edgy nexus
#

that's a faulty example

#

yes it will

tidal burrow
#

I can show you my code how I did it, if that helps

edgy nexus
#

@tidal burrow if you define a variable in the init function, it's available throughout your entire class

#

if you just put it somewhere random, it doesn't work

#

it isn't lib-specific

#

that's just how classes work

opal zealot
#

@tidal burrow yes i want to switch to the dbl library side xd

tidal burrow
#
@bot.event
async def on_ready():
    print('Logged in as: ' + str(bot.user.name))
    print('Bot ID: ' + str(bot.user.id))
    print('------------------------')
    await bot.change_presence(game = discord.Game(name = '-help'))

    dbltoken = 'not_for_your_eyes.baka'
    headers = {'Authorization' : dbltoken}
    while True:
        urlbot = 'https://discordbots.org/api/bots/' + str(bot.user.id) + '/stats'
        payload = {'server_count': len(bot.guilds)}
        async with aiohttp.ClientSession() as session:
            async with session.post(urlbot, data = payload, headers = headers) as r:
                if r.status == 200:
                    pass
            await session.close()
        await asyncio.sleep(30)
#

that's how I did it

#

I'm doing it as a background task tho

#

calling the API every 30 seconds

#

and btw, I'm not using the dbl lib as well

#

this this aiohttp

ocean sky
#

Hey, i've been looking around on the profiles of well-known bots (such as @echo surge) and i'm wondering what "shards" are.

sudden rampart
#

they're a way to split your connections to the discord gateway

#

to lower the load on discord's end

#

and allow you to split your bot in multiple processes or even machines

ocean sky
#

ahhhhh, OK....wayyyyy beyond me for now....anyway thanks for explaining it to me πŸ˜ƒ

gloomy brook
#

can we raise the ratelimit to ~120 second :)

#

/s

#

kinda

cobalt ruin
#

What problem are you running into

gloomy brook
#

tbh just too lazy to use webhooks and ya know, spammy command usage

sudden rampart
#

you mean 120/minute?

#

""raising"" to 120 seconds would make it 30/minute instead of 60/minute

gloomy brook
#

I meant minute, but I meant 120/minute yes

arctic arch
#

that's too much lol

gloomy brook
#

:feelslazyman:

sudden rampart
#

you can pull upvoters/post stats on an interval

#

so spammy command usage wouldn't affect it

arctic arch
#

gonna add something like that to the js module at some point unless someone wants to do that and PR lol

sudden rampart
#

i just block requests until ratelimit is done on mine

arctic arch
#

also ratelimit handling needs to be made

gloomy brook
#

interval is good idea

#

once per minute should be good

restive otter
#

How do I get this to work for the bot? (python) I just get the error urllib.error.URLError: <urlopen error [SSL: UNKNOWN_PROTOCOL] unknown protocol (_ssl.c:777)>

votes = "https://discordbots.org/api/bots/386333909362933772/votes?onlyids=false?days=0"
            with urllib.request.urlopen(votes) as response:
                html = response.read()
                print(html)```
reef apex
#

for starters

sudden rampart
#

first query param is ?

#

others are &

restive otter
#

oh ok

#

still getting the same error...

reef apex
#

are you on rewrite or async?

restive otter
#

async

reef apex
#

but anyway is better if you do requests with aiohttp lib because urllib is not async

restive otter
#

ok

reef apex
restive otter
#

yeah i already have that

#

im just not using it πŸ˜›

reef apex
#

bad idea, because it locks up your bot (urllib)

restive otter
#

oh ok

reef apex
restive otter
#

so is py r = yield from aiohttp.request('get', 'https://discordbots.org/api/bots/386333909362933772/votes?onlyids=false&days=1')
supposed to work or am i doing it wrong?

reef apex
#

you are doing it wrong

#

xd

restive otter
#

oh its py async with aiohttp.ClientSession() as session: async with session.get('https://discordbots.org/api/bots/386333909362933772/votes?onlyids=false&days=1') as resp: print(resp.status) print(await resp.text())

reef apex
#

yup but you'd want to change resp.text() to resp.json()

#

so you get a dict back

restive otter
#

k

#

Now i get aiohttp.client_exceptions.ClientConnectorSSLError: Cannot connect to host discordbots.org:443 ssl:True [[SSL: UNKNOWN_PROTOCOL] unknown protocol (_ssl.c:777)]

reef apex
#

and the library supports parameters sooo:

async with aiohttp.ClientSession() as session:
    async with session.get('https://discordbots.org/api/bots/386333909362933772/votes', params={
                        "onlyids": "false",
                        "days": 1
}) as resp:
        print(resp.status)
        print(await resp.text())
#

huh that's interesting are you on linux?

#

maybe is your ssl or openssl lib outdated

restive otter
#

isn't it because I need to sign in to get the users?

reef apex
#

no and you should have an Authorization header

restive otter
#

oh

reef apex
#

read the docs pls

restive otter
#

these docs have like literally nothing and i put py headers = {"Authorization" : 'mytoken'} at the beginning of my code but i get the exact same error

reef apex
#

you just defined a variable and haven't used it

#

python isn't that smart

restive otter
#

so... where do i use it?

reef apex
restive otter
#

oh ok

reef apex
#
url = 'http://example.com/image'
payload = b'GIF89a\x01\x00\x01\x00\x00\xff\x00,\x00\x00'
          b'\x00\x00\x01\x00\x01\x00\x00\x02\x00;'
headers = {'content-type': 'image/gif'}

await session.post(url,
                   data=payload,
                   headers=headers)```
restive otter
#

Can I reget ratelimited if I pull/get if someone has upvoted too many times?

uncut crystal
#

yes

restive otter
#

:/

calm torrent
#

use an existing lib because they have examples that wont get you ratelimited

restive otter
#

So, if a command that checks if the person has voted everytime they use it, and they use it 61 times in a minute. I will get ratelimited?

calm torrent
#

basically post every Xtime

#

uh.. i dont think there are ratelimits for that but you should store it in dbs with webhooks

restive otter
#

I want to keep things simple. So would I get ratelimited if I did that?

Quote: So, if a command that checks if the person has voted everytime they use it, and they use it 61 times in a minute. I will get ratelimited?

uncut crystal
#

yes

calm torrent
uncut crystal
#

well, they can't use it 61 times in a minute

calm torrent
#

oh nvm

uncut crystal
#

they'd need 2 people

restive otter
#

Yeah?

#

They can do that

uncut crystal
#

yeah

calm torrent
#

youd get blocked for an hour if it happens

uncut crystal
#

2 people could ratelimit it

calm torrent
#

or 61 people requesting at once

restive otter
#

:/

calm torrent
#

use webhooks and store in database

uncut crystal
#

or cache

#

but ideally, webhooks

sacred saddle
#

The only thing is that if your bot is down when a webhook would be sent, it'd be pretty riperoni

#

Maybe also do a once in 24 hour rest call to double check

sudden rampart
#

i have a separate, always on, process

#

to handle webhooks

sacred saddle
#

Same

#

Just made actually

#

But I guess it's not always on if we do an API update blurryeyes

sudden rampart
#

mine's been running basically non-stop since webhooks were added

#

did one or two updates

#

but those take ~10s

restive otter
#

Last Month I had the 400 Bad Request when trying to post my Server Count
1 Month later of not doing it, it still says it.

uncut crystal
#

show code

restive otter
uncut crystal
#

we don't support unofficial libraries

restive otter
#

k

#

Well it's not like there is any that I've seen

uncut crystal
#

any what?

restive otter
#

official libraries

uncut crystal
restive otter
#

And I can't access the website until I fix my Modem

uncut crystal
#

what

restive otter
#

There's an issue with Telstra, where some website become unaccessable and I have to turn off my Modem for 2-3mins to reset the IP

uncut crystal
#

right

#

well we have official libraries in the 4 major langs

#

on the docs

eternal granite
#

is there an endpoint for retrieving the number of servers for a bot?

light crag
uncut crystal
#

yes

inner venture
#

yeah patt

#

f you!

eternal granite
#

@topaz herald kys

#

can bots not post here?

inner venture
#

no

light crag
#

i mean this is human communicating

golden wind
#

can we change the rl to 3600 per hour because im lazy and 60 per min then 1h block is hard to code /s

slim cradle
#

Anyone have a cleverbot code?

distant beacon
#

@slim cradle "THIS CHANNEL IS ONLY FOR SUGGESTIONS/HELP/BUGS TO DO WITH OFFICIAL API LIBRARIES AND API DOCS FOUND AT https://discordbots.org/api/docs "

opal zealot
tidal burrow
#

is this a bug from your API side?

#

my bot says it is in 45 servers

#

but your site says 42

sudden rampart
#

did you post stats

tidal burrow
#

it does it every 30 seconds

#

you can see for yourself, the -stats will show it's current server count, but the page will show otherwise

#
dbltoken = 'not_for_your_eyes'
headers = {'Authorization' : dbltoken}
while True:
    urlbot = 'https://discordbots.org/api/bots/' + str(bot.user.id) + '/stats'
    payload = {'server_count': len(bot.guilds)}
    async with aiohttp.ClientSession() as session:
        async with session.post(urlbot, data = payload, headers = headers) as r:
            if r.status == 200:
                pass
        await session.close()
    await asyncio.sleep(30)
#

just to show that it does it by itself

#

many minutes have passed and the count did not update, and I can't scroll up in the console to see if anything happened cause putty doesn't allow that

distant flare
#

doing it every 30 seconds is bad

#

you'll hit the ratelimit and get blocked for an hour

sudden rampart
#

no

#

the limit is 60 requests/minute

#

doing it every 30s is 2/minute

#

a bit overkill tho

distant flare
#

oh, woops

tidal burrow
#

how is that an overkill? Thonk

#

well anyway, should I try restarting the bot at this point? or would there be any solutions?

#

ok, restarting fixed it, now the site is showing the correct server count, so there was some mistake that happened while I was sleeping πŸ€”

sudden rampart
#

your guild count is unlikely to change in 30s

tidal burrow
#

well I'm saying that I woke up seing the site and the bot showing different results, and I waited several minutes before even coming to this channel addressing this issue

distant flare
#

If i POST to /bots/stats with server_count and shards, will it be smart and show shards and servers on the website?

edgy nexus
#

yes

#

but change shards to shard_count

distant flare
#

awesome

#

thank u

edgy nexus
#

np

golden wind
#

@opal zealot i cant fix an invalid token

#

are you sure you have the correct token, the most up to date version of the api library, and python 3.5 or above?

opal zealot
#

yes

#

The token is correct

#

I put the exact same token from the api docs into it

#

then i even put it in a little discord.js environment to test it

#

it worked

golden wind
#

hmm

opal zealot
#

i got the api directly from pip

golden wind
#

open an issue on github

opal zealot
#

and im using Python 3.6.4

golden wind
#

i will look into it πŸ˜ƒ

opal zealot
#

yay

#

πŸ˜ƒ

golden wind
#

@tidal burrow have you set up logging to retrieve the logs from the module? if so, could you send me them?

#

nvm you dont use the module

#

sorry for pinging

past bridge
#

Lol

#

i do it on ready & leave/join

calm torrent
#

dont..

#

do it every 30mins

golden wind
#

^

past bridge
#

It isnt like my bot's server count will change 60 times in a minute

shut creek
#

What's the hex colour of the Certified badge?

uncut crystal
#

which part of it

#

there's also more than one certified badge

shut creek
#

That one

#

not the pinky part

uncut crystal
#

there's 7 different colors on that image

#

which one do you want

shut creek
#

center colour

uncut crystal
#

f9e3ae and fff8f8

shut creek
#

thanks

sullen nymph
#

Getting KeyError on longdesc? Confused myself, nvm. GWjiangoNegaLUL

#

πŸ€”

latent glade
#

Getting this error:

#

API didnt respond with 200, but with code 200 instead

short forge
#

code?

#

we are not mind readers, so we can't see your code straight from discord

#

lol

#

you have to post your code :p

latent glade
#

I just copied and pasted whatever the bot said

cedar pilot
#

but we cant guess why it error with out context

inner venture
#

I'd guess that the library has a faulty success code checker

calm torrent
#

@latent glade just send the code, tell us which library you are using

latent glade
#

uh.... Even I don't know the answer to that

charred portal
#

How would I post the bot status on the website?

inner venture
#

@charred portal what language are you using

charred portal
#

Javascript

calm torrent
#

use the js wrapper @charred portal

blissful tinsel
#

How do I send the server count to the website? (I use JDA)

uncut crystal
#

you can't edit a bot you don't own

sudden rampart
#

^

reef apex
#

then this is definitely not the place to look for, join bot's support server or contact dev

inner rune
#

Currently using dblapi.js to postStats, how would I allow it to show that I am sharding?

inner venture
#

@inner rune I dunno how the JS api handles it, but simply posting stats with shard info allows you to show your shard count on the page

inner rune
#

So then what would be the best way because I currently do my things like this.

        setInterval(() => {
            this.client.dbl.postStats(this.client.guilds.size, this.client.shard.id, this.client.shard.count);
        }, 1800000);
#

and this no longer works

inner venture
#

why doesnt that work anymore

#

πŸ€”

inner rune
#

It just spams this to me now:

Uncaught Promise Error:
Error: postStats requires 1 argument
    at DBLAPI.postStats (E:\Desktop\Discord Bots\SistineBot\node_modules\dblapi.js\index.js:49:45)
    at Timeout.setInterval [as _onTimeout] (E:\Desktop\Discord Bots\SistineBot\events\ready.js:8:20)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
inner venture
#

lemme take a look at the coderino

#

of the lib, i mean

#

im not so sure, huh πŸ€”

#

welp, i gotta hand this off to someone else

inner rune
#

This is technically what this.client.dbl is inside a constructor: this.dbl = new DBL(dBotsORG, Client);

arctic arch
#

this.client.guilds.size is undefined or 0

clever rock
#

hmm simple youtube api get some songs on yt as undefined but some songs are not

junior goblet
#

@clever rock this isn't the correct channel to ask, try #development

#

also try not to spam the chat too much with text-walls

clever rock
#

@junior goblet I thought its here sorry, because its an api related problem I think

long anvil
#

can we have the voting redirect to a specific URL with results? e.g
on vote, redirect to: website.com/?vote=1&by=userid

arctic arch
#

use webhook?

calm torrent
#

@clever rock this channel is for DBL API

clever rock
#

yep sorry for that πŸ˜‚

near falcon
#

Question about dbl.hasVoted, is 0 = the remaining time or 24 hours?

#

remaining time of the day*

arctic arch
#

what 0?

near falcon
#

It says something about it

#
Error: Days parameter out of bounds (0-31)
elfin solstice
#

thats not how arrays work

#

thats not how js would work at all

shut ibex
#

^

restive otter
#

the code

#
  const { body } = await snekfetch.get(`https://discordbots.org/api/bots/${user.id}`);```
sudden rampart
#

/api/bot

light crag
#

Is your authentication header set with DBL token?

#

oh

sudden rampart
#

actually nvm

restive otter
#

{"error":"Not Found"}

sudden rampart
restive otter
#

works for me too

#

but my bot cant acess

#

how fix? :(

restive otter
#

I need use the API token?

sudden rampart
#

that's not the error

#

that 401 isn't from DBL

restive otter
#

GWfroggyFeelsHugMan discord hates me

shut ibex
#

is points the equivalent of upvotes

restive otter
#

english only also that isnt related to api

inner venture
#

@junior goblet help

junior goblet
#

sorry for late response i was eating

restive otter
#

Anyone having an issue when trying to post server_count to https://discordbots.org/api/bots/botidhere/

#

@junior goblet Able to assist?

uncut crystal
#

@restive otter Please don't ping random people, anyone who can answer will

restive otter
#

Understood, @uncut crystal

uncut crystal
#

Server count is currently functioning fine on our end. What issues are you experiencing?

restive otter
#

I cannot seem to post to https://discordbots.org/api/bots/botid/stats

#

Isn't returning an error either so I cannot investigate the issue.

uncut crystal
#

What's the HTTP status code?

restive otter
#

After posting to the previously mentioned URL - It's returning {"shards":[]}

uncut crystal
#

You seme to be GET'ing, not POSTing.

restive otter
#

Definitely posting

#

If I post to https://discordbots.org/api/bots/botid/stats - It will attempt to post, then return the data which is on the page.

uncut crystal
#

Wouldn't be so sure. How are you making the request?

restive otter
#

Through PHP

#

Just directly posting using PHP

uncut crystal
#

Post the code you used here

restive otter
#

Sent in direct messages.

inner venture
#

@cobalt ruin SIGN ME UP

#

groovy groovy groovy groovy groovy

cobalt ruin
#

pls

restive otter
#

How am I supposed to correctly post data to the discordbots api?
https://discordbots.org/api/bots/botid/stats

#

I'm posting to server_count with json data though it doesn't seem to return the updated result.

sudden rampart
#

/api/bots/stats

restive otter
#

I believe it's missing an API key, if so, how am I supposed to implement this?

cobalt ruin
#

Can we see your code? (excluding any tokens)

restive otter
#

Sorry, I'm using /stats as well.

shut ibex
#

go to the bottom of your edit page for the api key

restive otter
#

I'm posting through PHP

#

The rest of the code is just sending it off and returning a response which doesn't need to be displayed here.

shut ibex
#

why not send through bot?

cobalt ruin
#

You need to get a token

restive otter
#

Because the bot is fully managed through the web panel.

cobalt ruin
#

they can be found here

sudden rampart
#

Authorization header

restive otter
#

How am I to post the token?

sudden rampart
#

Authorization headerΒ²

restive otter
#

Any docs for that?

sudden rampart
cobalt ruin
restive otter
#

Hmm?

#

I don't see why that shouldn't work either ahah

inner venture
#

@restive otter what does it respond with

restive otter
#

{"shards":[]}

#

API doesn't even return errors or missing params, which is quite inconvenient.

inner venture
#

i dont know if youre constructing the body correctly

#

it kinda looks like youre creating something like

#

{"server_count": {"server_count": 11}}

restive otter
#

I'll return the data and I'll see what it outputs.

#

{"server_count":11}

#

It's returning that

inner venture
#

?

restive otter
#

Which is definitely fine.

inner venture
#

What do you mean?

restive otter
#

Though the shards are still {"shards":[]}

#

The form of the json content which I'm creating looks like {"server_count":11}

inner venture
#

oh

#

i see it now

#

hmm

#

Are you sure?

#

What bit are you printlning?

#

jsoncontent?

#

or data

restive otter
#

I'm encoding $jsoncontent then printing it.

#

I've used this method of posting to other API's all the time - never had an issue.

#

I'm quite surprised with this one..

inner venture
#

Im just concerned about the fact that you have typed "server_count" twice

#

Im not exactly familiar with whatever language youre coding in

restive otter
#

I did ask previously, what am I posting to

#

So, I posted to server_count

inner venture
#

Those terms dont really make sense together

restive otter
#

I agree, though I don't believe the API was made for PHP

#

As states the docs, it has JS, Python and C#

inner venture
#

RESTful APIs are accessable in any lanugage

restive otter
#

I'm aware, though there isn't any docs for PHP

inner venture
#

As long as it can make simple http requests

#

That's because no one has made a dedicated library for it

#

so there isnt anything to document

restive otter
#

for a bot? - impossible

inner venture
#

I dont think anyone has created a PHP library for implementing the DBL API

#

Do you think you could try setting data to json_encode($jsoncontent)

#

instead of wrapping it in an array

restive otter
#

I’ll have to go through the discord bots api later and translate it to PHP to get everything working

restive otter
#

@cobalt ruin Mind if I can have a chat with you through direct messages?

graceful musk
#

How do I setup the webhook? It isn't very clear to me.

inner venture
#

@graceful musk Do you know how to setup a webserver?

graceful musk
#

@inner venture As in a linux or web hosting?

inner venture
#

@graceful musk Just a generic one in your language of chocie

#

its not to host any actual web content

#

its to receive the post request that DBl will send you

azure pollen
#

@arctic arch

#

help this guy with the API

#

he's using PHP

arctic arch
#

do I look like a PHP guy

#

but the api returns {shards:[]}?

#

that means your thing is sending a get request

#

even if you have set the method to post

#

something's wrong

#

and idk what

restive otter
#

How do I make it so that people can see how many servers my bots on the website.....

#

.

#

.

#

.

#

.

tardy crater
#

Don’t spam.

edgy nexus
#

@restive otter post server count?

restive otter
#

?

tidal burrow
restive otter
#

ok

edgy nexus
#

I'm attempting to use the webhook, but I can't get it to work.

#

wait

vagrant kayak
#

Hope you're not using a Discord webhook

edgy nexus
#

I'm not

uncut crystal
#

What did you try / what's failing?

edgy nexus
#

So, I'm using an app written in Flask, although that has nothing to do with the issue

#

but when someone actually upvotes

#

they don't get added as an upvoter

#

I can show the webhook's code, if you want

arctic arch
#

make sure your webhook url has a http or https

edgy nexus
#

It has an https in the above snippet of code and in the webhook url

restive otter
#

How do I make it so that the website can know how many servers my bots on? I use discord.js

#

find a discord.js one

#

ok

edgy nexus
#

@gloomy brook thank you so much for that bug report

#

that saved me

gloomy brook
#

gotchu fam

scenic trail
restive otter
#

Because none of them are working for me!

scenic trail
#

But they have been tested to work so they should work

#

You must be doing something wrong

restive otter
#

I dont even know where I put it....

#

In my script

scenic trail
restive otter
#

...

edgy nexus
#

do you even know how to code

restive otter
#

Interesting..

ashen hull
#

@restive otter that only means that you may not use async on it

restive otter
#

Discard, I have resolved the issue.

ashen hull
#

k

restive otter
#

Thank you for the assistance though, @ashen hull

restive otter
#

sa

uncut crystal
#

@restive otter that's not what this channel is really for

restive otter
#

well, there goes trying to be helpful

uncut crystal
#

appreciate the thought, but yeah, we're not looking for server count examples anymore

hazy coral
#

how do i get the bot to post wether or not its online

#

its online but on dbl it shows ??? on status

arctic arch
#

that means the bot is not in this server

hazy coral
#

ah ok

#

thanks for the support

#

is it possible to get it on the server?

arctic arch
#

check modlog for why it was kicked

hazy coral
#

ok

#

thank you for the help

#

it does not appear to be on the modlog

#

as for why it would have been kicked or anything

arctic arch
#

-bots @hazy coral

abstract mothBOT
#
CrossFIRE121#9051
Bots

@neon dagger
@undone geyser

neat bolt
#

do Your Webhooks work with Discord?

sudden rampart
#

no

neat bolt
#

k

restive otter
#

-bots @restive otter

abstract mothBOT
#
CharaDev#0001
Bots

@real stone

ashen hull
#

@restive otter you can do -bots for your own and you don't need to do that command here πŸ˜…

restive otter
#

Whoops.

#

Thanks

#

-bots

abstract mothBOT
#
_L#5047
Bots

@queen merlin

dull silo
#

-bots @dull silo

abstract mothBOT
#
Ahlfs#1856
Bots

@nocturne mortar

tidal burrow
#

this is a wrong channel for commands

dense compass
#

^^

woeful grove
#

hey people i used ```const dbl = require("dblposter");
const DBLPoster = new dbl(API KEY);

// Then, depending on what you called your client
DBLPoster.bind(bot);```
but i get RangeError: You need to provide a client to bind to! at DBLPoster.bind when using my client ( var bot = new Discord.Client({ autoReconnect: true }); )

any ideas?

#

discord.js

restive otter
#

@woeful grove u need

const Discord = require("discord.js")
var bot = new Discord.Client()
//the rest of the code here

cause bot is undefiend

golden wind
#

@opal zealot you still getting 403s?

woeful grove
#

no bot works fine the code runs and i use bot for all my stuff
it just doesn't get accepted as client for those paramteres @restive otter

#

i just didnt paste all my code here bc i thought that'd be uneccessary

restive otter
#

try to do

DBLPoster.bind(bot);

after 10 seconds from your bot starting

woeful grove
#

I will try that , thanks

#

Does the Client need to be online? Because i set that after everything else that Happens in startup

opal zealot
#

@golden wind I havent tried it yet

golden wind
#

@opal zealot i havent actually pushed changes, just wondering if they're still popping up

#

or if its some firewall/proxy related thing on windows

#

so could you post the full traceback when it occurs?

opal zealot
#

okey

#

@golden wind I had to reset my PC so this will take a bit

radiant magnet
#

!playmusic

neat bolt
tidal finch
#

How to get upvotes using dlbapi.js??

ashen hull
#

I'll get docs 1 sec

#

if the site ever loads...

#

seriously...

#

dbl.getVotes(<boolean only ids>)
and dbl.hasVoted(id)

median cedar
#

session.get('https://discordbots.org/api/bots/{}/votes'.format(387322914183184384), params={'onlyids':'true'}, headers={'authorization':'token'}) is only returning 4 IDs when it now has 9 upvotes

#

it also doesn't save the fact that you voted on the website

#

so there's probably an issue with DBL

inner venture
#

@median cedar those. 4 IDs would be the people who voted in the past 30 days

median cedar
#

someone voted in the past day

#

and they're not on it

pseudo patrol
#

message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8'

#

πŸ‘€

calm torrent
#

what?

pseudo patrol
#
        url = "https://discordbots.org/api/bots/310039170792030211/votes"
        async with aiohttp.ClientSession(headers={"Authorization": config.dbots.key}) as cs:
            async with cs.get(url) as r:
                res = await r.json()```
will sometimes return `message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8'`
![Thonk](https://cdn.discordapp.com/emojis/356771720863940608.webp?size=128 "Thonk")
#

ive gotten over like 1k errors from this lol

#

in like 2 days πŸ‘€

arctic arch
#

you're probably getting cloudflare ratelimited

pseudo patrol
#

Oof~

jolly jackal
#

-bots @ebon crow

abstract mothBOT
#
Flop#1536
Bots

@lofty isle

candid scarab
#

-bots @candid scarab

abstract mothBOT
#
unknownguy2002#4392
Bots

@lone karma

slate pilot
#

owo

abstract mothBOT
#
Saya#0113
Bots

@ebon solar

restive otter
#

πŸ‘€

golden wind
#

@median cedar if they had voted at all in the past month they won't show up

median cedar
#

k

inner venture
#

@lean delta wrong chat 😳

lean delta
#

oh

median cairn
#

i can only get my token when my bot is accepted?

little harbor
#

I'm a bit confused as to how the webhooks work... can I like, make the voted webhook post something in a Discord channel, like a Discord webhook?

inner venture
#

@little harbor no

#

Webhooks in this case are a generic concept

little harbor
#

alright thanks

inner venture
#

DBL just sends a POST request to the URL of your chocie whenever someone votes/unvotes on your bot

#

So you'd need to be ready to receive that requesy

frail meadow
#

But the api endpoint is still available for bots with under 100 votes per month?

#

Where can we see if this is the case? Or what will be the output if the request was rejected

#

Im working on a Go library rn so πŸ˜… would be useful to know

#

(also @ me plz coz ill be asleep)

sudden rampart
#

@frail meadow

frail meadow
#

Slightly contradicts what the announcement says, but thanks ^^

inner venture
#

Not really

frail meadow
#

The announcement says the /votes endpoint will be deprecated for bots with over 100 votes per month

#

This screenie says that itll simply limit it to the last 100 votes

#

@inner venture

#

Right?

cobalt ruin
#

we use the word deprecated because we want to discourage developers from using the endpoint because we see it as pointless when developers can use webhooks which work better for everyone

frail meadow
#

Okay that much makes sense

#

Cheers

#

Should libraries add support for the webhook or no?

vagrant kayak
#

I'm not really sure how they could...?

frail meadow
#

Might be language dependant

#

And would need some outside help from lib users perhaps

dull sundial
#

libaries cant really do that, sure there can be a lib that creates the server for you, unlikely tho. But since it's a request you are receiving and not once you send its a bit harder lol

cobalt ruin
#

@frail meadow You can't really do that with webhooks..? But we are hoping to get some tutorials so it's easier to set up for inexperienced users

frail meadow
#

Was thinking of channels in Go. But i should probably think about it when its not almost 2am

sudden rampart
#

it's out of scope for a wrapper to add webhooks

#

because it'd end up forcing a specific webserver

frail meadow
#

Not necessarily

#

(again, might be talking out of my ass here)

sudden rampart
#

without bundling a webserver there isn't much a wrapper could help with besides parsing json

frail meadow
#

But i get the idea anyways, that it should be excluded

#

Thats as far as i was thinking

#

Hence i said "would need some outside help from lib users"

#

Bundling a web server is an obvious no

tidal finch
#

Did web hook is meant to be discord webhook??

#

I never used a website webhook!!

vagrant kayak
#

webhook is a general term, Discord webhook won't work

tidal finch
#

Rip

#

I need more tutorial

#

Did i need a website

edgy nexus
#

no

tidal finch
#

Did it will save data of old users?

sudden rampart
#

webhooks don't save data

edgy nexus
#

if you tell it to do such

sudden rampart
#

you need to save it yourself

tidal finch
#

Hmm?

edgy nexus
#

ok for starters install nginx or apache on your vps if you have one

tidal finch
#

I use heroku/glitch

vagrant kayak
#

oh no

edgy nexus
#

i'm not sure, but that may work?

vagrant kayak
#

they can host webservers so yes

#

Anything can be a webserver

edgy nexus
#

ok so no installing apache or nginx

#

i believe they easily support flask

#

so what i would do is learn python then read the docs for flask

#

then you could easily make a webhook

tidal finch
#

I use discord.js

edgy nexus
#

that has nothing to do with the webhook

tidal finch
#

Ok

edgy nexus
#

your bot and your webhook are 2 seperate things

tidal finch
#

Oh

sudden rampart
#

you can have both on a single process

vagrant kayak
#

I'm genuinely surprised how many people are confused by this concept

sudden rampart
#

if you want to do that, take a look at express (i wouldn't recommend it tho)

tidal finch
#

Express is slow than flask?

#

@vagrant kayak me for sure

sudden rampart
#

i never used either of those Β―_(ツ)_/Β―

tidal finch
#

So what i do

sudden rampart
#

but i don't recommend running the webserver on the same process as your bot

tidal finch
#

I never used webhook

#

Ok

frail meadow
#

Learn what webhooks are first

restive otter
#

when i try to get something from dbl and i get

Error: 500 Internal Server Error

does that mean im requesting too much

sudden rampart
#

no

#

that means there was an internal server error

restive otter
#

mmk

sudden rampart
#

ratelimited is 429

restive otter
#

oh ok

#

is it on my end or dbl

vagrant kayak
#

500+ errors are the server not you

restive otter
#

ok

#

tnx

sudden rampart
vagrant kayak
#

YES

#

Perfect example and I love that meme

#

The only 1** though is the websocket right? πŸ‘€

sudden rampart
#

idk

vagrant kayak
#

I mean it makes sense in that case but I'm just curious

sudden rampart
#

101 could be used to, eg, switch from http 1.1 to 2.0

vagrant kayak
#

informational

#

2** = here you go, but what if 204 Thonk

#

It technically can't say "Here you go" bloblul

sudden rampart
#

204 is here you don't go

restive otter
#

wait but i can post, so i cant get but i can post stats thonk

sudden rampart
#

you can get stats

restive otter
#

well i can too if i go on the site, but like it wont work for me when i eval and try to get it rn

sudden rampart
restive otter
#

hold oh yeah i got that to work

#

but now when i try to get anything about voting it doesnt work

frail meadow
#

How "doesnt work"

#

Not giving us anything to work with here

restive otter
#

stop

frail meadow
#

πŸ€” πŸ€” πŸ€” πŸ€” πŸ€”

restive otter
#

ok it was the dblapi.js issue so mk

plain timber
#

How do you see up the webhooks?

turbid mauve
#

wtf is a snowflake

restive otter
#

Discord uses it to generate IDs

turbid mauve
#

SO dumb

restive otter
#

do webhooks work with actual discord webhooks?

inner venture
#

No

molten loom
restive otter
#

Any ideas: I use the test webhook I can see the request just fine, but when I try voting for my bot I get nothing. Is voting webhook disabled right now since that announcement?

old wave
#

Works fine for us

restive otter
#

hmmmm

old wave
#

@restive otter possible that you already voted?

#

And that’s why you’re not getting it?

#

It only counts once every 24 h

restive otter
#

I have voted, but it should still show, at least before this announcement, it would show voted/unvoted unlimited times per day

#

would be weird if webhook only fired for a person every 24h, since it includes the "type" in the webhook data
type String The type of the vote (either "upvote" or "none", none means unvoting)

old wave
#

Ah

#

It doesn’t do that anymore

restive otter
#

ooooooooooooooooooohhh

old wave
#

It only shows if the vote is successful

restive otter
#

so no more unvotes, and successful votes every 24h?

old wave
#

Yh

restive otter
#

πŸ‘Œ cheers

#

should I @ somebody to change that?

slim idol
#

How do I set up a webhook to sync my voters to a role on my server?

old wave
#

Yh

#

You add the guild id

#

To the webhook

#

And then you get it back in the web hook

restive otter
#

another thing, since they dont include unvotes in webhooks anymore, is the data format for the webhook still the same apart from that?

old wave
#

Yes

#

It’s just always an upvote object

restive otter
#

happy birthday @spice jacinth

steady sundial
#

Hello guys

restive otter
#

hoi

steady sundial
#

I have an webhook nodejs server now and that one works but how can I give credits to a user that uses my discord bot

old wave
#

You get the user id in the web hook

steady sundial
#

Is it possible that my webhook server sends a discord message that a user got credits?

restive otter
#

uhhh, something is going on with dblapi.js I think... was working before the announcement. I am getting votes and adding them to an enmap like this:

 dbl.getVotes(true).then(function (voterIDs) {
    console.log(voterIDs.length) // => prints 1890 -- I DEFINITELY dont have 1890 votes. /votes endpoint is just me :p
    voterIDs.forEach(function (voterID) {
        votes.set(voterID, true)
    });
});

Any ideas?

#

the api changed a bit

#

Yeah I got that. So should I just grab from the /votes endpoint for now (i have < 1000 votes) and wait for the lib to get updated?

arctic arch
#

updating the lib soonβ„’

restive otter
#

how soon is soon?

#

πŸ‘Œ sounds good

#

cause i want to lock all my commands behind upvote cause i need to add some perks when people upvote

arctic arch
#

funny

#

get banned

tidal finch
#

How dblapi.js works now

#

Any other api which i can use

restive otter
#

updating the lib soonβ„’

clever rock
#

quite lost on how too use the webhook stuff

#

already set my url and authentication on the edit page

#

basically that url needs to be a living page?

#

or I just need to use that url to link it into the script

idle haven
#

That face when you have a due date and suddenly someone emails you "I'm sorry to tell you, but your deadline moved one week further away"

#

Feels good man

#

Haha, there will always be someone upset about these things πŸ˜„

robust olive
#

does the webhook still send type="upvote"?

restive otter
#

apparently it sends type upvote, but never "none" theres no unvotes in webhook anymore

restive otter
#

Guys can someone give me a hint about webhooks?
On how it works?

steady sundial
#

Why does it return undefined?

arctic arch
#

you haven't parsed the json

steady sundial
#

I did

arctic arch
#

wait no

#

it's

#

wow

#

it's json

#

not a querystring

#

use JSON.parse

steady sundial
#

I will try thx

#

Oh yea works fine

#

Thank you

robust olive
#

There's no authorization header on the webhooks anymore?

arctic arch
#

is it missing for you?

robust olive
#

yeah

charred ocean
#

ive never used a webhook before. can someone help me figure out where to start to set it up?

arctic arch
#

what lang

charred ocean
#

python

#

it says you can check an individual user's votes but i couldn't figure out how to do it with dblpy. i thought maybe get_user_info but that didnt seem to have any information about votes

arctic arch
#

dblpy is probably not updated yet

charred ocean
#

ah ok. ive been trying to google about using webhooks in python but i honestly have no idea what im doing

charred ocean
#

i have this at the moment running on a vps

import web

urls = ("/.*", "hooks")

app = web.application(urls, globals())

class hooks:
    def POST(self):
        data = web.data()
        print(data)
        return "OK"

app.run()
arctic arch
#

there is already something running on port 8080

lost skiff
#

Can someone help me setup an if message author voted for the bot check? discord.js

charred ocean
#

how do i figure out if something is already running on port 8080? i googled it and tried some stuff but it doesnt seem to do anything. and i tried using a different port but it does the same thing

restive otter
#

@lost skiff

https://discordbots.org/api/bots/urbotid/check?userId=userid```
if it says 1 then the user has voted
charred ocean
#

@restive otter thanks this actually solves my problem too because i give up with webhooks now lol

restive otter
#

No prob

frail meadow
#

Outta curiosity, whats the lang used in the backend of the api?

uncut crystal
#

nodejs

frail meadow
#

Well that probably explains the bottleneck

#

A scalable language would've been a better choice

#

Or is there a different bottleneck re. votes endpoint? Db perhaps?

arctic arch
#

Node is not scalable
lol go study

frail meadow
#

Compared to something not single threaded, definitely

arctic arch
#

the problem was that our old vote format was slow to process

#

what if I told you our backend runs on multiple threads zoomeyes

frail meadow
#

Do explain how

#

Multiple instances?

arctic arch
#

Cluster

frail meadow
#

Doesnt make node not single threaded :p

uncut crystal
#

🀦

arctic arch
#

but it does scale

frail meadow
#

By throwing more into the mix, yea

#

Its like adding more servers

#

Sure, it works

#

But its far from the best way

uncut crystal
#

it's not like adding more servers whatsoever

#

like, not even close

frail meadow
#

Add more to the cluster

#

Same analogy

uncut crystal
#

not really

frail meadow
#

Enlighten me then, please

uncut crystal
#

feel free to ask in #development, as that's more general programming than API-related

frail meadow
#

Awaiting reply

charred ocean
#

how do i put an authorization header when using urllib.request in python? i cant figure it out. i think im just dumb

old wave
#

It uses clustering @frail meadow

arctic arch
frail meadow
#

@old wave already been discussed

arctic arch
#

in other news the js module's master branch now supports the latest API changes

charred ocean
#

dblpy whentm

limpid sorrel
#

I'm querying https://discordbots.org/api/bots/426537812993638400/check?userId=84117866944663552 and it's showing my voted = 0, even though I just voted right now

charred ocean
#
import requests

url = "https://discordbots.org/api/bots/413728456942288896/check?userId=71632953322512384"
token = "my token"

r = requests.get(url, headers={"Authorization": token})

print(r.text)
#

what am i doing wrong here?

#

i get error: unauthorized

#

nvm. somehow i had the token wrong

restive otter
#

I don't understand this system.
On page 1 of Top Votes this month there are bots with 5 or less votes and on 2nd page there are bots with over 100 votes.

#

Is this a bug?

#

(ping pls)

restive otter
#

@limpid sorrel check again

limpid sorrel
#

oh, it worked

#

I'm assuming it shows cached results?

restive otter
#

maybe it needs some time Β―_(ツ)_/Β―

arctic arch
#

yea they're cached for a while

mortal thicket
#

gy

cobalt ruin
restive otter
#

Yo im so confused abb webhooks

#

like what do you mean abb webhook url

#

πŸ€”

arctic arch
#

abb?

restive otter
#

about

vagrant kayak
#

Does the test webhook send authorization header if you fill it in or am I missing something here? I tried testing my webhook but Authorization header is NULL

#

Wondering if that's an issue with API or not

arctic arch
#

it should but it's an issue

vagrant kayak
#

mmf

golden wind
#

@cobalt ruin pm me the ip so i can ip check webhooks

cobalt ruin
#

you can use the auth header πŸ‘€

arctic arch
#

@golden wind you should not IP check webhooks

golden wind
#

2) Webhooks are sent from a different server than before, so if you had an IP check in place, please make sure to revise it

arctic arch
#

revise it means throw it out the window and use the authorization

vagrant kayak
#

Realistically you guys should do what Google does with their google bot. Set the reverse DNS to be on the domain like IP.rdns.discordbots

#

I mean sure Authorization works but this works too

arctic arch
#

IP checking is just dumb

#

worked or not

#

lol

vagrant kayak
#

I mean I guess 🀷

#

You could also do the patreon way

#

Webhook Public/Secret system where the webhook is sent with headers that have it encrypted from the webhook secret

#

Or whatever way it was done, I don't remember but it sent an encrypted HMAC which can only be checked via the webhook secret they have

arctic arch
#

a cryptographic signature is possible to add later

#

but this way of authorization is the easiest to implement for devs

robust olive
#

it's just upvotes πŸ˜‚ why would you need something like that

arctic arch
#

cuz its cool

vagrant kayak
#

Because you're also sending it to a publicly obtainable API

#

albeit I doubt anybody will figure it out ..... but you know

arctic arch
#

open source bots

vagrant kayak
#

People can use it to reward users for upvoting but if somehow the URL is known they can fake it

edgy nexus
#

when you test the webhook

#

which id is in the user field

vagrant kayak
#

Yours

edgy nexus
#

okay thanks

vagrant kayak
#

(afaik)

#

I didn't actually check it but I saw like 15.... something in mine and that implied it was probably mine since i kind of know my ID

restive otter
#

API should return a hash of the payload with concat with the API key

#

So u can check via bot the payload

vagrant kayak
#

Actually I think that's what Patreon does

restive otter
#

Guys can anyone give me a hint about how to use webhooks for votes?

narrow charm
#

Put your webhook in the field in the site.
You will get post requests, listen to it.

restive otter
#

@narrow charm Can you tell me more about webhook?
By asp.net?

narrow charm
#

I am also not so good at it. Other dev in my team did it.
and there is some code floating in this channel (if you use js) regarding the usage of webhook.

restive otter
#

@narrow charm Can you send me those codes
Can't find it

narrow charm
#

from: York#0001 in: api post

#

search for this.

restive otter
#

Ok

steady ocean
#

i have a bot but not registering

tidal finch
#
let dbt = "api";
const { body } =  snekfetch.get(`https://discordbots.org/api/bots/botid/check?userId=user:id`)

.set('Authorization', dbt)
channel.send(Boolean(body));```
#

Why it returning false i already upvoted my bot

#

Anyone here want to help an idiot

narrow charm
#
const snekfetch = require("snekfetch");
let dbt = "api";
const { body } =  snekfetch.get(`https://discordbots.org/api/bots/${bot.id}/check?userId=${user.id}`)
// where bot is your client object, and user is you.
.set('Authorization', dbt)
channel.send(Boolean(body));
tidal finch
#

I directly using my bot and user id

#

botid is my bot id and user id my id directly @narrow charm

#

Not included in bot yet

narrow charm
#

I havent checked how this endPOINT works, let me check for a while.

tidal finch
#

Ok

narrow charm
#

I guess its daily vote checks.

restive otter
#

with webhooks, its getting and posting but im not getting any info/data and its just weird

tidal finch
#

@narrow charm i voted today

#

for me Voted : 1

#

On website

narrow charm
#

hmm no idea then

distant flare
#

Would I just make a file in a javascript folder and call it Example-all.js or

tidal finch
#

Or??

#
let dbt = "api";
const { body } =  snekfetch.get(`https://discordbots.org/api/bots/botid/check?userId=user:id`)

.set('Authorization', dbt)
channel.send(Boolean(body));```
#

Why it's returning false

#

Only those who really know

#

Help me

distant flare
#

first off, the body has a voted property which returns a 1 or 0

#

secondly, snekfetch.get is a promise, so you need to either await it or do everything in a .then

arctic arch
#

^

tidal finch
restive otter
#

why am i getting a connection from my webhook but no data

distant flare
#

they post a json body.. Soo, /shrug

restive otter
#

yeah i know the weird thing is that im not even getting body

#

just everyother bs thing

tidal finch
#

@distant flare i still don't getting how to do it rip

distant flare
#
async function getVoted () {
    const { body } = await snekfetch.get(`URL`).set("Authorization", "muh code");
    return body.voted || false;
}

// your command

getVoted().then(voted => {
    channel.send(`You ${voted ? "voted" : "didn't vote :c"}`);
});```
#

example.exe

#

or

#
snekfetch.get(`url`).set().then(({ body }) => {
    channel.send(`body.voted`);
});```
tidal finch
#

Ok thanks

#

I was trying body.voted

#

But i got undefined but i will try with await

#

It worked hue hue

arctic arch
#

anyone wanna test webhook support for dblapi.js before I release?

sudden rampart
#

read the link

arctic arch
#

oh nice they've documented that

#

we could get rid of defAvatar lol

sudden rampart
#

...

#

if you try reading that link

#

it explains how to do exactly what you want

#

in this case

severe mist
#

Do votes reset 24 hours exactly per user vote (timestamps) or something else?

cobalt ruin
#

24 hours per user vote

severe mist
#

Hmm, I have a suggestion for the webhook, maybe include the voters timestamp?

cobalt ruin
#

hmm

#

We'll look into it, ty for your suggestion

restive otter
#

I'm using the dbl api (obviously). Any reason why this would happen?

sacred saddle
#

that's been documented for a while now

#

for the default avatar

arctic arch
#

Released dblapi.js v2.0.0

#

Webhook example

const DBL = require('dblapi.js');
const dbl = new DBL(yourDBLTokenHere, { webhookPort: 5000, webhookAuth: 'password' });
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
  console.log(vote);
  // Do what you need to do
});
restive otter
#

how would i get the server usage on the site for widgets, using api key

#

by posting your server count onto here?

#

by code then it will auto change or something like that

#

like for websites the embeded widgets

#

the widgets off of discord bot list or somewhere else?

#

yes

#

discord bots

#

is your server count already posted on your bot on discord bot list

#

no

#

thats what im trying to do

#

do that then it will work

#

im asking how do i use the API key

#

what lib

#

Python

#

async

#

not rewrite

#

i dont do discord.py but isn’t there a page on the site

#

its just examples

#

have you seen it tho?

inner venture
#

There's a library created in Python that implements the dbl api

restive otter
#

^

#

Ic it

#

that’s async the examples

#

and imo its tells you everything on how to use it

#

i was on the widget section

#

prop why

lean delta
#

is the api being weird it say my bot is offline on the website but its online and running

granite kelp
#

cookiebot owner person how do I add a bot to the api xD
'

#

oh

#

I just login with my discord

#

OOF

lean delta
#

for server count there should be example code on the website

#

ok... i signed in with discord and now it say my bot is online XD

narrow charm
#

or simpy use the wrapper if its available.

tough yoke
#

Should i do put webhook event to my bot main file for work

#

on dbl api

tough yoke
#

Any anwer please

severe mist
#

Personally I would advise against sticking a http server inside your bot

arctic arch
#

@severe mist why?

severe mist
#

Because it could lead to possible memory issues, and you may run into issues if you shard (discord.js) as it creates additional processes and if they all attempt to open / access the same port can cause problems

#

Having a separate node process for the http server and using a pub/sub system, or adding to a db is the best solution imo

arctic arch
#

oh yea

#

if you shard adding the webhook in the bot code is a no-no

#

not only because of the http server bloblul

#

and memory issues just have to be tackled with

severe mist
#

I'm currently writing a small bot / http server to handle role rewards for my guild

frail meadow
#

Why would there be memory issues

severe mist
#

And I plan on expanding the functionality for the pub/sub system

tough yoke
#

So bot if sharded and uses api webhook cant use?

#

So sad

severe mist
#

You're adding a http server to your bot, that's a memory issue right there lol

tough yoke
#

If use in same processes

#

No problem?

frail meadow
#

I dont get how thats a memory issue :p

severe mist
#

If your bot is sharded, problems, if it's not sharded, no problems @tough yoke

frail meadow
#

How big are http servers in whatever lang you use πŸ€”

arctic arch
#

if it's Eris it's fine

tough yoke
#

How

arctic arch
#

but in d.js sharding it wouldnt work

severe mist
#

Eris has fancy internal sharding

tough yoke
#

eris-sharder package

#

Has?

severe mist
#

Try it and see if it works

tough yoke
#

Δ°snt eris has not sharder and all eris user uses eris-sharder

severe mist
#

Eris has a built in sharder

frail meadow
#

Is sharding for our sake or discords?

spice jacinth
#

bit of both

tough yoke
#

Eris has they own sharder like d.js?

arctic arch
#

if you use eris-sharder you should have webhooks on the master

narrow charm
#

are the talks happening for multiple http server running on same port?

#

@severe mist ?

severe mist
#

hmm?

narrow charm
#

what is the memory issue you talked aout.

#

and ignore the typo,keyboard damaged just few momentsago.

final linden
#

y

calm torrent
severe mist
#

@calm torrent the topic froosty and I are talking about is very relevant to the topic of the channel, pls don't mini-mod

calm torrent
#

it was another person who deleted his message and just moved to #development, not related to you @severe mist

severe mist
#

fair enough

frail meadow
#

@narrow charm pretty sure you cant have multiple processes bound to the same port

#

No clue what the memory issue is that he mentioned

#

Must be a bad http server

tough yoke
#

d.js and the api wrapper uses same port?

arctic arch
#

d.js uses no ports

#

but when you start shards you start multiple bots

#

which would open the same port multiple times