Rich Media

 

Avant-propos

Le SDK Internet vous permet de marquer les vidéos et médias audio joués par l’utilisateur durant l’utilisation de l’application.

 

Pour bien débuter

Une fois votre marqueur initialisé, vous pouvez débuter le marquage de vos vidéos et de vos médias audio.

Pour utiliser les classes et les méthodes du SDK, veillez à ajouter le namespace ATInternet dans votre Page.

 

Marquage

Le marquage RichMedia n’est pas pris en compte dans la mécanique du Dispatch !

Le tracker met à disposition un objet MediaPlayers. Cet objet expose les méthodes suivantes :

  • Add : Permet de renseigner un nouveau player et retourne un objet MediaPlayer
  • Remove : Supprime un player
  • RemoveAll : Supprime tous les players

Lors de la suppression d’un player, si un média est en cours de lecture, un hit sera automatiquement envoyé afin d’arrêter la mesure.

public MainPage()
{
     this.InitializeComponent();
     tracker = SmartTag.Instance.defaultTracker;
     MediaPlayer player1 = tracker.MediaPlayers.Add(78);
     // new player with default ID
     MediaPlayer player2 = tracker.MediaPlayers.Add();
     tracker.MediaPlayers.Remove(78);
     tracker.MediaPlayers.RemoveAll();
}

Une fois qu’un player est instancié, il est possible de marquer les vidéos et médias audio.

Tous les objets présentés ci-dessous expose les méthodes suivantes :

  • SendPlay() : Envoie un hit de lecture d’un média avec un hit de rafraîchissement envoyé automatiquement toutes les 5 secondes
  • SendPlay(int refreshDuration) : Idem sauf qu’il est possible de préciser la période de rafraîchissement (le paramètre renseigné ne peut être inférieur à 5 qui est la période minimale SAUF si le paramètre vaut 0 auquel cas le rafraîchissement n’est pas activé !)
  • SendPause : Envoie un hit de mise en pause du média
  • SendStop : Envoie un hit d’arrêt complet de la lecture du média
  • SendMove : Envoie un hit de déplacement du curseur de lecture du player
  •  

    Video

L’objet MediaPlayer met à disposition un objet Videos. Cet objet expose les méthodes suivantes :

  • Add : Permet d’ajouter une vidéo au player et retourne un objet Video
  • Remove : Supprime une vidéo
  • RemoveAll : Supprime toutes les vidéos
 

Exemples de marquage

  1. Marquage d’une lecture de vidéo sans rafraîchissement
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            Video video;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker = SmartTag.Instance.defaultTracker;
                MediaPlayer player = tracker.MediaPlayers.Add();
                video = player.Videos.Add("movie",90);
            }
    
            private void OnVideoStart()
            {
                video.SendPlay(0);
            }
        }
    }
  2. Marquage d’une lecture de vidéo avec rafraîchissement (la période de rafraîchissement ne peut pas être inférieure à 5s)
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            Video video;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker = SmartTag.Instance.defaultTracker;
                MediaPlayer player = tracker.MediaPlayers.Add();
                video = player.Videos.Add("movie",90);
            }
    
            private void OnVideoStart()
            {
                // set refresh to 10 seconds
                // /!\ can't set below 5s
                video.SendPlay(10);
            }
        }
    }
  3. Marquage d’une pause dans la vidéo
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            Video video;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker = SmartTag.Instance.defaultTracker;
                MediaPlayer player = tracker.MediaPlayers.Add();
                video = player.Videos.Add("movie",90);
            }
    
            private void OnVideoStart()
            {
                video.SendPlay(10);
            }
    
            private void OnVideoPause()
            {
                video.SendPause();
            }
        }
    }
  4. Marquage d’un stop dans la vidéo
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            Video video;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker = SmartTag.Instance.defaultTracker;
                MediaPlayer player = tracker.MediaPlayers.Add();
                video = player.Videos.Add("movie",90);
            }
    
            private void OnVideoStart()
            {
                video.SendPlay(10);
            }
    
            private void OnVideoStop()
            {
                video.SendStop();
            }
        }
    }
  5. Marquage d’une mouvement du curseur de la vidéo
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            Video video;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker = SmartTag.Instance.defaultTracker;
                MediaPlayer player = tracker.MediaPlayers.Add();
                video = player.Videos.Add("movie",90);
            }
    
            private void OnVideoStart()
            {
                video.SendPlay(10);
            }
    
            private void OnVideoMove()
            {
                video.SendMove();
            }
        }
    }
  •  

    LiveVideo

L’objet MediaPlayer met à disposition un objet LiveVideos. Cet objet expose les méthodes suivantes :

  • Add : Permet d’ajouter une vidéo live au player et retourne un objet LiveVideo
  • Remove : Supprime une vidéo live
  • RemoveAll : Supprime toutes les vidéos live
 

Exemples de marquage

  1. Marquage d’une lecture de vidéo live sans rafraîchissement
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveVideo liveVideo;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveVideo = player.LiveVideos.Add("live video");
            }
    
            private void OnLiveStart()
            {
                liveVideo.SendPlay(0);
            }
        }
    }
  2. Marquage d’une lecture de vidéo live avec rafraîchissement (la période de rafraîchissement ne peut pas être inférieure à 5s)
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveVideo liveVideo;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveVideo = player.LiveVideos.Add("live video");
            }
    
            private void OnLiveStart()
            {
                // refresh every 5s
                liveVideo.SendPlay();
            }
        }
    }
  3. Marquage d’une pause dans la vidéo live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveVideo liveVideo;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveVideo = player.LiveVideos.Add("live video");
            }
    
            private void OnLivePause()
            {
                // refresh every 5s
                liveVideo.SendPause();
            }
        }
    }
  4. Marquage d’un stop dans la vidéo live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveVideo liveVideo;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveVideo = player.LiveVideos.Add("live video");
            }
    
            private void OnLiveStop()
            {
                liveVideo.SendStop();
            }
        }
    }
  5. Marquage d’une mouvement du curseur de la vidéo live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveVideo liveVideo;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveVideo = player.LiveVideos.Add("live video");
            }
    
            private void OnLiveMove()
            {
                liveVideo.SendMove();
            }
    }
  •  

    Audio

L’objet MediaPlayer met à disposition un objet Audios. Cet objet expose les méthodes suivantes :

  • Add : Permet d’ajouter un média audio au player et retourne un objet Audio
  • Remove : Supprime un média audio
  • RemoveAll : Supprime tous les médias audios
 

Exemples de marquage

  1. Marquage d’une lecture de média audio sans rafraîchissement
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            Audio audio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                audio = player.Audio.Add("audio",10);
            }
    
            private void OnAudioStart()
            {
                audio.SendPlay(0);
            }
    }
  2. Marquage d’une lecture de média audio avec rafraîchissement (la période de rafraîchissement ne peut pas être inférieure à 5s)
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            Audio audio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                audio = player.Audio.Add("audio", 10);
            }
    
            private void OnAudioStart()
            {
                // refresh every 5s
                audio.SendPlay();
    
                // refresh every 10s
                audio.SendPlay(10);
            }
        }
    }
  3. Marquage d’une pause dans le média audio
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            Audio audio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                audio = player.Audio.Add("audio");
            }
    
            private void OnAudioPause()
            {
                audio.SendPause();
            }
    }
  4. Marquage d’un stop dans le média audio
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            Audio audio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                audio = player.Audio.Add("audio");
            }
    
            private void OnAudioStop()
            {
                audio.SendStop();
            }
        }
    }
  5. Marquage d’une mouvement du curseur du média audio
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            Audio audio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                audio = player.Audio.Add("audio");
            }
    
            private void OnAudioMove()
            {
                audio.SendMove();
            }
        }
    }
  •  

    LiveAudio

L’objet MediaPlayer met à disposition un objet LiveAudios. Cet objet expose les méthodes suivantes :

  • Add : Permet d’ajouter un média audio live au player et retourne un objet LiveAudio
  • Remove : Supprime un média audio live
  • RemoveAll : Supprime tous les médias audio live
 

Exemples de marquage

  1. Marquage d’une lecture de média audio live sans rafraîchissement
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveAudio liveAudio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveAudio = player.LiveAudios.Add("live audio");
            }
    
            private void OnLiveAudioStart()
            {
                liveAudio.SendStart(0);
            }
        }
    }
  2. Marquage d’une lecture de média audio live avec rafraîchissement (la période de rafraîchissement ne peut pas être inférieure à 5s)
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveAudio liveAudio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveAudio = player.LiveAudios.Add("live audio");
            }
    
            private void OnLiveAudioStart()
            {
                // default : refresh every 5s
                liveAudio.SendStart(10);
    
                // refresh every 10s
                liveAudio.SendStart(10);
            }
        }
    }
  3. Marquage d’une pause dans le média audio live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveAudio liveAudio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveAudio = player.LiveAudios.Add("live audio");
            }
    
            private void OnLiveAudioPause()
            {
                liveAudio.SendPause(10);
            }
        }
    }
  4. Marquage d’un stop dans le média audio live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveAudio liveAudio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveAudio = player.LiveAudios.Add("live audio");
            }
    
            private void OnLiveAudioStop()
            {
                liveAudio.SendStop();
            }
        }
    }
  5. Marquage d’une mouvement du curseur du média audio live
    using System;
    using System.Collections.Generic;
    using Windows.Data.Json;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using ATInternet;
    using Windows.UI.Xaml.Navigation;
    
    namespace App1
    {
        public sealed partial class MainPage : Page
        {
            Tracker tracker;
            MediaPlayer player
            LiveAudio liveAudio;
    
            public MainPage()
            {
                this.InitializeComponent();
                tracker   = SmartTag.Instance.defaultTracker;
                player    = tracker.MediaPlayers.Add();
                liveAudio = player.LiveAudios.Add("live audio");
            }
    
            private void OnLiveAudioMove()
            {
                liveAudio.SendMove();
            }
        }
    }
 

Classe MediaPlayer

 

Propriétés

NomTypeValeur par défautDescription
PlayerIdInt1Obtient ou définit l’identifiant du player
VideosVideosnullObtient l’instance permettant de gérer les vidéos
AudiosAudiosnullObtient l’instance permettant de gérer les médias audio
LiveVideosLiveVideosnullObtient l’instance permettant de gérer les vidéos live
LiveAudiosLiveAudiosnullObtient l’instance permettant de gérer les médias audio live

La gestion de l’identifiant du player est automatique mais vous pouvez cependant en spécifier un.

 

Propriétés communes

NomTypeValeur par défautDescription
NameStringChaîne videObtient ou définit le nom du média visionné
Chapter1StringnullObtient ou définit le premier chapitre
Chapter2StringnullObtient ou définit le second chapitre
Chapter3StringnullObtient ou définit le troisième chapitre
ActionEnumnullObtient ou définit le type d’action
Level2Int-1Obtient ou définit l’identifiant du niveau 2
IsBufferingBooleanfalseIndique si le média est en « buffering »
IsEmbeddedBooleanfalseIndique si le média est externe à l’application
WebDomainStringnullObtient ou définit le referrer du média dans le cas d’un contenu externe (isEmbedded à true)
 

Classe Video

 

Propriétés

NomTypeValeur par défautDescription
DurationInt0Obtient ou définit la durée total de la vidéo en seconde
 

Classe Audio

 

Propriétés

NomTypeValeur par défautDescription
DurationInt0Obtient ou définit la durée total du média audio en seconde
 

Méthodes

NomType de retourDescription
SendPlay()voidEnvoi du hit de lecture avec un rafraîchissement automatique de 5 secondes
SendPlay(int refreshDuration)voidEnvoi du hit de lecture avec un rafraîchissement automatique donné en paramètre (0 = désactivation du rafraîchissement)
SendPausevoidEnvoi du hit de pause
SendStopvoidEnvoi du hit de stop
SendMovevoidEnvoi du hit de mouvement du curseur de lecture
Dernière mise à jour : 26/12/2018