Sto provando a configurare un disc disc bot con python. Ho un server discorde preesistente che vorrei che il bot si unisse, ma mi sembra che mi stia passando un po 'di tempo per farlo partecipare. Sto usando discord.py 0.10.0 e python 3.5.1. Qui è il mio codice:Partecipare a un server con l'API di Discord Python
import discord
import asyncio
import logging
logging.basicConfig(level=logging.INFO)
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
print(client)
@client.event
async def on_message(message):
print(message)
if message.content.startswith('!test'):
counter = 0
tmp = await client.send_message(message.channel, 'Calculating messages...')
async for log in client.logs_from(message.channel, limit=100):
if log.author == message.author:
counter += 1
await client.edit_message(tmp, 'You have {} messages.'.format(counter))
elif message.content.startswith('!sleep'):
await asyncio.sleep(5)
await client.send_message(message.channel, 'Done sleeping')
client.run('token')
Si noti che questo è essenzialmente lo script di base discord.py come indicato sulla pagina GitHub. Tuttavia, non riesco a capire come farlo effettivamente entrare nel mio server. Quando si inserisce questa linea nella funzione on_ready:
server = await client.accept_invite('instantinvitecode')
con instantinvitecode sostituito con il mio istante attuale codice di invito (ho provato sia discord.gg/code e codice), ottengo discord.errors.Forbidden: FORBIDDEN (status code: 403): Bots cannot use this endpoint
. Si noti che il login funziona davvero- Vengo visualizzato come nome utente e ID.
Si noti inoltre che mi sono registrato con l'API discord e registrato come un bot, ovvero il token che sto utilizzando.
Per quanto ne so, è necessario unirsi a un server utilizzando l'app desktop o un browser con il proprio account bot. Una volta fatto, il bot riconoscerà che si è unito in precedenza. – Goodies
Quindi, ho provato questo - ho effettuato l'accesso all'account dal quale il bot è stato autorizzato e mi sono unito al server corretto, ma non sembra aver avuto un effetto - non sta ancora entrando nel server (il valore del client. i server è []). – Laxsnor
Mi chiedo invece se non sto effettuando il login come bot- ho autorizzato il bot dall'account (ed è qui che è stato generato il token), ma sto ancora loggando al client mac usando e-mail e password. – Laxsnor