TunepingBot/0.1 (+https://tuneping.com/bot)
Hai trovato TunepingBot nei tuoi log. Ecco tutto quello che fa.
Legge il titolo pubblico “now playing” della tua stazione ogni 20–60 secondi, pochi KB alla volta, e non tocca mai l'audio. Se preferisci di no, basta uno qualsiasi dei tre opt-out qui sotto, in modo permanente, entro 24 ore. Senza fare domande.
To: [email protected] Subject: Opt-out Body: stream.example.net
Invia l'host o l'URL dello stream a [email protected]. Ricevi una conferma quando è stato rimosso.
User-agent: TunepingBot Disallow: /
Per schema, host e porta. Funziona anche un vero gruppo User-agent: * (vedi sotto).
X-Robots-Tag: noindex
Sull'endpoint di stato o sull'URL dello stream. Un 401 o un 403 ha lo stesso effetto.
In breve
| User-Agent | TunepingBot/0.1 (+https://tuneping.com/bot) |
|---|---|
| IPv4 | 167.233.123.27 |
| IPv6 | 2a01:4f8:c016:4026::1 |
| DNS inverso | poller.tuneping.com, con conferma diretta. Elenco leggibile dalle macchine su /bot/ips.json. |
| Frequenza | Una richiesta per stazione ogni 20–60 s; ogni 5 min quando il titolo non cambia da 30 min. Al massimo 2 connessioni simultanee per IP di server. |
| Byte per controllo | Qualche centinaio di byte per un endpoint di stato; fino a circa 16 KB per un blocco di metadati nello stream. |
| Entrata in vigore | Entro 24 ore, di solito pochi minuti. Permanente finché non chiedi di rientrare. |
| Gestore | Tuneping, vedi le note legali. Abusi: [email protected]. |
Chi siamo
Tuneping è un piccolo servizio che mantiene un indice in tempo reale di ciò che trasmettono le web radio, così che ascoltatori e sviluppatori possano cercare una canzone su più stazioni, consultare lo storico dei passaggi di una stazione o essere avvisati quando inizia una canzone della propria wishlist. L'indice è costruito interamente dai metadati del titolo che le stazioni pubblicano già per ogni ascoltatore. Il server gestisce solo metadati; non conserva, ritrasmette né ridistribuisce mai audio.
Cosa richiede
/robots.txtsull'host dello stream, in cache per un massimo di 24 ore- L'endpoint di stato pubblico del server di streaming, quando esiste (nelle varianti JSON, XML o testo semplice, per esempio
/status-json.xsl,/stats,/currentsong,/7.html; una volta all'ora l'elenco dei brani trasmessi di recente, dove il server lo offre) - Altrimenti l'URL pubblico dello stream stesso con
Icy-MetaData: 1, letto solo finché non arriva il primo blocco di metadati nello stream, poi chiuso Connection: close, HTTP/1.1 semplice, timeout di 5 s per la connessione e di 10 s in totale, al massimo 5 redirect
Cosa non fa mai
- Leggere audio oltre l'unico intervallo di metadati necessario a trovare il titolo (circa 16 KB, scartati man mano che arrivano)
- Registrare, conservare, ritrasmettere o ridistribuire audio in qualsiasi forma
- Richiedere percorsi di amministrazione, pagine web diverse dagli endpoint di stato elencati sopra o qualsiasi cosa richieda credenziali
- Interrogare playlist o segmenti HLS
- Scaricare loghi o copertine
- Chiamare il contatore di clic dell'elenco
Preferiamo l'endpoint di stato ogni volta che una stazione ne ha uno, perché ti costa qualche centinaio di byte invece di un breve flusso di audio.
Con quale frequenza, e come si comporta
- Intervallo: ogni 20 s per gli endpoint di stato leggeri, ogni 60 s per i metadati nello stream (30 s per un piccolo numero di stazioni che un utente ha chiesto esplicitamente di seguire). Le pagine di stato grandi rispetto alle stazioni che servono vengono interrogate proporzionalmente meno spesso, così una stazione non costa mai più byte al minuto di un controllo nello stream. Le stazioni il cui titolo non cambia da 30 minuti scendono a una volta ogni 5 minuti. Gli intervalli hanno un jitter del 10 % in più o in meno, così le stazioni sullo stesso server non vengono colpite tutte nello stesso istante.
- Concorrenza: al massimo 2 connessioni aperte verso uno stesso indirizzo IP di server alla volta. Molte stazioni dietro un unico indirizzo vengono interrogate meno spesso, non in parallelo.
- robots.txt: rispettato per il token
TunepingBote per*, per schema, host e porta. Un'eccezione: diversi server di streaming includono un robots.txt predefinito che è esattamenteUser-agent: */Disallow: /e nient'altro. Trattiamo questa impostazione predefinita del server come "nessun robots.txt", perché non è qualcosa che ha scritto il gestore della stazione; un gruppoTunepingBot, o qualsiasi gruppo*con più di quell'unica riga, viene rispettato per intero. Un 5xx su robots.txt viene trattato come "disallow" finché non può essere scaricato di nuovo. - Back-off:
429e503conRetry-Aftervengono rispettati; in caso di errori di connessione l'attesa cresce in modo esponenziale (1, 2, 4, 8 minuti, fino a 24 ore). Dopo 7 giorni consecutivi di errori il polling si ferma definitivamente. - Blocchi: se tutte le connessioni verso un indirizzo iniziano ad andare in timeout, mettiamo in pausa quell'indirizzo per un'ora e riceviamo un avviso. Un
401o un403sull'URL dello stream, o qualsiasi firewall o verifica anti-bot, viene trattato come un opt-out permanente di quell'host. - Connessioni:
Connection: close, HTTP/1.1 semplice, chiusura pulita con un FIN dopo la lettura del blocco di metadati; timeout di 5 s per la connessione e di 10 s in totale; redirect seguiti per al massimo 5 passaggi.
Come verificare che siamo davvero noi
Le richieste arrivano dai due indirizzi nella tabella qui sopra e da nessun altro. Il DNS inverso di entrambi gli indirizzi è poller.tuneping.com, e quel nome si risolve in avanti sugli stessi indirizzi, quindi funziona un controllo di DNS inverso con conferma diretta. Qualsiasi cosa si presenti come TunepingBot da un altro indirizzo non siamo noi; segnalalo ad [email protected]. L'elenco aggiornato è pubblicato anche su tuneping.com/bot/ips.json; annunceremo le modifiche su questa pagina almeno una settimana prima che entrino in vigore.
Come chiedere l'opt-out
Basta uno qualsiasi dei tre modi in cima a questa pagina. Vengono rispettati tutti e tre, gli opt-out sono permanenti e hanno effetto entro 24 ore (in pratica lo scheduler li recepisce in pochi minuti). Senza domande, senza bisogno di giustificazioni. Funziona anche un gruppo generico User-agent: * in robots.txt, purché non sia solo l'impostazione predefinita di una riga fornita dal software del tuo server (vedi sopra). Restituire 401 o 403 sull'URL dello stream, o mettere davanti una verifica del firewall, ha automaticamente lo stesso effetto.
Un opt-out rimuove la stazione dal polling, dall'API e da ogni pagina pubblica, e la inserisce in una lista di esclusione che lo scheduler consulta prima di ogni singola richiesta. Se in seguito vuoi rientrare, scrivi allo stesso indirizzo.
Cosa conserviamo
Per ogni stazione: le stringhe del titolo attuale e di quelli passati esattamente come pubblicate, l'orario in cui le abbiamo viste e la scheda della stazione nell'elenco (nome, URL dello stream, paese, codec). Per correttezza e per gestire gli abusi conserviamo anche un log delle nostre connessioni (orario, IP e porta del tuo server, codice di stato, numero di byte) per 7 giorni, aggregato per ora per 30 giorni, così possiamo dirti con precisione quali richieste abbiamo fatto, se lo chiedi. Non conserviamo audio, dati degli ascoltatori né nulla di personale. Il bot non raccoglie dati personali; gli unici dati personali che trattiamo sono i recapiti di chi ci scrive (vedi la privacy).
Opt-in, o correggi ciò che mostriamo
Se preferisci che leggiamo un endpoint particolare, o pubblichi i titoli in un posto che ci è sfuggito, scrivi a [email protected] e cambieremo. Se il nome o i dettagli della tua stazione sono sbagliati, lo stesso indirizzo li corregge.
Da dove viene l'elenco delle stazioni
Dati dell'elenco delle stazioni da radio-browser.info, CC0 (dati della comunità di pubblico dominio). Il bot non chiama mai il contatore di clic dell'elenco. I metadati musicali sono confrontati con MusicBrainz (dati principali CC0).
Contatti e abusi
- Gestori di stazioni, opt-out, correzioni: [email protected]
- Segnalazioni di abusi: [email protected]
- Tutto il resto: [email protected]
Leggiamo queste caselle ogni giorno e cerchiamo di rispondere entro 24 ore. I dati del gestore sono nella pagina delle note legali.
Registro delle modifiche
| 2026-10 | TunepingBot/0.1, prima versione. Uscita da 167.233.123.27 e 2a01:4f8:c016:4026::1, DNS inverso poller.tuneping.com. |