Class: Userlist::Push
- Inherits:
-
Object
show all
- Defined in:
- lib/userlist/push.rb,
lib/userlist/push/client.rb,
lib/userlist/push/strategies.rb,
lib/userlist/push/strategies/null.rb,
lib/userlist/push/strategies/direct.rb,
lib/userlist/push/strategies/threaded.rb,
lib/userlist/push/strategies/threaded/worker.rb
Defined Under Namespace
Modules: Strategies
Classes: Client
Instance Method Summary
collapse
Constructor Details
#initialize(config = {}) ⇒ Push
Returns a new instance of Push.
18
19
20
21
|
# File 'lib/userlist/push.rb', line 18
def initialize(config = {})
@config = Userlist.config.merge(config)
@mutex = Mutex.new
end
|
Instance Method Details
#company(payload = {}) ⇒ Object
46
47
48
49
50
51
52
53
|
# File 'lib/userlist/push.rb', line 46
def company(payload = {})
with_mutex do
raise ArgumentError, 'Missing required payload hash' unless payload
raise ArgumentError, 'Missing required parameter :identifier' unless payload[:identifier]
strategy.call(:post, '/companies', payload)
end
end
|
#event(payload = {}) ⇒ Object
Also known as:
track
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/userlist/push.rb', line 23
def event(payload = {})
with_mutex do
raise ArgumentError, 'Missing required payload hash' unless payload
raise ArgumentError, 'Missing required parameter :name' unless payload[:name]
raise ArgumentError, 'Missing required parameter :user' unless payload[:user]
payload[:occured_at] ||= Time.now
strategy.call(:post, '/events', payload)
end
end
|
#user(payload = {}) ⇒ Object
Also known as:
identify
36
37
38
39
40
41
42
43
|
# File 'lib/userlist/push.rb', line 36
def user(payload = {})
with_mutex do
raise ArgumentError, 'Missing required payload hash' unless payload
raise ArgumentError, 'Missing required parameter :identifier' unless payload[:identifier]
strategy.call(:post, '/users', payload)
end
end
|