Git Product home page Git Product logo

teapot.py's Introduction

banner

GitHub License GitHub Issues GitHub Pull Requests GitHub Stars Teapot.py

Discord Server

This project is currently in development!

If you would like to be notified when we commit, please watch this repository and join our Discord server.

๐Ÿ‘‹ About

Teapot.py is an open-source Discord bot that aims to be as customizable as possible as well as providing essential tools for server administrators to run their Discord server!

If you want to try it out by yourself, feel free to invite it to your Discord server by clicking Here!

โŒจ Planned Features

  • Music Player
  • Moderation Tools
  • Localization
  • Fun Commands

๐Ÿ“– Wiki

Our wiki is currently work in progress, please check back later!

๐Ÿค Contributing

Contributions, feedback, and bug reports are welcome! Feel free to check out our issues page to find out what you could do!

Before contributing, we recommend you say hi over in our Discord server! We can provide support with any issues you may have ๐Ÿ™‚

A big thanks to all those who contribute to the project โค

๐Ÿ’ผ Project Owners

There are two owners for this project. They all contribute massively to the running of this project. Links to their GitHub profiles can be found below:

๐Ÿ“œ Requirements

These are the requirements for the bot.

๐Ÿ’– Credits

The projects listed in below have provided inspiration, and we thought we'd mention them:

teapot.py's People

Contributors

colaian avatar dependabot-preview[bot] avatar dependabot[bot] avatar dremixbotdev avatar redteadev avatar rjdj0261 avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

teapot.py's Issues

[BUG] Support the latest version of discord.py

As the development process of this repository was halted and temporarily discontinued when discord.py was abandoned and archived, our current code base has not been keeping up with the latest discord.py changes required due to discord internal api updates. We are currently looking for contributors that can help with the process as our team is focusing on a Java version of the bot and do not currently have the capacity of maintaining this repository.

[BUG] it auto disconnect

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. /tp p (song)
  2. it disconnect by itself

Expected behavior
A clear and concise description of what you expected to happen.
will play the song to the end then disconnect, not only play half then disconnect

Screenshots
If applicable, add screenshots to help explain your problem.

Teapot.py Public (please complete the following information):

  • Teapot.py Version: 0.0.1.6

Self-Hosted (please complete the following information):

  • Teapot.py Version: 0.0.1.6
  • Server Operating System: Linux 5.4.0-42-generic
  • Database Version: mysql

Additional context
Add any other context about the problem here [e.g. error logs, crash logs, etc...].

[BUG] Music does not play

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Play a music
  2. Doesn't play music

Expected behavior
It should play music normally

Screenshots
image

Teapot.py Public (please complete the following information):

  • Teapot.py Version: 0.0.1.5

Self-Hosted (please complete the following information):

  • Teapot.py Version: 0.0.1.5
  • Server Operating System: Linux 4.4.0-1066-aws
  • Database Version: MYSQL

Additional context

2020-06-19T13:14:14.568480+00:00 app[worker.1]:     await self.ensure_voice(ctx)
2020-06-19T13:14:14.568507+00:00 app[worker.1]:   File "/app/teapot/cogs/music.py", line 283, in ensure_voice
2020-06-19T13:14:14.568507+00:00 app[worker.1]:     if not player.is_connected:
2020-06-19T13:14:14.568546+00:00 app[worker.1]: UnboundLocalError: local variable 'player' referenced before assignment


[FEATURE] Containerization with Docker (maybe also docker-compose)

Is your feature request related to a problem? Please describe.
Easiest to install, run and test the bot locally.

Describe the solution you'd like
Just put all into Docker image and orchestrate with docker-compose.

Describe alternatives you've considered
Just docker bro.

Additional context
Nothing.

[ENHANCEMENT] Use cogs for commands

async def on_ready():

Many commands and events in this project does not use cogs. Usage of cogs is recommended. And also don't load commands in on_ready event when you are not using cogs.

The on_ready event may be called multiple times during the execution of the bot. When called multiple times, errors are raised if you load commands in on_ready event.

The Discord API says,

This function is not guaranteed to be the first event called. Likewise, this function is not guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails.

Note: You may need to rewrite large portions of this bot to fix this issue. Make sure to test everything works in your cogs before adding them to github.

Sources:

  1. Official discord.py docs: https://discordpy.readthedocs.io/en/latest/api.html#discord.on_ready

[FEATURE] AI functionalities with the OpenAI API (ChatGPT)

I would like to work on the AI functionalities

I have a lot of experience with APIs, hence AI. I'd like to work on the feature as my first contribution.

Here's what the features the bot should have related to AI

  • Customizable AI prompts (making your own behaviors for the bot via commands)
  • Remembering past prompts via SQL or other technologies.
  • Option to customize length of answers and how diverse responses will be.

In summary, the goal is to create a fully customizable AI system in the bot.

[FEATURE] Playlist Size Limit

Is your feature request related to a problem? Please describe.
Frequent Youtube rate limit in the public version of teapot.py

Describe the solution you'd like
Add an env option to limit playlist size

[BUG] package name and variable name overlap

Describe the bug
package name and variable name overlap

Screenshots
From: Teapot.py/teapot/__init__.py
image

Teapot.py Public (please complete the following information):

Additional context
Add any other context about the problem here [e.g. error logs, crash logs, etc...].

[ENHANCEMENT] Switch from requests to aiohttp

The requests library is not async and therefore blocking. This means that if 2 users run a command that uses requests, at the same time, it will take longer for the bot to respond to the second user than the first.

However, aiohttp is not blocking, which means that if 2 users execute the same command using the aiohttp library instead of requests, the bot will respond to both users at approximately the same time.

Therefore, I highly recommend switching from the requests library to aiohttp, or any other async library.

[BUG] Music does not play after bot is forcely disconnected

Describe the bug
Music does not play after bot is forcely disconnected.

To Reproduce
Steps to reproduce the behavior:

  1. Right click the bot and disconnect it
  2. Play a music
  3. Bot joins
  4. Doesn't play music

Expected behavior
It should play music normally even after forcely disconnected.

Teapot.py Public (please complete the following information):

  • Teapot.py Version: 1.0.0.5

[FEATURE] Update Packages

Use py-cord instead of discord.py.

I agree that discord.py is the oldest discord api wrapper for python. But the time when discord.py announced for its decline then many new wrappers came, one of them is py-cord it's slightly fast, significant & easy slash_commands creation. Also you will find many new dc features are easy to make in py-cord. (discord.py is alive now, still I will prefer py-cord)

I wanna contribute here.

As it is using discord.py. I'm not familiar with this package. Yeah, I used discord.py still I am more comfortable in py-cord as in case of slash_commands I always use py-cord.

[BUG] bot do not search anything

Describe the bug
A clear and concise description of what the bug is.

the bot does not search for anything

To Reproduce
Steps to reproduce the behavior:

  1. /tp play [anything]
  2. return nothing found

Expected behavior
A clear and concise description of what you expected to happen.
should search for something

Screenshots
If applicable, add screenshots to help explain your problem.
image

Teapot.py Public (please complete the following information):

  • Teapot.py Version: 0.0.1.6

Self-Hosted (please complete the following information):

  • Teapot.py Version: a public version of the teapot
  • Server Operating System: Linux 4.4.0-1074-aws
  • Database Version: MYSQL

Additional context
Add any other context about the problem here [e.g. error logs, crash logs, etc...].

player.node.get_tracks(query) return: {'playlistInfo': {}, 'loadType': 'NO_MATCHES', 'tracks': []}

[BUG] hi

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:
1.
2.
3.
4.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Teapot.py Public (please complete the following information):

  • Teapot.py Version: [e.g. 0.0.1.1, etc...]

Self-Hosted (please complete the following information):

  • Teapot.py Version: [e.g. 0.0.1.1, etc...]
  • Server Operating System: [e.g. Ubuntu 18.04, Windows 10 Pro Build 18363, etc...]
  • Database Version: [e.g. MySQL, MariaDB 10, etc...]

Additional context
Add any other context about the problem here [e.g. error logs, crash logs, etc...].

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.