Class: AmazonEcho::Initializable

Inherits:
Object
  • Object
show all
Defined in:
lib/amazonecho/initializable.rb

Class Method Summary collapse

Class Method Details

.app_id(args) ⇒ Object



9
10
11
# File 'lib/amazonecho/initializable.rb', line 9

def self.app_id(args)
  args[:session][:application][:applicationId]
end

.build_response(args) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
# File 'lib/amazonecho/initializable.rb', line 28

def self.build_response(args)
{
  version: args[:version],
  sessionAttributes: {
    session:{}
  },
  response: {
    shouldEndSession: nil
  }
}
end

.parse_intent(args) ⇒ Object



2
3
4
5
6
# File 'lib/amazonecho/initializable.rb', line 2

def self.parse_intent(args)
  output = args[:request][:intent][:name].downcase
  output.slice!("intent")
  output
end

.session_attributes(args) ⇒ Object



13
14
15
16
# File 'lib/amazonecho/initializable.rb', line 13

def self.session_attributes(args)
  attributes = args[:session][:attributes][:session]
  attributes == nil ? {} : attributes
end

.session_new(args) ⇒ Object



18
19
20
# File 'lib/amazonecho/initializable.rb', line 18

def self.session_new(args)
  args[:session][:attributes]
end

.slots(args) ⇒ Object



22
23
24
25
26
# File 'lib/amazonecho/initializable.rb', line 22

def self.slots(args)
  slots = args[:request][:intent][:slots]
  slots == nil ? [] :
  slots.each_with_object([]) { | (key, value), arr| arr << value["value"]} 
end