Introduction

The Mosart Remote Control Service (RCS) provides a REST API for controlling Viz Mosart rundowns using REST. This interface in effect duplicates some GPI/O calls (0-4) for rundown operations.

Working with the REST API

Prerequisites/Conditions

  • The descriptions below of the command assume that RCS and the user work on the same machine and its name is localhost.

  • The API hosted by RCS and configured to run on port 55167. This port can not be configured.

  • Employs API key-based authentication where the key needs to be passed in a HTTP header called "X-API-key". See Authentication below.

  • All routes under "/api/v1/command" are protected.

  • All commands of this API are accessible only when RCS is running.

Swagger Documentation

Command Descriptions

  • Reload rundown

  • Start/Continue rundown

  • Start rundown from top

  • Enable/disable rehearsal mode

  • Take a template

  • Trigger a DirectTake template

Reload rundown

The reload endpoint allows you to reload the current rundown. It will trigger a rundown reload event. I.e. the timeline will be stopped and the current rundown will be reloaded from the NRCS cache. No additional parameters.

GET api/v1/command/reload

Start/Continue Rundown

Start or continue the rundown. You can use some optional parameters - see the swagger documentation.

GET api/v1/command/start-continue

Start Rundown from Top

Restart the rundown from the first story. No additional parameters.

GET api/v1/command/start-from-top

Enable/disable Rehearsal Mode

Enable/disable/toggle rehearsal mode:

GET api/v1/command/rehearsal-mode?state=true
GET api/v1/command/rehearsal-mode?state=false
GET api/v1/command/rehearsal-mode

Take a Template

Takes the template by its type and variant (name) and which bus (optional).

GET api/v1/command/template?type={template-type}&variant={variant}&bus={preview|program}

For example,
GET api/v1/command/template?type=Camera&variant=CAM1

Here Camera and CAM1 are the current type and name of the desired template cut to program.

GET api/v1/command/template?type=Camera&variant=CAM1&bus=PREVIEW

Here Camera and CAM1 are the actual type and name of the desired template put into preview.

Trigger a DirectTake Template

Triger a given DirectTake template. You must provide the number of desired template.

GET api/v1/command/directtake?number={number}

Authentication

All commands require the special API key as a sign that the action has been authorized. This key should be passed in HTTP header called X-API-key.

Remote Control Dispatcher Service (RCS) configuration file

The RCS configuration file contains a new setting RestApi. It's value can be randomly generated to be robust and sustainable against brute-force attack. Each REST call will compare the passed in header key  X-API-key  with the value from the RestApi setting first.

%ProgramData%\Mosart Medialab\ConfigurationFiles\RemoteDispatcherServiceConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<RemoteServiceConfig>
<Properties>
...
<item name="RestApiKey" value="test-api-key" />
curl -X GET "http://localhost:55167/api/v1/command/reload" -H "accept: */*" -H "X-API-Key: test-api-key"

Important

Info: All the above commands will impact the live show on your Mosart Server.