module ActsAsHocPushable

Constants

LOCK
VERSION

Public Class Methods

configuration() click to toggle source
# File lib/acts_as_hoc_pushable.rb, line 20
def configuration
  @configuration = nil unless defined?(@configuration)
  @configuration || LOCK.synchronize { @configuration ||= ActsAsHocPushable::Configuration.new }
end
configure(config_hash=nil) { |configuration| ... } click to toggle source
# File lib/acts_as_hoc_pushable.rb, line 10
def configure(config_hash=nil)
  if config_hash
    config_hash.each do |k,v|
      configuration.send("#{k}=", v) rescue nil if configuration.respond_to?("#{k}=")
    end
  end

  yield(configuration) if block_given?
end

Public Instance Methods

active_devices() click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 13
def active_devices
  devices.active
end
add_device(token:, platform:, platform_version:, push_environment:) click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 26
def add_device(token:, platform:, platform_version:, push_environment:)
  device = devices.new(token: token, platform: platform, platform_version: platform_version, push_environment: push_environment)
  return device if device.save
  device.errors.each do |attribute, message|
    errors.add(:devices, "#{attribute} #{message}")
  end
  nil
end
add_device!(device_params) click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 44
def add_device!(device_params)
  device = devices.new(device_params)
  device.save!
  device
end
android_devices() click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 21
def android_devices
  devices.android
end
ios_devices() click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 17
def ios_devices
  devices.ios
end
send_push_notification(title:, message:, **data) click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 50
def send_push_notification(title:, message:, **data)
  ActsAsHocPushable::PushNotification.send_push_notification(devices: devices, title: title, message: message, **data)
end
send_silent_push_notification(**data) click to toggle source
# File lib/acts_as_hoc_pushable/acts_as_hoc_pushable.rb, line 54
def send_silent_push_notification(**data)
  ActsAsHocPushable::PushNotification.send_silent_push_notification(devices: devices, **data)
end