Giter Site home page Giter Site logo

pogo-discord-mod-bot's People

Contributors

metalhearf avatar nicolasblaye avatar tama avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

pogo-discord-mod-bot's Issues

Environment and CI/CD

Global "issue" to track code related to environment and CI and/or automated builds + tests.

Some kind of alert when the bot is down/not responding

Have some kind of alert(s) when the bot is not online and/or not responding to commands (push notification ? email ?) to be able to see what's wrong quickly.

Ideally, give the administrators some way to manually reboot via some interface (website + login with discord ?)

Command to create an EX raid channel

As a user with enough rights send a specific command in the right channel, the bot should :

  • Create a new channel in a configurable category with specific permissions : no one except people with admin rights & bots & a specific role can read and post inside
  • Create a new role for this channel

An admin can then use another command to set the role to someone and grant it access to read/write in the channel

Bonus : Automatically delete the channel and the role once the EX raid is done

Add project status and coverage to readme

Thanks to travis, we could add badges like the status of the project or the coverage to the readme. This is a nice touch as it will motivate us to have a better coverage.

Logs

Have the bot log everything it received and did for analysis purposes (Commands received, errors encountered...)

Revamp raid announcement format

The query should be easier to use, notably for phone user

We should:

  • clear double space by itself
  • take care of the @ issue (sometimes, the auto-correct on the phone places a space after a @)
  • fix formatting for hours (9h10 should work)

That's all I can think of for now, I am sure we could find other small issue that would greatly improve the announcement feature

Use mocks to test critical path

The test coverage is (probably) bad, and some bugs can't be catched with only unit tests. We should implement a mocking strategy to test the commonly used command so that we can never break it.

Delete the expired raid commands after some time

To avoid cluttering the channels where all the commands are sent, have some command to clean the old commands (more than X hours/minutes old ?), or some script that can be launched every night automatically.

Bonus : configurable "expiration time" by server, and discord admins can choose to opt-out if they don't need it

Mimic chat bot interaction for raid creation

When a user gives an ambiguous name for a gym, we answer with all the possibilities. Maybe we can implement these possibilities as clickable button, that would create the corresponding raid?

  1. Make buttons for all arena + one for none of the above
    2a. Pressing a button will send a !raid message with the correct information
    2b. Pressing a button will remove the message

Add new date format

I've seen some people use the @h format, truncating the minutes. It's an edge case but it's really easy to add

bot crash

it crash after 1 minute

(bot-env) root@59997-53573:/home/pogo-discord-mod-bot/mod_bot# python3 main.py
reading configuration
on_ready
{}
Traceback (most recent call last):
File "main.py", line 443, in
loop.run_until_complete(asyncio.gather(run(token), modtask()))
File "/usr/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
return future.result()
File "main.py", line 296, in modtask
warn_interval = int(get(server.id, "mod.warn_interval", conf))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.