Sha256: a4a0912cfa06658f72ac9d7c9d3bc4c7f680cb63f47e9170a71cb9868f286ce9
Contents?: true
Size: 1.12 KB
Versions: 2
Compression:
Stored size: 1.12 KB
Contents
require 'socky/authenticator' require 'multi_json' require 'crack/core_extensions' # Used for Hash#to_params module Socky class Client class Request attr_reader :client, :event, :channel, :data def initialize(client, event, channel, data = nil) @client = client @event = event @channel = channel @data = MultiJson.encode(data) end def timestamp @timestamp ||= Time.now.to_i end def body content = {} content['event'] = @event content['channel'] = @channel content['timestamp'] = timestamp content['data'] = @data content['auth'] = auth_string content.to_params end private def auth_string Authenticator.authenticate({ :connection_id => timestamp, :channel => @channel, :event => @event, :data => @data }, { :secret => @client.secret, :method => :http })['auth'] rescue => e raise AuthenticationError, e.message end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
socky-client-0.5.0 | lib/socky/client/request.rb |
socky-client-0.5.0.beta1 | lib/socky/client/request.rb |