Class: TrafficChannelizer::Visit
- Inherits:
-
Object
- Object
- TrafficChannelizer::Visit
- Defined in:
- lib/traffic_channelizer/visit.rb
Instance Method Summary collapse
- #attribution_data ⇒ Object
- #channel_group ⇒ Object
-
#initialize(referrer_url:, landing_page_url:) ⇒ Visit
constructor
A new instance of Visit.
- #medium ⇒ Object
- #source ⇒ Object
- #term ⇒ Object
Constructor Details
#initialize(referrer_url:, landing_page_url:) ⇒ Visit
Returns a new instance of Visit.
3 4 5 6 |
# File 'lib/traffic_channelizer/visit.rb', line 3 def initialize(referrer_url:, landing_page_url:) @referrer_url = referrer_url @landing_page_url = landing_page_url end |
Instance Method Details
#attribution_data ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/traffic_channelizer/visit.rb', line 8 def attribution_data { referrer_domain: referrer.domain, landing_page_domain: landing_page.domain, medium: medium, source: source, term: term, campaign: landing_page.utm_campaign, content: landing_page.utm_content, channel_group: channel_group } end |
#channel_group ⇒ Object
37 38 39 |
# File 'lib/traffic_channelizer/visit.rb', line 37 def channel_group ChannelGroup.identify(medium: medium, source: source) end |
#medium ⇒ Object
21 22 23 |
# File 'lib/traffic_channelizer/visit.rb', line 21 def medium landing_page.utm_medium || referrer.medium || '(none)' end |
#source ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/traffic_channelizer/visit.rb', line 25 def source s = landing_page.utm_source s ||= '(internal)' if internal? s ||= referrer.source s ||= '(direct)' s end |
#term ⇒ Object
33 34 35 |
# File 'lib/traffic_channelizer/visit.rb', line 33 def term landing_page.utm_term || referrer.term end |