Sha256: f6eaf2ee52872d9de6515900a1b30e2691933195a3879f4e16750255e8b05e20
Contents?: true
Size: 801 Bytes
Versions: 1
Compression:
Stored size: 801 Bytes
Contents
module Bot class Context attr_accessor :redis_client, :user def initialize(user, redis_client) @redis_client = redis_client @user = user end def method_missing(m, *args, &block) if m =~ /.+=/ self.add(m.to_s.gsub('=', ''), *args) else self.get(m) end end def get(field) data = $redis.hget(context_key, field) JSON.parse(data) if data.present? rescue JSON::ParserError data end def set(context) self.clear $redis.hmset(context_key, context.map { |k, v| [k, v] }.flatten) end def add(field, content) $redis.hset context_key, field, content end def clear $redis.del context_key end def context_key "bot:context:#{user.id}" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bot-0.0.29 | lib/bot/context.rb |