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 = {}) ⇒ Object
- #respond_to_missing?(name, include_private = false) ⇒ Boolean
- #start(request, opts = {}) ⇒ Object
-
#start_live_activity(live_activity_start_request, opts = {}) ⇒ Object
Backward-compatible aliases.
- #stream(stream_key, request, opts = {}) ⇒ 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
101 102 103 104 105 |
# File 'lib/activitysmith/live_activities.rb', line 101 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
49 50 51 |
# File 'lib/activitysmith/live_activities.rb', line 49 def end(request, opts = {}) @api.end_live_activity(normalize_live_activity_request(request), opts) end |
#end_live_activity(live_activity_end_request, opts = {}) ⇒ Object
80 81 82 |
# File 'lib/activitysmith/live_activities.rb', line 80 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
92 93 94 95 96 97 98 99 |
# File 'lib/activitysmith/live_activities.rb', line 92 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
61 62 63 64 65 66 |
# File 'lib/activitysmith/live_activities.rb', line 61 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 = {}) ⇒ Object
84 85 86 87 88 89 90 |
# File 'lib/activitysmith/live_activities.rb', line 84 def reconcile_live_activity_stream(stream_key, live_activity_stream_request, opts = {}) @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
107 108 109 |
# File 'lib/activitysmith/live_activities.rb', line 107 def respond_to_missing?(name, include_private = false) @api.respond_to?(name, include_private) || super end |
#start(request, opts = {}) ⇒ Object
41 42 43 |
# File 'lib/activitysmith/live_activities.rb', line 41 def start(request, opts = {}) @api.start_live_activity(normalize_live_activity_request(normalize_channels_target(request)), opts) end |
#start_live_activity(live_activity_start_request, opts = {}) ⇒ Object
Backward-compatible aliases.
69 70 71 72 73 74 |
# File 'lib/activitysmith/live_activities.rb', line 69 def start_live_activity(live_activity_start_request, opts = {}) @api.start_live_activity( normalize_live_activity_request(normalize_channels_target(live_activity_start_request)), opts ) end |
#stream(stream_key, request, opts = {}) ⇒ Object
53 54 55 56 57 58 59 |
# File 'lib/activitysmith/live_activities.rb', line 53 def stream(stream_key, request, opts = {}) @api.reconcile_live_activity_stream( stream_key, normalize_live_activity_request(normalize_channels_target(request)), opts ) end |
#update(request, opts = {}) ⇒ Object
45 46 47 |
# File 'lib/activitysmith/live_activities.rb', line 45 def update(request, opts = {}) @api.update_live_activity(normalize_live_activity_request(request), opts) end |
#update_live_activity(live_activity_update_request, opts = {}) ⇒ Object
76 77 78 |
# File 'lib/activitysmith/live_activities.rb', line 76 def update_live_activity(live_activity_update_request, opts = {}) @api.update_live_activity(normalize_live_activity_request(live_activity_update_request), opts) end |