A plugin-based All-In-One mumble bot solution in python 3.7+ with extensive features and support for custom plugins.
GPL-3.0 License
Published by DuckBoss over 5 years ago
The Pseudo-GUI system is a graphical overhaul to the way the bot writes messages in the mumble server.
Previously, the bot used to simply echo text to the server for it to display.
With this update, the bot generates a pseudo graphical user interface by manipulating html tags!
EXAMPLE:
OLD:
In version 1.7.x, a !help command may look like this:
> user: !echo help
> (Channel)DuckBot:
NEW:
In version 1.8.x, a !help command will look like this:
> user: !echo help
> (Channel)DuckBot:
ANOTHER EXAMPLE:
OLD:
In version 1.7.x, a !about command may look like this:
> user: !about
> (Channel)DuckBot:
NEW:
In version 1.8.x, a !about command will look like this:
> user: !about
> (Channel)DuckBot:
!imglist
command to private message instead of channel message!imglist_echo
command to channel message the list of available sound board clipsPublished by DuckBoss over 5 years ago
!yt
- youtube search command!p
- youtube play command!stream
- direct youtube link stream command!v
- youtube volume commandPublished by DuckBoss over 5 years ago
Published by DuckBoss over 5 years ago
!reboot
command which will stop the bot completely and restart it.!restart
as an alias to the new command !reboot
!reboot
to the bot_commands_privileges.csv file with a minimum of admin user privileges by default.!reboot
to the bot_commands help data.Published by DuckBoss over 5 years ago
TL;DR: This youtube plugin update removes the need to download videos before playing them and instead streams them directly to the channel. End-users will not notice any differences in functionality but it is a lot more streamlined and optimized.
!stream
command functionality has been brought to the !link
command and the !stream
command has been removed. This is because they both basically do the same thing. Except now, the !link
command will stream youtube videos instead of downloading them first. This is all back-end work so the end user will not notice a difference between the old !link
command and the reworked !link
command.Since the removal of the !stream
command may be confusing to some users, I made it an alias to the !link
command so it won't be an issue. Feel free to remove this alias in your aliases csv file if you don't need it.
Example Usage:
> (Channel) User: !stream my_youtube_link
> (Channel) JJMumbleBot: Stream link given: my_youtube_link
JJMumbleBot takes the user's link and adds it to the queue.
TL;DR: Added a tracker to keep track of commands inputted by users: !history
The bot will now keep track of the last few commands inputted by users which can be displayed at runtime with the !history
command.
Example Usage:
> (Channel) User: !history
> (Channel) JJMumbleBot:
> Command History:
> [0] !history
> [1] !link blablabla
> [2] !p 4
> [3] !yt blablabla
Published by DuckBoss over 5 years ago
The logging system will now correctly log bot events.
Reminder from v1.6.2 release notes:
With v1.7.0 I plan on removing the current download system to play youtube videos and instead migrate to a fully streaming pattern so that no videos are downloaded. This future change will not be noticeable to any users and will be a purely back-end design change. I will create a legacy branch so that users that wish to use the download-system can still use it.
Published by DuckBoss over 5 years ago
The youtube plugin can now stream youtube videos instead of downloading it first by using the !stream
command.
Usage:
!stream 'youtube_url'
--> Adds the youtube video to the queue.
This won't download the video and will instead stream it when it is being played.
Note: Youtube live streams are currently not supported. Only uploaded videos can be streamed.
NOTE: With v1.7.0 I plan on removing the current download system to play youtube videos and instead migrate to a fully streaming pattern so that no videos are downloaded. This future change will not be noticeable to any users and will be a purely back-end design change. I will create a legacy branch so that users that wish to use the download-system can still use it.
!skip
alias to correctly redirect to the !next
command.!replay
command to properly replay the last played track.Published by DuckBoss over 5 years ago
Published by DuckBoss over 5 years ago
Since there are many updates, I will be splitting up the major updates into sections.
Note: This update will require reconfiguring the config.ini file and updating custom plugins to fit the new requirements.
!echo
command can be reconfigured so that only elevated users or higher can use it through the bot_commands_privileges.csv file.priv_path
string variable that holds the directory path to the plugin's respective user privilege csv file. This user privilege csv file will be used to determine if a user can execute an entered command.youtube
plugin now has a youtube_privileges.csv
file in the youtube submodule.!v
will function the same as it did before, but it is now an alias to the full command !volume
.!blacklist badperson123 because you are bad!
badperson123
with the reason because you are bad!
This was a large update, so any information I might have missed will be in these commit notes:
https://github.com/DuckBoss/JJMumbleBot/commit/55ace600167d9b1c62fe91fae4477044248c226a
https://github.com/DuckBoss/JJMumbleBot/commit/e03d298b119800d5260b86e6cdcc933c61739ef9
Published by DuckBoss over 5 years ago
!sbdownload 'url_link' 'file_name'
!sbdownload https://youtu.be/dQw4w9WgXcQ sound_clip
--> Saves the given youtube clip as sound_clip.wav!sbdelete 'file_name.wav'
!sbdelete my_sound.wav
!sblist
. The command !sbl
has been included which will just be a short form of !sblist
. Both commands serve the same purpose.-quiet
--> Prevents displaying of regular logging prints to the console. This will keep the console window clean. It is ideal for a headless server.-verbose
--> Will display extra information during runtime about various processes. This will show extra information like the initialization of plugins, plugin callbacks, etc.!aliases
command.Published by DuckBoss over 5 years ago
!version ; !about
--> This multi-command input will display the version, and about information.!alias botinfo !version | !about
--> This command will register the alias as botinfo.!botinfo
--> Now you can call this registered alias as a command, hence shortening the command call!
Please check the wiki for more information on the alias system and alias commands:
https://github.com/DuckBoss/JJMumbleBot/wiki/Aliases
Published by DuckBoss over 5 years ago
Built-in audio plugin commands now work with the multi-command input system released in v1.5.0
For example, this multi-command is now allowed: !yt jazz music ; !p 3 ; !link youtube_song_url
The example command searches youtube for jazz music, plays the 3rd search result automatically, and adds another youtube song (provided by a direct url) into the queue.
JJMumbleBot now handles commands in individual threads for faster processing. This means that commands entered as a multi-command input will no longer be held back by slower commands in the queue!
!sleep 'seconds'
Published by DuckBoss over 5 years ago
!link 'youtube_link'
Published by DuckBoss over 5 years ago
Published by DuckBoss over 5 years ago
Published by DuckBoss over 5 years ago
Published by DuckBoss over 5 years ago
This update focuses mostly on optimizations.
All Changes:
Published by DuckBoss over 5 years ago
Major Changes:
Published by DuckBoss over 5 years ago
Major Changes:
This version includes a hotfix to log/config files.
All Changes/Updates:
NOTICE:
This update will require re-configuring your config file using the new config.ini
Check this quick start guide for more information on the new config files. It should be straightforward.
The Wiki has been updated to reflect all these changes/updates.
Published by DuckBoss over 5 years ago