module Statuspageio::Client::Subscriber
Constants
- SUBSCRIBER_OPTIONS
Public Instance Methods
create_subscriber(options)
click to toggle source
# File lib/statuspageio/client/subscriber.rb, line 27 def create_subscriber(options) create_options = options.dup.slice(*SUBSCRIBER_OPTIONS) if valid_for_subscribing?(create_options) post("/pages/#{self.page_id}/subscribers", { subscriber: create_options }) else raise ArgumentError, 'An email address or phone number with the two digit country code is required' end end
delete_subscriber(subscriber_id, incident_id: nil)
click to toggle source
# File lib/statuspageio/client/subscriber.rb, line 37 def delete_subscriber(subscriber_id, incident_id: nil) if incident_id delete("/pages/#{self.page_id}/incidents/#{incident_id}/subscribers/#{subscriber_id}") else delete("/pages/#{self.page_id}/subscribers/#{subscriber_id}") end end
search_subscribers(q)
click to toggle source
# File lib/statuspageio/client/subscriber.rb, line 22 def search_subscribers(q) return subscribers if q.nil? || q.empty? get("/pages/#{self.page_id}/subscribers", { q: q }) end
subscribers(incident_id: nil)
click to toggle source
# File lib/statuspageio/client/subscriber.rb, line 14 def subscribers(incident_id: nil) if incident_id get("/pages/#{self.page_id}/incidents/#{incident_id}/subscribers") else get("/pages/#{self.page_id}/subscribers") end end
Private Instance Methods
valid_for_subscribing?(options)
click to toggle source
# File lib/statuspageio/client/subscriber.rb, line 47 def valid_for_subscribing?(options) !(options[:email].empty? && (options[:phone_country].empty? || options[:phone_number].empty?)) end