1 | # @tremorvideo/blink-cli
|
2 |
|
3 | ## definition of manifest.json
|
4 |
|
5 | There should be only one MediaFile. However IAB VAST Standard does not prevent multiple MediaFile.
|
6 |
|
7 | ```json
|
8 | {
|
9 | "mediaFiles": [
|
10 | {
|
11 | "id": "CU-12345",
|
12 | "delivery": "progressive",
|
13 | "type": "application/javascript",
|
14 | "bitrate": 466,
|
15 | "width": 640,
|
16 | "height": 480,
|
17 | "maintainAspectRatio": true,
|
18 | "scalable": true,
|
19 | "apiFramework": "VPAID",
|
20 | "uri": "https://s.tremorvideodsp.com/SGAI12345/vpaid.js"
|
21 | }
|
22 | ],
|
23 | "videos": {
|
24 | "video-1": {
|
25 | "url": "https://s.tremorvideodsp.com/1.mp4",
|
26 | "type": "video/mp4",
|
27 | "duration": "15000"
|
28 | },
|
29 | "video-2": {
|
30 | "url": "https://s.tremorvideodsp.com/2.mp4",
|
31 | "type": "video/mp4",
|
32 | "duration": "15000"
|
33 | }
|
34 | },
|
35 | "mainVideo": "video-1",
|
36 | "tvCustomEvents": [
|
37 | {
|
38 | "name": "Click_Walgreens",
|
39 | "uri": true,
|
40 | "thirdPartyPixels": true
|
41 | },
|
42 | {
|
43 | "name": "Click_Video_Close",
|
44 | "uri": false,
|
45 | "thirdPartyPixels": true
|
46 | },
|
47 | {
|
48 | "name": "Slate_Opened",
|
49 | "uri": false,
|
50 | "thirdPartyPixels": true
|
51 | }
|
52 | ]
|
53 | }
|
54 | ```
|
55 |
|
56 | ## Output
|
57 |
|
58 | ```xml
|
59 | <VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast2.xsd" version="2.0.0">
|
60 | <Ad id="BC0">
|
61 | <InLine>
|
62 | <AdSystem>Tremor Video</AdSystem>
|
63 | <AdTitle>Tremor Video</AdTitle>
|
64 | <Impression>
|
65 | <![CDATA[https://s.tremorvideodsp.com/?e=impression]]>
|
66 | </Impression>
|
67 | <Creatives>
|
68 | <Creative>
|
69 | <Linear>
|
70 | <Duration>00:00:15</Duration>
|
71 | <AdParameters>
|
72 | <![CDATA[
|
73 | {
|
74 | "geoInfo": {
|
75 | "dma": "501",
|
76 | "city": "new york",
|
77 | "areaCode": "212",
|
78 | "latitude": "40.75891",
|
79 | "longitude": "73.97902",
|
80 | "continent": "north america",
|
81 | "countryCode": "us",
|
82 | "stateCode": "95",
|
83 | "postalCode": "10020"
|
84 | },
|
85 | "tvCustomEvents: [
|
86 | {
|
87 | "name": "Click_Walgreens",
|
88 | "uri": "https://s.tremorvideodsp.com/1x1.png?r=wg",
|
89 | "thirdPartyPixels": [
|
90 | "https://s.tremorvideodsp.com/1x1.png?e=click_wg1",
|
91 | "https://s.tremorvideodsp.com/1x1.png?e=click_wg2"
|
92 | ]
|
93 | },
|
94 | {
|
95 | "name": "Slate_Opened",
|
96 | "thirdPartyPixels": [
|
97 | "https://s.tremorvideodsp.com/1x1.png?e=open1"
|
98 | ]
|
99 | }
|
100 | ]
|
101 | }
|
102 | ]]>
|
103 | </AdParameters>
|
104 | <TrackingEvents>
|
105 | <Tracking event="start">
|
106 | <![CDATA[https://s.tremorvideodsp.com/1x1.png?e=start]]>
|
107 | </Tracking>
|
108 | <Tracking event="midpoint">
|
109 | <![CDATA[https://s.tremorvideodsp.com/1x1.png?e=midpoint]]>
|
110 | </Tracking>
|
111 | <Tracking event="acceptInvitation">
|
112 | <![CDATA[https://s.tremorvideodsp.com/1x1.png?e=acceptInvitation]]>
|
113 | </Tracking>
|
114 | </TrackingEvents>
|
115 | <VideoClicks>
|
116 | <ClickThrough>
|
117 | <![CDATA[https://example.com]]>
|
118 | </ClickThrough>
|
119 | <ClickTracking>
|
120 | <![CDATA[https://s.tremorvideodsp.com/1x1.png?e=clicked]]>
|
121 | </ClickTracking>
|
122 | </VideoClicks>
|
123 | <MediaFiles>
|
124 | <MediaFile id="CU-12345" delivery="progressive" bitrate="466" width="640" height="480" type="application/javascript" maintainAspectRatio="true" scalable="true" apiFramework="VPAID">
|
125 | <![CDATA[https://s.tremorvideodsp.com/SGAI12345/vpaid.js]]>
|
126 | </MediaFile>
|
127 | <MediaFiles>
|
128 | </Linear>
|
129 | </Creative>
|
130 | </Creatives>
|
131 | </InLine>
|
132 | </Ad>
|
133 | </VAST>
|
134 | ```
|
135 |
|
136 | ## commands
|
137 |
|
138 | * `blink init spr` downloads an spr and runs `blink prepare`
|
139 | * `blink prepare` reads the blink.toml file to get the AdParameters, Videos and Events, then updates animate_template.html accordingly. An essential step before importing the template into Animate CC and publishing.
|
140 | `--import` opens the Animate CC application and runs a JSFL script import.jsfl the template.html
|
141 | `--auto` opens the Animate CC application and runs a JSFL script to custom.jsfl
|
142 | Many versions of custom.jsfl have been created by Automation to add specific Blink Components to
|
143 | specific Movie Clips.
|
144 | * `blink build` Essential step after publishing Animate CC creative. This one command runs these 4 commands:
|
145 | * `blink validate`
|
146 | * `blink build-manifest`
|
147 | * `blink build-vpaid`
|
148 | * `blink copy`
|
149 | * `blink build-manifest` generates a `manifest.json` file
|
150 | * `blink build-vpaid` concatenates all files loaded by script tags into a single dist/ad.js,
|
151 | and runs Babel to transpile ES6. Also adds sentry and sentryConfig.
|
152 | * `blink copy` copies these src subdirectories to dist: __images, sounds, components, fonts, json__.
|
153 | All .png files are compressed, unless the option `--skip-compress-images` is used
|
154 | * `blink upload` or (`blink u`) constructs vast2.xml and vast3.xml files from manifest.json, then
|
155 | uploads all files to S3 bucket __trmr-animate-vpaid__, and prints out to console links to
|
156 | Vast Inspector URLs using the CDN mapped URL to the S3 bucket.
|
157 | `--uncompressed` changes printed out Vast Inspector links to use URL of uncompressed ad.js
|
158 | * `blink components` downloads latest version of Blink Components to user's Animate CC Application Support directory
|
159 | * `blink snippets` downloads latest version of Blink Snippets and merges into user's Animate CC Application Support directory
|
160 | * `blink info` prints to console versions of Blink Tool Chain components used in Animate CC creative found in cwd
|
161 | Prints warning if starter-kit is not the latest production version
|
162 | * `blink stats` gives you statistics of the file sizes of projects assets in current directory
|
163 | * `blink doctor` Runs system diagnostics pertaining to Blink Tool Chain and recommends how to fix problems
|
164 | Lists versions of installed products
|
165 | * `blink serve` runs http server in current directory. Static files are also served from this directory.
|
166 | Default port is 3000 unless specfified with `--port {number}`
|