module BetterAlexaRubyKit
Session
end request class.
Constants
- VERSION
Public Class Methods
build_request(json_request)
click to toggle source
Builds a new request for Alexa.
# File lib/better_alexa_rubykit/request.rb, line 35 def self.build_request(json_request) raise ArgumentError, 'Invalid Alexa Request.' unless BetterAlexaRubyKit.valid_alexa?(json_request) @request = nil case json_request['request']['type'] when /Launch/ @request = LaunchRequest.new(json_request) when /Intent/ @request = IntentRequest.new(json_request) when /SessionEnded/ @request = SessionEndedRequest.new(json_request) else raise ArgumentError, 'Invalid Request Type.' end @request end
print_json(json)
click to toggle source
Prints a JSON object.
# File lib/better_alexa_rubykit.rb, line 10 def self.print_json(json) p json end
print_version()
click to toggle source
Prints the Gem version.
# File lib/better_alexa_rubykit.rb, line 15 def self.print_version p BetterAlexaRubyKit::VERSION end
transform_keys_to_symbols(value)
click to toggle source
Take keys of hash and transform those to a symbols
# File lib/better_alexa_rubykit/request.rb, line 52 def self.transform_keys_to_symbols(value) return value if not value.is_a?(Hash) hash = value.inject({}){|memo,(k,v)| memo[k.to_sym] = self.transform_keys_to_symbols(v); memo} return hash end
valid_alexa?(request_json)
click to toggle source
Returns true if all the Alexa request objects are set.
# File lib/better_alexa_rubykit.rb, line 20 def self.valid_alexa?(request_json) !request_json.nil? && !request_json['session'].nil? && !request_json['version'].nil? && !request_json['request'].nil? end