Sha256: 1753bb21347b13727ae7a01e0c1fc9ffcab4057672f7e232f4d17857a37fd1c1

Contents?: true

Size: 1.64 KB

Versions: 13

Compression:

Stored size: 1.64 KB

Contents

require 'json'
require 'urbanairship'

module Urbanairship
  module Devices
    class ChannelUninstall
      include Urbanairship::Common
      include Urbanairship::Loggable
      attr_reader :client

      # Initialize a ChannelUninstall Object
      #
      # @param [Object] client
      def initialize(client: required('client'))
        @client = client
      end

      def uninstall(channels: required('channels'))
        chan_num = channels.length
        fail ArgumentError,
             'Maximum of 200 channel uninstalls exceeded.' if chan_num > 200

        response = @client.send_request(
          method: 'POST',
          body: JSON.dump(channels),
          url: CHANNEL_URL + 'uninstall/',
          content_type: 'application/json'
        )

        logger.info { "Successfully uninstalled #{chan_num} channels." }
        response
      end
    end
    
    
    class OpenChannelUninstall
      include Urbanairship::Common
      include Urbanairship::Loggable
      attr_reader :client
      
      def initialize(client: required('client'))
        @client = client
      end
      
      def uninstall(address: required('address'),
                    open_platform: required('open_platform'))
        
        body = {
          address: address,
          open_platform_name: open_platform
        }
        
        response = @client.send_request(
          method: 'POST',
          body: JSON.dump(body),
          url: OPEN_CHANNEL_URL + 'uninstall/',
          content_type: 'application/json'
        )
        
        logger.info { "Successfully unintalled open channel with address: #{address}"}
        response
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
urbanairship-5.8.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.7.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.6.1 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.6.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.5.1 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.5.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.4.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.3.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.2.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.0.1 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-5.0.0 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-4.1.1 lib/urbanairship/devices/channel_uninstall.rb
urbanairship-4.1.0 lib/urbanairship/devices/channel_uninstall.rb