class Ralyxa::ResponseEntities::Directives::Audio::Stream
Public Class Methods
as_hash(url, token, offset_in_milliseconds = 0, expected_previous_token = nil)
click to toggle source
# File lib/ralyxa/response_entities/directives/audio/stream.rb, line 24 def self.as_hash(url, token, offset_in_milliseconds = 0, expected_previous_token = nil) new(url, token, offset_in_milliseconds, expected_previous_token).to_h end
new(url, token, offset_in_milliseconds = 0, expected_previous_token = nil)
click to toggle source
# File lib/ralyxa/response_entities/directives/audio/stream.rb, line 6 def initialize(url, token, offset_in_milliseconds = 0, expected_previous_token = nil) raise Ralyxa::UnsecureUrlError, "Audio streams must be served from at an SSL-enabled (HTTPS) endpoint. Your current stream url is: #{url}" unless secure?(url) @url = url @token = token @offset_in_milliseconds = offset_in_milliseconds @expected_previous_token = expected_previous_token end
Public Instance Methods
to_h()
click to toggle source
# File lib/ralyxa/response_entities/directives/audio/stream.rb, line 15 def to_h {}.tap do |stream| stream['url'] = @url stream['token'] = @token stream['offsetInMilliseconds'] = @offset_in_milliseconds stream['expectedPreviousToken'] = @expected_previous_token if @expected_previous_token end end
Private Instance Methods
secure?(url)
click to toggle source
# File lib/ralyxa/response_entities/directives/audio/stream.rb, line 30 def secure?(url) URI.parse(url).scheme == 'https' || !Ralyxa.require_secure_urls? end