Sound Board Plugin

This is a built-in extension plugin that follows the plugin template system.
This is a fun little plugin that plays 'wav' files in the channel. It's primary purpose is to play short sound clips, but it can also play entire songs.

Usage:

!sb 'file_name': Plays a locally saved audio file.
!sbnow/!sbn 'file_name': Plays a locally save audio file and overrides queueing.
!sbquiet/!sbq 'file_name': Plays a locally saved audio file without displaying what is being played.
!sbquietnow/!sbqn 'file_name': Plays a locally saved audio file without displaying what is being played and overrides queueing.
!sbrandom/!sbr: Plays a random sound clip from the list of available clips.
!sbrandomquiet/!sbrq: Plays a random sound clip from local storage without displaying it to the channel chat.
!sbrandomquietnow/!sbrqn: Plays a random sound clip from local storage without displaying it to the channel chat and overrides the queue to play immediately.
!sbrandomnow/!sbrn: Plays a random sound clip from the list of available clips and overrides queueing.
!sbsearch 'file_name': Finds locally saved audio clips by best match and displays the results in a list.
!sblist/!sbl: Displays the full exhaustive list of all the available sound board clips in a private message.
!sbdownload 'youtube_url' 'file_name': Downloads a sound clip from a youtube link and adds it to the sound board.
!sbdelete 'file_name.extension': Deletes an audio clip from the sound board storage.
Plugin Metadata

    [Plugin Information]
    PluginVersion = 5.0.0
    PluginName = Sound Board
    PluginDescription = The Sound Board plugin allows users to play saved sound clips in the channel.
    PluginLanguage = EN
    PluginCommands: [
                    "sb",
                    "sbnow",
                    "sbquiet",
                    "sbquietnow",
                    "sblist",
                    "sbdownload",
                    "sbsearch",
                    "sbdelete",
                    "sbrandom",
                    "sbrandomquiet",
                    "sbrandomquietnow",
                    "sbrandomnow"
                    ]

    [Plugin Settings]
    ; This allows the sound board plugin to queue sound clips instead of playing them directly. (default=False)
    EnableQueue = True
    ; The maximum number of search results to be shown from the !sbsearch command. (default=5)
    MaxSearchResults = 5
    ; The fuzzy-search threshold between 0 to 100. Higher thresholds result in fewer, but more accurate search results. (default=80)
    ; A search threshold of 0 includes all files.
    FuzzySearchThreshold = 80
    ; List commands that need the core thread to wait for completion.
    ; This may include processes that require multiple commands in succession.
    ; For example: [Youtube Plugin - !yt -> !p] process requires 2 commands in that order.
    ThreadWaitForCommands: []
    UseSingleThread = False

    [Plugin Type]
    ControllablePlugin = True
    AudioPlugin = True
    ImagePlugin = False
    CorePlugin = False
    ExtensionPlugin = True