Class: ActivitySmith::LiveActivities
- Inherits:
-
Object
- Object
- ActivitySmith::LiveActivities
- Defined in:
- lib/activitysmith/live_activities.rb
Constant Summary collapse
- TYPE_SEGMENTED_PROGRESS =
"segmented_progress"- TYPE_PROGRESS =
"progress"- TYPE_METRICS =
"metrics"- TYPE_STATS =
"stats"- TYPE_ALERT =
"alert"- TYPE_TIMER =
"timer"
Class Method Summary collapse
- .alert_badge(title, color: nil) ⇒ Object
- .alert_icon(symbol, color: nil) ⇒ Object
- .content_state(title:, type: nil, subtitle: nil, message: nil, icon: nil, badge: nil, color: nil, duration_seconds: nil, counts_down: nil, **fields) ⇒ Object
Instance Method Summary collapse
- #end(request, opts = {}) ⇒ Object
- #end_live_activity(live_activity_end_request, opts = {}) ⇒ Object
- #end_live_activity_stream(stream_key, live_activity_stream_delete_request = nil, opts = {}) ⇒ Object
- #end_stream(stream_key, request = nil, opts = {}) ⇒ Object
-
#initialize(api) ⇒ LiveActivities
constructor
A new instance of LiveActivities.
- #method_missing(name, *args, &block) ⇒ Object
- #reconcile_live_activity_stream(stream_key, live_activity_stream_request, opts = {}, tags: nil) ⇒ Object
- #respond_to_missing?(name, include_private = false) ⇒ Boolean
- #start(request = nil, opts = {}, tags: nil, **request_fields) ⇒ Object
-
#start_live_activity(live_activity_start_request, opts = {}, tags: nil) ⇒ Object
Backward-compatible aliases.
- #stream(stream_key, request = nil, opts = {}, tags: nil, **request_fields) ⇒ Object
- #update(request, opts = {}) ⇒ Object
- #update_live_activity(live_activity_update_request, opts = {}) ⇒ Object
Constructor Details
#initialize(api) ⇒ LiveActivities
Returns a new instance of LiveActivities.
37 38 39 |
# File 'lib/activitysmith/live_activities.rb', line 37 def initialize(api) @api = api end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
108 109 110 111 112 |
# File 'lib/activitysmith/live_activities.rb', line 108 def method_missing(name, *args, &block) return @api.public_send(name, *args, &block) if @api.respond_to?(name) super end |
Class Method Details
.alert_badge(title, color: nil) ⇒ Object
31 32 33 |
# File 'lib/activitysmith/live_activities.rb', line 31 def alert_badge(title, color: nil) { title: title, color: color }.compact end |
.alert_icon(symbol, color: nil) ⇒ Object
27 28 29 |
# File 'lib/activitysmith/live_activities.rb', line 27 def alert_icon(symbol, color: nil) { symbol: symbol, color: color }.compact end |
.content_state(title:, type: nil, subtitle: nil, message: nil, icon: nil, badge: nil, color: nil, duration_seconds: nil, counts_down: nil, **fields) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/activitysmith/live_activities.rb', line 13 def content_state(title:, type: nil, subtitle: nil, message: nil, icon: nil, badge: nil, color: nil, duration_seconds: nil, counts_down: nil, **fields) { title: title, type: type, subtitle: subtitle, message: , icon: icon, badge: badge, color: color, duration_seconds: duration_seconds, counts_down: counts_down }.merge(fields).compact end |
Instance Method Details
#end(request, opts = {}) ⇒ Object
54 55 56 |
# File 'lib/activitysmith/live_activities.rb', line 54 def end(request, opts = {}) @api.end_live_activity(normalize_live_activity_request(request), opts) end |
#end_live_activity(live_activity_end_request, opts = {}) ⇒ Object
87 88 89 |
# File 'lib/activitysmith/live_activities.rb', line 87 def end_live_activity(live_activity_end_request, opts = {}) @api.end_live_activity(normalize_live_activity_request(live_activity_end_request), opts) end |
#end_live_activity_stream(stream_key, live_activity_stream_delete_request = nil, opts = {}) ⇒ Object
99 100 101 102 103 104 105 106 |
# File 'lib/activitysmith/live_activities.rb', line 99 def end_live_activity_stream(stream_key, live_activity_stream_delete_request = nil, opts = {}) @api.end_live_activity_stream( stream_key, { live_activity_stream_delete_request: normalize_live_activity_request(live_activity_stream_delete_request) }.merge(opts) ) end |
#end_stream(stream_key, request = nil, opts = {}) ⇒ Object
68 69 70 71 72 73 |
# File 'lib/activitysmith/live_activities.rb', line 68 def end_stream(stream_key, request = nil, opts = {}) @api.end_live_activity_stream( stream_key, { live_activity_stream_delete_request: normalize_live_activity_request(request) }.merge(opts) ) end |
#reconcile_live_activity_stream(stream_key, live_activity_stream_request, opts = {}, tags: nil) ⇒ Object
91 92 93 94 95 96 97 |
# File 'lib/activitysmith/live_activities.rb', line 91 def reconcile_live_activity_stream(stream_key, live_activity_stream_request, opts = {}, tags: nil) @api.reconcile_live_activity_stream( stream_key, normalize_live_activity_request(normalize_channels_target((live_activity_stream_request, ))), opts ) end |
#respond_to_missing?(name, include_private = false) ⇒ Boolean
114 115 116 |
# File 'lib/activitysmith/live_activities.rb', line 114 def respond_to_missing?(name, include_private = false) @api.respond_to?(name, include_private) || super end |
#start(request = nil, opts = {}, tags: nil, **request_fields) ⇒ Object
41 42 43 44 45 46 47 48 |
# File 'lib/activitysmith/live_activities.rb', line 41 def start(request = nil, opts = {}, tags: nil, **request_fields) @api.start_live_activity( normalize_live_activity_request( normalize_channels_target((combine_request(request, request_fields), )) ), opts ) end |
#start_live_activity(live_activity_start_request, opts = {}, tags: nil) ⇒ Object
Backward-compatible aliases.
76 77 78 79 80 81 |
# File 'lib/activitysmith/live_activities.rb', line 76 def start_live_activity(live_activity_start_request, opts = {}, tags: nil) @api.start_live_activity( normalize_live_activity_request(normalize_channels_target((live_activity_start_request, ))), opts ) end |
#stream(stream_key, request = nil, opts = {}, tags: nil, **request_fields) ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'lib/activitysmith/live_activities.rb', line 58 def stream(stream_key, request = nil, opts = {}, tags: nil, **request_fields) @api.reconcile_live_activity_stream( stream_key, normalize_live_activity_request( normalize_channels_target((combine_request(request, request_fields), )) ), opts ) end |
#update(request, opts = {}) ⇒ Object
50 51 52 |
# File 'lib/activitysmith/live_activities.rb', line 50 def update(request, opts = {}) @api.update_live_activity(normalize_live_activity_request(request), opts) end |
#update_live_activity(live_activity_update_request, opts = {}) ⇒ Object
83 84 85 |
# File 'lib/activitysmith/live_activities.rb', line 83 def update_live_activity(live_activity_update_request, opts = {}) @api.update_live_activity(normalize_live_activity_request(live_activity_update_request), opts) end |