Les rapports de diffusion sont archivés chaque mois, à raison d'un fichier JSON par mois contenant les journaux de lecture de tous les lecteurs. Les journaux historiques datant de plus d'un mois peuvent être récupérés depuis S3 et fournis au client sur simple demande.
Logs Wavespark
Types de logs et de contenus remontés par les players, filtrage et export de l’historique de diffusion, et logs archivés.Valeurs de log_type
Trois types de logs sont produits aujourd'hui par les players.
| log_type | Contenu |
|---|---|
diffusion | Tout ce que le player diffuse : lecture en cours, fallback, absence de lecture (filtre « Broadcast » dans Wavespark) |
project | Changement de projet publié depuis Wavespark sur le player |
system | Uniquement les changements de date/heure, fuseau horaire et serveurs NTP |
Valeurs de content_type
Les annonces insérés entre les titres ont le content_type spot, ce qui permet de les distinguer et de les exclure des déclarations.
| log_type | content_type | Signification | Filtre dans Wavespark |
|---|---|---|---|
diffusion | music | Titre musical diffusé (titre, artiste, album, durée, ISRC si disponible) | Broadcast > Music Programs > Tracks |
diffusion | radio | Webradio diffusée (nom et URL du flux) | Broadcast > Music Programs > Webradios |
diffusion | spot | Programme publicitaire : annonces et messages insérés entre les titres | Broadcast > Advert programs |
diffusion | event | Programme de type scénario, uniquement musical (pas d'annonces) | Broadcast > Scenario |
diffusion | idle | Moment où le player ne diffuse rien | Broadcast > No playback |
diffusion | fallback | Playlist de secours lue quand la webradio est indisponible | Broadcast (Warning) > Music Programs > Webradios |
project | swap | Changement de projet (nom et version du projet) | Project |
system | dateTime | Changement de date/heure, fuseau ou serveurs NTP (valeurs avant / après) | System |
Exemples de logs
Chaque log a la même structure : un log_type, une date de création en UTC, le fuseau du player, et un bloc content dont le content_type indique la nature du contenu. Les valeurs ci-dessous sont des exemples.
Diffusion d'un titre musical (music)
{
"log_type": "diffusion",
"created_time": "2025-08-31T18:48:51.000000Z",
"timezone": "Europe/Paris",
"content": {
"content_id": "0456f7ab-4bce-447b-bd4f-1303449df861",
"content_type": "music",
"task_title": "Programme musical journée",
"criticity": "info",
"content_details": {
"title": "Resistance",
"artist": "Muse",
"album": "The Resistance",
"duration": "5:46"
}
}
}
Diffusion d'une annonce (spot)
Une annonce insérée entre deux titres remonte avec content_type: "spot" ; c'est ce champ qui permet de l'exclure.
{
"log_type": "diffusion",
"created_time": "2025-08-31T18:54:37.000000Z",
"timezone": "Europe/Paris",
"content": {
"content_id": "7c1e2a90-3f4b-4d8e-9a61-5b2c8d0e4f13",
"content_type": "spot",
"task_title": "Annonces magasin",
"criticity": "info",
"content_details": {
"title": "Promo rentrée",
"duration": "0:30"
}
}
}
Diffusion d'une webradio (radio)
{
"log_type": "diffusion",
"created_time": "2025-08-30T20:16:33.000000Z",
"timezone": "Europe/Paris",
"content": {
"content_id": "e2d8e351-84fb-4fc9-83b4-2b14bbcc2fd4",
"content_type": "radio",
"task_title": "radio",
"criticity": "info",
"content_details": {
"title": "RFM",
"url": "https://rfm.lmn.fm/rfm.mp3"
}
}
}
Changement de projet (project / swap)
{
"log_type": "project",
"created_time": "2025-10-06T09:12:40.000000Z",
"timezone": "Europe/Paris",
"content": {
"content_id": "1842",
"content_type": "swap",
"criticity": "info",
"content_details": {
"title": "Projet Magasin Paris - V3"
}
}
}
Changement de date/heure (system / dateTime)
Le log garde la configuration avant (old) et après (new) le changement.
{
"log_type": "system",
"created_time": "2025-10-07T12:17:16.507Z",
"timezone": "Europe/Berlin",
"content": {
"content_type": "dateTime",
"criticity": "info",
"content_details": {
"old": {
"auto": true,
"servers": ["0.pool.ntp.org", "1.pool.ntp.org", "2.pool.ntp.org"],
"timezone": "Europe/Berlin"
},
"new": {
"auto": true,
"servers": ["0.pool.ntp.org", "1.pool.ntp.org"],
"timezone": "Europe/Berlin"
}
}
}
}
Filtrer et exporter la musique sans les annonces
L'export CSV reprend exactement les filtres appliqués dans la vue Logs du player. Pour obtenir uniquement la musique diffusée :
- Dans Wavespark, ouvrir les paramètres du player, puis la vue Logs.
- Ouvrir Filters et choisir le type Broadcast.
- Cocher Music Programs (Tracks et Webradios) et Scenario, et décocher Advert programs et No playback.
- Choisir la période et le fuseau horaire (Player par défaut, Local ou UTC), puis cliquer sur Apply.
- Cliquer sur Export pour télécharger le CSV filtré.
Logs archivés (historique de diffusion)
Tout l'historique de diffusion (Proof of Play) est stocké dans un stockage cloud (S3), archivé par mois. Les logs de plus d'un mois ne sont plus dans Wavespark, mais peuvent être extraits du S3 et fournis au client sur demande.
Organisation des fichiers
- Un fichier JSON par mois, nommé
MM-AAAA.json(ex.10-2025.jsonpour octobre 2025). - Chaque fichier contient les logs de tous les players du mois, tous types confondus (
diffusion,project,system). - Le fichier est un tableau JSON : un objet par log, trié par
idcroissant.
Structure d'un log archivé
Un log archivé a le même contenu qu'un log de Wavespark, avec en plus l'identification du player et de la société.
| Champ | Description | Exemple |
|---|---|---|
id | Identifiant unique du log | 2283731 |
device_id | Identifiant interne du player | 1153 |
device_sn | Numéro de série du player | 063236 |
company_id | Identifiant de la société | 158 |
log_type | diffusion, project ou system | diffusion |
created_time | Date et heure du log, en UTC | 2025-10-01T00:57:47.851000Z |
timezone | Fuseau horaire du player (peut être null) | Europe/Paris |
content | Détail du log : content_type, criticity, content_details, etc. | voir exemples ci-dessus |
Exemple réel extrait du fichier 10-2025.json :
{
{
"id": 2283731,
"device_id": 1153,
"device_sn": "063236",
"company_id": 158,
"log_type": "diffusion",
"created_time": "2025-10-01T00:57:47.851000Z",
"timezone": "Europe/Paris",
"content": {
"content_id": "3fc8e99b-d4df-4570-856a-9e282b5bac05",
"content_type": "music",
"task_title": "08",
"criticity": "info",
"content_details": {
"title": "01239 - Kelly Reid",
"artist": "Hardkandy",
"album": "LotB1300",
"duration": "5:35"
}
}
},
{
"id": 2409964,
"device_id": 1697,
"device_sn": "200065",
"company_id": 158,
"log_type": "diffusion",
"created_time": "2025-10-27T13:32:13.747000Z",
"timezone": "Africa\/Casablanca",
"content": {
"content_id": "29709fba-aa44-45e5-a630-e04e879ad551",
"content_type": "radio",
"task_title": "vrai radio",
"criticity": "info",
"content_details": {
"title": "Skyrock",
"url": "https:\/\/icecast.skyrock.net\/s\/natio_mp3_128k?tvr_name=tunein16&tvr_section1=128mp3"
}
}
},...
}
Cet article a-t-il été utile ?
C'est super !
Merci pour votre commentaire
Désolé ! Nous n'avons pas pu vous être utile
Merci pour votre commentaire
Commentaires envoyés
Nous apprécions vos efforts et nous allons corriger l'article