Sha256: 4e11a823643729764d11731586d9de6659fbeeaaf6cf731f328bbe8f68ce3695
Contents?: true
Size: 757 Bytes
Versions: 46
Compression:
Stored size: 757 Bytes
Contents
# frozen_string_literal: true require 'pusher-client' module Dato 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
46 entries across 46 versions & 1 rubygems