Class: VoiceML::ConversationsV1RolesResource

Inherits:
Object
  • Object
show all
Defined in:
lib/voiceml/resources/conversations_v1.rb

Overview

============================================================================

/v1/Roles

Instance Method Summary collapse

Constructor Details

#initialize(transport) ⇒ ConversationsV1RolesResource

Returns a new instance of ConversationsV1RolesResource.



265
266
267
# File 'lib/voiceml/resources/conversations_v1.rb', line 265

def initialize(transport)
  @transport = transport
end

Instance Method Details

#create(friendly_name:, type:, permission:) ⇒ Object



275
276
277
278
# File 'lib/voiceml/resources/conversations_v1.rb', line 275

def create(friendly_name:, type:, permission:)
  form = { 'FriendlyName' => friendly_name, 'Type' => type, 'Permission' => Array(permission) }
  ConversationsV1Role.from_hash(@transport.request(:post, '/v1/Roles', form: form))
end

#delete(sid) ⇒ Object



289
290
291
292
# File 'lib/voiceml/resources/conversations_v1.rb', line 289

def delete(sid)
  @transport.request(:delete, "/v1/Roles/#{sid}")
  nil
end

#fetch(sid) ⇒ Object



280
281
282
# File 'lib/voiceml/resources/conversations_v1.rb', line 280

def fetch(sid)
  ConversationsV1Role.from_hash(@transport.request(:get, "/v1/Roles/#{sid}"))
end

#list(page_size: nil) ⇒ Object



269
270
271
272
273
# File 'lib/voiceml/resources/conversations_v1.rb', line 269

def list(page_size: nil)
  params = {}
  params['PageSize'] = page_size unless page_size.nil?
  ConversationsV1RoleList.new(@transport.request(:get, '/v1/Roles', params: params))
end

#update(sid, permission:) ⇒ Object



284
285
286
287
# File 'lib/voiceml/resources/conversations_v1.rb', line 284

def update(sid, permission:)
  form = { 'Permission' => Array(permission) }
  ConversationsV1Role.from_hash(@transport.request(:post, "/v1/Roles/#{sid}", form: form))
end