Module: Vero::APIContext

Included in:
Context
Defined in:
lib/vero/context/api.rb

Instance Method Summary collapse

Instance Method Details

#identify!Object



8
9
10
11
12
# File 'lib/vero/context/api.rb', line 8

def identify!
  identity = subject.to_vero
  options = {:id => identity[:id], :email => identity[:email], :data => identity}
  Vero::Api::Users.track!(options, self)
end

#reidentify!(previous_id) ⇒ Object



32
33
34
35
36
# File 'lib/vero/context/api.rb', line 32

def reidentify!(previous_id)
  identity = subject.to_vero
  options = {:id => previous_id, :new_id => identity[:id]}
  Vero::Api::Users.reidentify!(options, self)
end

#track!(event_name, event_data, extras = {}) ⇒ Object



3
4
5
6
# File 'lib/vero/context/api.rb', line 3

def track!(event_name, event_data, extras = {})
  options = {:data => event_data, :event_name => event_name, :identity => subject.to_vero, :extras => extras}
  Vero::Api::Events.track!(options, self)
end

#unsubscribe!Object



26
27
28
29
30
# File 'lib/vero/context/api.rb', line 26

def unsubscribe!
  identity = subject.to_vero
  options = {:id => identity[:id], :email => identity[:email]}
  Vero::Api::Users.unsubscribe!(options, self)
end

#update_user!Object



14
15
16
17
18
# File 'lib/vero/context/api.rb', line 14

def update_user!
  identity = subject.to_vero
  options = {:id => identity[:id], :email => identity[:email], :changes => identity}
  Vero::Api::Users.edit_user!(options, self)
end

#update_user_tags!(add = [], remove = []) ⇒ Object



20
21
22
23
24
# File 'lib/vero/context/api.rb', line 20

def update_user_tags!(add = [], remove = [])
  identity = subject.to_vero
  options = {:id => identity[:id], :email => identity[:email], :add => Array(add), :remove => Array(remove)}
  Vero::Api::Users.edit_user_tags!(options, self)
end