blob: 5639f70cb502600e9e81e6ca972e395577ba9f8f [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto3";
option optimize_for = LITE_RUNTIME;
package video_tutorials.proto;
// Represents the feature where the video tutorial targeted to.
enum FeatureType {
INVALID = 0;
SUMMARY = 1;
CHROME_INTRO = 2;
DOWNLOAD = 3;
SEARCH = 4;
VOICE_SEARCH = 5;
// For test only.
TEST = 9999999;
}
// A group of video tutorials with same language.
message VideoTutorialGroup {
// Language of the video. Only used for the video. Not used for the title
// text.
string language = 1;
// A list of video tutorials metadata.
repeated VideoTutorial tutorials = 2;
}
// Metadata of a video tutorial.
message VideoTutorial {
// Type of feature where this video tutorial targeted.
FeatureType feature = 1;
// The user visible description of this video tutorial.
// This string will be in the system language set by the user.
string title = 2;
// The complete URL for the video.
string video_url = 3;
// The URL of the video for sharing.
string share_url = 4;
// The URL of the video poster. Shown while the video is loading in the
// player.
string poster_url = 5;
// The URL of this video's caption.
string caption_url = 6;
// Duration of the video in seconds.
int64 video_length = 7;
// The URL of the animated thumbnail. Shown in the IPH cards.
string animated_gif_url = 8;
// The URL of the thumbnail image. Shown in the video list.
string thumbnail_url = 9;
}
// Response from the server containing tutorial groups for all languages.
message VideoTutorialGroups {
// Tutorials in all available languages.
repeated VideoTutorialGroup tutorial_groups = 1;
// The locale used to show the title text.
string text_locale = 2;
// The preferred locale for watching the video. This is not obtained from
// the server, and is saved on client side based on the user selection.
string preferred_locale = 3;
}