ソーシャルキャスト ヘルプセンター

一歩踏み込んだご利用方法、サポートに多く寄せられる質問などをまとめております。

Vimeo利用時の視聴履歴取得

 

この方法はデフォルトのテンプレートを利用している場合に限った説明になります。
テンプレートの編集が難しい場合、サポートへお問い合わせ下さい。ご要望を伺い作業を承ることも可能です(有償作業となります)。

 

埋め込みコードメディアとしてVimeoの埋め込みコードを登録する場合、初期状態では視聴履歴を取得することができません。

本項では、Vimeo利用時に視聴履歴を取得するためのテンプレート変更手順を解説します。

 

PC版テンプレート


パーツテンプレート::埋め込みコードメディア/プレイヤー

テンプレートの内容を下記のように差し替えてください

{{content.media.profiles.code|raw}}

<script src="https://player.vimeo.com/api/player.js"></script>
<script>
function initPlayer(startTime) {
    var recorder = Socialcast.createWatchHistoryRecorder("{{content.id}}", 60);
    var iframe = document.querySelector('iframe[src*="/player\.vimeo\.com/video/"]');

        if (iframe != null) {
            var player = new Vimeo.Player(iframe);

            player.on('loaded', function() {
            player.setCurrentTime(startTime);
            recorder.timeupdate(startTime);
        });

        player.on('play', function() {
            recorder.timeupdate(startTime);
            recorder.start();
        });

        player.on('pause', function() {
            recorder.stop();
        });

        player.on('ended', function() {
            recorder.complete();
            recorder.timeupdate(0);
            player.setCurrentTime(0);
            recorder.stop(true);
        });

        player.on('timeupdate', function(event) {
            recorder.timeupdate(event.seconds);
        });
    }
}
</script>

 

スマートフォン版テンプレート


パーツテンプレート::埋め込みコードメディア/プレイヤー

テンプレートの内容を下記のように差し替えてください

{% if content.media.profiles.code_mobile|replace({' ':''})|trim is not empty %}
    {{ content.media.profiles.code_mobile|raw }}
{% else %}
    {{ content.media.profiles.code|raw }}
{% endif %}

<script src="https://player.vimeo.com/api/player.js"></script>
<script>
function initPlayer(startTime) {
    var recorder = Socialcast.createWatchHistoryRecorder("{{content.id}}", 60);
    var iframe = document.querySelector('iframe[src*="/player\.vimeo\.com/video/"]');

    if (iframe != null) {
        var player = new Vimeo.Player(iframe);

        player.on('loaded', function() {
            player.setCurrentTime(startTime);
            recorder.timeupdate(startTime);
        });

        player.on('play', function() {
            recorder.timeupdate(startTime);
            recorder.start();
        });

        player.on('pause', function() {
            recorder.stop();
        });

        player.on('ended', function() {
            recorder.complete();
            recorder.timeupdate(0);
            player.setCurrentTime(0);
            recorder.stop(true);
        });

        player.on('timeupdate', function(event) {
            recorder.timeupdate(event.seconds);
        });
    }
}
</script>
この記事は役に立ちましたか?
1人中1人がこの記事が役に立ったと言っています