This application implements a demonstration video player that fronts the Advertisement Decision System.
It communicates with the following components:
ADS interface: To get a playlist and report status notifications.
Content interface: To get the available entertainments.
Video interface: Serves requests from the end-user player for the m3u8 manifest file which it then segments according to the given playlist.
The repository contains a docker file. Running the docker requires the following parameters:
ADS interface related:
ADS_ADS1_HOST: Maestro-ng formatted locator for finding the ADS host.
ADS_ADS1_ADS_PORT: Maestro-ng formatted locator for finding the ADS port on that host.
ADS_PLACEMENT_PATH: The location of the REST API on the ADS hosting the placement request interface. Defaults to '/ads-kd-web/ads4as/v1/simple/placement'
ADS_NOTIFICATION_PATH: The location of the REST API on the ADS hosting the placement status notifications interface. Defaults to '/ads-kd-web/ads4as/v1/simple/status'
Content interface related:
ENV_CONTENT_SHEET_ID: The google docs sheet containing the entertainment information. Defaults to 1tWsOLSJ1LGR3sfUKyNFO3oOlS_Dk1PpXBDEceAlOzbo.
ENV_ENTERTAINMENT_TAB_NAME: The tab in the Google spreadsheet with the relevant information. Defaults to PLACR.
ENV_AD_TAB_NAME: The tab in the Google spreadsheet with the advertisements.
Example without maestro-ng:
docker run -d -p 8080:8080 -e ADS_ADS1_HOST=ads -e ADS_ADS1_ADS_PORT=8080 placr/demo-player
where 'ads' is either a linked name to the ADS docker or should be replaced with the real IP/name of the system that hosts the ADS API.