PennyDreadfulMTG / Penny-Dreadful-Tools

A suite of tools for the Penny Dreadful MTGO community
https://pennydreadfulmagic.com
MIT License
40 stars 28 forks source link

Bot error on_message #5677

Open bakert opened 5 years ago

bakert commented 5 years ago
(<Message id=506006332428648449 pinned=False author=<Member id=206604211251576833 name='kyosukenoir' discriminator='2131' bot=False nick=None guild=>>,)
{}
['[planar void] where are you']

Reported on discordbot by discord user--------------------------------------------------------------------------------
ValueError
I/O operation on closed file
Stack Trace:

  File "run.py", line 120, in <module>
    run()
  File "run.py", line 17, in run
    bot.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 202, in init
    client.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init
    self.run(configuration.get('token'))
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run
    loop.run_forever()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever
    self._run_once()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once
    handle._run()
  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event
    await coro(*args, **kwargs)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 48, in on_message
    await command.respond_to_card_names(message, self)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 58, in respond_to_card_names
    await post_cards(client, cards, message.channel, message.author)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 880, in post_cards
    await send_image_with_retry(channel, image_file, text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 891, in send_image_with_retry
    message = await send(channel, file=File(image_file), content=text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 845, in send
    return await channel.send(file=file, content=new_s)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 745, in send
    content=content, tts=tts, embed=embed, nonce=nonce)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 153, in request
    async with self._session.request(method, url, **kwargs) as r:
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 843, in __aenter__
    self._resp = await self._coro
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 357, in _request
    ssl=ssl, proxy_headers=proxy_headers, traces=traces)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 231, in __init__
    self.update_body_from_data(data)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 403, in update_body_from_data
    body = body()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 141, in __call__
    return self._gen_form_data()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 135, in _gen_form_data
    self._writer.append_payload(part)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/multipart.py", line 745, in append_payload
    size = payload.size
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/payload.py", line 284, in size
    return os.fstat(self._value.fileno()).st_size - self._value.tell()
bakert commented 5 years ago

Temporary network conditions.

bakert commented 5 years ago
(<Message id=516357893499518996 pinned=False author=<Member id=221110412161187842 name='Dactorwatson' discriminator='6585' bot=False nick='_dactorwatson' guild=>>,)
{}
['they also have [dread return] and [lotleth giant]']

Reported on discordbot by discord user

ValueError
I/O operation on closed file
Stack Trace:

  File "run.py", line 120, in <module>
    run()
  File "run.py", line 17, in run
    bot.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 204, in init
    client.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init
    self.run(configuration.get('token'))
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run
    loop.run_forever()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever
    self._run_once()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once
    handle._run()
  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event
    await coro(*args, **kwargs)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 48, in on_message
    await command.respond_to_card_names(message, self)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 58, in respond_to_card_names
    await post_cards(client, cards, message.channel, message.author)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 886, in post_cards
    await send_image_with_retry(channel, image_file, text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 897, in send_image_with_retry
    message = await send(channel, file=File(image_file), content=text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 851, in send
    return await channel.send(file=file, content=new_s)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 745, in send
    content=content, tts=tts, embed=embed, nonce=nonce)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 153, in request
    async with self._session.request(method, url, **kwargs) as r:
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 843, in __aenter__
    self._resp = await self._coro
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 357, in _request
    ssl=ssl, proxy_headers=proxy_headers, traces=traces)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 231, in __init__
    self.update_body_from_data(data)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 403, in update_body_from_data
    body = body()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 141, in __call__
    return self._gen_form_data()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 135, in _gen_form_data
    self._writer.append_payload(part)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/multipart.py", line 745, in append_payload
    size = payload.size
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/payload.py", line 284, in size
    return os.fstat(self._value.fileno()).st_size - self._value.tell()

Exception_hash: a46897dde0a978c839af833db2fc8569cb26c539

Got another one of these. Logging to have a record.

bakert commented 5 years ago
(<Message id=520303834950664223 pinned=False author=<Member id=156691148616761344 name='zinnerzPT' discriminator='0640' bot=False nick='Chcio' guild=>>,)
{}
['"[...] o quê?"']

Reported on discordbot by discord user

Forbidden
FORBIDDEN (status code: 403): Missing Access
Stack Trace:

  File "run.py", line 120, in <module>

    run()

  File "run.py", line 17, in run

    bot.init()

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 204, in init

    client.init()

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init

    self.run(configuration.get('token'))

  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run

    loop.run_forever()

  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever

    self._run_once()

  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once

    handle._run()

  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run

    self._callback(*self._args)

  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event

    await coro(*args, **kwargs)

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 48, in on_message

    await command.respond_to_card_names(message, self)

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 49, in respond_to_card_names

    async with message.channel.typing():

  File "/home/discord/.local/lib/python3.6/site-packages/discord/context_managers.py", line 63, in __aenter__

    await channel._state.http.send_typing(channel.id)

  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 209, in request

    raise Forbidden(r, data)

Exception_hash: bc6ef3b967c6dbf872ef03c3fcea7bd271a9bbce
silasary commented 5 years ago

That latest one is... interesting.

It looks like someone tried to invoke it in a channel where it doesn't have permission to speak.

We need to actually make it record GuildID on these things.

bakert commented 5 years ago
(<Message id=529061833836068884 pinned=False author=<Member id=156691148616761344 name='zinnerzPT' discriminator='0640' bot=False nick='Chcio' guild=>>,)
{}
['!google maps intermarché caldas da rainha']

Reported on discordbot by discord user

Forbidden
FORBIDDEN (status code: 403): Missing Permissions
Stack Trace:

  File "run.py", line 120, in <module>

    run()

  File "run.py", line 17, in run

    bot.init()

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 204, in init

    client.init()

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init

    self.run(configuration.get('token'))

  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run

    loop.run_forever()

  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever

    self._run_once()

  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once

    handle._run()

  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run

    self._callback(*self._args)

  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event

    await coro(*args, **kwargs)

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 46, in on_message

    await command.handle_command(message, self)

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 80, in handle_command

    await send(message.channel, '{author}: I know the command `{cmd}` but encountered an error while executing it.'.format(cmd=parts[0], author=message.author.mention))

  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 873, in send

    return await channel.send(file=file, content=new_s)

  File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 761, in send

    data = await state.http.send_message(channel.id, content, tts=tts, embed=embed, nonce=nonce)

  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 209, in request

    raise Forbidden(r, data)

Exception_hash: 813078f2bfddd56e08d2526d4ba8be657ef24d78
silasary commented 5 years ago

Bot does not have permission to post in the channel it was invoked in?

bakert commented 5 years ago
Bot error on_message

(<Message id=534719859196690433 pinned=False author=<Member id=379195566858698752 name='kirigilis' discriminator='7615' bot=False nick=None guild=>>,)
{}
['[Insidious Will]\nこれこれ']

Labels: discordbot; ValueError
bakert commented 5 years ago

https://github.com/PennyDreadfulMTG/perf-reports/issues/42662

bakert commented 5 years ago
(<Message id=541672086871998467 pinned=False author=<Member id=325744452750802944 name='Swede that likes to Pummel' discriminator='5594' bot=False nick='Sami8s' guild=>>,)
{}
['I really wanted to build a deck with [Guardian Seraph]']

Reported on discordbot by discord user

ValueError
I/O operation on closed file
Stack Trace:

  File "run.py", line 120, in <module>
    run()
  File "run.py", line 17, in run
    bot.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 213, in init
    client.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 33, in init
    self.run(configuration.get('token'))
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run
    loop.run_forever()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever
    self._run_once()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once
    handle._run()
  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event
    await coro(*args, **kwargs)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 49, in on_message
    await command.respond_to_card_names(message, self)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 60, in respond_to_card_names
    await post_cards(client, cards, message.channel, message.author)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 943, in post_cards
    await send_image_with_retry(channel, image_file, text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 959, in send_image_with_retry
    message = await send(channel, file=File(image_file), content=text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 956, in send
    return await channel.send(file=file, content=new_s)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 745, in send
    content=content, tts=tts, embed=embed, nonce=nonce)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 153, in request
    async with self._session.request(method, url, **kwargs) as r:
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 843, in __aenter__
    self._resp = await self._coro
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 357, in _request
    ssl=ssl, proxy_headers=proxy_headers, traces=traces)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 231, in __init__
    self.update_body_from_data(data)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 403, in update_body_from_data
    body = body()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 141, in __call__
    return self._gen_form_data()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 135, in _gen_form_data
    self._writer.append_payload(part)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/multipart.py", line 745, in append_payload
    size = payload.size
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/payload.py", line 284, in size
    return os.fstat(self._value.fileno()).st_size - self._value.tell()

Exception_hash: 84e5f4c7e23fc10701985b1f578164e06350aa47

Labels: discordbot; ValueError
bakert commented 5 years ago
Bot error on_message

(<Message id=545277419314216961 pinned=False author=<Member id=156691148616761344 name='zinnerzPT' discriminator='0640' bot=False nick=None guild=>>,)
{}
['Enshrined Memories is a worse [genesis wave]']

Reported on discordbot by discord user

ValueError
I/O operation on closed file
Stack Trace:

  File "run.py", line 120, in <module>
    run()
  File "run.py", line 17, in run
    bot.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 213, in init
    client.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 33, in init
    self.run(configuration.get('token'))
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run
    loop.run_forever()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever
    self._run_once()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once
    handle._run()
  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event
    await coro(*args, **kwargs)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 49, in on_message
    await command.respond_to_card_names(message, self)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 60, in respond_to_card_names
    await post_cards(client, cards, message.channel, message.author)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 949, in post_cards
    await send_image_with_retry(channel, image_file, text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 965, in send_image_with_retry
    message = await send(channel, file=File(image_file), content=text)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 962, in send
    return await channel.send(file=file, content=new_s)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 745, in send
    content=content, tts=tts, embed=embed, nonce=nonce)
  File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 153, in request
    async with self._session.request(method, url, **kwargs) as r:
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 843, in __aenter__
    self._resp = await self._coro
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 357, in _request
    ssl=ssl, proxy_headers=proxy_headers, traces=traces)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 231, in __init__
    self.update_body_from_data(data)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 403, in update_body_from_data
    body = body()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 141, in __call__
    return self._gen_form_data()
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/formdata.py", line 135, in _gen_form_data
    self._writer.append_payload(part)
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/multipart.py", line 745, in append_payload
    size = payload.size
  File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/payload.py", line 284, in size
    return os.fstat(self._value.fileno()).st_size - self._value.tell()
Exception_hash: babb8ce4d0069d476b6a11a9d81b97128b8b6fc1

Labels: discordbot; ValueError
bakert commented 5 years ago
(<Message id=557526603714920462 pinned=False author=<Member id=202601565649895425 name='Azon' discriminator='7279' bot=False nick=None guild=>>,)
{}
['[thopter]']

Reported on discordbot by discord user

ClientOSError [Errno 104] Connection reset by peer Stack Trace: ``` Python traceback File "run.py", line 125, in run() File "run.py", line 17, in run bot.init() File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 241, in init client.init() File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init self.run(configuration.get('token')) File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run loop.run_forever() File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever self._run_once() File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once handle._run() File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run self._callback(*self._args) File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 221, in _run_event await coro(*args, **kwargs) File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 48, in on_message await command.respond_to_card_names(message, self) File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/command.py", line 51, in respond_to_card_names await message.channel.trigger_typing() File "/home/discord/.local/lib/python3.6/site-packages/discord/abc.py", line 783, in trigger_typing await self._state.http.send_typing(channel.id) File "/home/discord/.local/lib/python3.6/site-packages/discord/http.py", line 153, in request async with self._session.request(method, url, **kwargs) as r: File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 843, in __aenter__ self._resp = await self._coro File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client.py", line 387, in _request await resp.start(conn) File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 748, in start message, payload = await self._protocol.read() File "/home/discord/.local/lib/python3.6/site-packages/aiohttp/streams.py", line 533, in read await self._waiter
</details>
Exception_hash: e8cda67aa4ba763cb5bb4f148e982ffbdc0012cb
bakert commented 4 years ago

None of these are reproducible. They may just be temporary network conditions/the price of doing business. Backlogging this rather than closing it in case we want to figure out some better handling.