class AlexaToolbox::DisplayDirective

Handles creating display directives in responses. developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/display-interface-reference

Attributes

template[RW]
type[RW]

Public Class Methods

new(template,token) click to toggle source
# File lib/alexa_toolbox/display_directive.rb, line 10
def initialize(template,token)
  @type = "Display.RenderTemplate"
  if ["BodyTemplate1","BodyTemplate2","BodyTemplate3","BodyTemplate6","ListTemplate1","ListTemplate2","ListTemplate3"].include?(template)
    @template = AlexaToolbox::DisplayDirectiveTemplate.new(template,token)
  else
    raise ArgumentError, 'Invalid display template given. Valid options are: "BodyTemplate1","BodyTemplate2","BodyTemplate3","BodyTemplate6","ListTemplate1","ListTemplate2","ListTemplate3"'
  end
end

Public Instance Methods

build_directive(json = true) click to toggle source
# File lib/alexa_toolbox/display_directive.rb, line 19
def build_directive(json = true)
  data_hash = {
    "type": @type,
    "template": @template.build
  }
  json ? JSON.parse(data_hash.to_json) : data_hash
end