{"id":334,"date":"2026-04-25T11:52:23","date_gmt":"2026-04-25T11:52:23","guid":{"rendered":"https:\/\/www.caster.fm\/help\/?post_type=ht_kb&#038;p=334"},"modified":"2026-04-25T14:56:06","modified_gmt":"2026-04-25T14:56:06","slug":"streaming-panel-user-manual","status":"publish","type":"ht_kb","link":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/","title":{"rendered":"Streaming Panel User Manual"},"content":{"rendered":"    \r\n    \r\n    \r\n    \r\n\r\n<div id=\"wpj-jtoc\" class=\"wpj-jtoc wpj-jtoc--main  --jtoc-the-content --jtoc-theme-hero --jtoc-title-align-left --jtoc-toggle-icon --jtoc-toggle-position-right --jtoc-toggle-1 --jtoc-has-numeration --jtoc-num-badge --jtoc-num-badge-soft --jtoc-header-as-toggle --jtoc-headings-full-row-clickable --jtoc-dynamic-mode --jtoc-collapsible-headings --jtoc-widget-floating --jtoc-floating-toc-top --jtoc-floating-has-shadow --jtoc-floating-mode-dynamic --jtoc-has-custom-styles --jtoc-is-unfolded --jtoc-animate --jtoc-align-left\" >\r\n                        <!-- Floating Widget -->\r\n            <div class=\"wpj-jtoc--widget-floating --jtoc-is-hidden\">\r\n                <div class=\"wpj-jtoc--widget-floating-main\">\r\n                    <div class=\"wpj-jtoc--current-heading\"><\/div>                    <!-- <div class=\"wpj-jtoc--widget-floating-content\">\r\n                        <span class=\"wpj-jtoc--widget-floating-title\">Table of contents<\/span>\r\n                    <\/div> -->\r\n                <\/div>\r\n                <div class=\"wpj-jtoc--toc\">\r\n                                                            <div class=\"wpj-jtoc--body\"><\/div>\r\n                                    <\/div>\r\n                <div class=\"wpj-jtoc--widget-floating-close-btn\">\r\n                    <div class=\"wpj-jtoc--close\"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n            \r\n    <!-- TOC -->\r\n        <div class=\"wpj-jtoc--toc wpj-jtoc--toc-inline \" >\r\n                            <div class=\"wpj-jtoc--header\">\r\n                <div class=\"wpj-jtoc--header-main\">\r\n                                        <div class=\"wpj-jtoc--title --has-icon\">\r\n                                                    <div class=\"title-icon\">\r\n                                <svg style=\"width: 20px; height: 20px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-align-left\"><path d=\"M15 12H3\" \/><path d=\"M17 18H3\" \/><path d=\"M21 6H3\" \/><\/svg>                            <\/div>\r\n                                                <span class=\"wpj-jtoc--title-label\">Table of contents<\/span>\r\n                    <\/div>\r\n                                                                <div class=\"wpj-jtoc--toggle-wrap\">\r\n                                                                                                                    <div class=\"wpj-jtoc--toggle-box\">\r\n                                    <div class=\"wpj-jtoc--toggle\"><\/div>\r\n                                <\/div>\r\n                                                    <\/div>\r\n                                    <\/div>\r\n            <\/div>\r\n                        <div class=\"wpj-jtoc--body\">\r\n                        <nav class=\"wpj-jtoc--nav\">\r\n                <ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--1--><\/span>        <a href=\"#getting-started\"  title=\"Getting Started\" data-numeration=\"1\">Getting Started<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--1.1--><\/span>        <a href=\"#logging-in\"  title=\"Logging In\" data-numeration=\"1.1\">Logging In<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--1.2--><\/span>        <a href=\"#navigating-the-dashboard\"  title=\"Navigating the Dashboard\" data-numeration=\"1.2\">Navigating the Dashboard<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--1.3--><\/span>        <a href=\"#understanding-the-sidebar-menu\"  title=\"Understanding the Sidebar Menu\" data-numeration=\"1.3\">Understanding the Sidebar Menu<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2--><\/span>        <a href=\"#station-overview\"  title=\"Station Overview\" data-numeration=\"2\">Station Overview<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2.1--><\/span>        <a href=\"#now-playing\"  title=\"Now Playing\" data-numeration=\"2.1\">Now Playing<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.1.1--><\/span>        <a href=\"#playing-next\"  title=\"Playing Next\" data-numeration=\"2.1.1\">Playing Next<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.1.2--><\/span>        <a href=\"#live-broadcast-indicator\"  title=\"Live Broadcast Indicator\" data-numeration=\"2.1.2\">Live Broadcast Indicator<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.1.3--><\/span>        <a href=\"#listener-count\"  title=\"Listener Count\" data-numeration=\"2.1.3\">Listener Count<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.1.4--><\/span>        <a href=\"#quick-actions\"  title=\"Quick Actions\" data-numeration=\"2.1.4\">Quick Actions<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.2--><\/span>        <a href=\"#schedule\"  title=\"Schedule\" data-numeration=\"2.2\">Schedule<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2.3--><\/span>        <a href=\"#streams\"  title=\"Streams\" data-numeration=\"2.3\">Streams<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.3.1--><\/span>        <a href=\"#local-streams-mount-points\"  title=\"Local Streams (Mount Points)\" data-numeration=\"2.3.1\">Local Streams (Mount Points)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.3.2--><\/span>        <a href=\"#remote-relays\"  title=\"Remote Relays\" data-numeration=\"2.3.2\">Remote Relays<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.3.3--><\/span>        <a href=\"#hls-http-live-streaming\"  title=\"HLS (HTTP Live Streaming)\" data-numeration=\"2.3.3\">HLS (HTTP Live Streaming)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.3.4--><\/span>        <a href=\"#playlist-downloads\"  title=\"Playlist Downloads\" data-numeration=\"2.3.4\">Playlist Downloads<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2.4--><\/span>        <a href=\"#public-pages\"  title=\"Public Pages\" data-numeration=\"2.4\">Public Pages<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.4.1--><\/span>        <a href=\"#available-actions\"  title=\"Available Actions\" data-numeration=\"2.4.1\">Available Actions<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.5--><\/span>        <a href=\"#song-requests\"  title=\"Song Requests\" data-numeration=\"2.5\">Song Requests<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.6--><\/span>        <a href=\"#streamersdjs\"  title=\"Streamers\/DJs\" data-numeration=\"2.6\">Streamers\/DJs<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2.7--><\/span>        <a href=\"#broadcasting-service\"  title=\"Broadcasting Service\" data-numeration=\"2.7\">Broadcasting Service<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.7.1--><\/span>        <a href=\"#credentials-broadcasting-permission-required\"  title=\"Credentials (Broadcasting Permission Required)\" data-numeration=\"2.7.1\">Credentials (Broadcasting Permission Required)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.7.2--><\/span>        <a href=\"#service-controls\"  title=\"Service Controls\" data-numeration=\"2.7.2\">Service Controls<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--2.8--><\/span>        <a href=\"#autodj-service\"  title=\"AutoDJ Service\" data-numeration=\"2.8\">AutoDJ Service<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--2.8.1--><\/span>        <a href=\"#service-controls-broadcasting-permission-required\"  title=\"Service Controls (Broadcasting Permission Required)\" data-numeration=\"2.8.1\">Service Controls (Broadcasting Permission Required)<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3--><\/span>        <a href=\"#media-management\"  title=\"Media Management\" data-numeration=\"3\">Media Management<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.1--><\/span>        <a href=\"#browsing-music-files\"  title=\"Browsing Music Files\" data-numeration=\"3.1\">Browsing Music Files<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.1.1--><\/span>        <a href=\"#optional-columns\"  title=\"Optional Columns\" data-numeration=\"3.1.1\">Optional Columns<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.1.2--><\/span>        <a href=\"#navigation\"  title=\"Navigation\" data-numeration=\"3.1.2\">Navigation<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.1.3--><\/span>        <a href=\"#storage-quota\"  title=\"Storage Quota\" data-numeration=\"3.1.3\">Storage Quota<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.2--><\/span>        <a href=\"#uploading-media\"  title=\"Uploading Media\" data-numeration=\"3.2\">Uploading Media<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.3--><\/span>        <a href=\"#editing-song-metadata\"  title=\"Editing Song Metadata\" data-numeration=\"3.3\">Editing Song Metadata<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.1--><\/span>        <a href=\"#basic-information\"  title=\"Basic Information\" data-numeration=\"3.3.1\">Basic Information<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.2--><\/span>        <a href=\"#playlists\"  title=\"Playlists\" data-numeration=\"3.3.2\">Playlists<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.3--><\/span>        <a href=\"#album-art\"  title=\"Album Art\" data-numeration=\"3.3.3\">Album Art<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.4--><\/span>        <a href=\"#custom-fields\"  title=\"Custom Fields\" data-numeration=\"3.3.4\">Custom Fields<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.5--><\/span>        <a href=\"#visual-cue-editor\"  title=\"Visual Cue Editor\" data-numeration=\"3.3.5\">Visual Cue Editor<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.3.6--><\/span>        <a href=\"#advanced\"  title=\"Advanced\" data-numeration=\"3.3.6\">Advanced<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.4--><\/span>        <a href=\"#organizing-files-and-folders\"  title=\"Organizing Files and Folders\" data-numeration=\"3.4\">Organizing Files and Folders<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.4.1--><\/span>        <a href=\"#creating-a-new-folder\"  title=\"Creating a New Folder\" data-numeration=\"3.4.1\">Creating a New Folder<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.4.2--><\/span>        <a href=\"#renaming-files-or-folders\"  title=\"Renaming Files or Folders\" data-numeration=\"3.4.2\">Renaming Files or Folders<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.4.3--><\/span>        <a href=\"#moving-files\"  title=\"Moving Files\" data-numeration=\"3.4.3\">Moving Files<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.5--><\/span>        <a href=\"#bulk-actions\"  title=\"Bulk Actions\" data-numeration=\"3.5\">Bulk Actions<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.5.1--><\/span>        <a href=\"#add-to-playlists\"  title=\"Add to Playlists\" data-numeration=\"3.5.1\">Add to Playlists<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.5.2--><\/span>        <a href=\"#other-bulk-actions-via-the-more-dropdown\"  title=\"Other Bulk Actions (via the &quot;More&quot; dropdown)\" data-numeration=\"3.5.2\">Other Bulk Actions (via the &#8220;More&#8221; dropdown)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.5.3--><\/span>        <a href=\"#delete\"  title=\"Delete\" data-numeration=\"3.5.3\">Delete<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.6--><\/span>        <a href=\"#special-file-views\"  title=\"Special File Views\" data-numeration=\"3.6\">Special File Views<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.6.1--><\/span>        <a href=\"#duplicate-songs\"  title=\"Duplicate Songs\" data-numeration=\"3.6.1\">Duplicate Songs<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.6.2--><\/span>        <a href=\"#unprocessable-files\"  title=\"Unprocessable Files\" data-numeration=\"3.6.2\">Unprocessable Files<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.6.3--><\/span>        <a href=\"#unassigned-files\"  title=\"Unassigned Files\" data-numeration=\"3.6.3\">Unassigned Files<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.7--><\/span>        <a href=\"#sftp-users\"  title=\"SFTP Users\" data-numeration=\"3.7\">SFTP Users<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.7.1--><\/span>        <a href=\"#creating-an-sftp-user\"  title=\"Creating an SFTP User\" data-numeration=\"3.7.1\">Creating an SFTP User<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--3.8--><\/span>        <a href=\"#bulk-media-importexport-csv\"  title=\"Bulk Media Import\/Export (CSV)\" data-numeration=\"3.8\">Bulk Media Import\/Export (CSV)<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.8.1--><\/span>        <a href=\"#exporting-to-csv\"  title=\"Exporting to CSV\" data-numeration=\"3.8.1\">Exporting to CSV<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--3.8.2--><\/span>        <a href=\"#importing-from-csv\"  title=\"Importing from CSV\" data-numeration=\"3.8.2\">Importing from CSV<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--4--><\/span>        <a href=\"#playlists-1\"  title=\"Playlists\" data-numeration=\"4\">Playlists<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--4.1--><\/span>        <a href=\"#playlist-table\"  title=\"Playlist Table\" data-numeration=\"4.1\">Playlist Table<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.1.1--><\/span>        <a href=\"#status-badges\"  title=\"Status Badges\" data-numeration=\"4.1.1\">Status Badges<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--4.2--><\/span>        <a href=\"#creating-a-playlist\"  title=\"Creating a Playlist\" data-numeration=\"4.2\">Creating a Playlist<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.2.1--><\/span>        <a href=\"#basic-info\"  title=\"Basic Info\" data-numeration=\"4.2.1\">Basic Info<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.2.2--><\/span>        <a href=\"#song-based-playlist-options\"  title=\"Song-Based Playlist Options\" data-numeration=\"4.2.2\">Song-Based Playlist Options<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.2.3--><\/span>        <a href=\"#playlist-types\"  title=\"Playlist Types\" data-numeration=\"4.2.3\">Playlist Types<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.2.4--><\/span>        <a href=\"#song-playback-order\"  title=\"Song Playback Order\" data-numeration=\"4.2.4\">Song Playback Order<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.2.5--><\/span>        <a href=\"#remote-url-playlist-options\"  title=\"Remote URL Playlist Options\" data-numeration=\"4.2.5\">Remote URL Playlist Options<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--4.3--><\/span>        <a href=\"#schedule-1\"  title=\"Schedule\" data-numeration=\"4.3\">Schedule<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.3.1--><\/span>        <a href=\"#adding-a-schedule-entry\"  title=\"Adding a Schedule Entry\" data-numeration=\"4.3.1\">Adding a Schedule Entry<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.4--><\/span>        <a href=\"#advanced-options\"  title=\"Advanced Options\" data-numeration=\"4.4\">Advanced Options<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--4.5--><\/span>        <a href=\"#managing-playlist-contents\"  title=\"Managing Playlist Contents\" data-numeration=\"4.5\">Managing Playlist Contents<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.5.1--><\/span>        <a href=\"#reordering-songs\"  title=\"Reordering Songs\" data-numeration=\"4.5.1\">Reordering Songs<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.5.2--><\/span>        <a href=\"#importing-from-plsm3u\"  title=\"Importing from PLS\/M3U\" data-numeration=\"4.5.2\">Importing from PLS\/M3U<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.5.3--><\/span>        <a href=\"#viewing-the-playback-queue\"  title=\"Viewing the Playback Queue\" data-numeration=\"4.5.3\">Viewing the Playback Queue<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.5.4--><\/span>        <a href=\"#emptying-a-playlist\"  title=\"Emptying a Playlist\" data-numeration=\"4.5.4\">Emptying a Playlist<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.5.5--><\/span>        <a href=\"#reshuffling-a-playlist\"  title=\"Reshuffling a Playlist\" data-numeration=\"4.5.5\">Reshuffling a Playlist<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.6--><\/span>        <a href=\"#duplicating-a-playlist\"  title=\"Duplicating a Playlist\" data-numeration=\"4.6\">Duplicating a Playlist<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.7--><\/span>        <a href=\"#applying-a-playlist-to-folders\"  title=\"Applying a Playlist to Folders\" data-numeration=\"4.7\">Applying a Playlist to Folders<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.8--><\/span>        <a href=\"#exporting-playlists\"  title=\"Exporting Playlists\" data-numeration=\"4.8\">Exporting Playlists<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--4.9--><\/span>        <a href=\"#enabling-and-disabling-playlists\"  title=\"Enabling and Disabling Playlists\" data-numeration=\"4.9\">Enabling and Disabling Playlists<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--5--><\/span>        <a href=\"#podcasts\"  title=\"Podcasts\" data-numeration=\"5\">Podcasts<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--5.1--><\/span>        <a href=\"#podcast-list\"  title=\"Podcast List\" data-numeration=\"5.1\">Podcast List<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.1.1--><\/span>        <a href=\"#status-badges-1\"  title=\"Status Badges\" data-numeration=\"5.1.1\">Status Badges<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--5.2--><\/span>        <a href=\"#creating-a-podcast\"  title=\"Creating a Podcast\" data-numeration=\"5.2\">Creating a Podcast<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.2.1--><\/span>        <a href=\"#basic-information-1\"  title=\"Basic Information\" data-numeration=\"5.2.1\">Basic Information<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.2.2--><\/span>        <a href=\"#source\"  title=\"Source\" data-numeration=\"5.2.2\">Source<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.2.3--><\/span>        <a href=\"#branding\"  title=\"Branding\" data-numeration=\"5.2.3\">Branding<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.2.4--><\/span>        <a href=\"#artwork\"  title=\"Artwork\" data-numeration=\"5.2.4\">Artwork<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--5.3--><\/span>        <a href=\"#managing-episodes\"  title=\"Managing Episodes\" data-numeration=\"5.3\">Managing Episodes<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.3.1--><\/span>        <a href=\"#episode-list\"  title=\"Episode List\" data-numeration=\"5.3.1\">Episode List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.3.2--><\/span>        <a href=\"#creating-an-episode\"  title=\"Creating an Episode\" data-numeration=\"5.3.2\">Creating an Episode<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.4--><\/span>        <a href=\"#publishing-and-rss-feed\"  title=\"Publishing and RSS Feed\" data-numeration=\"5.4\">Publishing and RSS Feed<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--5.5--><\/span>        <a href=\"#deleting-a-podcast\"  title=\"Deleting a Podcast\" data-numeration=\"5.5\">Deleting a Podcast<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--6--><\/span>        <a href=\"#live-streaming\"  title=\"Live Streaming\" data-numeration=\"6\">Live Streaming<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.1--><\/span>        <a href=\"#streamer-list\"  title=\"Streamer List\" data-numeration=\"6.1\">Streamer List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--6.2--><\/span>        <a href=\"#creating-a-streamer-account\"  title=\"Creating a Streamer Account\" data-numeration=\"6.2\">Creating a Streamer Account<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.2.1--><\/span>        <a href=\"#basic-info-1\"  title=\"Basic Info\" data-numeration=\"6.2.1\">Basic Info<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.2.2--><\/span>        <a href=\"#schedule-2\"  title=\"Schedule\" data-numeration=\"6.2.2\">Schedule<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.2.3--><\/span>        <a href=\"#artwork-1\"  title=\"Artwork\" data-numeration=\"6.2.3\">Artwork<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--6.3--><\/span>        <a href=\"#connection-details\"  title=\"Connection Details\" data-numeration=\"6.3\">Connection Details<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.3.1--><\/span>        <a href=\"#icecast-connection\"  title=\"Icecast Connection\" data-numeration=\"6.3.1\">Icecast Connection<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.3.2--><\/span>        <a href=\"#shoutcast-connection\"  title=\"Shoutcast Connection\" data-numeration=\"6.3.2\">Shoutcast Connection<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.4--><\/span>        <a href=\"#broadcast-history\"  title=\"Broadcast History\" data-numeration=\"6.4\">Broadcast History<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--6.5--><\/span>        <a href=\"#web-dj-browser-based-streaming\"  title=\"Web DJ (Browser-Based Streaming)\" data-numeration=\"6.5\">Web DJ (Browser-Based Streaming)<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.1--><\/span>        <a href=\"#settings-panel\"  title=\"Settings Panel\" data-numeration=\"6.5.1\">Settings Panel<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.2--><\/span>        <a href=\"#while-connected\"  title=\"While Connected\" data-numeration=\"6.5.2\">While Connected<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.3--><\/span>        <a href=\"#microphone-panel\"  title=\"Microphone Panel\" data-numeration=\"6.5.3\">Microphone Panel<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.4--><\/span>        <a href=\"#playlist-panels-1--2\"  title=\"Playlist Panels (1 &amp; 2)\" data-numeration=\"6.5.4\">Playlist Panels (1 &amp; 2)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.5--><\/span>        <a href=\"#mixer\"  title=\"Mixer\" data-numeration=\"6.5.5\">Mixer<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--6.5.6--><\/span>        <a href=\"#disconnecting\"  title=\"Disconnecting\" data-numeration=\"6.5.6\">Disconnecting<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7--><\/span>        <a href=\"#broadcasting\"  title=\"Broadcasting\" data-numeration=\"7\">Broadcasting<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7.1--><\/span>        <a href=\"#mount-points\"  title=\"Mount Points\" data-numeration=\"7.1\">Mount Points<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.1.1--><\/span>        <a href=\"#mount-point-list\"  title=\"Mount Point List\" data-numeration=\"7.1.1\">Mount Point List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.1.2--><\/span>        <a href=\"#creating-a-mount-point\"  title=\"Creating a Mount Point\" data-numeration=\"7.1.2\">Creating a Mount Point<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7.2--><\/span>        <a href=\"#hls-streams\"  title=\"HLS Streams\" data-numeration=\"7.2\">HLS Streams<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.2.1--><\/span>        <a href=\"#hls-stream-list\"  title=\"HLS Stream List\" data-numeration=\"7.2.1\">HLS Stream List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.2.2--><\/span>        <a href=\"#creating-an-hls-stream\"  title=\"Creating an HLS Stream\" data-numeration=\"7.2.2\">Creating an HLS Stream<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7.3--><\/span>        <a href=\"#remote-relays-1\"  title=\"Remote Relays\" data-numeration=\"7.3\">Remote Relays<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.3.1--><\/span>        <a href=\"#remote-relay-list\"  title=\"Remote Relay List\" data-numeration=\"7.3.1\">Remote Relay List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.3.2--><\/span>        <a href=\"#creating-a-remote-relay\"  title=\"Creating a Remote Relay\" data-numeration=\"7.3.2\">Creating a Remote Relay<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7.4--><\/span>        <a href=\"#custom-fallback-file\"  title=\"Custom Fallback File\" data-numeration=\"7.4\">Custom Fallback File<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.4.1--><\/span>        <a href=\"#managing-the-fallback-file\"  title=\"Managing the Fallback File\" data-numeration=\"7.4.1\">Managing the Fallback File<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--7.5--><\/span>        <a href=\"#upcoming-song-queue\"  title=\"Upcoming Song Queue\" data-numeration=\"7.5\">Upcoming Song Queue<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.5.1--><\/span>        <a href=\"#queue-table\"  title=\"Queue Table\" data-numeration=\"7.5.1\">Queue Table<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.5.2--><\/span>        <a href=\"#actions\"  title=\"Actions\" data-numeration=\"7.5.2\">Actions<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--7.6--><\/span>        <a href=\"#restarting-broadcasting\"  title=\"Restarting Broadcasting\" data-numeration=\"7.6\">Restarting Broadcasting<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8--><\/span>        <a href=\"#reports--analytics\"  title=\"Reports &amp; Analytics\" data-numeration=\"8\">Reports &amp; Analytics<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8.1--><\/span>        <a href=\"#station-statistics\"  title=\"Station Statistics\" data-numeration=\"8.1\">Station Statistics<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.1--><\/span>        <a href=\"#best--worst\"  title=\"Best &amp; Worst\" data-numeration=\"8.1.1\">Best &amp; Worst<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.2--><\/span>        <a href=\"#listeners-by-time-period\"  title=\"Listeners by Time Period\" data-numeration=\"8.1.2\">Listeners by Time Period<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.3--><\/span>        <a href=\"#listening-time\"  title=\"Listening Time\" data-numeration=\"8.1.3\">Listening Time<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.4--><\/span>        <a href=\"#streams-1\"  title=\"Streams\" data-numeration=\"8.1.4\">Streams<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.5--><\/span>        <a href=\"#clients\"  title=\"Clients\" data-numeration=\"8.1.5\">Clients<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.6--><\/span>        <a href=\"#browsers\"  title=\"Browsers\" data-numeration=\"8.1.6\">Browsers<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.1.7--><\/span>        <a href=\"#countries\"  title=\"Countries\" data-numeration=\"8.1.7\">Countries<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8.2--><\/span>        <a href=\"#listeners\"  title=\"Listeners\" data-numeration=\"8.2\">Listeners<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.1--><\/span>        <a href=\"#live-listeners-tab\"  title=\"Live Listeners Tab\" data-numeration=\"8.2.1\">Live Listeners Tab<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.2--><\/span>        <a href=\"#listener-history-tab\"  title=\"Listener History Tab\" data-numeration=\"8.2.2\">Listener History Tab<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.3--><\/span>        <a href=\"#summary-statistics\"  title=\"Summary Statistics\" data-numeration=\"8.2.3\">Summary Statistics<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.4--><\/span>        <a href=\"#filters\"  title=\"Filters\" data-numeration=\"8.2.4\">Filters<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.5--><\/span>        <a href=\"#listener-table\"  title=\"Listener Table\" data-numeration=\"8.2.5\">Listener Table<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.6--><\/span>        <a href=\"#listener-map\"  title=\"Listener Map\" data-numeration=\"8.2.6\">Listener Map<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.2.7--><\/span>        <a href=\"#export\"  title=\"Export\" data-numeration=\"8.2.7\">Export<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8.3--><\/span>        <a href=\"#song-playback-timeline\"  title=\"Song Playback Timeline\" data-numeration=\"8.3\">Song Playback Timeline<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.3.1--><\/span>        <a href=\"#timeline-table\"  title=\"Timeline Table\" data-numeration=\"8.3.1\">Timeline Table<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.3.2--><\/span>        <a href=\"#export-1\"  title=\"Export\" data-numeration=\"8.3.2\">Export<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8.4--><\/span>        <a href=\"#song-requests-1\"  title=\"Song Requests\" data-numeration=\"8.4\">Song Requests<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.4.1--><\/span>        <a href=\"#pending-requests-tab\"  title=\"Pending Requests Tab\" data-numeration=\"8.4.1\">Pending Requests Tab<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.4.2--><\/span>        <a href=\"#request-history-tab\"  title=\"Request History Tab\" data-numeration=\"8.4.2\">Request History Tab<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--8.5--><\/span>        <a href=\"#soundexchange-royalties\"  title=\"SoundExchange Royalties\" data-numeration=\"8.5\">SoundExchange Royalties<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.5.1--><\/span>        <a href=\"#report-settings\"  title=\"Report Settings\" data-numeration=\"8.5.1\">Report Settings<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.5.2--><\/span>        <a href=\"#important-notes\"  title=\"Important Notes\" data-numeration=\"8.5.2\">Important Notes<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--8.5.3--><\/span>        <a href=\"#generating-the-report\"  title=\"Generating the Report\" data-numeration=\"8.5.3\">Generating the Report<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--9--><\/span>        <a href=\"#webhooks--integrations\"  title=\"Webhooks &amp; Integrations\" data-numeration=\"9\">Webhooks &amp; Integrations<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.1--><\/span>        <a href=\"#webhook-list\"  title=\"Webhook List\" data-numeration=\"9.1\">Webhook List<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--9.2--><\/span>        <a href=\"#creating-a-webhook\"  title=\"Creating a Webhook\" data-numeration=\"9.2\">Creating a Webhook<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.2.1--><\/span>        <a href=\"#step-1-select-type\"  title=\"Step 1: Select Type\" data-numeration=\"9.2.1\">Step 1: Select Type<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.2.2--><\/span>        <a href=\"#step-2-configure-the-webhook\"  title=\"Step 2: Configure the Webhook\" data-numeration=\"9.2.2\">Step 2: Configure the Webhook<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--9.3--><\/span>        <a href=\"#webhook-type-configuration\"  title=\"Webhook Type Configuration\" data-numeration=\"9.3\">Webhook Type Configuration<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.1--><\/span>        <a href=\"#generic-web-hook\"  title=\"Generic Web Hook\" data-numeration=\"9.3.1\">Generic Web Hook<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.2--><\/span>        <a href=\"#discord\"  title=\"Discord\" data-numeration=\"9.3.2\">Discord<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.3--><\/span>        <a href=\"#email\"  title=\"Email\" data-numeration=\"9.3.3\">Email<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.4--><\/span>        <a href=\"#telegram\"  title=\"Telegram\" data-numeration=\"9.3.4\">Telegram<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.5--><\/span>        <a href=\"#mastodon\"  title=\"Mastodon\" data-numeration=\"9.3.5\">Mastodon<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.6--><\/span>        <a href=\"#bluesky\"  title=\"Bluesky\" data-numeration=\"9.3.6\">Bluesky<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.7--><\/span>        <a href=\"#tunein\"  title=\"TuneIn\" data-numeration=\"9.3.7\">TuneIn<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.8--><\/span>        <a href=\"#google-analytics-v4\"  title=\"Google Analytics V4\" data-numeration=\"9.3.8\">Google Analytics V4<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.3.9--><\/span>        <a href=\"#matomo-analytics\"  title=\"Matomo Analytics\" data-numeration=\"9.3.9\">Matomo Analytics<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.4--><\/span>        <a href=\"#testing-a-webhook\"  title=\"Testing a Webhook\" data-numeration=\"9.4\">Testing a Webhook<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.5--><\/span>        <a href=\"#enabling-and-disabling-webhooks\"  title=\"Enabling and Disabling Webhooks\" data-numeration=\"9.5\">Enabling and Disabling Webhooks<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.6--><\/span>        <a href=\"#duplicating-a-webhook\"  title=\"Duplicating a Webhook\" data-numeration=\"9.6\">Duplicating a Webhook<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--9.7--><\/span>        <a href=\"#deleting-a-webhook\"  title=\"Deleting a Webhook\" data-numeration=\"9.7\">Deleting a Webhook<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--10--><\/span>        <a href=\"#station-settings--branding\"  title=\"Station Settings &amp; Branding\" data-numeration=\"10\">Station Settings &amp; Branding<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--10.1--><\/span>        <a href=\"#station-settings\"  title=\"Station Settings\" data-numeration=\"10.1\">Station Settings<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.1.1--><\/span>        <a href=\"#general-information\"  title=\"General Information\" data-numeration=\"10.1.1\">General Information<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.1.2--><\/span>        <a href=\"#public-pages-1\"  title=\"Public Pages\" data-numeration=\"10.1.2\">Public Pages<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.1.3--><\/span>        <a href=\"#song-request-settings\"  title=\"Song Request Settings\" data-numeration=\"10.1.3\">Song Request Settings<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.1.4--><\/span>        <a href=\"#autodj-settings\"  title=\"AutoDJ Settings\" data-numeration=\"10.1.4\">AutoDJ Settings<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--10.2--><\/span>        <a href=\"#station-branding\"  title=\"Station Branding\" data-numeration=\"10.2\">Station Branding<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.2.1--><\/span>        <a href=\"#custom-assets\"  title=\"Custom Assets\" data-numeration=\"10.2.1\">Custom Assets<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--10.2.2--><\/span>        <a href=\"#branding-settings\"  title=\"Branding Settings\" data-numeration=\"10.2.2\">Branding Settings<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--11--><\/span>        <a href=\"#public-pages-2\"  title=\"Public Pages\" data-numeration=\"11\">Public Pages<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--11.1--><\/span>        <a href=\"#public-player\"  title=\"Public Player\" data-numeration=\"11.1\">Public Player<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.1.1--><\/span>        <a href=\"#player-features\"  title=\"Player Features\" data-numeration=\"11.1.1\">Player Features<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.1.2--><\/span>        <a href=\"#embedding-the-player\"  title=\"Embedding the Player\" data-numeration=\"11.1.2\">Embedding the Player<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--11.2--><\/span>        <a href=\"#full-player-page\"  title=\"Full Player Page\" data-numeration=\"11.2\">Full Player Page<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.2.1--><\/span>        <a href=\"#song-history-modal\"  title=\"Song History Modal\" data-numeration=\"11.2.1\">Song History Modal<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.2.2--><\/span>        <a href=\"#song-request-modal\"  title=\"Song Request Modal\" data-numeration=\"11.2.2\">Song Request Modal<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.3--><\/span>        <a href=\"#schedule-page\"  title=\"Schedule Page\" data-numeration=\"11.3\">Schedule Page<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--11.4--><\/span>        <a href=\"#on-demand-media\"  title=\"On-Demand Media\" data-numeration=\"11.4\">On-Demand Media<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.4.1--><\/span>        <a href=\"#on-demand-page-features\"  title=\"On-Demand Page Features\" data-numeration=\"11.4.1\">On-Demand Page Features<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.4.2--><\/span>        <a href=\"#table-columns\"  title=\"Table Columns\" data-numeration=\"11.4.2\">Table Columns<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--11.5--><\/span>        <a href=\"#song-requests-page\"  title=\"Song Requests Page\" data-numeration=\"11.5\">Song Requests Page<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--11.5.1--><\/span>        <a href=\"#table-columns-1\"  title=\"Table Columns\" data-numeration=\"11.5.1\">Table Columns<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h2\" data-depth=\"2\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--12--><\/span>        <a href=\"#my-account\"  title=\"My Account\" data-numeration=\"12\">My Account<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.1--><\/span>        <a href=\"#profile-overview\"  title=\"Profile Overview\" data-numeration=\"12.1\">Profile Overview<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--12.2--><\/span>        <a href=\"#editing-your-profile\"  title=\"Editing Your Profile\" data-numeration=\"12.2\">Editing Your Profile<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.2.1--><\/span>        <a href=\"#available-fields\"  title=\"Available Fields\" data-numeration=\"12.2.1\">Available Fields<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--12.3--><\/span>        <a href=\"#security\"  title=\"Security\" data-numeration=\"12.3\">Security<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.3.1--><\/span>        <a href=\"#two-factor-authentication-2fa\"  title=\"Two-Factor Authentication (2FA)\" data-numeration=\"12.3.1\">Two-Factor Authentication (2FA)<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.3.2--><\/span>        <a href=\"#passkeys\"  title=\"Passkeys\" data-numeration=\"12.3.2\">Passkeys<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h3 --collapsible --collapsed\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h3\" data-depth=\"3\">\r\n                 <div class=\"jtoc--collapse-btn\"><svg style=\"width: 16px; height: 16px; stroke-width: 2px;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-right-icon lucide-chevron-right\"><path d=\"m9 18 6-6-6-6\" \/><\/svg><\/div>                        <span class=\"jtoc--num\"><!--12.4--><\/span>        <a href=\"#api-keys\"  title=\"API Keys\" data-numeration=\"12.4\">API Keys<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items is-expandable\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.4.1--><\/span>        <a href=\"#viewing-api-keys\"  title=\"Viewing API Keys\" data-numeration=\"12.4.1\">Viewing API Keys<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.4.2--><\/span>        <a href=\"#creating-an-api-key\"  title=\"Creating an API Key\" data-numeration=\"12.4.2\">Creating an API Key<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content --jtoc-h4\" data-depth=\"4\">\r\n                 <span class=\"jtoc--collapse-spacing\" style=\"min-width: 16px;\"><\/span>                        <span class=\"jtoc--num\"><!--12.4.3--><\/span>        <a href=\"#deleting-an-api-key\"  title=\"Deleting an API Key\" data-numeration=\"12.4.3\">Deleting an API Key<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><\/ol>            <\/nav>\r\n                                                            <\/div>\r\n            <\/div>\r\n    <\/div>\r\n\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\" id=\"getting-started\">Getting Started<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"logging-in\">Logging In<\/h3>\n\n\n\n<p>To access the streaming panel,&nbsp;navigate to the login page in your web browser.&nbsp;Enter your email address and password,&nbsp;then click&nbsp;<strong>Log In<\/strong>.<\/p>\n\n\n\n<p>If two-factor authentication is enabled on your account,&nbsp;you will be prompted to enter a verification code from your authenticator app after entering your credentials.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"navigating-the-dashboard\">Navigating the Dashboard<\/h3>\n\n\n\n<p>After logging in,&nbsp;you will see the main dashboard.&nbsp;If you have access to one or more stations,&nbsp;they will be listed on the dashboard.&nbsp;Click on a station name to open that station&#8217;s management interface.<\/p>\n\n\n\n<p>The dashboard header contains:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Station Player<\/strong>\u00a0\u2014 A mini player that lets you listen to your station directly from the panel.<\/li>\n\n\n\n<li><strong>User Menu<\/strong>\u00a0(top-right) \u2014 Access your profile, help resources, and log out.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"understanding-the-sidebar-menu\">Understanding the Sidebar Menu<\/h3>\n\n\n\n<p>Once you enter a station&#8217;s management area,&nbsp;a sidebar menu appears on the left.&nbsp;The sidebar shows:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Station Name<\/strong>\u00a0\u2014 Displayed at the top of the sidebar, clickable to return to the station overview.<\/li>\n\n\n\n<li><strong>Station Time<\/strong>\u00a0\u2014 The current time in the station&#8217;s configured timezone, displayed below the station name.<\/li>\n<\/ul>\n\n\n\n<p>The sidebar menu items depend on your permissions and on which features are enabled for the station.&nbsp;The following sections may appear:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Menu Item<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Overview<\/strong><\/td><td>The station dashboard with now-playing info and status panels<\/td><\/tr><tr><td><strong>Station Settings<\/strong><\/td><td>Edit station name, description, and configuration<\/td><\/tr><tr><td><strong>Public Pages<\/strong><\/td><td>Branding and links to public-facing pages<\/td><\/tr><tr><td><strong>Media<\/strong><\/td><td>Music files, special views, SFTP users, bulk import\/export<\/td><\/tr><tr><td><strong>Playlists<\/strong><\/td><td>Create and manage playlists for the AutoDJ<\/td><\/tr><tr><td><strong>Podcasts<\/strong><\/td><td>Manage podcasts and episodes<\/td><\/tr><tr><td><strong>Live Streaming<\/strong><\/td><td>Streamer\/DJ accounts and Web DJ<\/td><\/tr><tr><td><strong>Web Hooks<\/strong><\/td><td>Configure webhooks and integrations<\/td><\/tr><tr><td><strong>Reports<\/strong><\/td><td>Station statistics, listener data, and playback history<\/td><\/tr><tr><td><strong>Broadcasting<\/strong><\/td><td>Mount points, HLS streams, remote relays, queue, fallback<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Menu items are only visible if you have the required permissions.&nbsp;If you do not see a menu item,&nbsp;contact your administrator to request access.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"station-overview\">Station Overview<\/h2>\n\n\n\n<p>The&nbsp;<strong>Overview<\/strong>&nbsp;page is your station&#8217;s dashboard.&nbsp;It provides a real-time snapshot of your station&#8217;s current status,&nbsp;now-playing information,&nbsp;listeners,&nbsp;upcoming schedule,&nbsp;and stream details.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"now-playing\">Now Playing<\/h3>\n\n\n\n<p>The Now Playing panel is the main information area on the dashboard.&nbsp;It displays:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Album Art<\/strong>\u00a0\u2014 The current song&#8217;s album artwork (click to enlarge).<\/li>\n\n\n\n<li><strong>Song Title &amp; Artist<\/strong>\u00a0\u2014 The currently playing track.<\/li>\n\n\n\n<li><strong>Elapsed Time \/ Duration<\/strong>\u00a0\u2014 A progress indicator showing how far into the current track you are.<\/li>\n\n\n\n<li><strong>Playlist<\/strong>\u00a0\u2014 The name of the playlist the current song belongs to (if applicable).<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"playing-next\">Playing Next<\/h4>\n\n\n\n<p>When the AutoDJ is active&nbsp;(not during a live broadcast),&nbsp;the next scheduled song is shown below the current track,&nbsp;including its album art,&nbsp;title,&nbsp;artist,&nbsp;and playlist.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"live-broadcast-indicator\">Live Broadcast Indicator<\/h4>\n\n\n\n<p>When a live DJ is streaming,&nbsp;a&nbsp;<strong>Live<\/strong>&nbsp;badge appears with the streamer&#8217;s display name instead of the&nbsp;&#8220;Playing Next&#8221;&nbsp;section.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listener-count\">Listener Count<\/h4>\n\n\n\n<p>The panel displays:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Total Listeners<\/strong>\u00a0\u2014 The total number of active connections across all streams.<\/li>\n\n\n\n<li><strong>Unique Listeners<\/strong>\u00a0\u2014 The number of distinct listeners (de-duplicated by IP).<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"quick-actions\">Quick Actions<\/h4>\n\n\n\n<p>If you have broadcasting permissions,&nbsp;the following action buttons are available:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Skip Song<\/strong>\u00a0\u2014 Skips the current track and advances to the next one (only available when no live DJ is connected).<\/li>\n\n\n\n<li><strong>Disconnect Streamer<\/strong>\u00a0\u2014 Disconnects the currently live DJ (only available during a live broadcast).<\/li>\n\n\n\n<li><strong>Update Metadata<\/strong>\u00a0\u2014 Forces a metadata refresh for the current track.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"schedule\">Schedule<\/h3>\n\n\n\n<p>The Schedule panel shows upcoming scheduled events including playlists and streamer\/DJ time slots.&nbsp;Each entry displays:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Type<\/strong>\u00a0\u2014 Either &#8220;Playlist&#8221; or &#8220;Streamer\/DJ.&#8221;<\/li>\n\n\n\n<li><strong>Name<\/strong>\u00a0\u2014 The name of the scheduled playlist or streamer.<\/li>\n\n\n\n<li><strong>Start &amp; End Time<\/strong>\u00a0\u2014 The scheduled time window.<\/li>\n\n\n\n<li><strong>Time Until<\/strong>\u00a0\u2014 How long until the event starts, or &#8220;Now&#8221; if it is currently active.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"streams\">Streams<\/h3>\n\n\n\n<p>The Streams panel lists all active audio streams for your station,&nbsp;organized into sections:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"local-streams-mount-points\">Local Streams (Mount Points)<\/h4>\n\n\n\n<p>Each mount point shows:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A\u00a0<strong>Play<\/strong>\u00a0button to listen directly in the panel.<\/li>\n\n\n\n<li>The mount point name.<\/li>\n\n\n\n<li>The stream URL (click to copy or open).<\/li>\n\n\n\n<li>Total and unique listener counts.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"remote-relays\">Remote Relays<\/h4>\n\n\n\n<p>Each remote relay shows the relay name,&nbsp;URL,&nbsp;and listener counts.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"hls-http-live-streaming\">HLS (HTTP Live Streaming)<\/h4>\n\n\n\n<p>If HLS is enabled,&nbsp;the HLS stream URL and listener count are displayed.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"playlist-downloads\">Playlist Downloads<\/h4>\n\n\n\n<p>At the bottom of the Streams panel,&nbsp;you can download your station&#8217;s stream URLs as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>PLS File<\/strong>\u00a0\u2014 A standard playlist file compatible with most media players.<\/li>\n\n\n\n<li><strong>M3U File<\/strong>\u00a0\u2014 An alternative playlist format.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"public-pages\">Public Pages<\/h3>\n\n\n\n<p>The Public Pages panel shows whether public pages are enabled or disabled for your station.<\/p>\n\n\n\n<p>When enabled,&nbsp;you will see links to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Public Player Page<\/strong>\u00a0\u2014 A web-based player your listeners can use.<\/li>\n\n\n\n<li><strong>On-Demand Media<\/strong>\u00a0\u2014 If enabled, a page where listeners can browse and play archived media.<\/li>\n\n\n\n<li><strong>Podcasts<\/strong>\u00a0\u2014 A public podcast listing page.<\/li>\n\n\n\n<li><strong>Schedule<\/strong>\u00a0\u2014 A public calendar showing your programming schedule.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"available-actions\">Available Actions<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Embed Widgets<\/strong>\u00a0\u2014 View embed codes to add the player widget to external websites.<\/li>\n\n\n\n<li><strong>Edit Branding<\/strong>\u00a0\u2014 Customize the look of your public pages (requires the appropriate permission).<\/li>\n\n\n\n<li><strong>Enable \/ Disable<\/strong>\u00a0\u2014 Toggle public pages on or off.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"song-requests\">Song Requests<\/h3>\n\n\n\n<p>This panel shows whether song requests from listeners are enabled or disabled.<\/p>\n\n\n\n<p>When enabled:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>View<\/strong>\u00a0\u2014 Opens the pending and historical requests.<\/li>\n\n\n\n<li><strong>Disable<\/strong>\u00a0\u2014 Turns off song requests.<\/li>\n<\/ul>\n\n\n\n<p>When disabled:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Enable<\/strong>\u00a0\u2014 Turns on song requests so listeners can request songs through the public player.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"streamersdjs\">Streamers\/DJs<\/h3>\n\n\n\n<p>This panel shows whether live DJ streaming is enabled or disabled.<\/p>\n\n\n\n<p>When enabled:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Web DJ<\/strong>\u00a0\u2014 Link to the browser-based DJ interface (if public pages are enabled).<\/li>\n\n\n\n<li><strong>Manage<\/strong>\u00a0\u2014 Opens the streamer\/DJ management page (requires the Streamers permission).<\/li>\n\n\n\n<li><strong>Disable<\/strong>\u00a0\u2014 Turns off live streaming.<\/li>\n<\/ul>\n\n\n\n<p>When disabled:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Enable<\/strong>\u00a0\u2014 Turns on live DJ streaming.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"broadcasting-service\">Broadcasting Service<\/h3>\n\n\n\n<p>This panel shows the status of the streaming frontend&nbsp;(Icecast or Shoutcast).<\/p>\n\n\n\n<p>Displayed information includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Service Type<\/strong>\u00a0\u2014 Icecast, Shoutcast, or Remote.<\/li>\n\n\n\n<li><strong>Running Status<\/strong>\u00a0\u2014 A badge indicating whether the service is running or stopped.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"credentials-broadcasting-permission-required\">Credentials (Broadcasting Permission Required)<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Show Credentials<\/strong>&nbsp;to reveal connection details:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Admin Username &amp; Password<\/strong>\u00a0\u2014 For accessing the broadcast server&#8217;s admin interface.<\/li>\n\n\n\n<li><strong>Port<\/strong>\u00a0\u2014 The port number the service is running on.<\/li>\n\n\n\n<li><strong>Source Credentials<\/strong>\u00a0\u2014 Username and password for source connections.<\/li>\n\n\n\n<li><strong>Relay Credentials<\/strong>\u00a0\u2014 Username and password for relay connections.<\/li>\n<\/ul>\n\n\n\n<p>Each credential field has a&nbsp;<strong>Copy<\/strong>&nbsp;button for easy copying.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"service-controls\">Service Controls<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Restart<\/strong>\u00a0\u2014 Restart the broadcasting service.<\/li>\n\n\n\n<li><strong>Start<\/strong>\u00a0\u2014 Start the service if it is stopped.<\/li>\n\n\n\n<li><strong>Stop<\/strong>\u00a0\u2014 Stop the service if it is running.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"autodj-service\">AutoDJ Service<\/h3>\n\n\n\n<p>This panel shows the status of the AutoDJ&nbsp;(Liquidsoap).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Running Status<\/strong>\u00a0\u2014 A badge indicating whether the AutoDJ is running or stopped.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"service-controls-broadcasting-permission-required\">Service Controls (Broadcasting Permission Required)<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Restart<\/strong>\u00a0\u2014 Restart the AutoDJ.<\/li>\n\n\n\n<li><strong>Start<\/strong>\u00a0\u2014 Start the AutoDJ if it is stopped.<\/li>\n\n\n\n<li><strong>Stop<\/strong>\u00a0\u2014 Stop the AutoDJ if it is running.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"media-management\">Media Management<\/h2>\n\n\n\n<p>The&nbsp;<strong>Media<\/strong>&nbsp;section lets you upload,&nbsp;organize,&nbsp;and manage all of your station&#8217;s music files.&nbsp;You can access it via the&nbsp;<strong>Media &gt; Music Files<\/strong>&nbsp;menu item in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"browsing-music-files\">Browsing Music Files<\/h3>\n\n\n\n<p>The media browser displays your files in a table with the following columns:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name<\/strong><\/td><td>File or folder name with a play button and album art thumbnail<\/td><\/tr><tr><td><strong>Length<\/strong><\/td><td>Audio duration (e.g., 3:45)<\/td><\/tr><tr><td><strong>Size<\/strong><\/td><td>File size (e.g., 5.2 MB)<\/td><\/tr><tr><td><strong>Playlists<\/strong><\/td><td>Which playlists the file belongs to<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Rename buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"optional-columns\">Optional Columns<\/h4>\n\n\n\n<p>You can show or hide additional columns using the field selector:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Media Title<\/li>\n\n\n\n<li>Song Artist<\/li>\n\n\n\n<li>Song Album<\/li>\n\n\n\n<li>Song Genre<\/li>\n\n\n\n<li>ISRC Code<\/li>\n\n\n\n<li>Custom Fields (if configured)<\/li>\n\n\n\n<li>Uploaded Time<\/li>\n\n\n\n<li>Last Processed Time<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"navigation\">Navigation<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use the\u00a0<strong>breadcrumb bar<\/strong>\u00a0at the top to navigate between folders.<\/li>\n\n\n\n<li>Click a folder name in the table to open it.<\/li>\n\n\n\n<li>Click any breadcrumb segment to jump back to that folder level.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"storage-quota\">Storage Quota<\/h4>\n\n\n\n<p>The quota indicator in the top-right corner of the media page shows how much storage space has been used and how much is available.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"uploading-media\">Uploading Media<\/h3>\n\n\n\n<p>You can upload audio files directly in the media browser:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to the folder where you want to upload files.<\/li>\n\n\n\n<li><strong>Drag and drop<\/strong>\u00a0audio files onto the upload area, or click the upload area to browse your computer.<\/li>\n\n\n\n<li>Files will be uploaded and automatically processed (metadata extracted, waveform generated, etc.).<\/li>\n<\/ol>\n\n\n\n<p>Supported file types include common audio formats such as MP3,&nbsp;FLAC,&nbsp;OGG,&nbsp;AAC,&nbsp;and WAV.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"editing-song-metadata\">Editing Song Metadata<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Edit<\/strong>&nbsp;button on any media file to open the edit modal.&nbsp;The modal has several tabs:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"basic-information\">Basic Information<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Song Title<\/strong><\/td><td>The title of the track<\/td><\/tr><tr><td><strong>Song Artist<\/strong><\/td><td>The performing artist<\/td><\/tr><tr><td><strong>Song Genre<\/strong><\/td><td>The genre classification<\/td><\/tr><tr><td><strong>Song Album<\/strong><\/td><td>The album name<\/td><\/tr><tr><td><strong>Song Lyrics<\/strong><\/td><td>Full lyrics text<\/td><\/tr><tr><td><strong>ISRC<\/strong><\/td><td>International Standard Recording Code, used for licensing reports<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"playlists\">Playlists<\/h4>\n\n\n\n<p>Select one or more playlists that should include this song.&nbsp;Check or uncheck the boxes next to each playlist name.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"album-art\">Album Art<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>View the current album art.<\/li>\n\n\n\n<li><strong>Upload<\/strong>\u00a0a new image to replace the album art.<\/li>\n\n\n\n<li><strong>Delete Album Art<\/strong>\u00a0to remove the current image.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"custom-fields\">Custom Fields<\/h4>\n\n\n\n<p>If your station has custom metadata fields configured,&nbsp;they will appear here as additional input fields.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"visual-cue-editor\">Visual Cue Editor<\/h4>\n\n\n\n<p>The waveform editor provides a visual way to set cue and fade points on a track:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cue In<\/strong>\u00a0\u2014 The point where playback begins (skips any silence or intro).<\/li>\n\n\n\n<li><strong>Cue Out<\/strong>\u00a0\u2014 The point where playback ends (cuts off trailing silence or outro).<\/li>\n\n\n\n<li><strong>Fade In<\/strong>\u00a0\u2014 How long the track takes to fade in from silence.<\/li>\n\n\n\n<li><strong>Fade Out<\/strong>\u00a0\u2014 How long the track takes to fade out to silence.<\/li>\n\n\n\n<li><strong>Fade Start Next<\/strong>\u00a0\u2014 The point where the next track should begin overlapping.<\/li>\n<\/ul>\n\n\n\n<p>Use the&nbsp;<strong>Play<\/strong>&nbsp;and&nbsp;<strong>Stop<\/strong>&nbsp;buttons to preview the audio.&nbsp;Click the corresponding&nbsp;<strong>Set<\/strong>&nbsp;buttons while the playback head is at the desired position,&nbsp;or drag the colored regions on the waveform:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Blue region<\/strong>\u00a0\u2014 Cue points (start and end of playback)<\/li>\n\n\n\n<li><strong>Orange region<\/strong>\u00a0\u2014 Fade start next point<\/li>\n\n\n\n<li><strong>Red regions<\/strong>\u00a0\u2014 Fade in and fade out zones<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"advanced\">Advanced<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Song Length<\/strong><\/td><td>Duration of the track (read-only)<\/td><\/tr><tr><td><strong>Amplify (dB)<\/strong><\/td><td>Volume adjustment in decibels<\/td><\/tr><tr><td><strong>Start Next (seconds)<\/strong><\/td><td>Override when the next song starts playing<\/td><\/tr><tr><td><strong>Fade-In Time<\/strong><\/td><td>Override the fade-in duration in seconds<\/td><\/tr><tr><td><strong>Fade-Out Time<\/strong><\/td><td>Override the fade-out duration in seconds<\/td><\/tr><tr><td><strong>Cue-In Point<\/strong><\/td><td>Override the cue-in point in seconds<\/td><\/tr><tr><td><strong>Cue-Out Point<\/strong><\/td><td>Override the cue-out point in seconds<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Leave any field blank to use the system default value.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"organizing-files-and-folders\">Organizing Files and Folders<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-a-new-folder\">Creating a New Folder<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>New Folder<\/strong>\u00a0button in the media browser toolbar.<\/li>\n\n\n\n<li>Enter a name for the folder.<\/li>\n\n\n\n<li>Click\u00a0<strong>Create Directory<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"renaming-files-or-folders\">Renaming Files or Folders<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>Rename<\/strong>\u00a0button (pencil icon) next to a file or folder.<\/li>\n\n\n\n<li>Enter the new name.<\/li>\n\n\n\n<li>Click\u00a0<strong>Rename<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"moving-files\">Moving Files<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Select one or more files using the checkboxes.<\/li>\n\n\n\n<li>Click the\u00a0<strong>Move<\/strong>\u00a0button in the toolbar.<\/li>\n\n\n\n<li>In the modal, navigate to the destination folder.<\/li>\n\n\n\n<li>Click\u00a0<strong>Move to Directory<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"bulk-actions\">Bulk Actions<\/h3>\n\n\n\n<p>Select one or more files using the checkboxes,&nbsp;then use the toolbar to perform bulk actions:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"add-to-playlists\">Add to Playlists<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>Playlists<\/strong>\u00a0dropdown.<\/li>\n\n\n\n<li>Check one or more playlists to assign the selected files to.<\/li>\n\n\n\n<li>Optionally type a name in the &#8220;New Playlist&#8221; field to create and assign a new playlist.<\/li>\n\n\n\n<li>Click\u00a0<strong>Save<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"other-bulk-actions-via-the-more-dropdown\">Other Bulk Actions (via the &#8220;More&#8221; dropdown)<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Action<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Queue<\/strong><\/td><td>Add selected songs to the upcoming play queue<\/td><\/tr><tr><td><strong>Play Now<\/strong><\/td><td>Immediately play the selected song (if supported by your station)<\/td><\/tr><tr><td><strong>Reprocess<\/strong><\/td><td>Re-analyze and reprocess the selected files<\/td><\/tr><tr><td><strong>Clear Extra Metadata<\/strong><\/td><td>Remove fade points, cue points, and other manually set metadata<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"delete\">Delete<\/h4>\n\n\n\n<p>Click the&nbsp;<strong>Delete<\/strong>&nbsp;button to remove selected files.&nbsp;You will be asked to confirm before deletion.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"special-file-views\">Special File Views<\/h3>\n\n\n\n<p>The&nbsp;<strong>Media<\/strong>&nbsp;submenu includes several special views that filter your media library:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"duplicate-songs\">Duplicate Songs<\/h4>\n\n\n\n<p>Shows files that appear to be duplicates based on their metadata&nbsp;(title and artist).&nbsp;Use this view to identify and clean up redundant files.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"unprocessable-files\">Unprocessable Files<\/h4>\n\n\n\n<p>Shows files that could not be processed by the system&nbsp;\u2014&nbsp;for example,&nbsp;corrupt files or unsupported formats.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"unassigned-files\">Unassigned Files<\/h4>\n\n\n\n<p>Shows media files that are not assigned to any playlist.&nbsp;This helps you find orphaned tracks that may not be playing on air.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"sftp-users\">SFTP Users<\/h3>\n\n\n\n<p>If SFTP uploads are enabled for your station,&nbsp;you can manage SFTP user accounts via&nbsp;<strong>Media &gt; SFTP Users<\/strong>.<\/p>\n\n\n\n<p>SFTP provides a fast and reliable way to upload large batches of media files using any SFTP client&nbsp;(e.g.,&nbsp;FileZilla,&nbsp;WinSCP).<\/p>\n\n\n\n<p>The SFTP user list shows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Username<\/strong><\/td><td>The SFTP login username<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-an-sftp-user\">Creating an SFTP User<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Add SFTP User<\/strong>.<\/li>\n\n\n\n<li>Enter a username and password.<\/li>\n\n\n\n<li>Click\u00a0<strong>Save<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>Use the provided connection details&nbsp;(server address and port)&nbsp;in your SFTP client to connect and upload files.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"bulk-media-importexport-csv\">Bulk Media Import\/Export (CSV)<\/h3>\n\n\n\n<p>The&nbsp;<strong>Bulk Media Import\/Export<\/strong>&nbsp;page allows you to update song metadata in bulk using a CSV file.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"exporting-to-csv\">Exporting to CSV<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Export Media to CSV<\/strong>.<\/li>\n\n\n\n<li>A CSV file will download containing all media metadata.<\/li>\n\n\n\n<li>Open the file in a spreadsheet application (ensure UTF-8 encoding).<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"importing-from-csv\">Importing from CSV<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Edit the exported CSV file with your changes (update titles, artists, playlist assignments, etc.).<\/li>\n\n\n\n<li>Return to the Bulk Media page.<\/li>\n\n\n\n<li>Upload the modified CSV file.<\/li>\n\n\n\n<li>Click\u00a0<strong>Preview Changes<\/strong>\u00a0to see a summary of what will be updated.<\/li>\n\n\n\n<li>Review the changes in the preview table (old values vs. new values).<\/li>\n\n\n\n<li>Click\u00a0<strong>Proceed with Import<\/strong>\u00a0to apply the changes.<\/li>\n<\/ol>\n\n\n\n<p>After import,&nbsp;a results table shows which updates succeeded and any errors that occurred.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"playlists-1\">Playlists<\/h2>\n\n\n\n<p>Playlists control how and when music is played by the AutoDJ.&nbsp;You can access playlist management via the&nbsp;<strong>Playlists<\/strong>&nbsp;menu item in the sidebar.<\/p>\n\n\n\n<p>The playlist page has two views:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>All Playlists<\/strong>\u00a0\u2014 A table listing all playlists with their configuration.<\/li>\n\n\n\n<li><strong>Schedule View<\/strong>\u00a0\u2014 A calendar view showing when scheduled playlists are active.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"playlist-table\">Playlist Table<\/h3>\n\n\n\n<p>The playlist table displays the following information:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Playlist<\/strong><\/td><td>Name, description, and status badges<\/td><\/tr><tr><td><strong>Scheduling<\/strong><\/td><td>How and when the playlist plays<\/td><\/tr><tr><td><strong># Songs<\/strong><\/td><td>Number of tracks and total duration (click to view in media browser)<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit, Delete, and additional actions<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"status-badges\">Status Badges<\/h4>\n\n\n\n<p>Each playlist may display one or more badges:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Song-based<\/strong>\u00a0or\u00a0<strong>Remote URL<\/strong>\u00a0\u2014 Indicates the playlist source.<\/li>\n\n\n\n<li><strong>Jingle Mode<\/strong>\u00a0\u2014 Song metadata is hidden from listeners.<\/li>\n\n\n\n<li><strong>Sequential<\/strong>\u00a0\u2014 Songs play in a fixed order.<\/li>\n\n\n\n<li><strong>On-Demand<\/strong>\u00a0\u2014 Included in the on-demand player.<\/li>\n\n\n\n<li><strong>Scheduled<\/strong>\u00a0\u2014 Has specific scheduled time slots.<\/li>\n\n\n\n<li><strong>Disabled<\/strong>\u00a0\u2014 The playlist is not active.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"creating-a-playlist\">Creating a Playlist<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Add Playlist<\/strong>&nbsp;to open the creation form.&nbsp;The form has three tabs:&nbsp;<strong>Basic Info<\/strong>,&nbsp;<strong>Schedule<\/strong>,&nbsp;and&nbsp;<strong>Advanced<\/strong>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"basic-info\">Basic Info<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Playlist Name<\/strong><\/td><td>A descriptive name for the playlist (required)<\/td><\/tr><tr><td><strong>Enable<\/strong><\/td><td>Whether the playlist is active in rotation<\/td><\/tr><tr><td><strong>Description<\/strong><\/td><td>Optional notes about the playlist<\/td><\/tr><tr><td><strong>Source<\/strong><\/td><td>Choose between &#8220;Song-Based&#8221; (local files) or &#8220;Remote URL&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"song-based-playlist-options\">Song-Based Playlist Options<\/h4>\n\n\n\n<p>When the source is set to&nbsp;<strong>Song-Based<\/strong>,&nbsp;additional options appear:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Avoid Duplicate Artists\/Titles<\/strong><\/td><td>Prevents the same artist or title from playing back-to-back<\/td><\/tr><tr><td><strong>Include in On-Demand Player<\/strong><\/td><td>Makes this playlist&#8217;s songs available for on-demand listening<\/td><\/tr><tr><td><strong>Allow Requests from This Playlist<\/strong><\/td><td>Lets listeners request songs from this playlist<\/td><\/tr><tr><td><strong>Hide Metadata from Listeners (Jingle Mode)<\/strong><\/td><td>Hides song title\/artist from now-playing displays \u2014 useful for jingles and station IDs<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"playlist-types\">Playlist Types<\/h4>\n\n\n\n<p>Choose how the playlist integrates into the rotation:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>General Rotation<\/strong><\/td><td>Songs play as part of the regular rotation. Set a&nbsp;<strong>Weight<\/strong>&nbsp;(1\u201325) \u2014 higher weight means the playlist plays more frequently relative to other playlists.<\/td><\/tr><tr><td><strong>Once per X Songs<\/strong><\/td><td>One song from this playlist plays every N songs. Set the&nbsp;<strong>Number of Songs Between Plays<\/strong>&nbsp;(0\u2013150).<\/td><\/tr><tr><td><strong>Once per X Minutes<\/strong><\/td><td>One song from this playlist plays every N minutes. Set the&nbsp;<strong>Number of Minutes Between Plays<\/strong>&nbsp;(0\u2013360).<\/td><\/tr><tr><td><strong>Once per Hour<\/strong><\/td><td>One song from this playlist plays at a specific minute of each hour. Set the&nbsp;<strong>Minute of Hour to Play<\/strong>&nbsp;(0\u201359).<\/td><\/tr><tr><td><strong>Advanced<\/strong><\/td><td>For custom scheduling using advanced AutoDJ rules.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"song-playback-order\">Song Playback Order<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Order<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Shuffled<\/strong><\/td><td>The entire playlist is shuffled, then songs play in that shuffled order. Once all songs have played, the playlist is reshuffled.<\/td><\/tr><tr><td><strong>Random<\/strong><\/td><td>Each song is selected completely at random (songs may repeat before all have played).<\/td><\/tr><tr><td><strong>Sequential<\/strong><\/td><td>Songs play in the exact order you specify (use the Reorder function to set the order).<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"remote-url-playlist-options\">Remote URL Playlist Options<\/h4>\n\n\n\n<p>When the source is set to&nbsp;<strong>Remote URL<\/strong>,&nbsp;these options appear instead:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Remote URL<\/strong><\/td><td>The URL of the remote stream or playlist file<\/td><\/tr><tr><td><strong>Remote URL Type<\/strong><\/td><td>Choose from: Icecast\/Shoutcast Stream URL, Playlist (M3U\/PLS) URL, or Other Remote URL (File, HLS, etc.)<\/td><\/tr><tr><td><strong>Remote Playback Buffer (seconds)<\/strong><\/td><td>Buffer size for remote playback (0\u2013120). Shorter values may cause intermittent playback.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"schedule-1\">Schedule<\/h3>\n\n\n\n<p>The&nbsp;<strong>Schedule<\/strong>&nbsp;tab lets you define when a playlist is active.&nbsp;By default,&nbsp;a playlist with no schedule plays at all times.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"adding-a-schedule-entry\">Adding a Schedule Entry<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Add Schedule Item<\/strong>&nbsp;to add a time slot.&nbsp;Each schedule entry has:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Start Time<\/strong><\/td><td>When the playlist becomes active<\/td><\/tr><tr><td><strong>End Time<\/strong><\/td><td>When the playlist stops playing. If the end time is before the start time, the playlist plays overnight.<\/td><\/tr><tr><td><strong>Start Date<\/strong><\/td><td>Optional start date to limit the schedule to a date range<\/td><\/tr><tr><td><strong>End Date<\/strong><\/td><td>Optional end date<\/td><\/tr><tr><td><strong>Loop Once<\/strong><\/td><td>If checked, the playlist plays through once and stops (instead of looping)<\/td><\/tr><tr><td><strong>Days of Week<\/strong><\/td><td>Select specific days (Monday\u2013Sunday). Leave blank to play every day.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong>&nbsp;To play a playlist once per day at a specific time,&nbsp;set the start and end time to the same value.<\/p>\n<\/blockquote>\n\n\n\n<p>You can add multiple schedule entries to create complex programming schedules.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"advanced-options\">Advanced Options<\/h3>\n\n\n\n<p>The&nbsp;<strong>Advanced<\/strong>&nbsp;tab offers additional AutoDJ scheduling controls:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Option<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Interrupt other songs to play at scheduled time<\/strong><\/td><td>The playlist will cut into whatever is currently playing when its scheduled time arrives<\/td><\/tr><tr><td><strong>Only play one track at scheduled time<\/strong><\/td><td>Plays a single song from the playlist at the scheduled time, then returns to normal rotation<\/td><\/tr><tr><td><strong>Merge playlist to play as a single track<\/strong><\/td><td>All songs in the playlist are treated as one continuous block<\/td><\/tr><tr><td><strong>Prioritize over listener requests<\/strong><\/td><td>This playlist takes priority when a listener request conflicts with the schedule<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"managing-playlist-contents\">Managing Playlist Contents<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"reordering-songs\">Reordering Songs<\/h4>\n\n\n\n<p>For playlists with&nbsp;<strong>Sequential<\/strong>&nbsp;playback order:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>More<\/strong>\u00a0button on a playlist row, then click\u00a0<strong>Reorder<\/strong>.<\/li>\n\n\n\n<li>In the reorder modal, drag and drop songs to rearrange them, or use the arrow buttons:\n<ul class=\"wp-block-list\">\n<li><strong>Move to Top<\/strong><\/li>\n\n\n\n<li><strong>Move Up<\/strong><\/li>\n\n\n\n<li><strong>Move Down<\/strong><\/li>\n\n\n\n<li><strong>Move to Bottom<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Use the play button next to each song to preview it.<\/li>\n\n\n\n<li>Changes are saved automatically.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"importing-from-plsm3u\">Importing from PLS\/M3U<\/h4>\n\n\n\n<p>You can import songs into a playlist from a PLS or M3U file:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>More > Import from PLS\/M3U<\/strong>.<\/li>\n\n\n\n<li>Upload a\u00a0<code>.pls<\/code>\u00a0or\u00a0<code>.m3u<\/code>\u00a0file.<\/li>\n\n\n\n<li>Click\u00a0<strong>Import<\/strong>.<\/li>\n\n\n\n<li>The system will scan the file and match entries against your station&#8217;s media library.<\/li>\n\n\n\n<li>A results table shows which songs were matched and which had no match.<\/li>\n<\/ol>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Media files must already be uploaded to your station before importing.&nbsp;The import matches file paths from the playlist file to existing media.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"viewing-the-playback-queue\">Viewing the Playback Queue<\/h4>\n\n\n\n<p>Click&nbsp;<strong>More &gt; Playback Queue<\/strong>&nbsp;to see the remaining songs in the playlist&#8217;s internal queue and the order they will be played.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The queue shows song Title and Artist.<\/li>\n\n\n\n<li>Click\u00a0<strong>Clear Queue<\/strong>\u00a0to reset the queue (the playlist will rebuild it).<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"emptying-a-playlist\">Emptying a Playlist<\/h4>\n\n\n\n<p>Click&nbsp;<strong>More &gt; Empty<\/strong>&nbsp;to remove all songs from the playlist without deleting the playlist itself.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"reshuffling-a-playlist\">Reshuffling a Playlist<\/h4>\n\n\n\n<p>Click&nbsp;<strong>More &gt; Reshuffle<\/strong>&nbsp;to randomize the current playback order of a shuffled playlist.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"duplicating-a-playlist\">Duplicating a Playlist<\/h3>\n\n\n\n<p>To create a copy of an existing playlist:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>More<\/strong>\u00a0button, then\u00a0<strong>Duplicate<\/strong>.<\/li>\n\n\n\n<li>Enter a name for the new playlist (defaults to &#8220;[Original Name] &#8211; Copy&#8221;).<\/li>\n\n\n\n<li>Choose what to copy:\n<ul class=\"wp-block-list\">\n<li><strong>Copy associated media and folders<\/strong>\u00a0\u2014 Includes all song assignments.<\/li>\n\n\n\n<li><strong>Copy scheduled playback times<\/strong>\u00a0\u2014 Includes the schedule configuration.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Click\u00a0<strong>Save<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"applying-a-playlist-to-folders\">Applying a Playlist to Folders<\/h3>\n\n\n\n<p>You can automatically assign a playlist to all media files within specific folders:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>More > Apply to Folders<\/strong>.<\/li>\n\n\n\n<li>Select one or more folders from the directory list.<\/li>\n\n\n\n<li>Optionally check\u00a0<strong>Create New Playlist for Each Folder<\/strong>\u00a0to generate separate playlists per folder.<\/li>\n\n\n\n<li>Click\u00a0<strong>Apply to Folders<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"exporting-playlists\">Exporting Playlists<\/h3>\n\n\n\n<p>You can export any playlist as a standard playlist file:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Export as PLS<\/strong>\u00a0\u2014 Downloads a\u00a0<code>.pls<\/code>\u00a0file.<\/li>\n\n\n\n<li><strong>Export as M3U<\/strong>\u00a0\u2014 Downloads a\u00a0<code>.m3u<\/code>\u00a0file.<\/li>\n<\/ul>\n\n\n\n<p>These files can be used in external media players or imported into other stations.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"enabling-and-disabling-playlists\">Enabling and Disabling Playlists<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>More<\/strong>&nbsp;button on a playlist and select&nbsp;<strong>Enable<\/strong>&nbsp;or&nbsp;<strong>Disable<\/strong>&nbsp;to toggle whether the playlist is included in the AutoDJ rotation.&nbsp;Disabled playlists remain configured but do not play.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"podcasts\">Podcasts<\/h2>\n\n\n\n<p>The&nbsp;<strong>Podcasts<\/strong>&nbsp;section lets you create and manage podcasts directly from your station.&nbsp;Podcasts can be published with their own RSS feed and public page,&nbsp;making it easy for listeners to subscribe.<\/p>\n\n\n\n<p>Access podcast management via the&nbsp;<strong>Podcasts<\/strong>&nbsp;menu item in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"podcast-list\">Podcast List<\/h3>\n\n\n\n<p>The podcast list shows all your station&#8217;s podcasts with the following information:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Art<\/strong><\/td><td>Podcast artwork thumbnail<\/td><\/tr><tr><td><strong>Podcast Title<\/strong><\/td><td>Name of the podcast with status badges and public links<\/td><\/tr><tr><td><strong># Episodes<\/strong><\/td><td>Total number of episodes<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit, Delete, and Episodes buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"status-badges-1\">Status Badges<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Playlist-Based<\/strong>\u00a0\u2014 Episodes are automatically generated from a playlist.<\/li>\n\n\n\n<li><strong>Unpublished<\/strong>\u00a0\u2014 The podcast is not publicly visible.<\/li>\n\n\n\n<li><strong>Explicit<\/strong>\u00a0\u2014 The podcast is marked as containing explicit content.<\/li>\n\n\n\n<li><strong>Disabled<\/strong>\u00a0\u2014 The podcast is turned off on public pages.<\/li>\n<\/ul>\n\n\n\n<p>When a podcast is published and enabled,&nbsp;links to the&nbsp;<strong>Public Episodes<\/strong>&nbsp;page and&nbsp;<strong>RSS Feed<\/strong>&nbsp;are displayed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"creating-a-podcast\">Creating a Podcast<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Add Podcast<\/strong>&nbsp;to open the creation form.&nbsp;The form has several tabs:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"basic-information-1\">Basic Information<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Title<\/strong><\/td><td>The name of your podcast (required)<\/td><\/tr><tr><td><strong>Website Link<\/strong><\/td><td>A URL to the podcast&#8217;s website or home page<\/td><\/tr><tr><td><strong>Description<\/strong><\/td><td>A description of the podcast (required, max 4,000 characters)<\/td><\/tr><tr><td><strong>Language<\/strong><\/td><td>The primary language of the podcast (required)<\/td><\/tr><tr><td><strong>Author<\/strong><\/td><td>The name of the podcast author or contact person<\/td><\/tr><tr><td><strong>Email<\/strong><\/td><td>Contact email address<\/td><\/tr><tr><td><strong>Categories<\/strong><\/td><td>One or more podcast categories (required) \u2014 used by podcast directories<\/td><\/tr><tr><td><strong>Enable on Public Pages<\/strong><\/td><td>Whether the podcast appears on your station&#8217;s public podcast page<\/td><\/tr><tr><td><strong>Contains Explicit Content<\/strong><\/td><td>Marks the podcast with an explicit content warning in the RSS feed<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"source\">Source<\/h4>\n\n\n\n<p>Choose how episodes are added to the podcast:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Option<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Manually Add Episodes<\/strong><\/td><td>You create and upload each episode individually<\/td><\/tr><tr><td><strong>Synchronize with Playlist<\/strong><\/td><td>Episodes are automatically created from a playlist&#8217;s media files<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>When using&nbsp;<strong>Synchronize with Playlist<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Select Playlist<\/strong><\/td><td>Choose which playlist to sync episodes from<\/td><\/tr><tr><td><strong>Auto-Publish New Episodes<\/strong><\/td><td>Automatically publish new episodes as they are added to the playlist<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"branding\">Branding<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Enable OP3 Analytics<\/strong><\/td><td>Prefix podcast URLs with OP3 for open podcast analytics tracking<\/td><\/tr><tr><td><strong>Custom HTML for Public Pages<\/strong><\/td><td>Add custom HTML content to the podcast&#8217;s public page (HTML editor)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"artwork\">Artwork<\/h4>\n\n\n\n<p>Upload custom artwork for the podcast.&nbsp;This image is used on the public podcast page and in the RSS feed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"managing-episodes\">Managing Episodes<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Episodes<\/strong>&nbsp;button on a podcast to view and manage its episodes.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"episode-list\">Episode List<\/h4>\n\n\n\n<p>The episode list shows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Art<\/strong><\/td><td>Episode artwork thumbnail<\/td><\/tr><tr><td><strong>Episode<\/strong><\/td><td>Title with status badges<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-an-episode\">Creating an Episode<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Add Episode<\/strong>&nbsp;to create a new episode:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Title<\/strong><\/td><td>Episode title (required)<\/td><\/tr><tr><td><strong>Description<\/strong><\/td><td>Episode description\/show notes<\/td><\/tr><tr><td><strong>Season Number<\/strong><\/td><td>Season number (optional, for serialized podcasts)<\/td><\/tr><tr><td><strong>Episode Number<\/strong><\/td><td>Episode number (optional)<\/td><\/tr><tr><td><strong>Explicit<\/strong><\/td><td>Whether this specific episode contains explicit content<\/td><\/tr><tr><td><strong>Publish<\/strong><\/td><td>Whether the episode is publicly visible<\/td><\/tr><tr><td><strong>Publish Date<\/strong><\/td><td>When the episode should become available<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"media-tab\">Media Tab<\/h5>\n\n\n\n<p>Upload the audio file for the episode,&nbsp;or select an existing media file from your library.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"artwork-tab\">Artwork Tab<\/h5>\n\n\n\n<p>Upload custom artwork for this specific episode&nbsp;(overrides the podcast-level artwork).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"publishing-and-rss-feed\">Publishing and RSS Feed<\/h3>\n\n\n\n<p>Once a podcast is published and enabled:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A\u00a0<strong>Public Episodes<\/strong>\u00a0link lets you share the podcast page with listeners.<\/li>\n\n\n\n<li>An\u00a0<strong>RSS Feed<\/strong>\u00a0link provides the standard podcast feed URL that listeners can use to subscribe in their preferred podcast app (Apple Podcasts, Spotify, etc.).<\/li>\n<\/ul>\n\n\n\n<p>The RSS feed automatically includes all published episodes with their metadata,&nbsp;audio files,&nbsp;and artwork.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"deleting-a-podcast\">Deleting a Podcast<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Delete<\/strong>&nbsp;button on a podcast row to permanently remove it along with all its episodes.&nbsp;You will be asked to confirm before deletion.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"live-streaming\">Live Streaming<\/h2>\n\n\n\n<p>The&nbsp;<strong>Live Streaming<\/strong>&nbsp;section lets you create and manage DJ\/streamer accounts so that live broadcasters can connect to your station and stream in real time.&nbsp;Access it via&nbsp;<strong>Live Streaming &gt; Streamer\/DJ Accounts<\/strong>&nbsp;in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"streamer-list\">Streamer List<\/h3>\n\n\n\n<p>The streamer table displays:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Art<\/strong><\/td><td>Streamer artwork thumbnail<\/td><\/tr><tr><td><strong>Display Name<\/strong><\/td><td>The name shown to listeners during live broadcasts<\/td><\/tr><tr><td><strong>Username<\/strong><\/td><td>The login username (shown in code format)<\/td><\/tr><tr><td><strong>Notes<\/strong><\/td><td>Any internal notes about the streamer<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit, Broadcasts, and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>A&nbsp;<strong>Disabled<\/strong>&nbsp;badge appears next to streamers whose accounts are deactivated.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"creating-a-streamer-account\">Creating a Streamer Account<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Add Streamer<\/strong>&nbsp;to create a new DJ account.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"basic-info-1\">Basic Info<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Username<\/strong><\/td><td>The username for connecting to the stream (required)<\/td><\/tr><tr><td><strong>Password<\/strong><\/td><td>The connection password (required when creating a new account)<\/td><\/tr><tr><td><strong>Display Name<\/strong><\/td><td>The name displayed on the public player when this DJ is live<\/td><\/tr><tr><td><strong>Notes<\/strong><\/td><td>Internal comments, visible only in the management panel<\/td><\/tr><tr><td><strong>Enabled<\/strong><\/td><td>Whether this account can log in and stream<\/td><\/tr><tr><td><strong>Enforce Schedule<\/strong><\/td><td>If checked, the streamer can only connect during their scheduled time slots<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"schedule-2\">Schedule<\/h4>\n\n\n\n<p>You can set specific time slots when this streamer is allowed to broadcast.&nbsp;Schedule entries work the same as playlist schedules:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Start Time<\/strong><\/td><td>When the streamer&#8217;s time slot begins<\/td><\/tr><tr><td><strong>End Time<\/strong><\/td><td>When the time slot ends<\/td><\/tr><tr><td><strong>Start\/End Date<\/strong><\/td><td>Optional date range<\/td><\/tr><tr><td><strong>Days of Week<\/strong><\/td><td>Specific days (leave blank for every day)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>If&nbsp;<strong>Enforce Schedule<\/strong>&nbsp;is enabled on the Basic Info tab,&nbsp;the streamer will be automatically disconnected when their time slot ends.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"artwork-1\">Artwork<\/h4>\n\n\n\n<p>Upload custom artwork for this streamer,&nbsp;displayed on the public player during their live broadcast.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"connection-details\">Connection Details<\/h3>\n\n\n\n<p>After creating streamer accounts,&nbsp;DJs need the following information to connect using broadcasting software&nbsp;(such as BUTT,&nbsp;Mixxx,&nbsp;or OBS):<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"icecast-connection\">Icecast Connection<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Value<\/th><\/tr><\/thead><tbody><tr><td><strong>Server\/Host<\/strong><\/td><td>Your station&#8217;s server URL<\/td><\/tr><tr><td><strong>Port<\/strong><\/td><td>The broadcasting port number<\/td><\/tr><tr><td><strong>Mount Point<\/strong><\/td><td>The mount point path (e.g.,&nbsp;<code>\/live<\/code>)<\/td><\/tr><tr><td><strong>Username<\/strong><\/td><td>The streamer&#8217;s username<\/td><\/tr><tr><td><strong>Password<\/strong><\/td><td>The streamer&#8217;s password<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"shoutcast-connection\">Shoutcast Connection<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Value<\/th><\/tr><\/thead><tbody><tr><td><strong>Server\/Host<\/strong><\/td><td>Your station&#8217;s server URL<\/td><\/tr><tr><td><strong>Port<\/strong><\/td><td>The broadcasting port number<\/td><\/tr><tr><td><strong>Password<\/strong><\/td><td>The streamer&#8217;s password (formatted as&nbsp;<code>username:password<\/code>&nbsp;for Shoutcast)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong>&nbsp;Connection details are shown on the streamer management page.&nbsp;Share these with your DJs so they can configure their broadcasting software.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"broadcast-history\">Broadcast History<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Broadcasts<\/strong>&nbsp;button on a streamer to view their broadcast history.&nbsp;The broadcasts modal shows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Download<\/strong><\/td><td>Play button and download link for the recording (if available)<\/td><\/tr><tr><td><strong>Start Time<\/strong><\/td><td>When the broadcast started<\/td><\/tr><tr><td><strong>End Time<\/strong><\/td><td>When the broadcast ended, or &#8220;Live&#8221; if currently streaming<\/td><\/tr><tr><td><strong>Size<\/strong><\/td><td>File size of the recording<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Delete recording button<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>You can delete individual broadcast recordings or use batch operations to remove multiple recordings at once.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"web-dj-browser-based-streaming\">Web DJ (Browser-Based Streaming)<\/h3>\n\n\n\n<p>The&nbsp;<strong>Web DJ<\/strong>&nbsp;feature allows DJs to stream directly from their web browser without needing external software.&nbsp;Access it via&nbsp;<strong>Live Streaming &gt; Web DJ<\/strong>&nbsp;in the sidebar,&nbsp;or through the public page link.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"settings-panel\">Settings Panel<\/h4>\n\n\n\n<p>Before connecting,&nbsp;configure:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Username<\/strong><\/td><td>The streamer&#8217;s username<\/td><\/tr><tr><td><strong>Password<\/strong><\/td><td>The streamer&#8217;s password<\/td><\/tr><tr><td><strong>Sample Rate<\/strong><\/td><td>Audio quality setting (8 kHz to 48 kHz). Higher values mean better quality.<\/td><\/tr><tr><td><strong>Bit Rate<\/strong><\/td><td>Audio bitrate (8 kbps to 320 kbps). Higher values mean better quality but more bandwidth.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Start Streaming<\/strong>&nbsp;to connect.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"while-connected\">While Connected<\/h4>\n\n\n\n<p>Once streaming,&nbsp;you can update the track metadata:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Title<\/strong><\/td><td>The song title to display to listeners<\/td><\/tr><tr><td><strong>Artist<\/strong><\/td><td>The artist name to display<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Update Metadata<\/strong>&nbsp;to push the changes to listeners.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"microphone-panel\">Microphone Panel<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Enable\/Disable<\/strong>\u00a0\u2014 Toggle microphone input on and off.<\/li>\n\n\n\n<li><strong>Volume<\/strong>\u00a0\u2014 Adjust microphone volume with the slider.<\/li>\n\n\n\n<li><strong>Cue<\/strong>\u00a0\u2014 Monitor the microphone audio locally.<\/li>\n\n\n\n<li><strong>Source<\/strong>\u00a0\u2014 Select which microphone\/input device to use.<\/li>\n\n\n\n<li>A live volume meter shows the input level.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"playlist-panels-1--2\">Playlist Panels (1 &amp; 2)<\/h4>\n\n\n\n<p>The Web DJ provides two independent playlist decks:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Add Files to Playlist<\/strong>\u00a0\u2014 Load audio files from your computer.<\/li>\n\n\n\n<li><strong>Play \/ Pause \/ Stop<\/strong>\u00a0\u2014 Standard playback controls.<\/li>\n\n\n\n<li><strong>Previous \/ Next Track<\/strong>\u00a0\u2014 Navigate between loaded tracks.<\/li>\n\n\n\n<li><strong>Volume<\/strong>\u00a0\u2014 Adjust the deck volume.<\/li>\n\n\n\n<li><strong>Cue<\/strong>\u00a0\u2014 Monitor the deck audio locally.<\/li>\n\n\n\n<li><strong>Track Progress<\/strong>\u00a0\u2014 A seekable slider showing the current position.<\/li>\n\n\n\n<li><strong>Continuous Play<\/strong>\u00a0\u2014 Automatically advance to the next track.<\/li>\n\n\n\n<li><strong>Loop<\/strong>\u00a0\u2014 Repeat the playlist when it reaches the end.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"mixer\">Mixer<\/h4>\n\n\n\n<p>The mixer provides a crossfader between the two playlist decks:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Slide left to favor\u00a0<strong>Playlist 1<\/strong>.<\/li>\n\n\n\n<li>Slide right to favor\u00a0<strong>Playlist 2<\/strong>.<\/li>\n\n\n\n<li>Center position plays both decks at equal volume.<\/li>\n\n\n\n<li>Right-click the slider to reset it to center.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"disconnecting\">Disconnecting<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Stop Streaming<\/strong>&nbsp;to disconnect from the station and end your live broadcast.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;The Web DJ requires HTTPS and works best in Firefox for optimal audio quality.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"broadcasting\">Broadcasting<\/h2>\n\n\n\n<p>The&nbsp;<strong>Broadcasting<\/strong>&nbsp;section covers the technical configuration of how your station delivers audio to listeners.&nbsp;Access these pages through the&nbsp;<strong>Broadcasting<\/strong>&nbsp;submenu in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mount-points\">Mount Points<\/h3>\n\n\n\n<p>Mount points are the individual audio streams that listeners connect to.&nbsp;Each mount point can have its own audio format and bitrate,&nbsp;allowing you to serve multiple quality levels simultaneously.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"mount-point-list\">Mount Point List<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name<\/strong><\/td><td>Mount point name with a &#8220;Default Mount&#8221; badge if applicable<\/td><\/tr><tr><td><strong>AutoDJ<\/strong><\/td><td>Whether the AutoDJ feeds this mount, plus the format and bitrate<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-a-mount-point\">Creating a Mount Point<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Add Mount Point<\/strong>&nbsp;to create a new stream endpoint.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"basic-info-2\">Basic Info<\/h5>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Mount Point URL<\/strong><\/td><td>The URL path for this mount (must start with&nbsp;<code>\/<\/code>, e.g.,&nbsp;<code>\/radio.mp3<\/code>) (required)<\/td><\/tr><tr><td><strong>Display Name<\/strong><\/td><td>A friendly name (auto-generated from the URL if left blank)<\/td><\/tr><tr><td><strong>Show on Public Pages<\/strong><\/td><td>Whether this mount appears on public player widgets<\/td><\/tr><tr><td><strong>Set as Default<\/strong><\/td><td>Makes this the primary mount point for the station<\/td><\/tr><tr><td><strong>Relay Stream URL<\/strong><\/td><td>Relay another external stream through this mount (optional)<\/td><\/tr><tr><td><strong>Advertise to Directories<\/strong><\/td><td>Whether to list this mount on public stream directories<\/td><\/tr><tr><td><strong>Max Listener Duration<\/strong><\/td><td>Maximum time (in seconds) a listener can stay connected. Set to 0 for unlimited.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Additional fields depending on your broadcast frontend:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Shoutcast:<\/strong>\u00a0Authorization Hash for YP directory.<\/li>\n\n\n\n<li><strong>Icecast:<\/strong>\u00a0Fallback Mount path (default:\u00a0<code>\/error.mp3<\/code>).<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"autodj\">AutoDJ<\/h5>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Enable AutoDJ<\/strong><\/td><td>Whether the AutoDJ sends audio to this mount point<\/td><\/tr><tr><td><strong>Format<\/strong><\/td><td>Audio format: MP3, OGG Vorbis, OGG Opus, AAC+ (HE-AAC v2), or FLAC (OGG FLAC)<\/td><\/tr><tr><td><strong>Bitrate<\/strong><\/td><td>Audio bitrate in kbps (not applicable for FLAC)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"intro-file\">Intro File<\/h5>\n\n\n\n<p>Upload an audio file that plays when a listener first connects to this mount point&nbsp;(e.g.,&nbsp;a station ID or welcome message).<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Adding or removing mount points will trigger a broadcasting service restart.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"hls-streams\">HLS Streams<\/h3>\n\n\n\n<p>HTTP Live Streaming&nbsp;(HLS)&nbsp;provides adaptive-bitrate streaming,&nbsp;which automatically adjusts audio quality based on the listener&#8217;s connection speed.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"hls-stream-list\">HLS Stream List<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name<\/strong><\/td><td>Stream name<\/td><\/tr><tr><td><strong>Format<\/strong><\/td><td>Audio format (e.g., MP3, AAC)<\/td><\/tr><tr><td><strong>Bitrate<\/strong><\/td><td>Bitrate in kbps<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-an-hls-stream\">Creating an HLS Stream<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Add HLS Stream<\/strong>&nbsp;and configure:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Stream Name<\/strong><\/td><td>A name for this HLS variant<\/td><\/tr><tr><td><strong>Format<\/strong><\/td><td>Audio format<\/td><\/tr><tr><td><strong>Bitrate<\/strong><\/td><td>Audio bitrate in kbps<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>You can create multiple HLS streams at different bitrates to enable adaptive streaming.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Adding or removing HLS streams will trigger a broadcasting service restart.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"remote-relays-1\">Remote Relays<\/h3>\n\n\n\n<p>Remote relays allow your station to pull in or push out audio to external streaming servers.&nbsp;This is useful for distributing your stream across multiple servers for better geographic coverage.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"remote-relay-list\">Remote Relay List<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name<\/strong><\/td><td>Relay name (clickable link to the remote URL)<\/td><\/tr><tr><td><strong>AutoDJ<\/strong><\/td><td>Whether the AutoDJ broadcasts to this remote, plus format and bitrate<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Some relays&nbsp;(auto-discovered)&nbsp;may not be editable.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-a-remote-relay\">Creating a Remote Relay<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Add Remote Relay<\/strong>&nbsp;to configure a new relay:<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"basic-info-3\">Basic Info<\/h5>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Remote Station Type<\/strong><\/td><td>Icecast v2.4+, Shoutcast v1, or Shoutcast v2 (required)<\/td><\/tr><tr><td><strong>Display Name<\/strong><\/td><td>A friendly name (auto-generated if blank)<\/td><\/tr><tr><td><strong>Remote Station URL<\/strong><\/td><td>The base URL of the remote server (required)<\/td><\/tr><tr><td><strong>Mount Point \/ SID<\/strong><\/td><td>The mount point path (e.g.,&nbsp;<code>\/radio.mp3<\/code>) or Shoutcast SID<\/td><\/tr><tr><td><strong>Admin Password<\/strong><\/td><td>Password for pulling detailed statistics from the remote server<\/td><\/tr><tr><td><strong>Show on Public Pages<\/strong><\/td><td>Whether this relay appears on public player widgets<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"autodj-broadcast-to-remote\">AutoDJ (Broadcast to Remote)<\/h5>\n\n\n\n<p>If you want the AutoDJ to push audio to this remote server:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Enable AutoDJ<\/strong><\/td><td>Enable broadcasting to this remote station<\/td><\/tr><tr><td><strong>Format<\/strong><\/td><td>Audio format (MP3, OGG Vorbis, OGG Opus, AAC+, FLAC)<\/td><\/tr><tr><td><strong>Bitrate<\/strong><\/td><td>Audio bitrate in kbps<\/td><\/tr><tr><td><strong>Source Port<\/strong><\/td><td>Override the broadcast port (optional)<\/td><\/tr><tr><td><strong>Source Mount<\/strong><\/td><td>Override the broadcast mount point (optional)<\/td><\/tr><tr><td><strong>Source Username<\/strong><\/td><td>Authentication username for the remote server<\/td><\/tr><tr><td><strong>Source Password<\/strong><\/td><td>Authentication password for the remote server<\/td><\/tr><tr><td><strong>Advertise to Directories<\/strong><\/td><td>Whether to list this on public stream directories<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"custom-fallback-file\">Custom Fallback File<\/h3>\n\n\n\n<p>The fallback file is played when no other audio is available&nbsp;\u2014&nbsp;for example,&nbsp;when no media is scheduled and no DJ is live.&nbsp;It prevents your station from going silent.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"managing-the-fallback-file\">Managing the Fallback File<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Upload<\/strong>\u00a0\u2014 Drag and drop or select an audio file to set as the fallback.<\/li>\n\n\n\n<li><strong>Download<\/strong>\u00a0\u2014 Download the current fallback file.<\/li>\n\n\n\n<li><strong>Clear File<\/strong>\u00a0\u2014 Remove the fallback file (your station will use the system default).<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong>&nbsp;Choose a short,&nbsp;loopable audio file such as a station ID or&nbsp;&#8220;We&#8217;ll be right back&#8221;&nbsp;message.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"upcoming-song-queue\">Upcoming Song Queue<\/h3>\n\n\n\n<p>The&nbsp;<strong>Upcoming Song Queue<\/strong>&nbsp;shows the songs that the AutoDJ has queued to play next.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"queue-table\">Queue Table<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Actions<\/strong><\/td><td>Log and Delete buttons<\/td><\/tr><tr><td><strong>Song Title<\/strong><\/td><td>The track title and artist<\/td><\/tr><tr><td><strong>Expected to Play At<\/strong><\/td><td>The estimated time and relative countdown<\/td><\/tr><tr><td><strong>Source<\/strong><\/td><td>&#8220;Listener Request&#8221; or &#8220;Playlist: [name]&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"actions\">Actions<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Log<\/strong>\u00a0\u2014 View the AutoDJ&#8217;s decision log for why this song was selected.<\/li>\n\n\n\n<li><strong>Delete<\/strong>\u00a0\u2014 Remove a song from the queue (only available if the song hasn&#8217;t already been sent to the AutoDJ).<\/li>\n\n\n\n<li><strong>Clear Upcoming Song Queue<\/strong>\u00a0\u2014 Remove all queued songs at once (requires confirmation).<\/li>\n<\/ul>\n\n\n\n<p>The queue refreshes automatically every 30 seconds.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"restarting-broadcasting\">Restarting Broadcasting<\/h3>\n\n\n\n<p>The&nbsp;<strong>Restart Broadcasting<\/strong>&nbsp;page lets you restart all broadcasting services for your station.&nbsp;Use this when you&#8217;ve made configuration changes that require a restart,&nbsp;or if you&#8217;re experiencing technical issues.<\/p>\n\n\n\n<p>Click&nbsp;<strong>Restart<\/strong>&nbsp;to restart the broadcasting frontend&nbsp;(Icecast\/Shoutcast)&nbsp;and the AutoDJ&nbsp;(Liquidsoap)&nbsp;together.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"reports--analytics\">Reports &amp; Analytics<\/h2>\n\n\n\n<p>The&nbsp;<strong>Reports<\/strong>&nbsp;section provides detailed analytics and statistics about your station&#8217;s performance,&nbsp;listeners,&nbsp;and playback history.&nbsp;Access reports via the&nbsp;<strong>Reports<\/strong>&nbsp;submenu in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"station-statistics\">Station Statistics<\/h3>\n\n\n\n<p>The&nbsp;<strong>Station Statistics<\/strong>&nbsp;page is the main analytics dashboard.&nbsp;Select a date range using the date picker in the top-right corner to filter all data.<\/p>\n\n\n\n<p>The page is organized into the following tabs:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"best--worst\">Best &amp; Worst<\/h4>\n\n\n\n<p>Shows three tables:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Best Performing Songs<\/strong>\u00a0\u2014 Songs that gained the most listeners during the selected period. Each entry shows the song title, artist, and a trend indicator (green arrow up).<\/li>\n\n\n\n<li><strong>Worst Performing Songs<\/strong>\u00a0\u2014 Songs that lost the most listeners. Each entry shows a decline indicator (red arrow down).<\/li>\n\n\n\n<li><strong>Most Played Songs<\/strong>\u00a0\u2014 Songs with the highest play count during the period.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listeners-by-time-period\">Listeners by Time Period<\/h4>\n\n\n\n<p>Provides visual charts showing listener trends:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Toggle:<\/strong>\u00a0Switch between &#8220;Average Listeners&#8221; and &#8220;Unique Listeners.&#8221;<\/li>\n\n\n\n<li><strong>Daily Listeners Chart<\/strong>\u00a0\u2014 A time-series graph showing listener counts for each day in the selected range.<\/li>\n\n\n\n<li><strong>Day of Week Chart<\/strong>\u00a0\u2014 A pie chart showing how listeners are distributed across days of the week.<\/li>\n\n\n\n<li><strong>Listeners by Hour<\/strong>\u00a0\u2014 A chart showing listener counts by hour of the day. Use the day selector to filter by a specific day of the week or view all days combined.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listening-time\">Listening Time<\/h4>\n\n\n\n<p>Shows how long listeners stay connected to your station:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pie Chart<\/strong>\u00a0\u2014 Visual breakdown of listener distribution by session duration.<\/li>\n\n\n\n<li><strong>Data Table<\/strong>\u00a0\u2014 Detailed listing of time brackets (e.g., &#8220;0\u20135 minutes,&#8221; &#8220;5\u201315 minutes&#8221;) with the number of listeners in each bracket.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"streams-1\">Streams<\/h4>\n\n\n\n<p>Shows performance by stream\/mount point:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Top Streams by Listeners<\/strong>\u00a0\u2014 Which streams have the most listeners.<\/li>\n\n\n\n<li><strong>Top Streams by Connected Time<\/strong>\u00a0\u2014 Which streams have the longest total listening time.<\/li>\n\n\n\n<li>Includes pie charts and a data table.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"clients\">Clients<\/h4>\n\n\n\n<p><em>(Available with full analytics enabled)<\/em><\/p>\n\n\n\n<p>Shows which media players and devices listeners use:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Top clients by listener count and connection time.<\/li>\n\n\n\n<li>Pie chart and data table.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"browsers\">Browsers<\/h4>\n\n\n\n<p><em>(Available with full analytics enabled)<\/em><\/p>\n\n\n\n<p>Shows which web browsers listeners use:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Top browsers by listener count and connection time.<\/li>\n\n\n\n<li>Pie chart and data table.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"countries\">Countries<\/h4>\n\n\n\n<p><em>(Available with full analytics enabled)<\/em><\/p>\n\n\n\n<p>Shows where your listeners are located:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Top countries by listener count and connection time.<\/li>\n\n\n\n<li>Pie chart and data table.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"listeners\">Listeners<\/h3>\n\n\n\n<p>The&nbsp;<strong>Listeners<\/strong>&nbsp;page provides real-time and historical data about who is connected to your station.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"live-listeners-tab\">Live Listeners Tab<\/h4>\n\n\n\n<p>Shows all currently connected listeners,&nbsp;refreshed automatically every 15 seconds.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listener-history-tab\">Listener History Tab<\/h4>\n\n\n\n<p>Select a date range to view historical listener data.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"summary-statistics\">Summary Statistics<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Unique Listeners<\/strong>\u00a0\u2014 The total number of distinct listeners in the selected period.<\/li>\n\n\n\n<li><strong>Total Listener Hours<\/strong>\u00a0\u2014 The combined listening time across all listeners.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"filters\">Filters<\/h4>\n\n\n\n<p>Narrow down the listener list using:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Filter<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Min. Connected Time<\/strong><\/td><td>Only show listeners connected for at least this many seconds<\/td><\/tr><tr><td><strong>Max. Connected Time<\/strong><\/td><td>Only show listeners connected for no more than this many seconds<\/td><\/tr><tr><td><strong>Listener Type<\/strong><\/td><td>All Types, Mobile, Desktop, or Bot\/Crawler<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Clear Filters<\/strong>&nbsp;to reset.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listener-table\">Listener Table<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>IP Address<\/strong><\/td><td>The listener&#8217;s IP address<\/td><\/tr><tr><td><strong>Connected Time<\/strong><\/td><td>Duration of the connection (HH:MM:SS)<\/td><\/tr><tr><td><strong>Start Time<\/strong><\/td><td>When the listener connected (in station timezone)<\/td><\/tr><tr><td><strong>End Time<\/strong><\/td><td>When the listener disconnected (in station timezone)<\/td><\/tr><tr><td><strong>User Agent<\/strong><\/td><td>The listener&#8217;s browser\/player with a device type icon (desktop, mobile, or bot)<\/td><\/tr><tr><td><strong>Stream<\/strong><\/td><td>Which mount point the listener is connected to<\/td><\/tr><tr><td><strong>Location<\/strong><\/td><td>Country, region, and city (derived from IP geolocation)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Additional columns&nbsp;(connected time in seconds,&nbsp;etc.)&nbsp;can be shown or hidden using the field selector.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"listener-map\">Listener Map<\/h4>\n\n\n\n<p>An interactive map displays listener locations with pins.&nbsp;Hovering over a pin shows the listener&#8217;s IP,&nbsp;location,&nbsp;connection time,&nbsp;and user agent.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;The map is automatically hidden when there are more than 3,000 listeners for performance reasons.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"export\">Export<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Download CSV<\/strong>&nbsp;to export the listener data as a CSV file for further analysis.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"song-playback-timeline\">Song Playback Timeline<\/h3>\n\n\n\n<p>The&nbsp;<strong>Song Playback Timeline<\/strong>&nbsp;shows a chronological log of every song played on your station.<\/p>\n\n\n\n<p>Select a date range to filter the results.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"timeline-table\">Timeline Table<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Date\/Time (Station)<\/strong><\/td><td>When the song played (station timezone)<\/td><\/tr><tr><td><strong>Listeners<\/strong><\/td><td>Number of listeners at the start of the song<\/td><\/tr><tr><td><strong>Change<\/strong><\/td><td>Listener count change during the song (green up arrow for gains, red down arrow for losses)<\/td><\/tr><tr><td><strong>Song Title<\/strong><\/td><td>The track title and artist<\/td><\/tr><tr><td><strong>Source<\/strong><\/td><td>How the song was selected: &#8220;Listener Request,&#8221; &#8220;Playlist: [name],&#8221; &#8220;Live Streamer: [name],&#8221; or blank for auto-rotation<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>An additional column for browser timezone can be enabled via the field selector.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"export-1\">Export<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Download CSV<\/strong>&nbsp;to export the timeline data.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"song-requests-1\">Song Requests<\/h3>\n\n\n\n<p>The&nbsp;<strong>Song Requests<\/strong>&nbsp;report shows all listener song requests.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;This page only appears if song requests are enabled for your station.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"pending-requests-tab\">Pending Requests Tab<\/h4>\n\n\n\n<p>Lists all requests that haven&#8217;t been played yet:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Date Requested<\/strong><\/td><td>When the listener submitted the request<\/td><\/tr><tr><td><strong>Date Played<\/strong><\/td><td>&#8220;Not Played&#8221; for pending requests<\/td><\/tr><tr><td><strong>Song Title<\/strong><\/td><td>The requested track<\/td><\/tr><tr><td><strong>Requester IP<\/strong><\/td><td>The IP address of the requester<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Delete button<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Clear Pending Requests<\/strong>&nbsp;to remove all pending requests at once.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"request-history-tab\">Request History Tab<\/h4>\n\n\n\n<p>Shows all previously fulfilled requests with the same columns,&nbsp;including the date and time the song was played.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"soundexchange-royalties\">SoundExchange Royalties<\/h3>\n\n\n\n<p>The&nbsp;<strong>SoundExchange Royalties<\/strong>&nbsp;page generates compliance reports required for digital performance royalty payments&nbsp;(applicable for stations broadcasting in the United States).<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"report-settings\">Report Settings<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Start Date<\/strong><\/td><td>Beginning of the reporting period (defaults to first day of the previous month)<\/td><\/tr><tr><td><strong>End Date<\/strong><\/td><td>End of the reporting period (defaults to last day of the previous month)<\/td><\/tr><tr><td><strong>Attempt to Automatically Retrieve ISRC When Missing<\/strong><\/td><td>Connects to MusicBrainz to look up missing ISRC codes. Disabling this may improve report generation speed.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"important-notes\">Important Notes<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The report assumes\u00a0<strong>Category A<\/strong>\u00a0transmission type.<\/li>\n\n\n\n<li><strong>ATP (Actual Total Performances)<\/strong>\u00a0are tracked automatically.<\/li>\n\n\n\n<li>Each song must have either an\u00a0<strong>ISRC code<\/strong>\u00a0or both an\u00a0<strong>Album<\/strong>\u00a0and\u00a0<strong>Label<\/strong>\u00a0for the report to be complete.<\/li>\n\n\n\n<li>You can look up ISRC codes manually using the MusicBrainz ISRC search tool.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"generating-the-report\">Generating the Report<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Set the date range.<\/li>\n\n\n\n<li>Optionally enable automatic ISRC lookup.<\/li>\n\n\n\n<li>Click\u00a0<strong>Generate Report<\/strong>.<\/li>\n\n\n\n<li>The report opens in a new browser tab, ready for download or submission.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"webhooks--integrations\">Webhooks &amp; Integrations<\/h2>\n\n\n\n<p>Webhooks let your station automatically send notifications and data to external services when specific events occur&nbsp;(such as a song change or a DJ going live).&nbsp;Access webhook management via the&nbsp;<strong>Web Hooks<\/strong>&nbsp;menu item in the sidebar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"webhook-list\">Webhook List<\/h3>\n\n\n\n<p>The webhook table displays:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name\/Type<\/strong><\/td><td>The webhook name and its type<\/td><\/tr><tr><td><strong>Triggers<\/strong><\/td><td>Which events trigger this webhook<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Edit, Enable\/Disable, Test, Duplicate, and Delete buttons<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>A&nbsp;<strong>Disabled<\/strong>&nbsp;badge appears next to inactive webhooks.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"creating-a-webhook\">Creating a Webhook<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Add Web Hook<\/strong>&nbsp;to create a new integration.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-1-select-type\">Step 1: Select Type<\/h4>\n\n\n\n<p>Choose the type of webhook you want to create:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Generic Web Hook<\/strong><\/td><td>Send a custom HTTP POST request to any URL<\/td><\/tr><tr><td><strong>Email<\/strong><\/td><td>Send an email notification<\/td><\/tr><tr><td><strong>TuneIn<\/strong><\/td><td>Update your TuneIn AIR listing<\/td><\/tr><tr><td><strong>Radio.de<\/strong><\/td><td>Update your Radio.de listing<\/td><\/tr><tr><td><strong>RadioReg<\/strong><\/td><td>Update your RadioReg listing<\/td><\/tr><tr><td><strong>GetMeRadio<\/strong><\/td><td>Update your GetMeRadio listing<\/td><\/tr><tr><td><strong>Discord<\/strong><\/td><td>Post a rich embed message to a Discord channel<\/td><\/tr><tr><td><strong>Telegram<\/strong><\/td><td>Send a message to a Telegram chat<\/td><\/tr><tr><td><strong>GroupMe<\/strong><\/td><td>Post to a GroupMe group<\/td><\/tr><tr><td><strong>Mastodon<\/strong><\/td><td>Post a status to a Mastodon account<\/td><\/tr><tr><td><strong>Bluesky<\/strong><\/td><td>Post to a Bluesky account<\/td><\/tr><tr><td><strong>Google Analytics V4<\/strong><\/td><td>Send events to Google Analytics 4<\/td><\/tr><tr><td><strong>Matomo Analytics<\/strong><\/td><td>Send events to a Matomo analytics instance<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-2-configure-the-webhook\">Step 2: Configure the Webhook<\/h4>\n\n\n\n<p>After selecting a type,&nbsp;configure the webhook settings across the available tabs.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"basic-info-all-types\">Basic Info (All Types)<\/h5>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Webhook Name<\/strong><\/td><td>A descriptive name for identification (required)<\/td><\/tr><tr><td><strong>Triggers<\/strong><\/td><td>Select one or more events that fire this webhook<\/td><\/tr><tr><td><strong>Rate Limit<\/strong><\/td><td>Throttle how often the webhook fires (No Limit, 15s, 30s, 1m, 2m, 5m, 10m, 15m, 30m, 1h, up to 12h)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"available-triggers\">Available Triggers<\/h5>\n\n\n\n<p>Depending on the webhook type,&nbsp;the following triggers may be available:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Trigger<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Song Changed<\/strong><\/td><td>A new song begins playing via the AutoDJ<\/td><\/tr><tr><td><strong>Song Changed (Live DJ)<\/strong><\/td><td>A live DJ changes the currently playing song<\/td><\/tr><tr><td><strong>Live DJ Connected<\/strong><\/td><td>A live DJ starts broadcasting<\/td><\/tr><tr><td><strong>Live DJ Disconnected<\/strong><\/td><td>A live DJ stops broadcasting<\/td><\/tr><tr><td><strong>Station Online<\/strong><\/td><td>The station starts broadcasting<\/td><\/tr><tr><td><strong>Station Offline<\/strong><\/td><td>The station stops broadcasting<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"webhook-type-configuration\">Webhook Type Configuration<\/h3>\n\n\n\n<p>Each webhook type has its own configuration fields:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"generic-web-hook\">Generic Web Hook<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Webhook URL<\/strong><\/td><td>The endpoint URL to send POST requests to (required)<\/td><\/tr><tr><td><strong>Basic Auth Username<\/strong><\/td><td>HTTP Basic Authentication username (optional)<\/td><\/tr><tr><td><strong>Basic Auth Password<\/strong><\/td><td>HTTP Basic Authentication password (optional)<\/td><\/tr><tr><td><strong>Timeout<\/strong><\/td><td>Request timeout in seconds, 0\u2013600 (optional)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"discord\">Discord<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Webhook URL<\/strong><\/td><td>Your Discord webhook URL (create one in Discord channel settings)<\/td><\/tr><tr><td><strong>Message Content<\/strong><\/td><td>Text content above the embed<\/td><\/tr><tr><td><strong>Title<\/strong><\/td><td>Embed title (typically the song title)<\/td><\/tr><tr><td><strong>Description<\/strong><\/td><td>Embed description (typically the artist)<\/td><\/tr><tr><td><strong>URL<\/strong><\/td><td>Link URL in the embed (typically your stream URL)<\/td><\/tr><tr><td><strong>Author<\/strong><\/td><td>Author field (typically the streamer name)<\/td><\/tr><tr><td><strong>Thumbnail<\/strong><\/td><td>Thumbnail image URL (typically the album art URL)<\/td><\/tr><tr><td><strong>Footer<\/strong><\/td><td>Footer text<\/td><\/tr><tr><td><strong>Color<\/strong><\/td><td>Embed accent color (hex code, e.g.,&nbsp;<code>#FF0000<\/code>)<\/td><\/tr><tr><td><strong>Include Timestamp<\/strong><\/td><td>Add a timestamp to the embed<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"email\">Email<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>To Address<\/strong><\/td><td>Recipient email address<\/td><\/tr><tr><td><strong>Subject<\/strong><\/td><td>Email subject line<\/td><\/tr><tr><td><strong>Message<\/strong><\/td><td>Email body content<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"telegram\">Telegram<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Bot Token<\/strong><\/td><td>Your Telegram bot token (from BotFather)<\/td><\/tr><tr><td><strong>Chat ID<\/strong><\/td><td>The target chat, group, or channel ID<\/td><\/tr><tr><td><strong>API URL<\/strong><\/td><td>Telegram API URL (usually left as default)<\/td><\/tr><tr><td><strong>Message Text<\/strong><\/td><td>The message template<\/td><\/tr><tr><td><strong>Parse Mode<\/strong><\/td><td>Formatting mode: Markdown or HTML<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"mastodon\">Mastodon<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Instance URL<\/strong><\/td><td>Your Mastodon instance URL (e.g.,&nbsp;<code>https:\/\/mastodon.social<\/code>)<\/td><\/tr><tr><td><strong>Access Token<\/strong><\/td><td>API access token (generate in Mastodon settings)<\/td><\/tr><tr><td><strong>Visibility<\/strong><\/td><td>Post visibility: Public, Unlisted, Private, or Direct<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"bluesky\">Bluesky<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Handle<\/strong><\/td><td>Your Bluesky handle<\/td><\/tr><tr><td><strong>App Password<\/strong><\/td><td>An app password (generate in Bluesky settings)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"tunein\">TuneIn<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Station ID<\/strong><\/td><td>Your TuneIn station ID<\/td><\/tr><tr><td><strong>Partner ID<\/strong><\/td><td>Your TuneIn partner ID<\/td><\/tr><tr><td><strong>Partner Key<\/strong><\/td><td>Your TuneIn partner API key<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"google-analytics-v4\">Google Analytics V4<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>API Secret<\/strong><\/td><td>Your GA4 measurement protocol API secret<\/td><\/tr><tr><td><strong>Measurement ID<\/strong><\/td><td>Your GA4 measurement ID (e.g.,&nbsp;<code>G-XXXXXXXXXX<\/code>)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"matomo-analytics\">Matomo Analytics<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Matomo URL<\/strong><\/td><td>Your Matomo instance URL<\/td><\/tr><tr><td><strong>Site ID<\/strong><\/td><td>The Matomo site ID<\/td><\/tr><tr><td><strong>Token<\/strong><\/td><td>Your Matomo authentication token<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"testing-a-webhook\">Testing a Webhook<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Test<\/strong>&nbsp;button on any webhook to send a test payload.&nbsp;After the test fires,&nbsp;a log is displayed showing the request and response details.&nbsp;Use this to verify your webhook is configured correctly before relying on it in production.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"enabling-and-disabling-webhooks\">Enabling and Disabling Webhooks<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Enable\/Disable<\/strong>&nbsp;toggle on a webhook to turn it on or off without deleting it.&nbsp;Disabled webhooks retain their configuration but do not fire.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"duplicating-a-webhook\">Duplicating a Webhook<\/h3>\n\n\n\n<p>Click the&nbsp;<strong>Duplicate<\/strong>&nbsp;button to create a copy of an existing webhook.&nbsp;This is useful when you want to create a similar webhook with minor changes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"deleting-a-webhook\">Deleting a Webhook<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Delete<\/strong>&nbsp;to permanently remove a webhook.&nbsp;You will be asked to confirm before deletion.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"station-settings--branding\">Station Settings &amp; Branding<\/h2>\n\n\n\n<p>The station settings and branding pages let you configure your station&#8217;s identity,&nbsp;behavior,&nbsp;and public appearance.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"station-settings\">Station Settings<\/h3>\n\n\n\n<p>Access station settings via the&nbsp;<strong>Station Settings<\/strong>&nbsp;menu item in the sidebar.&nbsp;This page contains the full configuration form for your station.<\/p>\n\n\n\n<p>Key settings you can configure include:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"general-information\">General Information<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Station Name<\/strong><\/td><td>The name of your station as displayed to listeners<\/td><\/tr><tr><td><strong>Station Description<\/strong><\/td><td>A short description of your station<\/td><\/tr><tr><td><strong>Station Genre<\/strong><\/td><td>The genre(s) your station plays<\/td><\/tr><tr><td><strong>Station URL<\/strong><\/td><td>Your station&#8217;s website URL<\/td><\/tr><tr><td><strong>Time Zone<\/strong><\/td><td>The timezone used for scheduling and display throughout the station<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"public-pages-1\">Public Pages<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Enable Public Pages<\/strong><\/td><td>Toggle whether public player, schedule, and podcast pages are accessible<\/td><\/tr><tr><td><strong>Enable On-Demand Listening<\/strong><\/td><td>Allow listeners to browse and play archived media on demand<\/td><\/tr><tr><td><strong>Enable Song Requests<\/strong><\/td><td>Allow listeners to request songs through the public player<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"song-request-settings\">Song Request Settings<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Request Delay<\/strong><\/td><td>Minimum time (in minutes) between requests from the same listener<\/td><\/tr><tr><td><strong>Request Threshold<\/strong><\/td><td>Minimum time (in minutes) before the same song can be requested again<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"autodj-settings\">AutoDJ Settings<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>AutoDJ Crossfade Duration<\/strong><\/td><td>Duration (in seconds) of the crossfade between songs<\/td><\/tr><tr><td><strong>Enable Manual AutoDJ Mode<\/strong><\/td><td>Allows advanced manual control of the AutoDJ scheduling<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Some advanced settings may only be visible depending on your station&#8217;s backend configuration and enabled features.<\/p>\n<\/blockquote>\n\n\n\n<p>After making changes,&nbsp;click&nbsp;<strong>Save Changes<\/strong>.&nbsp;The station will reload to apply the new configuration.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"station-branding\">Station Branding<\/h3>\n\n\n\n<p>Access branding settings via&nbsp;<strong>Public Pages &gt; Branding<\/strong>&nbsp;in the sidebar.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"custom-assets\">Custom Assets<\/h4>\n\n\n\n<p>Upload custom images used across your station&#8217;s public pages:<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"public-page-background\">Public Page Background<\/h5>\n\n\n\n<p>Upload a custom background image for your station&#8217;s public-facing pages.&nbsp;This image appears behind the player and other public page content.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Drag and drop an image file, or click to browse.<\/li>\n\n\n\n<li>The current background is shown as a preview.<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"default-album-art\">Default Album Art<\/h5>\n\n\n\n<p>Upload a custom image to use as the default album art when a song has no artwork of its own.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Drag and drop an image file, or click to browse.<\/li>\n\n\n\n<li>The current default art is shown as a preview.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"branding-settings\">Branding Settings<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Station Offline Display Text<\/strong><\/td><td>Custom text shown to listeners when your station is offline. Leave blank to use the default &#8220;Station Offline&#8221; message.<\/td><\/tr><tr><td><strong>Default Album Art URL<\/strong><\/td><td>A URL to an image used as fallback album art. Leave blank to use the standard placeholder.<\/td><\/tr><tr><td><strong>Custom CSS for Public Pages<\/strong><\/td><td>Add custom CSS styles that will be applied to all public-facing pages. Use this to customize colors, fonts, layouts, and other visual elements.<\/td><\/tr><tr><td><strong>Custom JS for Public Pages<\/strong><\/td><td>Add custom JavaScript that will be executed on all public-facing pages. Use this for analytics, custom interactions, or third-party integrations.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>The CSS and JavaScript fields use a code editor with syntax highlighting.<\/p>\n\n\n\n<p>Click&nbsp;<strong>Save Changes<\/strong>&nbsp;to apply your branding updates.&nbsp;Changes take effect immediately on public pages.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"public-pages-2\">Public Pages<\/h2>\n\n\n\n<p>Your station can have several public-facing pages that listeners access directly.&nbsp;These pages do not require a login and are designed for your audience.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Public pages must be enabled in your station settings for listeners to access them.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"public-player\">Public Player<\/h3>\n\n\n\n<p>The public player is an embeddable web-based audio player that lets listeners tune in directly from their browser.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"player-features\">Player Features<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Album Art<\/strong>\u00a0\u2014 Displays the currently playing song&#8217;s artwork.<\/li>\n\n\n\n<li><strong>Song Title &amp; Artist<\/strong>\u00a0\u2014 Shows what&#8217;s currently playing.<\/li>\n\n\n\n<li><strong>Live Badge<\/strong>\u00a0\u2014 When a live DJ is broadcasting, a &#8220;Live&#8221; badge appears with the streamer&#8217;s name.<\/li>\n\n\n\n<li><strong>Station Offline Message<\/strong>\u00a0\u2014 Displays when the station is not broadcasting.<\/li>\n\n\n\n<li><strong>Track Progress<\/strong>\u00a0\u2014 A progress bar showing elapsed time and total track duration.<\/li>\n\n\n\n<li><strong>Play Button<\/strong>\u00a0\u2014 A large, centered play\/pause control.<\/li>\n\n\n\n<li><strong>Stream Selector<\/strong>\u00a0\u2014 If your station has multiple mount points or streams, listeners can choose which one to listen to from a dropdown menu.<\/li>\n\n\n\n<li><strong>Volume Controls<\/strong>\u00a0\u2014 A mute\/unmute button and volume slider.<\/li>\n\n\n\n<li><strong>Popup Player<\/strong>\u00a0\u2014 A button to open the player in a floating popup window.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"embedding-the-player\">Embedding the Player<\/h4>\n\n\n\n<p>The public player can be embedded on external websites using an iframe.&nbsp;To get the embed code:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to your station&#8217;s\u00a0<strong>Overview<\/strong>\u00a0page.<\/li>\n\n\n\n<li>Click\u00a0<strong>Embed Widgets<\/strong>\u00a0in the Public Pages panel.<\/li>\n\n\n\n<li>Copy the provided embed code and paste it into your website&#8217;s HTML.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"full-player-page\">Full Player Page<\/h3>\n\n\n\n<p>The full player page is a standalone web page with the complete player experience.&nbsp;It includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Station Name<\/strong>\u00a0\u2014 Displayed as a heading at the top.<\/li>\n\n\n\n<li><strong>Radio Player<\/strong>\u00a0\u2014 The full audio player with all controls.<\/li>\n\n\n\n<li><strong>Song History<\/strong>\u00a0\u2014 A button to view recently played songs (opens a modal with album art, titles, and artists).<\/li>\n\n\n\n<li><strong>Request Song<\/strong>\u00a0\u2014 A button to submit a song request (if requests are enabled).<\/li>\n\n\n\n<li><strong>Download Playlist<\/strong>\u00a0\u2014 A button to download the station&#8217;s stream as a PLS\/M3U file for use in external players.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"song-history-modal\">Song History Modal<\/h4>\n\n\n\n<p>The song history shows a list of recently played tracks,&nbsp;including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Album art thumbnail<\/li>\n\n\n\n<li>Song title<\/li>\n\n\n\n<li>Artist name<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"song-request-modal\">Song Request Modal<\/h4>\n\n\n\n<p>When song requests are enabled,&nbsp;listeners can:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the\u00a0<strong>Request Song<\/strong>\u00a0button.<\/li>\n\n\n\n<li>Browse or search through available songs.<\/li>\n\n\n\n<li>Click\u00a0<strong>Request<\/strong>\u00a0next to the desired song.<\/li>\n\n\n\n<li>A confirmation message appears when the request is submitted.<\/li>\n<\/ol>\n\n\n\n<p>The request list shows:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Album art thumbnail<\/li>\n\n\n\n<li>Song title and artist<\/li>\n\n\n\n<li>Album, genre, and custom fields (optional columns)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"schedule-page\">Schedule Page<\/h3>\n\n\n\n<p>The schedule page shows a calendar view of your station&#8217;s programming schedule.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Displays scheduled playlists and streamer\/DJ time slots.<\/li>\n\n\n\n<li>Events are color-coded for easy identification.<\/li>\n\n\n\n<li>All times are shown in the station&#8217;s configured timezone.<\/li>\n\n\n\n<li>Listeners can navigate between days, weeks, or months to see upcoming programming.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"on-demand-media\">On-Demand Media<\/h3>\n\n\n\n<p>When on-demand listening is enabled,&nbsp;listeners can browse your media library and play individual tracks at any time.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"on-demand-page-features\">On-Demand Page Features<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Inline Player<\/strong>\u00a0\u2014 A mini player in the top-right corner for playback.<\/li>\n\n\n\n<li><strong>Media Table<\/strong>\u00a0\u2014 A searchable, sortable table of available tracks.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"table-columns\">Table Columns<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Play<\/strong><\/td><td>Button to play the track<\/td><\/tr><tr><td><strong>Album Art<\/strong><\/td><td>Track artwork thumbnail<\/td><\/tr><tr><td><strong>Title<\/strong><\/td><td>Song title (sortable)<\/td><\/tr><tr><td><strong>Artist<\/strong><\/td><td>Song artist (sortable)<\/td><\/tr><tr><td><strong>Album<\/strong><\/td><td>Song album (optional, hidden by default)<\/td><\/tr><tr><td><strong>Download<\/strong><\/td><td>Download button (if enabled)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Additional custom field columns can be shown via the field selector.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong>&nbsp;Only songs from playlists with&nbsp;&#8220;Include in On-Demand Player&#8221;&nbsp;enabled will appear here.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"song-requests-page\">Song Requests Page<\/h3>\n\n\n\n<p>The standalone song requests page allows listeners to request songs without using the full player:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Search<\/strong>\u00a0\u2014 Listeners can search for songs by title, artist, album, or genre.<\/li>\n\n\n\n<li><strong>Browse<\/strong>\u00a0\u2014 Paginated table of all requestable songs.<\/li>\n\n\n\n<li><strong>Request Button<\/strong>\u00a0\u2014 Submit a request for any available song.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"table-columns-1\">Table Columns<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Song Name<\/strong><\/td><td>Album art, title, and artist<\/td><\/tr><tr><td><strong>Title<\/strong><\/td><td>Song title (optional, sortable)<\/td><\/tr><tr><td><strong>Artist<\/strong><\/td><td>Song artist (optional, sortable)<\/td><\/tr><tr><td><strong>Album<\/strong><\/td><td>Song album (optional)<\/td><\/tr><tr><td><strong>Genre<\/strong><\/td><td>Song genre (optional)<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Request button<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>After a request is submitted,&nbsp;a success notification confirms that it was received.&nbsp;Request limits&nbsp;(cooldown periods)&nbsp;are enforced as configured in your station settings.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"my-account\">My Account<\/h2>\n\n\n\n<p>The&nbsp;<strong>My Account<\/strong>&nbsp;page lets you manage your personal profile,&nbsp;security settings,&nbsp;and API keys.&nbsp;Access it from the user menu in the top-right corner of the dashboard.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"profile-overview\">Profile Overview<\/h3>\n\n\n\n<p>Your account page displays:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Avatar<\/strong>\u00a0\u2014 Your profile picture (pulled from linked services if available).<\/li>\n\n\n\n<li><strong>Name<\/strong>\u00a0\u2014 Your display name.<\/li>\n\n\n\n<li><strong>Email<\/strong>\u00a0\u2014 Your account email address.<\/li>\n\n\n\n<li><strong>Roles<\/strong>\u00a0\u2014 Badges showing the roles assigned to your account.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"editing-your-profile\">Editing Your Profile<\/h3>\n\n\n\n<p>Click&nbsp;<strong>Edit Profile<\/strong>&nbsp;to open the profile editor.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"available-fields\">Available Fields<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Name<\/strong><\/td><td>Your display name<\/td><\/tr><tr><td><strong>Show 24-Hour Time<\/strong><\/td><td>Toggle between 12-hour (AM\/PM) and 24-hour time format throughout the panel<\/td><\/tr><tr><td><strong>Language<\/strong><\/td><td>Choose your preferred language, or select &#8220;Use Browser Default&#8221; to match your browser&#8217;s language setting<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Save<\/strong>&nbsp;to apply your changes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"security\">Security<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"two-factor-authentication-2fa\">Two-Factor Authentication (2FA)<\/h4>\n\n\n\n<p>Two-factor authentication adds an extra layer of security to your account.&nbsp;When enabled,&nbsp;you&#8217;ll need to enter a code from your authenticator app each time you log in.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"enabling-2fa\">Enabling 2FA<\/h5>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Enable Two-Factor<\/strong>\u00a0in the Security section.<\/li>\n\n\n\n<li>A QR code will be displayed.<\/li>\n\n\n\n<li>Scan the QR code with your authenticator app (e.g., Google Authenticator, Authy, 1Password).<\/li>\n\n\n\n<li>Enter the verification code from the app to confirm setup.<\/li>\n<\/ol>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"disabling-2fa\">Disabling 2FA<\/h5>\n\n\n\n<p>Click&nbsp;<strong>Disable Two-Factor<\/strong>&nbsp;to turn off two-factor authentication.&nbsp;You may be asked to confirm this action.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Important:<\/strong>&nbsp;It is strongly recommended to keep two-factor authentication enabled to protect your account.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"passkeys\">Passkeys<\/h4>\n\n\n\n<p>Passkeys provide a passwordless,&nbsp;phishing-resistant login method using your device&#8217;s biometric sensor&nbsp;(fingerprint,&nbsp;face recognition)&nbsp;or security key.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"adding-a-passkey\">Adding a Passkey<\/h5>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Add New Passkey<\/strong>.<\/li>\n\n\n\n<li>Follow your browser&#8217;s prompts to register a passkey using your device.<\/li>\n\n\n\n<li>Enter a nickname for the passkey (e.g., &#8220;Work Laptop&#8221; or &#8220;YubiKey&#8221;) so you can identify it later.<\/li>\n<\/ol>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"managing-passkeys\">Managing Passkeys<\/h5>\n\n\n\n<p>The passkey table shows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Passkey Nickname<\/strong><\/td><td>The name you assigned to the passkey<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Delete button<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Click&nbsp;<strong>Delete<\/strong>&nbsp;to remove a passkey.&nbsp;You will be asked to confirm before deletion.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"api-keys\">API Keys<\/h3>\n\n\n\n<p>API keys allow external applications and scripts to interact with the streaming panel on your behalf.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"viewing-api-keys\">Viewing API Keys<\/h4>\n\n\n\n<p>The API Keys table shows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Description<\/strong><\/td><td>The comment\/description you assigned to the key<\/td><\/tr><tr><td><strong>Actions<\/strong><\/td><td>Delete button<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-an-api-key\">Creating an API Key<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Add API Key<\/strong>.<\/li>\n\n\n\n<li>Enter a description (e.g., &#8220;Mobile App&#8221; or &#8220;Automation Script&#8221;).<\/li>\n\n\n\n<li>Click\u00a0<strong>Create<\/strong>.<\/li>\n\n\n\n<li><strong>Copy the API key immediately<\/strong>\u00a0\u2014 it will only be shown once and cannot be retrieved later.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"deleting-an-api-key\">Deleting an API Key<\/h4>\n\n\n\n<p>Click&nbsp;<strong>Delete<\/strong>&nbsp;next to any API key to revoke it.&nbsp;The key will immediately stop working for any applications using it.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong>&nbsp;Create separate API keys for different applications so you can revoke access individually without affecting other integrations.<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>A comprehensive user manual for the Radio Website Control Panel \u2014 your central hub for managing your radio station&#8217;s website. Covers everything from initial setup and content management to audience engagement, analytics, and<br \/>\n  account administration<\/p>\n","protected":false},"author":1,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_eb_attr":"","inline_featured_image":false,"footnotes":""},"ht-kb-category":[47],"ht-kb-tag":[],"class_list":["post-334","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-user-manuals"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Streaming Panel User Manual - Caster.fm Help Center<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Streaming Panel User Manual - Caster.fm Help Center\" \/>\n<meta property=\"og:description\" content=\"A comprehensive user manual for the Radio Website Control Panel \u2014 your central hub for managing your radio station&#039;s website. Covers everything from initial setup and content management to audience engagement, analytics, and   account administration\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/\" \/>\n<meta property=\"og:site_name\" content=\"Caster.fm Help Center\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ShoutcastServer\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-25T14:56:06+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@CasterFm\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"37 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/pro-plan\\\/user-manuals\\\/streaming-panel-user-manual\\\/\",\"url\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/pro-plan\\\/user-manuals\\\/streaming-panel-user-manual\\\/\",\"name\":\"Streaming Panel User Manual - Caster.fm Help Center\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#website\"},\"datePublished\":\"2026-04-25T11:52:23+00:00\",\"dateModified\":\"2026-04-25T14:56:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/pro-plan\\\/user-manuals\\\/streaming-panel-user-manual\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.caster.fm\\\/help\\\/pro-plan\\\/user-manuals\\\/streaming-panel-user-manual\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/pro-plan\\\/user-manuals\\\/streaming-panel-user-manual\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Streaming Panel User Manual\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#website\",\"url\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/\",\"name\":\"Caster.fm Help Center\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#organization\",\"name\":\"Caster.fm\",\"url\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/CasterFmRedLogo_1svg.svg\",\"contentUrl\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/CasterFmRedLogo_1svg.svg\",\"width\":\"1024\",\"height\":\"1024\",\"caption\":\"Caster.fm\"},\"image\":{\"@id\":\"https:\\\/\\\/www.caster.fm\\\/help\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/ShoutcastServer\",\"https:\\\/\\\/x.com\\\/CasterFm\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Streaming Panel User Manual - Caster.fm Help Center","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/","og_locale":"en_US","og_type":"article","og_title":"Streaming Panel User Manual - Caster.fm Help Center","og_description":"A comprehensive user manual for the Radio Website Control Panel \u2014 your central hub for managing your radio station's website. Covers everything from initial setup and content management to audience engagement, analytics, and   account administration","og_url":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/","og_site_name":"Caster.fm Help Center","article_publisher":"https:\/\/www.facebook.com\/ShoutcastServer","article_modified_time":"2026-04-25T14:56:06+00:00","twitter_card":"summary_large_image","twitter_site":"@CasterFm","twitter_misc":{"Est. reading time":"37 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/","url":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/","name":"Streaming Panel User Manual - Caster.fm Help Center","isPartOf":{"@id":"https:\/\/www.caster.fm\/help\/#website"},"datePublished":"2026-04-25T11:52:23+00:00","dateModified":"2026-04-25T14:56:06+00:00","breadcrumb":{"@id":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.caster.fm\/help\/pro-plan\/user-manuals\/streaming-panel-user-manual\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.caster.fm\/help\/"},{"@type":"ListItem","position":2,"name":"Streaming Panel User Manual"}]},{"@type":"WebSite","@id":"https:\/\/www.caster.fm\/help\/#website","url":"https:\/\/www.caster.fm\/help\/","name":"Caster.fm Help Center","description":"","publisher":{"@id":"https:\/\/www.caster.fm\/help\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.caster.fm\/help\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.caster.fm\/help\/#organization","name":"Caster.fm","url":"https:\/\/www.caster.fm\/help\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.caster.fm\/help\/#\/schema\/logo\/image\/","url":"https:\/\/www.caster.fm\/help\/wp-content\/uploads\/2023\/04\/CasterFmRedLogo_1svg.svg","contentUrl":"https:\/\/www.caster.fm\/help\/wp-content\/uploads\/2023\/04\/CasterFmRedLogo_1svg.svg","width":"1024","height":"1024","caption":"Caster.fm"},"image":{"@id":"https:\/\/www.caster.fm\/help\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ShoutcastServer","https:\/\/x.com\/CasterFm"]}]}},"_links":{"self":[{"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb\/334","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/comments?post=334"}],"version-history":[{"count":1,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb\/334\/revisions"}],"predecessor-version":[{"id":335,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb\/334\/revisions\/335"}],"wp:attachment":[{"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/media?parent=334"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb-category?post=334"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.caster.fm\/help\/wp-json\/wp\/v2\/ht-kb-tag?post=334"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}