Vad används den till?
Radion spelar låtar från de AI PLAYLIST-spellistor som finns i systemet. Lyssnare använder startsidan som en enkel livespelare. Admin använder panelen för att välja vilken spellista radion ska hämta musik från.
Synka spellistor
Admin har knappen Synka nu för omedelbar import. Systemet söker dessutom automatiskt varje natt. Nya listor ägarverifieras mot AI PLAYLISTs Spotify-profil innan de läggs till; befintliga listor raderas aldrig av en tillfällig Spotify-störning.
Varför finns den?
För att återskapa känslan av klassisk webbradio, men med modern mobilkänsla: en publik radiosignal, live-lyssnare, topplistor, delning, covers och en radiokänsla runt musiken.
Grundregler
- Radion ska bara använda AI PLAYLIST-spellistorna som lagts in.
- Musiken laddas inte upp på sidan; sidan styr och visar radiosignalen.
- Huvudspelaren ska inte stoppas av admin, topplista, data eller manual — de öppnas som overlays.
- Topplistan länkar vidare till respektive låt på Spotify och kan filtreras i flera lägen.
Topplistor
Topplistan är byggd som ett levande radioarkiv, inte bara en enkel lista. Den visar både hur mycket radion faktiskt spelar och vilka låtar och artister lyssnarna reagerar på.
- Mest spelade visar låtarna med flest spelningar på radion.
- 🔥 Heta låtar använder en evidensvägd heat score där likes, antal spelningar och hur färsk responsen är räknas tillsammans. En ensam like på en enda spelning kan därför inte ensam dominera listan.
- Mest gillade visar låtarna med flest tummar upp.
- Mest gillade artister summerar likes över artistens samtliga låtar och kan filtreras per genre.
- Nyaste gillade lyfter nya låtar som redan fått likes.
Tummar upp / ner
På lyssnarvyn finns en tumme ner till vänster om play och en tumme upp till höger. Tumme upp räknas som en positiv röst på låten som spelas just nu. Tumme ner påverkar aldrig någon ranking negativt och räknas inte som minus — den är bara en direkt lyssnarreaktion.
- En lyssnare/enhet kan ge en tumme upp per låt.
- Likes syns i topplistorna tillsammans med antal spelningar.
- Röstningen ska kännas fysisk med subtil animation när valet görs.
Publik momentum
Liveantalet visar alltid exakt hur många verkliga enheter som tar emot radiosignalen just nu. När dagens verkliga aktivitet är starkare visas en diskret andra rad med korrekt namngivet mått.
- Unika lyssnare idag bygger på en anonym, beständig enhetsidentitet när radion faktiskt startas.
- Lyssningsstarter, reaktioner och radiospelningar tidsstämplas separat.
- Inga simulerade lyssnare läggs till i liveantalet eller momentumraden.
- Superadmin kan dölja den publika raden utan att stoppa historiken.
Musikreaktiv visualisering
Vågorna i lyssnarvyn följer radiosignalens frekvenser. Den främre vågen reagerar främst på kick, bas och snabba anslag; de tunnare lagren följer lågmid, mellanregister och diskant.
- Analysen är passiv och ändrar inte Icecast-, Spotify- eller sändningskedjan.
- På iPhone och iOS-hemskärmsappen hämtas en lätt realtidsmätning av samma radiosignal eftersom Safari begränsar direkt ljudanalys.
- Visualiseringen återansluter när appen väcks eller blir synlig igen.
- Om analysen tillfälligt saknas används automatiskt den mjuka reservanimationen utan att ljudet stoppas.
Automatisk återanslutning
När en lyssnare tappar mobiltäckning eller Wi-Fi behåller spelaren lyssningsavsikten och kopplar automatiskt tillbaka till den aktuella livesignalen.
- Korta avbrott får en mjuk bufferperiod innan en ny anslutning tvingas fram.
- Under diktering och systemljud behåller webbappen samma ljudspelare och streamadress och väntar på iOS bekräftade signal att mikrofonen har släppts.
- När WebKit rapporterar att systemavbrottet verkligen är slut fortsätter samma radiosession även om radioappen fortfarande ligger i bakgrunden.
- Om iOS inte levererar en säker avslutningssignal försöker webbappen igen när radiosidan blir synlig, utan att starta ljud mitt under dikteringen.
- Längre nätavbrott använder snabba försök som sedan glesas ut för att skydda både batteri och server.
- När nätet återkommer görs ett omedelbart nytt försök utan sidladdning och utan en andra ljudspelare.
- Ett avsiktligt paus-tryck stänger alltid av automatiken tills lyssnaren trycker play igen.
- Om iOS efter en full omladdning kräver en ny användargest visas en enda tydlig återanslutningsknapp.
Verifierad signal
Om en låt spelas men ingen kan visa att det hände – vilket värde finns då kvar? APR Signal Ledger ser till att registrerad airplay inte passerar obemärkt. Varje spelning kan lämna ett kryptografiskt Proof of Airplay med spellisteursprung och samlade likes.
- Verified-ikonen bredvid spellistan öppnar ett bottom sheet ovanpå radion med certifikat, verifierade spelningar, likes och fullständig batchhash; ljudet fortsätter utan avbrott.
- Dagliga datapaket binds samman med en hashkedja och ett Merkle-bevis så att varje låts inkludering kan kontrolleras.
- Ett förseglat bevis kan inte skrivas om. Ny aktivitet skapar en ny snapshot medan den tidigare historiken ligger kvar.