Événements vidéo
La spécification vidéo de Commanders Act vous permet de définir comment un client interagit avec vos vidéos et le contenu publicitaire associé.
Cette documentation détaille les conventions et les bonnes pratiques pour l'envoi d'événements lors du suivi des vidéos. Le document clarifie la structure et la classification de ces événements, qui se répartissent en quatre catégories : Lecture
, Contenu
, Publicités
et Paramètres vidéo
.
Lecture
Les événements de lecture sont liés à la lecture effective du contenu vidéo et suivent des informations sur le lecteur vidéo.
Par exemple, lorsqu'un client lance une vidéo sur une application, un événement Video Playback Started est envoyé avec un session_id unique. Tous les événements ultérieurs générés à partir de cette session sont liés au même session_id.
Si une page web comporte deux lecteurs vidéo, il y aura deux sessions distinctes et des session_ids associés. Cependant, si deux vidéos distinctes sont lues sur le même lecteur vidéo, elles seront toujours considérées comme une seule session avec deux contenus associés.
Propriétés des événements de lecture
Tous les événements de lecture partagent les mêmes propriétés qui décrivent l'état actuel du lecteur vidéo.
Le tableau suivant répertorie en détail toutes les propriétés de cet objet d'événement de lecture :
video_session_id
String
Oui
Un ID unique qui relie tous les événements générés à partir d'une session de lecture spécifique. Ces événements incluent la lecture, le contenu et les événements publicitaires.
video_title
String
Non
Indique le titre du contenu vidéo.
video_category
String
Non
Indique le genre de l'actif de contenu vidéo.
publisher
String
Non
Indique l'éditeur / créateur / auteur de l'
actif de contenu vidéo.
content_asset_id
String
Array [String]
Oui
ID(s) d'actif(s) de contenu de la/les vidéo(s) en cours de lecture ou
sur le point d'être lue(s).
Pour Video Playback Started
événements, un tableau
d'ID d'actifs uniques doit être envoyé. Pour les autres
événements de lecture, un ID d'actif de contenu unique au moment de l'événement doit être envoyé.
content_pod_id
String
Array [String]
Non
ID(s) de pod de contenu de la/les vidéo(s) en cours de lecture ou
sur le point d'être lue(s).
Pour Video Playback Started
événements, un tableau
d'ID de pod uniques doivent être envoyés. Pour les autres
événements de lecture, un ID de pod de contenu unique associé au pod de contenu en cours au moment de l'événement doit être envoyé.
ad_asset_id
String
Array [String]
Non
ID(s) d'actif(s) publicitaire(s) de la/les vidéo(s) en cours de lecture ou
sur le point d'être lue(s).
Pour Video Playback Started
événements, un tableau
d'ID d'actifs publicitaires uniques doivent être envoyés. Pour les autres
événements de lecture, un ID d'actif publicitaire unique au moment de l'événement doit être envoyé.
ad_pod_id
String
Array [String]
Non
ID(s) de pod publicitaire de la/les vidéo(s) en cours de lecture ou
sur le point d'être lue(s).
Pour Video Playback Started
événements, un tableau
d'ID de pod publicitaire uniques doivent être envoyés. Pour les autres
événements de lecture, un ID de pod de contenu unique associé au pod publicitaire en cours au moment de l'événement doit être envoyé.
ad_type
String
Non
Indique le type de publicité en cours de lecture au moment de l'
événement. Les valeurs peuvent être 'pre-roll
', ' mid-roll
', ou
'post-roll
'.
cursor_position
Integer
Oui
Indique la position actuelle de la tête de lecture
en secondes. Elle inclut la durée de toutes les publicités vues.
Non requis dans video_buffer_start
et video_buffer_complete
événements
Si la lecture est une diffusion en direct, référez-vous à la
documentation de la destination concernée pour les étapes
sur la façon de transmettre correctement la position de la tête de lecture.
seek_position
Integer
Non
Indique la position de la tête de lecture vers laquelle l'
utilisateur effectue une recherche.
Applicable uniquement sur les video_seek_start
et video_seek_complete
événements. Sur les video_seek_complete
événements,
le seek_position
doit être égal à cursor_position
.
total_length
Integer
Oui
Indique la durée totale de la lecture vidéo
en secondes. Inclut la durée totale de tout
le contenu et les publicités inclus dans la session.
Définir à null
en cas de lecture en direct.
bitrate
Integer
Non
Débit binaire de la lecture vidéo, indiqué en kbps
framerate
Float
Non
Indique la fréquence d'images moyenne de la lecture
vidéo en fps
.
video_player
String
Non
Indique le nom du lecteur vidéo utilisé pour la
lecture. Exemple : youtube
, vimeo
, etc.
sound
Integer
Non
Indique le niveau sonore de la lecture vidéo.
La plage va de 0 à 100, où 0 représente muet
et 100 le volume maximal.
full_screen
Boolean
Non
Définir à true
si la lecture est en mode plein écran.
ad_enabled
Boolean
Non
Définir à false
si l'utilisateur utilise un bloqueur de publicités.
Si l'utilisateur peut voir vos publicités vidéo, il est défini sur
true
.
image_quality
String
Non
Spécifie la qualité de la vidéo. Exemples : 'hd1080', 'highres'
interruption_method
String
Non
Pour les Video Playback Interrupted
événements,
vous pouvez envoyer cette propriété indiquant comment la
lecture a été interrompue.
Quelques exemples incluent 'device_lock', 'call' et
'browser_redirect'.
livestream
Boolean
Non
Définir à true
en cas de lecture en direct,
sinon définir sur false
.
Événements de lecture
Cette section détaille tous les événements de lecture vidéo.
Pour plus d'informations sur chacune des propriétés associées à ces événements, référez-vous à la Playback Event Properties Records
Video Playback Started
Cet événement est associé à l'action de l'utilisateur consistant à appuyer sur le bouton play du lecteur vidéo pour démarrer la lecture.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_start",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "pre-roll",
"cursor_position": 0,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 100,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Paused
Cet événement correspond à l'action de l'utilisateur consistant à mettre la lecture vidéo en pause.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_pause",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0123370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"cursor_position": 10,
"total_length": 600,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 100,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Interrupted
Cet événement est envoyé lorsque la lecture vidéo s'arrête involontairement. Perte de réseau, fermeture du navigateur par l'utilisateur, redirection, etc. sont quelques raisons courantes. Vous pouvez transmettre la cause dans la propriété interruption_method
.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_error",
"user": {},
"video_session_id": "12345",
"content_asset_id": ["0144370"],
"content_pod_id": ["CAA", "CAB"],
"cursor_position": 0,
"total_length": 300,
"bitrate": 128,
"framerate": 30.00,
"video_player": "youtube",
"sound": 68,
"full_screen": true,
"ad_enabled": true,
"image_quality": "hd1080",
"livestream": false,
"interruption_method":"network_loss"
}
Video Playback Buffer Started
Ceci correspond à l'événement de mise en mémoire tampon du contenu ou d'une publicité.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_buffer_start",
"user": {},
"video_session_id": "54321",
"content_asset_id": ["098765"],
"content_pod_id": ["CAD", "CAE"],
"cursor_position": 10,
"total_length": 600,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 100,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Buffer Completed
Ceci correspond à l'événement lorsque la lecture termine la mise en mémoire tampon du contenu ou d'une publicité.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_buffer_complete",
"user": {},
"video_session_id": "56789",
"content_asset_id": ["123456"],
"content_pod_id": ["CAF", "CAG"],
"cursor_position": 20,
"total_length": 400,
"bitrate": 512,
"framerate": 60.00,
"video_player": "dailymotion",
"sound": 100,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Seek Started
Cet événement est envoyé lorsqu'un utilisateur effectue manuellement une recherche vers une certaine position de curseur du contenu vidéo ou d'une publicité pendant la lecture. La cursor_position
propriété indique d'où l'utilisateur effectue la recherche (temps en secondes) et la seek_position
indique la position du curseur dans la lecture vers laquelle l'utilisateur recherche.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_seek_start",
"user": {},
"video_session_id": "abcdef",
"content_asset_id": ["123456"],
"content_pod_id": ["XYZ", "XYA"],
"cursor_position": 59,
"seek_position": 150,
"total_length": 360,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 80,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Seek Completed
Cet événement est envoyé après qu'un utilisateur ait recherché manuellement une certaine position de curseur de la vidéo ou de la publicité dans la lecture. La cursor_position
propriété indique où l'utilisateur reprend la lecture.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_seek_complete",
"user": {},
"video_session_id": "abcdef",
"content_asset_id": ["123456"],
"content_pod_id": ["XYZ", "XYA"],
"cursor_position": 59,
"seek_position": 150,
"total_length": 360,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 80,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Resumed
Cet événement est envoyé après que l'utilisateur ait repris la lecture vidéo après l'avoir mise en pause.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_resume",
"user": {},
"video_session_id": "abcdef",
"content_asset_id": ["123456"],
"content_pod_id": ["XYZ", "XYA"],
"cursor_position": 150,
"total_length": 360,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 80,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Video Playback Completed
Cet événement est envoyé une fois la lecture terminée et lorsque la session de pod est achevée. Notez que la cursor_position
propriété a la même valeur que la total_length
utilisateur.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_complete",
"user": {},
"video_session_id": "abcdef",
"content_asset_id": ["123456"],
"content_pod_id": ["XYZ", "XYA"],
"cursor_position": 150,
"total_length": 360,
"bitrate": 256,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 80,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Contenu
Un pod fait référence à une partie / groupe / segment du contenu vidéo ou de la publicité au sein de la lecture.
Supposons qu'une session de lecture vidéo comporte une vidéo et une publicité mid-roll. Cela signifie que la publicité mid-roll divise la lecture en deux pods de contenu distincts. La publicité mid-roll est incluse dans un seul pod publicitaire.
Le flux est le suivant :
L'utilisateur démarre et complète le premier pod de contenu
L'utilisateur démarre et complète la publicité
L'utilisateur démarre et complète le second pod de contenu
Tous ces événements dans le flux se déroulent au sein d'une même lecture vidéo.
Propriétés des événements de contenu
Tous les événements de contenu partagent les mêmes propriétés qui décrivent l'état actuel du contenu vidéo visionné par l'utilisateur pendant la lecture.
Le tableau suivant répertorie en détail toutes les propriétés de cet objet d'événement de lecture :
video_session_id
String
Oui
Un ID unique qui relie tous les événements générés à partir d'une session de lecture spécifique. Ces événements incluent la lecture, le contenu et les événements publicitaires.
content_asset_id
String
Oui
Indique l'ID unique de l'actif de contenu vidéo.
content_pod_id
String
Non
Indique l'ID unique du pod de contenu vidéo.
video_title
String
Non
Indique le titre du contenu vidéo.
video_description
String
Non
Décrit brièvement l'actif de contenu vidéo.
keywords
Array [String]
Non
Indique les mots-clés pertinents associés à la
catégorisation du contenu vidéo
season
String
Non
Indique le numéro de saison, si applicable.
episode
String
Non
Indique le numéro d'épisode, si applicable.
video_category
String
Non
Indique le genre de l'actif de contenu vidéo.
program
String
Non
Indique le nom du programme / spectacle dont
le contenu vidéo fait partie.
publisher
String
Non
Indique l'éditeur / créateur / auteur de l'
actif de contenu vidéo.
channel
String
Non
Indique la chaîne sur laquelle le contenu vidéo
est diffusé.
full_episode
Boolean
Non
Définir à true
l'actif de contenu vidéo est un épisode complet.
livestream
Boolean
Non
Si le contenu vidéo est une diffusion en direct, ceci est défini sur
true
.
airdate
ISO 8601
Chaîne de date
Non
Indique la date originale de diffusion / publication
du contenu vidéo.
cursor_position
Integer
Oui
Indique la position actuelle de la tête de lecture dans le
contenu vidéo en secondes. Cela n'inclut pas
les publicités lues pendant cette durée.
En cas de diffusions en direct, référez-vous à la documentation de la destination concernée pour des détails sur la manière de transmettre cette propriété.
total_length
Integer
Oui
La durée totale du contenu vidéo en
secondes. Cela n'inclut pas les publicités incluses
dans la lecture de cet actif de contenu.
Pour la lecture en livestream, cela doit être défini sur null
.
bitrate
Integer
Non
Indique le débit binaire actuel en kbps
.
framerate
Float
Non
Indique la fréquence d'images en fps
.
Événements de contenu
Cette section détaille tous les événements de contenu vidéo.
Pour plus d'informations sur chacune des propriétés associées à ces événements, référez-vous à la Propriétés des événements de contenu Records
Video Content Started
Cet événement est envoyé une fois que l'utilisateur commence à lire un segment de contenu vidéo au sein d'une lecture.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_content_start",
"video_session_id": "98765",
"content_asset_id": "456",
"content_pod_id": "XYZ",
"program": "The Lion King",
"video_title": "Act 1",
"video_description": "Invented description",
"season": "1",
"episode":"14",
"channel":"NBC",
"livestream":false,
"airdate":"2022-12-20",
"cursor_position": 5,
"total_length": 200,
"video_category": "Animation",
"publisher": "Disney",
"full_episode": false,
"keywords": ["lion", "savannah", "circle of life"],
"user": {}
}
Video Content Playing
Ces événements sont envoyés périodiquement comme des heartbeats pour indiquer la durée de vidéo regardée par l'utilisateur, déterminée par le cursor_position
utilisateur.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_content_playing",
"video_session_id": "56789",
"content_asset_id": "789",
"content_pod_id": "ABC",
"program": "The Jungle Book",
"video_title": "Act 2",
"video_description": "Invented description",
"season": "2",
"cursor_position": 123,
"total_length": 400,
"video_category": "Adventure",
"publisher": "Disney",
"full_episode": false,
"framerate": 60,
"bitrate": 4500,
"keywords": ["jungle", "animals", "mowgli"],
"user": {}
}
Video Content Quarter Reached
Ces événements sont envoyés lorsqu'un quart de la vidéo est atteint, déterminé par le cursor_position
utilisateur.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_content_quarter_reached",
"video_session_id": "56789",
"content_asset_id": "789",
"content_pod_id": "ABC",
"program": "The Jungle Book",
"video_title": "Act 2",
"video_description": "Invented description",
"season": "2",
"cursor_position": 123,
"total_length": 400,
"video_category": "Adventure",
"publisher": "Disney",
"full_episode": false,
"keywords": ["jungle", "animals", "mowgli"],
"user": {}
}
Video Content Completed
Cet événement est envoyé une fois le segment vidéo au sein de la lecture terminé. Notez que le cursor_position
propriété a la même valeur que la total_length
utilisateur.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_content_complete",
"video_session_id": "01234",
"content_asset_id": "111",
"content_pod_id": "DEF",
"program": "Tarzan",
"video_title": "Finale",
"video_description": "Invented description",
"season": "4",
"cursor_position": 300,
"total_length": 300,
"video_category": "Adventure",
"publisher": "Disney",
"full_episode": true,
"keywords": ["jungle", "apes", "tarzan"],
"user": {}
}
Publicités
Propriétés des événements publicitaires
Tous les événements publicitaires partagent les mêmes propriétés qui décrivent l'état actuel du contenu publicitaire vidéo avec lequel un utilisateur interagit pendant la lecture.
Le tableau suivant répertorie en détail toutes les propriétés de cet objet d'événement publicitaire :
video_session_id
String
Oui
Un ID unique qui relie tous les événements générés à partir d'une session de lecture spécifique. Ces événements incluent la lecture, le contenu et les événements publicitaires.
ad_asset_id
String
Oui
Indique l'ID unique de l'actif publicitaire.
ad_pod_id
String
Oui
Indique l'ID unique du pod publicitaire.
pod_position
Integer
Non
Indique la position de l'actif publicitaire par rapport
aux autres publicités dans le même pod.
ad_type
String
Non
Indique le type de publicité en cours de lecture au moment de l'
événement. Les valeurs peuvent être 'pre-roll
', ' mid-roll
', ou
'post-roll
'.
pod_length
Integer
Non
Indique le nombre d'actifs publicitaires dans le
pod publicitaire en cours.
video_title
String
Non
Indique le titre de la publicité.
publisher
String
Non
Indique l'auteur / créateur / éditeur de la publicité.
cursor_position
Integer
Oui
La position actuelle de la tête de lecture par rapport à la
durée totale de la publicité, en secondes.
total_length
Integer
Oui
Indique la durée totale de l'actif publicitaire en secondes.
load_type
Enum
Non
Indique si les publicités sont chargées dynamiquement ou si
elles sont les mêmes pour tous les utilisateurs.
Les valeurs peuvent être soit 'dynamic
' ou ' linear
'.
ad_quartile
Integer
Non
Pour les Video Ad Playing
événement, cette propriété
peut être utilisée pour indiquer quand un quart spécifique de la publicité
est atteint.
Si vous utilisez une bibliothèque client-side pour suivre vos
événements vidéo, cette propriété est optionnelle car Commanders Act
suit automatiquement les quartiles publicitaires.
Événements publicitaires
Cette section détaille tous les événements publicitaires.
Pour plus d'informations sur chacune des propriétés associées à ces événements, référez-vous à la Propriétés des événements publicitaires Records
Video Ad Started
Cet événement est envoyé lorsqu'une séquence publicitaire commence à être lue dans la lecture vidéo.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_ad_start",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 0,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Video Ad Playing
Cet événement est envoyé à intervalles définis lorsque la publicité vidéo est en cours de lecture et est déterminé par le cursor_position
utilisateur.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_ad_playing",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 10,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Annonce vidéo arrêtée
Cet événement est envoyé après que l'utilisateur a visionné complètement une annonce vidéo. Notez que le cursor_position
propriété a la même valeur que la total_length
utilisateur.
{
"event_name": "video_ad_stop",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 30,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Annonce vidéo terminée
Cet événement est envoyé après que l'utilisateur a visionné complètement la séquence d'annonces vidéo. Notez que le cursor_position
propriété a la même valeur que la total_length
utilisateur.
{
"event_name": "video_ad_complete",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 30,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Annonce vidéo ignorée
Cet événement est envoyé lorsque l'utilisateur clique sur le bouton ignorer l'annonce.
{
"event_name": "video_ad_skip",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 20,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Début de la pause publicitaire
Cet événement est envoyé lorsqu'une pause publicitaire commence à jouer pendant la lecture de la vidéo.
Un exemple d'événement est présenté comme suit :
{
"event_name": "video_ad_break_start",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 0,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Fin de la pause publicitaire
Cet événement est envoyé après que l'utilisateur a visionné complètement le pod de pauses publicitaires. Notez que le cursor_position
propriété a la même valeur que la total_length
utilisateur.
{
"event_name": "video_ad_break_complete",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 30,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Clic sur l'annonce vidéo
Cet événement est envoyé lorsque l'utilisateur clique sur l'annonce.
{
"event_name": "video_ad_click",
"user": {},
"video_session_id": "abcdef",
"ad_asset_id": "456",
"ad_pod_id": "XYA",
"ad_type": "pre-roll",
"video_title": "SmackDown!",
"cursor_position": 20,
"total_length": 30,
"publisher": "WWE",
"load_type": "linear"
}
Paramètres
Définition des propriétés des événements
Tous les événements de réglages partagent les mêmes propriétés qui décrivent l'état actuel du contenu vidéo avec lequel un utilisateur interagit pendant la lecture.
video_session_id
String
Oui
Un ID unique qui relie tous les événements générés à partir d'une session de lecture spécifique. Ces événements incluent la lecture, le contenu et les événements publicitaires.
content_asset_id
String
Oui
Indique l'ID unique de l'actif de contenu vidéo.
content_pod_id
String
Non
Indique l'ID unique du pod de contenu vidéo.
ad_asset_id
String
Non
Indique l'ID unique de l'actif publicitaire.
ad_pod_id
String
Non
Indique l'ID unique du pod publicitaire.
ad_type
String
Non
Indique le type de publicité en cours de lecture au moment de l'
événement. Les valeurs peuvent être 'pre-roll
', ' mid-roll
', ou
'post-roll
'.
video_title
String
Non
Indique le titre du contenu vidéo.
video_description
String
Non
Décrit brièvement l'actif de contenu vidéo.
keywords
Array [String]
Non
Indique les mots-clés pertinents associés à la
catégorisation du contenu vidéo
season
String
Non
Indique le numéro de saison, si applicable.
episode
String
Non
Indique le numéro d'épisode, si applicable.
video_category
String
Non
Indique le genre de l'actif de contenu vidéo.
program
String
Non
Indique le nom du programme / spectacle dont
le contenu vidéo fait partie.
publisher
String
Non
Indique l'éditeur / créateur / auteur de l'
actif de contenu vidéo.
channel
String
Non
Indique la chaîne sur laquelle le contenu vidéo
est diffusé.
full_episode
Boolean
Non
Définir à true
l'actif de contenu vidéo est un épisode complet.
livestream
Boolean
Non
Si le contenu vidéo est une diffusion en direct, ceci est défini sur
true
.
airdate
ISO 8601
Chaîne de date
Non
Indique la date originale de diffusion / publication
du contenu vidéo.
cursor_position
Integer
Oui
Indique la position actuelle de la tête de lecture dans le
contenu vidéo en secondes. Cela n'inclut pas
les publicités lues pendant cette durée.
En cas de diffusions en direct, référez-vous à la documentation de la destination concernée pour des détails sur la manière de transmettre cette propriété.
total_length
Integer
Oui
La durée totale du contenu vidéo en
secondes. Cela n'inclut pas les publicités incluses
dans la lecture de cet actif de contenu.
Pour la lecture en livestream, cela doit être défini sur null
.
bitrate
Integer
Oui
Indique le débit binaire actuel en kbps
.
framerate
Float
Non
Indique la fréquence d'images en fps
.
sound
Integer
Oui
Indique le niveau sonore actuel de la vidéo
Requis dans video_volume
méthode
full_screen
Boolean
Oui
Indique le mode d'écran actuel de la vidéo.
Requis dans video_fullscreen_on
et video_full_screen_off
événements
ad_enabled
Boolean
Non
Indique si les publicités étaient activées
image_quality
String
Oui
Indique la résolution de qualité actuelle de la vidéo.
Requis dans video_quality
méthode
Reprise de la lecture
Événements de réglage
Cette section détaille tous les événements de réglages vidéo.
Pour plus d'informations sur chacune des propriétés associées à ces événements, référez-vous à la Propriétés de l'événement de réglage Records
Volume vidéo
Cet événement est envoyé lorsque l'utilisateur modifie le volume audio du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_volume",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "mid-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Vitesse vidéo
Cet événement est envoyé lorsque l'utilisateur modifie la vitesse du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_speed",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "mid-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Sous-titres activés
Cet événement est envoyé lorsque l'utilisateur active les sous-titres du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_subtitle_on",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "pre-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Sous-titres désactivés
Cet événement est envoyé lorsque l'utilisateur désactive les sous-titres du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_subtitle_off",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "post-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Plein écran activé
Cet événement est envoyé lorsque l'utilisateur active la vue plein écran du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_fullscreen_on",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "post-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Plein écran désactivé
Cet événement est envoyé lorsque l'utilisateur désactive la vue plein écran du lecteur vidéo.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_fullscreen_off",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "pre-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Qualité vidéo
Cet événement est envoyé lorsque la qualité vidéo du lecteur est modifiée.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_quality",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"ad_asset_id": ["ad1", "ad0", "ad2"],
"ad_pod_id": ["adCAA", "adCAB", "adCAD"],
"ad_type": "mid-roll",
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Partage de la vidéo
Cet événement est envoyé lorsque la vidéo est partagée par l'utilisateur.
Un exemple d'événement est présenté ci-dessous :
{
"event_name": "video_share",
"user": {},
"video_session_id": "98765",
"content_asset_id": ["0133370", "123456"],
"content_pod_id": ["CAA", "CAB", "CAD"],
"cursor_position": 420,
"total_length": 600,
"bitrate": 128,
"framerate": 60.00,
"video_player": "vimeo",
"sound": 120,
"full_screen": false,
"ad_enabled": false,
"image_quality": "hd720",
"livestream": true
}
Reprise de la lecture
Chaque Video Playback Resumed
l'événement doit être suivi par un événement Video Content Playing
ou un Video Ad Playing
événement, selon l'actif sur lequel la lecture reprend.
Qualité vidéo
Commanders Act vous permet également de suivre et d'analyser la performance et la qualité de vos contenus vidéo pendant la lecture.
Chaque fois qu'un utilisateur change la qualité vidéo pendant la lecture, vous pouvez suivre un événement Video Quality Updated avec les propriétés suivantes :
bitrate
: Indique le débit binaire mis à jour enkbps
.framerate
: Indique la fréquence d'images mise à jour enfps
.startupTime
: Indique le moment où la qualité vidéo a été modifiée par l'utilisateur.droppedFrames
: Indique si des images ont été perdues lors du changement de qualité vidéo.
Cycle de vie des événements
Le flux d'événements suivant montre comment vous pouvez implémenter la spécification vidéo de Commanders Act :
1. L'utilisateur appuie sur lecture sur un lecteur vidéo
cact("trigger","video_start", {
video_session_id: "12345",
content_asset_id: ["123"],
content_pod_id: ["BAA"],
ad_asset_id: ["ad1"],
ad_pod_id: ["adCAA"],
ad_type: "mid-roll",
cursor_position: 0,
total_length: 300,
bitrate: 128,
video_player: "youtube",
sound: 67,
full_screen: true,
ad_enabled: false,
image_quality: "hd1080",
});
2. La lecture de la vidéo commence à jouer le contenu
cact("trigger","video_content_start", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
video_title: "Raw is War!!",
video_description: "Sample description",
keywords: ["wrestling", "entertainment"],
season: "1",
episode: "90",
video_category: "entertainment",
program: "WWE",
publisher: "WWE",
cursor_position: 0,
total_length: 300,
channel: "ten",
full_episode: true,
livestream: false,
airdate: "2020-04-23",
});
3. L'utilisateur regarde le contenu pendant 10 secondes suivi d'un heartbeat de 10 secondes
cact("trigger","video_content_playing", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
video_title: "Raw is War!!",
video_description: "Sample description",
keywords: ["wrestling", "entertainment"],
season: "1",
episode: "90",
video_category: "entertainment",
program: "WWE",
publisher: "WWE",
cursor_position: 10,
total_length: 300,
channel: "ten",
full_episode: true,
livestream: false,
airdate: "2020-04-23",
})
4. La lecture de la vidéo est mise en pause
cact("trigger","video_pause", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
ad_asset_id: null,
ad_pod_id: null,
ad_type: null,
cursor_position: 11,
total_length: 300,
video_player: "youtube",
sound: 66,
bitrate: 128,
full_screen: true,
ad_enabled: false,
image_quality: "hd1080",
});
5. L'utilisateur reprend la lecture de la vidéo.
cact("trigger","video_resume", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
ad_asset_id: null,
ad_pod_id: null,
ad_type: null,
cursor_position: 11,
total_length: 300,
video_player: "youtube",
sound: 66,
bitrate: 128,
full_screen: true,
ad_enabled: false,
image_quality: "hd1080",
});
6. L'annonce (mid-roll) commence à jouer après que l'utilisateur a repris la lecture
cact("trigger","video_ad_start", {
video_session_id: "12345",
ad_asset_id: "ad1",
ad_pod_id: "adCAA",
ad_type: "mid-roll",
video_title: "Thums Up",
publisher: "Coca Cola",
cursor_position: 0,
total_length: 15,
load_type: "linear",
});
7. L'utilisateur regarde entièrement la publicité de 15 secondes. Commanders Act suit également les heartbeats toutes les 10 secondes.
cact("trigger","video_ad_playing", {
video_session_id: "12345",
ad_asset_id: "ad1",
ad_pod_id: "adCAA",
ad_type: "mid-roll",
video_title: "Thums Up",
publisher: "Coca Cola",
cursor_position: 10,
total_length: 15,
load_type: "linear",
});
8. L'annonce vidéo se termine complètement.
cact("trigger","video_ad_complete", {
video_session_id: "12345",
ad_asset_id: "ad1",
ad_pod_id: "adCAA",
ad_type: "mid-roll",
video_title: "Thums Up",
publisher: "Coca Cola",
cursor_position: 15,
total_length: 15,
load_type: "linear",
})
9. La lecture du contenu vidéo reprend. Des heartbeats sont envoyés toutes les 10 secondes.
cact("trigger","video_content_playing", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
video_title: "Raw is War!!",
video_description: "Sample description",
keywords: ["wrestling", "entertainment"],
season: "1",
episode: "90",
video_category: "entertainment",
program: "WWE",
publisher: "WWE",
cursor_position: 11,
total_length: 300,
channel: "ten",
full_episode: true,
livestream: false,
airdate: "2020-04-23",
})
10. L'utilisateur a fini de regarder l'intégralité du contenu vidéo.
cact("trigger","video_content_complete", {
video_session_id: "12345",
content_asset_id: "123",
content_pod_id: "CAA",
video_title: "Raw is War!!",
video_description: "Sample description",
keywords: ["wrestling", "entertainment"],
season: "1",
episode: "90",
video_category: "entertainment",
program: "WWE",
publisher: "WWE",
cursor_position: 300,
total_length: 300,
channel: "ten",
full_episode: true,
livestream: false,
airdate: "2020-04-23",
})
11. La lecture vidéo se termine.
cact("trigger","video_complete", {
video_session_id: "12345",
content_asset_id: null,
content_pod_id: null,
ad_asset_id: "ad1",
ad_pod_id: "adCAA",
ad_type: null,
cursor_position: 300,
total_length: 300,
sound: 66,
bitrate: 128,
full_screen: true,
video_player: "youtube",
ad_enabled: false,
image_quality: "hd1080",
})
FAQ
Que sont les annonces pre-roll, mid-roll et post-roll ?
Les annonces qui apparaissent avant le début de la lecture vidéo sont appelées pre-roll ads.
Les annonces qui apparaissent au milieu de la lecture sont des mid-roll ads.
Les annonces qui apparaissent après la lecture vidéo sont appelées post-roll ads.
Ces annonces peuvent être une vidéo promotionnelle par les sponsors ou un morceau de contenu proposé par le fournisseur de contenu.
Mis à jour
Ce contenu vous a-t-il été utile ?