Class: Kameleoon::Browser

Inherits:
Data
  • Object
show all
Defined in:
lib/kameleoon/data/browser.rb

Overview

Represents browser data for tracking calls

Instance Attribute Summary collapse

Attributes inherited from Data

#instance, #sent

Instance Method Summary collapse

Methods inherited from Data

encode

Constructor Details

#initialize(browser_type, version = Float::NAN) ⇒ Browser

Returns a new instance of Browser.

Parameters:

  • browser_type (BrowserType)

    Browser type, can be: CHROME, INTERNET_EXPLORER, FIREFOX, SAFARI, OPERA, OTHER

  • version (float) (defaults to: Float::NAN)

    Version of browser



20
21
22
23
24
# File 'lib/kameleoon/data/browser.rb', line 20

def initialize(browser_type, version = Float::NAN)
  super(DataType::BROWSER)
  @type = browser_type
  @version = version
end

Instance Attribute Details

#typeObject (readonly)

Returns the value of attribute type.



16
17
18
# File 'lib/kameleoon/data/browser.rb', line 16

def type
  @type
end

#versionObject (readonly)

Returns the value of attribute version.



16
17
18
# File 'lib/kameleoon/data/browser.rb', line 16

def version
  @version
end

Instance Method Details

#obtain_full_post_text_lineObject



26
27
28
29
30
31
# File 'lib/kameleoon/data/browser.rb', line 26

def obtain_full_post_text_line
  nonce = Kameleoon::Utils.generate_random_string(NONCE_LENGTH)
  url = "eventType=staticData&browserIndex=#{@type}&nonce=#{nonce}"
  url.concat("&browserVersion=#{@version}") if @version.is_a?(Integer) || (@version.is_a?(Float) && !@version.nan?)
  url
end