This is a
playground to test code. It runs a full
Node.js environment and already has all of
npm’s 400,000 packages pre-installed, including
@pivotshare/avails with all
npm packages installed. Try it out:
This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.
avails convert [-i type] [-o type]
avails merge [-i type] [-o type] file1 [file2 ...]
avails diff [-i type] [-o type] file1 file2
avails ids [-i type] [-o type]
avails convert simply transforms avails from one format to another.
avails merge will accept one of more avails in chronological order and merge them into a single avails. Merge will treat avails as state so repeated entities with the same Entry Types will be ignored. A Full Extract followed by a Full Delete will result in no entry for that entity.
avails diff will accept two avails, A and B, and return a new avails containing entries unique to B, without entries that exist in both A and B, and with entries that are only in A as Full Delete entries.
avails ids accepts avails and outputs a list of Alt IDs found.
The following options are available:
avails or subcommands.
See BACKGROUND for more information regarding the Avails standard and this tool.
avails conforms to EMA Avails spreadsheet template Version 1.6e2.
avails supports the following formats:
The official Avails XML format is not supported.
The TSV format should not supply headers, as the Entity Type field is used to determine that particular line's schema.
The JSON format is an unofficial format used both for representing Avails, and as an intermediary data structure within
avails. It has a 1-1 mapping with the columns of the Excel-based standard. Keys (columns) are in snake_case. Values are always strings. See schema for header values and test/mock for examples. Excel was chosen over the XML standard for modeling since most vendors prefer that format.
Content Availability Metadata, or avails, is an Entertainment industry term for information about the time, location and business rules relating to offering a media asset, e.g. a movie or a television show.
avails document the transition between states, e.g. Full Extract, Full Delete, not states themselves, however, by manipulating initial and subsequent avails we can recreate the expected state of content on a given platform. This is the technique utilized by the
diff subcommands, and third-party tools that generate initial avails.
It is recommended to persist submitted avails and use
avails, together with custom or third-party tools, to easily create new avails, or determine state of content on third-party platforms.
You can use
avails as a CLI or a Node.JS module.
npm install -g avails avails convert -i json -o xlsx <movies.json >movies.xlsx
// npm install avails const Avails = require('@pivotshare/avails'); const obj = Avails.fromTSVLine('SomeFilmStudio\tEN\tUS\tMovie');