lib/caseblocks_api.rb in caseblocks_api-0.2.16 vs lib/caseblocks_api.rb in caseblocks_api-0.2.17
- old
+ new
@@ -27,15 +27,35 @@
@auth_token = result["token"] if result
self.class.default_params("auth_token" => @auth_token)
end
end
- def create_case(params, case_type=nil)
+ def create_case(params, case_type=nil)
params.merge!(:case_type_id => fetch_case_type_id(case_type))
- response = self.class.post("/case_blocks/cases", :body => {:case => params}.to_json)
+ response = self.class.post("/case_blocks/cases", :body => {:case => params}.to_json)
if response.code != 201
response_hash = {:body => response.body, :code => response.code, :message => response.message, :headers => response.headers.inspect}
- raise CaseblocksAPI::CaseCreationError.new("Unable to create case - received response code #{response.code}", response_hash)
+ raise CaseblocksAPI::CaseCreationError.new("Unable to create case - received response code #{response.code}", response_hash)
+ end
+ end
+
+ def find_or_create_case(params, case_type=nil)
+ params.merge!(:case_type_id => fetch_case_type_id(case_type))
+ response = self.class.post("/case_blocks/cases", :body => {:unique => true, :case => params}.to_json)
+ if response.code != 201
+ response_hash = {:body => response.body, :code => response.code, :message => response.message, :headers => response.headers.inspect}
+ raise CaseblocksAPI::CaseCreationError.new("Unable to create case - received response code #{response.code}", response_hash)
+ end
+ end
+
+ def create_message(params)
+ query = {:message => params}
+ response = self.class.post("/case_blocks/messages", :body => query.to_json)
+ if response.code != 201
+ response_hash = {:body => response.body, :code => response.code, :message => response.message, :headers => response.headers.inspect}
+ raise CaseblocksAPI::CaseCreationError.new("Unable to create case - received response code #{response.code}", response_hash)
+ else
+ return response["message"]
end
end
private