aiode

Discord bot that plays Spotify tracks and YouTube videos or any URL including Soundcloud links and Twitch streams

APACHE-2.0 License

Stars
288
Committers
4

Bot releases are hidden (Show)

aiode - botify 1.4.1

Published by robinfriedli over 5 years ago

add support for Spotify albums and various bug fixes and improvements

  • added support for Spotify albums, this includes open.spotify URLs and
    a corresponding argument ($album) to search for albums for the play, add,
    queue and search commands
  • fix repeat behavior when repeat all and shuffle are enabled
    • the random order list was cleared instead of regenerated after the
      last track, resulting in an IndexOutOfBounds
    • the random order is now regenerated when repeat all is enabled and
      the last track has finished
  • change behavior of messages that can't be delivered
    • if a command was entered in a text channel where the bot does not
      have write access the messages just would not be sent, now the
      messages are sent to a different text channel where the bot does
      have write access, if any available.
    • messages sent to a guild and no specific channel now do not only get
      sent to the default or system channel, but if both fail to any
      other channel
  • add some notes that the $youtube, $spotify and $list arguments are
    only required when searching and not when entering a URL
  • fix an error in the VersionUpdateAlertTask
  • move the removal of pending ClientQuestionEvents to a separate
    CommandInterceptor
  • log failed login refreshes
  • do not show the table head in the QueueViewHandler because it looks
    better
aiode - botify 1.4

Published by robinfriedli over 5 years ago

new hibernate db persistence, support for open.spotify URLs, web links to view full botify playlists and the full queue, redesigned command outputs and other major changes

  • created a database persistence layer with hibernate for playlists and
    added a command and playback history that records executed commands
    and their outcome and each played track
    • created startup task to migrate old XML playlists
    • create a task that exports the playlists from the playlists.xml
      file when a new guild joins
  • added http handlers to view full botify playlists and the guild's
    queue online and reorganise existing http handlers
  • added support for open.spotify links
    • Spotify tracks and playlists can now be loaded via their
      open.spotify link
  • redesigned bot output using embedded messages
  • added new analytics command that shows some statistics about the bot
  • added an alert when the bot first starts after updating
  • added CommandInterceptor interface for executing logic before a
    command is executed (for verification, security and command history)
  • help command: show the different categories in different embedded
    messages as they were getting to large and add descriptions to
    categories
  • limited the amount of threads one guild can concurrently load tracks
    with
  • fixed a YouTube API issue where some video titles that contain
    special characters would get formatted incorrectly
    • e.g. "'" would get displayed as "'"
    • load the title from the video item instead of the search result
      item as they seem to get encoded incorrectly
  • added common Exception class for all errors that are the users fault
    and should just be sent to discord for easier organisation
aiode - botify 1.3.2

Published by robinfriedli over 5 years ago

The last release of botify 1.3 before the next major update fixes some remaining issues:

  • Fixed an issue where logging in several times would cause the logout command to malfunction and in some rare cases even break all login related functionality
  • The readability of the help command output has been improved by using embedded messages. The same thing was done to error messages to make them pop more.
  • Improved handling of track loading threads
    • When using the queue command the track loading thread might have been interrupted when loading something else at the same time, cause the queue command to not all items fully.
aiode - botify 1.3.1

Published by robinfriedli over 5 years ago

Fix some issues related to the bot not having enough permissions

  • when the bot was invited to a new guild but did not have the permission to send messages an uncaught exception was thrown when trying to send the name change notification ("Give me a name...") which interrupted the guild join process, meaning no AudioPlayback was set up for the guild, rendering the bot useless for that guild.
  • Exceptions thrown from the lack of permissions when sending a message or changing the bot nickname now all get caught.
  • When the bot does not have permission to change its nickname, the nickname remains but the rename command still works and bot can be referred to with the new name
  • Exceptions thrown when trying to join a private voice channel now get caught and a nicer message is shown to the user
aiode - botify 1.3

Published by robinfriedli over 5 years ago

  • Added support for URLs
    • Play YouTube and SoundCloud tracks and playlists or any other track from the web
    • Add tracks from any URL to a botify playlist
  • The skip and rewind commands can now skip / rewind several tracks at once
  • Designed the login page and created a botify logo
    • Handle error codes being returned by Spotify (e.g. if the user cancels the login)
  • Enforced correct order of command categories shown by the help command
  • Improve command descriptions
aiode - botify 1.2.2

Published by robinfriedli over 5 years ago

  • Add playlist limits
    • There can now be 20 playlists per guild (or in total if mode_partitioned is false, meaning playlists are shared)
    • One playlist can now hold 5000 items
    • These limits can be adjusted or removed by changing or removing the corresponding lines in the settings file
  • JXP has been upgraded to 1.0
    • fixes some issues that occurred when adding several items to a list concurrently, i.e. if the add command was used to add a large YouTube playlist to a local list several times in a short amount of time so that the first command had not been completed
aiode - botify 1.2.1

Published by robinfriedli almost 6 years ago

Handle YouTube playlists with unavailable videos correctly.
Unavailable videos will be skipped when playing, ignored when adding to / creating a local playlist and shown as "[UNAVAILABLE]" when displaying the current queue

aiode - botify 1.2

Published by robinfriedli almost 6 years ago

  • New permission command to manage what roles can use which commands. By default everyone can use each command except for the permission command, which is only available to the guild owner. The guild owner can always use every command.
  • Add shuffle command.
  • Add logout command.
  • Delete list command.
    • The current queue can now be displayed using the queue command: $botify queue
    • YouTube, Spotify and local playlists can now be searched using the search command
  • Add limit argument to commands where YouTube videos or playlists can be search to display a selection of found results. E.g. $botify add $youtube $list $limit=10 cat videos $to cats
  • Organise help command by assigning listed commands to categories.
  • YouTube videos in local playlists that were originally redirected Spotify tracks can now be removed from the list using only the track name, without artist.
  • Add logger.
  • Register command classes as XML contributions and introduce startup tasks to migrate XML configuration.
aiode - botify 1.1.1

Published by robinfriedli almost 6 years ago

Fixed repeat all: An if statement was not negated when it should have been, meaning the queue was repeated when it wasn't supposed to and vice versa.

aiode - botify 1.1

Published by robinfriedli almost 6 years ago

  • Greatly improved performance when playing YouTube or Spotify playlists
  • Added upload command to upload local playlists to Spotify (ignoring YouTube videos in the list)
  • Added repeat command to toggle repeat for the current track or queue
  • Fixed an issue where a duplicate BindableContext got created when the same guild kicked and the re-invited the bot, causing errors when working with local playlists.
aiode - botify 1.0

Published by robinfriedli almost 6 years ago

The first stable release of botify! Features:

  • Playback of Spotify tracks and YouTube videos and playlists
  • Spotify login for playback of user's tracks and playlists
  • Easy queue management with both YouTube videos and Spotify tracks
  • Creation of local playlists with both YouTube videos and Spotify tracks
  • Ability to give the bot a custom name to refer to it
Badges
Extracted from project README
ko-fi