Sha256: 6e9926396b6d613edee052732621428d98a56b32e404c0a43d9f140f1606c47d

Contents?: true

Size: 1.15 KB

Versions: 26

Compression:

Stored size: 1.15 KB

Contents

require 'ably/realtime/push/admin'

module Ably
  module Realtime
    # Class providing push notification functionality
    class Push
      # @private
      attr_reader :client

      def initialize(client)
        @client = client
      end

      # Admin features for push notifications like managing devices and channel subscriptions
      # @return [Ably::Realtime::Push::Admin]
      def admin
        @admin ||= Admin.new(self)
      end

      # Activate this device for push notifications by registering with the push transport such as GCM/APNS
      #
      # @note This is unsupported in the Ruby library
      def activate(*arg)
        raise_unsupported
      end

      # Deactivate this device for push notifications by removing the registration with the push transport such as GCM/APNS
      #
      # @note This is unsupported in the Ruby library
      def deactivate(*arg)
        raise_unsupported
      end

      private
      def raise_unsupported
        raise Ably::Exceptions::PushNotificationsNotSupported, 'This device does not support receiving or subscribing to push notifications. All PushChannel methods are unavailable'
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 2 rubygems

Version Path
ably-rest-1.1.2 lib/submodules/ably-ruby/lib/ably/realtime/push.rb
ably-1.1.2 lib/ably/realtime/push.rb
ably-rest-1.1.2.rc1 lib/submodules/ably-ruby/lib/ably/realtime/push.rb
ably-1.1.1 lib/ably/realtime/push.rb
ably-rest-1.1.0 lib/submodules/ably-ruby/lib/ably/realtime/push.rb
ably-1.1.0 lib/ably/realtime/push.rb