Class: Readiness::Zendesk::Roles
- Defined in:
- lib/support_readiness/zendesk/roles.rb
Overview
Defines the class Roles within the module Readiness::Zendesk.
Instance Attribute Summary collapse
- #configuration ⇒ Object
- #description ⇒ Object
- #id ⇒ Object
- #name ⇒ Object
- #role_type ⇒ Object
- #team_member_count ⇒ Object
Class Method Summary collapse
-
.create!(client, role) ⇒ Object
Creates a Custom Role.
-
.delete!(client, role) ⇒ Boolean
Deletes a Custom Role.
-
.find(client, rid) ⇒ Hash
Locates a Custom Role within Zendesk.
-
.find!(client, rid) ⇒ Object
Locates a Custom Role within within Zendesk.
-
.list(client) ⇒ Array
Lists the Custom Roles.
-
.update!(client, role) ⇒ Object
Updates a Custom Role.
Instance Method Summary collapse
-
#initialize(object = {}) ⇒ Roles
constructor
Creates a new Roles instance.
Methods inherited from Client
auth_error, bad_request_error, convert_actions, convert_conditions, convert_standard_names_to_ids, convert_ticket_form_agent_conditions, convert_ticket_form_brands, convert_ticket_form_end_user_conditions, convert_ticket_form_names_to_ids, convert_view_names_to_ids, convert_view_restrictions, covert_ticket_form_field_ids, create_package!, erb_renderer, handle_request_error, not_found_error, not_processible_error, put_into_archive, recursively_deflate_directory, timestamp_filename, to_clean_json, to_clean_json_with_key, to_hash, to_nearly_clean_json, to_nearly_clean_json_with_key, to_param_string, write_entries
Constructor Details
#initialize(object = {}) ⇒ Roles
Creates a new Readiness::Zendesk::Roles instance
24 25 26 27 28 29 30 31 |
# File 'lib/support_readiness/zendesk/roles.rb', line 24 def initialize(object = {}) @configuration = object['configuration'] @description = object['description'] @id = object['id'] @name = object['name'] @role_type = object['role_type'] @team_member_count = object['team_member_count'] end |
Instance Attribute Details
#configuration ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def configuration @configuration end |
#description ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def description @description end |
#id ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def id @id end |
#name ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def name @name end |
#role_type ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def role_type @role_type end |
#team_member_count ⇒ Object
13 14 15 |
# File 'lib/support_readiness/zendesk/roles.rb', line 13 def team_member_count @team_member_count end |
Class Method Details
.create!(client, role) ⇒ Object
Creates a Custom Role. Will exit if unsuccessful
134 135 136 137 138 |
# File 'lib/support_readiness/zendesk/roles.rb', line 134 def self.create!(client, role) response = client.connection.post 'custom_roles/', to_clean_json_with_key(role, 'custom_role') handle_request_error(1, 'Zendesk', response.status, { action: 'Create Custom Role', message: Oj.load(response.body)}) unless response.status == 201 Roles.new(Oj.load(response.body)['custom_role']) end |
.delete!(client, role) ⇒ Boolean
Deletes a Custom Role. Will exit if unsuccessful
187 188 189 190 191 |
# File 'lib/support_readiness/zendesk/roles.rb', line 187 def self.delete!(client, role) response = client.connection.delete "custom_roles/#{role.id}" handle_request_error(1, 'Zendesk', response.status, { action: 'Delete a Custom Role', id: role.id, message: Oj.load(response.body)}) unless response.status == 204 true end |
.find(client, rid) ⇒ Hash
Locates a Custom Role within Zendesk. This will not exit on error (except Authentication errors)
76 77 78 79 80 81 82 |
# File 'lib/support_readiness/zendesk/roles.rb', line 76 def self.find(client, rid) response = client.connection.get("custom_roles/#{rid}") handle_request_error(0, 'Zendesk', response.status, { action: 'get', id: rid }) unless response.status == 200 return Roles.new(Oj.load(response.body)['custom_role']) if response.status == 200 Oj.load(response.body) end |
.find!(client, rid) ⇒ Object
Locates a Custom Role within within Zendesk. This will exit on error
103 104 105 106 107 |
# File 'lib/support_readiness/zendesk/roles.rb', line 103 def self.find!(client, rid) response = client.connection.get("custom_roles/#{rid}") handle_request_error(1, 'Zendesk', response.status, { action: 'Find Custom Role', id: rid }) unless response.status == 200 Roles.new(Oj.load(response.body)['custom_role']) end |
.list(client) ⇒ Array
Lists the Custom Roles
51 52 53 54 55 |
# File 'lib/support_readiness/zendesk/roles.rb', line 51 def self.list(client) response = client.connection.get('custom_roles/') handle_request_error(0, 'Zendesk', response.status) unless response.status == 200 Oj.load(response.body)['custom_roles'].map { |s| Roles.new(s) } end |
.update!(client, role) ⇒ Object
Updates a Custom Role. Will exit if unsuccessful
161 162 163 164 165 |
# File 'lib/support_readiness/zendesk/roles.rb', line 161 def self.update!(client, role) response = client.connection.put "custom_roles/#{role.id}", to_clean_json_with_key(role, 'custom_role') handle_request_error(1, 'Zendesk', response.status, { action: 'Update Custom Role', id: role.id, message: Oj.load(response.body)}) unless response.status == 200 Roles.new(Oj.load(response.body)['custom_role']) end |