Class: OneSignal::Filter
- Inherits:
-
Object
- Object
- OneSignal::Filter
- Defined in:
- lib/onesignal/filter.rb
Defined Under Namespace
Classes: FilterBuilder
Constant Summary collapse
- OR =
{ operator: 'OR' }.freeze
Instance Attribute Summary collapse
-
#field ⇒ Object
readonly
Returns the value of attribute field.
-
#hours_ago ⇒ Object
readonly
Returns the value of attribute hours_ago.
-
#key ⇒ Object
readonly
Returns the value of attribute key.
-
#location ⇒ Object
readonly
Returns the value of attribute location.
-
#relation ⇒ Object
readonly
Returns the value of attribute relation.
-
#value ⇒ Object
readonly
Returns the value of attribute value.
Class Method Summary collapse
- .amount_spent ⇒ Object
- .app_version ⇒ Object
- .bought_sku(sku) ⇒ Object
- .country ⇒ Object
- .email(email) ⇒ Object
- .first_session ⇒ Object
- .language ⇒ Object
- .last_session ⇒ Object
- .location(radius:, lat:, long:) ⇒ Object
- .session_count ⇒ Object
- .session_time ⇒ Object
- .tag(tag) ⇒ Object
Instance Method Summary collapse
Instance Attribute Details
#field ⇒ Object (readonly)
Returns the value of attribute field.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def field @field end |
#hours_ago ⇒ Object (readonly)
Returns the value of attribute hours_ago.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def hours_ago @hours_ago end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def key @key end |
#location ⇒ Object (readonly)
Returns the value of attribute location.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def location @location end |
#relation ⇒ Object (readonly)
Returns the value of attribute relation.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def relation @relation end |
#value ⇒ Object (readonly)
Returns the value of attribute value.
7 8 9 |
# File 'lib/onesignal/filter.rb', line 7 def value @value end |
Class Method Details
.amount_spent ⇒ Object
26 27 28 |
# File 'lib/onesignal/filter.rb', line 26 def amount_spent FilterBuilder.new 'amount_spent' end |
.app_version ⇒ Object
42 43 44 |
# File 'lib/onesignal/filter.rb', line 42 def app_version FilterBuilder.new 'app_version' end |
.bought_sku(sku) ⇒ Object
30 31 32 |
# File 'lib/onesignal/filter.rb', line 30 def bought_sku sku FilterBuilder.new 'bought_sku', key: sku end |
.country ⇒ Object
46 47 48 |
# File 'lib/onesignal/filter.rb', line 46 def country FilterBuilder.new 'country' end |
.email(email) ⇒ Object
55 56 57 |
# File 'lib/onesignal/filter.rb', line 55 def email email new(FilterBuilder.new('email', value: email)) end |
.first_session ⇒ Object
14 15 16 |
# File 'lib/onesignal/filter.rb', line 14 def first_session FilterBuilder.new 'first_session' end |
.language ⇒ Object
38 39 40 |
# File 'lib/onesignal/filter.rb', line 38 def language FilterBuilder.new 'language' end |
.last_session ⇒ Object
10 11 12 |
# File 'lib/onesignal/filter.rb', line 10 def last_session FilterBuilder.new 'last_session' end |
.location(radius:, lat:, long:) ⇒ Object
50 51 52 53 |
# File 'lib/onesignal/filter.rb', line 50 def location radius:, lat:, long: location = OpenStruct.new radius: radius, latitude: lat, longitude: long new FilterBuilder.new('location', location: location) end |
.session_count ⇒ Object
18 19 20 |
# File 'lib/onesignal/filter.rb', line 18 def session_count FilterBuilder.new 'session_count' end |
.session_time ⇒ Object
22 23 24 |
# File 'lib/onesignal/filter.rb', line 22 def session_time FilterBuilder.new 'session_time' end |
.tag(tag) ⇒ Object
34 35 36 |
# File 'lib/onesignal/filter.rb', line 34 def tag tag FilterBuilder.new 'tag', key: tag end |
Instance Method Details
#as_json(options = nil) ⇒ Object
66 67 68 |
# File 'lib/onesignal/filter.rb', line 66 def as_json = nil super().select { |_k, v| v.present? } end |
#hours_ago! ⇒ Object
60 61 62 63 64 |
# File 'lib/onesignal/filter.rb', line 60 def hours_ago! @hours_ago ||= @value @value = nil self end |