Studio Service

Playlist Content

Playlist content JSON contains

May contains

  • props : Object; options to change how the playlist is rendered on App or UI

List

Array of Objects

  • list_id: unique UUID V4, generated for reference
  • content: contains _ref and may contains meta, props

List's content props

  • duration: show time duration in millisecond, If duration is 0 OR null will use default durations instead.

List JSON Example

{
list: [{
"content":{
"_ref":{
"id":"b7e6d318-4492-46a4-a327-ea6f8daa1eac",
"type":"file"
},
"meta":{},
"props":{
"duration":14000
}
},
"list_id":"73df3bf6-6ad1-47f4-af77-87e4b3b37db0"
},
{
"content":{
"_ref":{
"id":"dfd3be66-0f9d-47bf-9037-46be927391c6",
"type":"file"
},
"meta":{},
"props":{
"duration":0
}
},
"list_id":"a468e429-a6f6-4510-9181-163aaac0a89d"
},
{
"content":{
"_ref":{
"id":"7f30ba13-674c-4bce-9f6e-9325d361b1b1",
"type":"file"
},
"meta":{},
"props":{
"duration":0
}
},
"list_id":"d83e011a-0984-4fba-b2fd-27051e8eb3ad"
},
{
"content":{
"_ref":{
"id":"290130b4-565b-4314-a4fb-53a2306e2c05",
"type":"file"
},
"meta":{},
"props":{
"duration":0
}
},
"list_id":"84e448d7-0bee-4a7d-bddf-65db82b82050"
},
{
"content":{
"_ref":{
"id":"23d75f05-d955-410b-8339-3f15d2e595cf",
"type":"file"
},
"meta":{},
"props":{
"duration":0
}
},
"list_id":"36737841-9fb4-480c-bec7-bf20258ecc8f"
}]
}

Props

  • default_durations: Object
  • play_mode: we provide only one mode at the moment("loop")

Props Example

{
props: {
"play_mode":"loop",
"default_durations":{
"app":60000,
"link":60000,
"image":10000,
"document":10000
}
}
}

JSON Schema

{
"$schema": "http://json-schema.org/draft-07/schema",
"type": "object",
"title": "Playlist content json schema",
"default": {
},
"definitions": {
"_ref": {
"$id": "#/definitions/_ref",
"type": "object",
"title": "Content ref",
"default": {
},
"examples": [
{
"_ref": {
"type": "file",
"id": "uuid"
}
}
],
"required": [
"type",
"id"
],
"properties": {
"type": {
"type": "string",
"enum": [
"file",
"playlist",
"channel",
"app",
"link"
]
},
"id": {
"type": "string",
"format": "uuid"
}
}
},
"list": {
"$id": "#/definitions/list",
"type": "object",
"title": "Content list",
"description": "",
"default": {
},
"examples": [
{
"list_id": "uuid",
"content": {
"_ref": {
"type": "file",
"id": "uuid"
},
"props": {
"duration": 10000
}
}
}
],
"required": [
"list_id",
"content"
],
"properties": {
"content": {
"type": "object",
"require": [
"_ref"
],
"properties": {
"_ref": {
"$ref": "#/definitions/_ref"
},
"meta": {
"$ref": "#/definitions/meta"
},
"props": {
"type": "object",
"properties": {
"duration": {
"$ref": "#/definitions/durations"
}
}
}
}
}
},
"list_id": {
"type": "string",
"format": "uuid"
}
},
"duration_value": {
"$id": "#/definitions/duration_value",
"type": "number",
"title": "Durations of media",
"description": "always in millisecond",
"default": 0,
"minimum": 0,
"examples": [
50000
]
},
"durations": {
"$id": "#/definitions/durations",
"oneOf": [
{
"type": "object",
"description": "always in millisecond",
"default": {
},
"examples": [
{
"image": 10000,
"app": 60000,
"link": 60000
}
],
"required": [
"image",
"app",
"link",
"document"
],
"properties": {
"image": {
"$ref": "#/definitions/duration_value"
},
"app": {
"$ref": "#/definitions/duration_value"
},
"link": {
"$ref": "#/definitions/duration_value"
},
"document": {
"$ref": "#/definitions/duration_value"
}
}
},
{
"$ref": "#/definitions/duration_value"
}
]
},
"meta": {
"$id": "#/definitions/meta",
"type": "object",
"properties": {
"type": {
"type": "string"
},
"size": {
"type": "number",
"description": "always in bytes"
},
"duratiom": {
"$ref": "#/definitions/duration_value"
}
}
},
"props": {
"$id": "#/definitions/props",
"type": "object",
"title": "Props",
"description": "",
"default": {
},
"properties": {
"default_durations": {
"$ref": "#/definitions/durations"
},
"play_mode": {
"type": "string",
"enum": [
"loop"
]
}
}
}
},
"properties":{
"props":{
"$ref":"#/definitions/props"
},
"meta":{
"$ref":"#/definitions/meta"
},
"list":{
"type": "array",
"items": {
"$ref":"#/definitions/list"
}
}
},
"required":[
"list"
]
}

Playlist content JSON Example

{
"list":[
{
"content":{
"_ref":{
"id":"b7e6d318-4492-46a4-a327-ea6f8daa1eac",
"type":"file"
},
"meta":{
},
"props":{
"duration":14000
}
},
"list_id":"73df3bf6-6ad1-47f4-af77-87e4b3b37db0"
},
{
"content":{
"_ref":{
"id":"dfd3be66-0f9d-47bf-9037-46be927391c6",
"type":"file"
},
"meta":{
},
"props":{
"duration":0
}
},
"list_id":"a468e429-a6f6-4510-9181-163aaac0a89d"
},
{
"content":{
"_ref":{
"id":"7f30ba13-674c-4bce-9f6e-9325d361b1b1",
"type":"file"
},
"meta":{
},
"props":{
"duration":0
}
},
"list_id":"d83e011a-0984-4fba-b2fd-27051e8eb3ad"
},
{
"content":{
"_ref":{
"id":"290130b4-565b-4314-a4fb-53a2306e2c05",
"type":"file"
},
"meta":{
},
"props":{
"duration":0
}
},
"list_id":"84e448d7-0bee-4a7d-bddf-65db82b82050"
},
{
"content":{
"_ref":{
"id":"23d75f05-d955-410b-8339-3f15d2e595cf",
"type":"file"
},
"meta":{
},
"props":{
"duration":0
}
},
"list_id":"36737841-9fb4-480c-bec7-bf20258ecc8f"
}
],
"props":{
"play_mode":"loop",
"default_durations":{
"app":60000,
"link":60000,
"image":10000,
"document":10000
}
}
}