Developer Console
Thank you for your visit. This page is only available in English at this time.

Alexa.RecordController Interface (VSK Fire TV)

When users make utterances about starting or stopping content recording, the Alexa.RecordController interface sends StartRecording and StopRecording directives to your Lambda. These directives should only be implemented if your app can start recording immediately.

For devices that can schedule content to be recorded, see VideoRecorder Directives. Note that recording directives are available only for Fire TV, not for multimodal devices.

Utterances for Recording Directives

When users say the following utterances, Alexa sends a Recording directive to your Lambda. To target your video skill with the utterance, make your video skill's name explicit in the request, such as "Play X Show on XYZ App."

Feature Sample Utterances Expected Response Version
Record this

Record this

aufnehmen

aufzeichnen

nimm das auf <AppName> auf

Not supported

Not supported

registra <title>

comincia a registrare <title>

graba este vídeo

gravar isso

1. यह record करो/करना/कीजिए

2. इसे record करो/करना/कीजिए

The media that is playing starts to be recorded.

2.0

Record title

Record breaking bad

<VideoName> aufnehmen/aufzeichnen

nimm <VideoName> auf <AppName> auf

mach eine aufname von <VideoName>

Enregistre <title>

Enregistre <title>

registra <title>

comincia a registrare <title>

graba los serrano

gravar <title>

breaking bad record करो/करना/कीजिए

The requested media title is set to be recorded.

2.0

Stop recording

Stop recording

stopp die aufnahme

die aufnahme beenden

hör auf aufzunehmen

hör mit aufnehmen auf

hör damit auf aufzuzeichnen

mit dem aufnehmen aufhören

aufzeichnungen stoppen

stopp das aufzeichnen

Annule l'enregistrement

Annule l'enregistrement

smetti di registrare

interrompi la registrazione di

deja de grabar

pare de gravar

1. recording रोक दो

2. record करना बंद करो

Recording for the title stops.

2.0

StartRecording Directives

StartRecording directives are sent to your Lambda when users request to start recording the currently playing content.

Example: "Alexa, start recording"

{
    "header": {
        "payloadVersion": "3",
        "messageId": "abc-123-def-456",
        "namespace": "Alexa.RecordController",
        "name": "StartRecording",
        "correlationToken": "4d64dccb-bebc-4990-990a-abb922fd285d"
    },
       "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "video-endpoint-001",
      "cookie": {}
     },
    "payload": {
    }
}

StopRecording Directives

StopRecording directives are used to stop the current recording operation.

Example: "Alexa, stop recording"

{
  "directive": {
    "header": {
      "namespace": "Alexa.RecordController",
      "name": "StopRecording",
      "messageId": "abc-123-def-456",
      "correlationToken": "4d64dccb-bebc-4990-990a-abb922fd285d",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "video-endpoint-001",
      "cookie": {}
     },
    "payload": {
    }
  }
}

Properties and Events

For this capability, you must reply synchronously, which means you send a response to Alexa from the Lambda function. When you send a Response, you should include the state of the interface properties in the context of the message.

Reportable Properties

Property Name Type Description
RecordingState RecordingState Indicates whether the endpoint is recording or not. Either RECORDING or NOT_RECORDING.

Example RecordingState:

{
  "name": "recordingState",
  "value": "RECORDING"
}

Example Response

When a request to start or stop recording completes successfully, you should respond with an Alexa.Response with the status of RecordingState in the context of the message.

{
  "context": {
    "properties": [{
      "name": "RecordingState",
      "namespace": "Alexa.RecordController",
      "timeOfSample": "2017-5-6T16:20:50.52Z",
      "uncertaintyInMilliseconds": 0,
      "value": "RECORDING"
    }]
  },
  "event": {
    "header": {
      "correlationToken": "4d64dccb-bebc-4990-990a-abb922fd285d",
      "messageId": "abc-123-def-456",
      "name": "Response",
      "namespace": "Alexa",
      "payloadVersion": "3"
    },
    "payload": {}
  }
}

No contents are required or allowed in the payload.

Declaring Capability Support for this Interface

To indicate that your video skill supports the Alexa.RecordController interface, you must indicate support for it in your response to the Discover directive sent through the Alexa.Discovery interface. More details are provided in Alexa.Discovery.

Error Response

If you cannot complete the customer request for some reason, reply with an error. See Error Handling for more details.