2021-04-07 18:41:07 +02:00
2021-04-07 18:41:07 +02:00
2021-04-07 18:41:07 +02:00
2021-03-16 12:17:28 +01:00
2021-03-17 00:39:04 +01:00
2021-04-07 15:09:10 +02:00
2021-01-06 12:09:10 +01:00

Python Version >= 3.7 Scc Count Badge Language grade: Python Total alerts Discord Bots

Discord Analyst

📈 Gives you precisions you never asked for.

preview

All commands

* %help (command) - info about commands
* %info - version and uptime
* %scan - full analysis
* %freq - frequency analysis
* %compo - composition analysis
* %pres - presence analysis
* %first - read first message
* %rand - read a random message
* %last - read last message
* %emojis - rank emotes by their usage
  * arguments:
    * <n> - top <n> emojis, default is 20
    * all - list all common emojis in addition to this guild's
    * members - show top member for each emote
    * sort:usage/reaction - other sorting methods
* %mentions - rank mentions by their usage
  * arguments:
    * <n> - top <n> mentions, default is 10
    * all - show role/channel/everyone/here mentions
* %mentioned - rank specific user mentions by their usage
  * arguments:
    * <n> - top <n> mentions, default is 10
* %msg - rank users by their messages
  * arguments:
    * <n> - top <n> messages, default is 10
* %chan - rank channels by their messages
  * arguments:
    * <n> - top <n> channels, default is 10
* %react - rank users by their reactions
  * arguments:
    * <n> - top <n> messages, default is 10
* %words - rank words by their usage
  * arguments:
    * <n> - top <n> words, default is 10
* %cancel - cancel current analysis (not launched with fast)

* Common arguments:
    * @member/me: filter for one or more member
    * #channel/here: filter for one or more channel
    * all/everyone - include bots messages
    * fast: only read cache
    * fresh: does not read cache

Running this bot

1. Install requirements

pip3 install -r requirements.txt

2. Make a .env file as following

#.env
DISCORD_TOKEN=<bot token from discordapp.com/developers>

3.Invite bot in your discord server

Generate and use the OAuth2 link in discordapp.com/developers to invite it.

You will need:

  • Scopes:
    • bot
  • Bot Permissions:
    • View Channels
    • Send Messages
    • Read Message History

4. Launch bot

python3 src/main.py
  • View Channels
  • Read Message History
  • Send Messages

On large servers, you should disable "Send Messages" and enable it on an read-only channel where only administrators can launch commands. The bot can't be triggered elsewhere if it can't answer.

Already hosted bot

Discord Bots

Changelog

  • v1.12
    • more scans: %words
    • concurrent fast analysis
    • assume fast if last analysis is fresh
  • v1.11
    • more scans: %first, %rand, %last
    • streak computing in %pres
  • v1.10
    • multithreading for queries
    • bug fix
  • v1.9:
    • all/everyone to include bots in scans
    • fresh to not use previously cached data
    • bug fix
  • v1.8:
    • more scans: %msg, %chan
    • bug fix
  • v1.7:
    • emojis percents
    • emojis other sorting
    • mentions/mentioned ranking
    • %cancel
  • v1.6:
    • more scans: %scan, %freq, %compo, %pres
    • huge bug fix
  • v1.5:
    • top emotes
    • bug fix
  • v1.4:
    • integrate miniscord
    • insane speed with bot-side logging
    • bug fix
  • v1.3: revert to v1.1 and update requirements
  • v1.2: don't quit on occasional exception
  • v1.1:
    • coma separator for big numbers
    • history loading by chunks for big channels (performance increase)
    • bug fix
  • v1.0: stable release
S
Description
📈 Gives you precisions you never asked for.
Readme GPL-3.0 558 KiB
Languages
Python 99.8%
Dockerfile 0.2%