class SimpleSegment::Client
Attributes
Public Class Methods
# File lib/simple_segment/client.rb, line 14 def initialize(options = {}) @config = Configuration.new(options) end
Public Instance Methods
@param [Hash] options @option :user_id @option :anonymous_id @option :previous_id required @option :traits [Hash] @option :context [Hash] @option :integrations [Hash] @option :timestamp [#iso8601] (Time.now) @option :message_id
# File lib/simple_segment/client.rb, line 78 def alias(options) Operations::Alias.new(self, symbolize_keys(options)).call end
@yield [batch] Yields a special batch object that can be used to group
`identify`, `track`, `page` and `group` calls into a single API request.
@example
client.batch do |analytics| analytics.context = { 'foo' => 'bar' } analytics.identify(user_id: 'id') analytics.track(event: 'Delivered Package', user_id: 'id') end
# File lib/simple_segment/client.rb, line 91 def batch batch = Batch.new(self) yield(batch) batch.commit end
A no op, added for backwards compatibility with ‘analytics-ruby`
# File lib/simple_segment/client.rb, line 98 def flush; end
@param [Hash] options @option :user_id @option :anonymous_id @option :group_id required @option :traits [Hash] @option :context [Hash] @option :integrations [Hash] @option :timestamp [#iso8601] (Time.now) @option :message_id
# File lib/simple_segment/client.rb, line 65 def group(options) Operations::Group.new(self, symbolize_keys(options)).call end
@param [Hash] options @option :user_id @option :anonymous_id @option :traits [Hash] @option :context [Hash] @option :integrations [Hash] @option :timestamp [#iso8601] (Time.now) @option :message_id
# File lib/simple_segment/client.rb, line 26 def identify(options) Operations::Identify.new(self, symbolize_keys(options)).call end
@param [Hash] options @option :user_id @option :anonymous_id @option :name [String] @option :properties [Hash] @option :context [Hash] @option :integrations [Hash] @option :timestamp [#iso8601] (Time.now) @option :message_id
# File lib/simple_segment/client.rb, line 52 def page(options) Operations::Page.new(self, symbolize_keys(options)).call end
@param [Hash] options @option :event [String] required @option :user_id @option :anonymous_id @option :properties [Hash] @option :context [Hash] @option :integrations [Hash] @option :timestamp [#iso8601] (Time.now) @option :message_id
# File lib/simple_segment/client.rb, line 39 def track(options) Operations::Track.new(self, symbolize_keys(options)).call end