Class: LiveResource::Pubnub::PubnubProtocol
- Inherits:
-
Object
- Object
- LiveResource::Pubnub::PubnubProtocol
- Includes:
- LiveResource::Protocol
- Defined in:
- lib/live_resource/pubnub/pubnub_protocol.rb
Instance Method Summary collapse
- #channel_for(resource_id) ⇒ Object
- #encode_identifier(identifier) ⇒ Object
-
#initialize(pubnub) ⇒ PubnubProtocol
constructor
A new instance of PubnubProtocol.
- #publish_message(resource_identifier, type, params = nil) ⇒ Object
Constructor Details
#initialize(pubnub) ⇒ PubnubProtocol
Returns a new instance of PubnubProtocol.
9 10 11 |
# File 'lib/live_resource/pubnub/pubnub_protocol.rb', line 9 def initialize(pubnub) @pubnub = pubnub end |
Instance Method Details
#channel_for(resource_id) ⇒ Object
30 31 32 |
# File 'lib/live_resource/pubnub/pubnub_protocol.rb', line 30 def channel_for(resource_id) resource_id end |
#encode_identifier(identifier) ⇒ Object
34 35 36 37 |
# File 'lib/live_resource/pubnub/pubnub_protocol.rb', line 34 def encode_identifier(identifier) permitted_characters = URI::REGEXP::PATTERN::UNRESERVED identifier.gsub(/[^#{permitted_characters}]/, '_') end |
#publish_message(resource_identifier, type, params = nil) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/live_resource/pubnub/pubnub_protocol.rb', line 13 def (resource_identifier, type, params = nil) params ||= {} channel_id = channel_for(resource_identifier) = params.merge( :type => type, :':resource_id' => resource_identifier, ) @pubnub.publish( params.merge( :channel => channel_id, :message => , :callback => ->(x) {} )) end |