Sha256: 3ddc9c03556636981353a6268598306ff25017ef5f00d2e55397423928ee7d66
Contents?: true
Size: 758 Bytes
Versions: 4
Compression:
Stored size: 758 Bytes
Contents
# frozen_string_literal: true require 'pusher-client' module Agave module Watch class SiteChangeWatcher attr_reader :site_id PUSHER_API_KEY = '75e6ef0fe5d39f481626' def initialize(site_id) PusherClient.logger.level = Logger::WARN @site_id = site_id @socket = nil end def connect(&block) return if connected? @socket = PusherClient::Socket.new(PUSHER_API_KEY, secure: true) @socket.subscribe("site-#{site_id}") @socket.bind('site:change', &block) @socket.connect(true) self end def connected? @socket && @socket.connected end def disconnect! connected? && @socket.disconnect end end end end
Version data entries
4 entries across 4 versions & 1 rubygems