diff --git a/lib/supportbee.rb b/lib/supportbee.rb index 3bd9303..e55e120 100644 --- a/lib/supportbee.rb +++ b/lib/supportbee.rb @@ -11,16 +11,35 @@ def initialize(company, auth_token) end def tickets(options={}) - valid_keys = [:per_page, :page, :spam, :trash, :replies, :max_replies, :assigned_user, :assigned_group, :starred, :label, :since, :until] + valid_keys = [:per_page, :page, :spam, :trash, :replies, :max_replies, :assigned_user, :assigned_group, :starred, :label, :since, :until,:agent,:group] invalid_keys = options.keys - valid_keys raise "Invalid Options: #{invalid_keys.join(', ')}" unless invalid_keys.empty? - + unless options[:agent].nil? + options[:assigned_user]= self.users(options[:agent]) + end + unless options[:group].nil? + options[:assigned_group]= self.groups(options[:group]) + end self.class.default_params.merge!(options) + response = self.class.get("/tickets.json") + response.body + + end - response = self.class.get("/tickets.json") - response.body + def users(agent) + response=self.class.get("/users.json") + users=JSON.parse(response.body) + users["users"].each { |user| return user['id'] if user['name']==agent} end + + def groups(group) + response=self.class.get("/groups.json") + groups=JSON.parse(response.body) + puts groups + groups["groups"].each { |group| return group if group['name']==group} + end + end end